Thursday, September 8, 2011

Paper Reading #4: Gestalt, Integrated Support for Implementation and Analysis in Machine Learning

Gestalt: Integrated Support for Implementation and Analysis in Machine Learning


Kayur Patel, Naomi Bancroft, Steven M. Drucker, James Fogarty, Andrew J. Ko, James A. Landay.

Kayur Patel is currently a computer science PhD student at the University of Washington.
Naomi Bancroft is currently a computer science undergraduate student at the University of Washington.
Steven M. Drucker is a researcher at Microsoft who focuses in Human Computer Interaction.
James Fogarty is currently an assistant professor of computer science and engineering at the University of Washington.
Andrew J. Ko is an assistant professor of the Information School at the University of Washington.
James A. Landay is also a professor of computer science and engineering at the University of Washington.

This paper was presented at UIST 2010.

Summary


This paper details the system known as Gestalt. Gestalt is a novel and unique system to allow developers to incorporate and work with machine learning development. Normally, developers stray from machine learning (although it can be extremely helpful) due to the fact that testing and creation can be difficult.
The researchers claimed that Gestalt "allows developers to implement a classification pipeline, analyze data as it moves through that pipeline, and easily transition between implementation and analysis." Gestalt is meant to be used as tool to aid developers in the creation of applications that use machine learning.

One of the main points the developers discussed was Gestalt's ability to work with many different types of data sets. They used two different examples throughout the paper: the analyzation of a movie review and the deciphering of a gesture mark. Through a set of simple API's, a developer could quickly and easily plug in their specific code to handle the specific data set of the problem that needs to be handled.
Gestalt will even allow developers to quickly analyze input data. This can be used, for example, to determine why a certain gesture is failing to be recognized.

The researchers believed that, through Gestalt, developers would be better able to find bugs and fix them quickly. To test Gestalt, they had users attempt to locate bugs in the machine learning pipeline. They had two different systems: a baseline system (simple system that executed scripts) and the Gestalt system.
The study found that users found and fixed errors in the machine learning pipeline much easier and more efficiently in the Gestalt system than the baseline.


Discussion


While this was certainly one of the more complicated papers so far, Gestalt was definitely an interesting system.
The idea of machine learning is something very interesting and very useful for many different types of systems. With a system like Gestalt, it would allow developers to become far more creative with some of their software implementations (implementing machine learning as opposed to some rigid set of error checking code, for example).

While testing a software development platform is going to be difficult, I wish they had included more information on or included a study about actually developing a full complete system on Gestalt (as opposed to tests limited to bug hunting).

No comments:

Post a Comment