Thursday, January 27, 2011

Paper Reading #3: Lowering the Barrier to Applying Machine Learning

Comment 1: http://chi-jacob.blogspot.com/2011/01/paper-reading-3-lowering-barrier-to.html
Comment 2: http://chiblog.sjmorrow.com/2011/01/paper-reading-3-lowering-barrier-to.html

Lowering the Barrier to Applying Machine Learning
Kayur Patel
CHI 2010 Doctoral Consortium

This paper is the introduction to Patel's dissertation. In which he explains how machine learning software has been developed but none of them has been largely successful. In his dissertation he explores why these programs have not worked and tries to make a program addressing these issues. He starts by reading may papers on systems that have been built and talk to the programmers involved having them break down the workings of each systems and talking about the pitfalls so he can gain incite. He breaks these down into three main points first, most machine learning is an iterative exploratory process, essentially making changes to the most integral part of the system. Second, researchers and developers have a hard time finding the relationship between the parts of the system and their accuracy in learning a task. Third, developers have a hard time evaluating the degree to which the system learned. Many of these stem from the developer trying to get the wrong information out of the system. Patel also points out that a lot of this happens because the systems are only designed to learn a very specific task and it made it hard to evaluate general learning. He claims that a new kind of program needs a large degree of flexibility using established environments such as JAVA and MatLab. He wanted to create a new program called Gestalt that will use these generic, flexible systems to create a program that has good evaluation techniques at each stage of the program pipeline as to provide developers with very specific inforamtion on what to do next and how a system is working. The program aims to evaluate overall how effectively a developer is using machine learning techniques. It will give new visualizations and functionality and data that will help to connect steps in the pipeline. If successful Patel claims that the program could shape the way the HCI community thinks about machine learning and change the way HCI developers work in general.

This paper was very interesting to me. I think the most interesting part of this is that while it is going to be a very complex and data driven program it is written in the simplest programs and in such an obvious object oriented way that if it works I also believe it really will change the way the HCI community views machine learning. I don't understand much about machine learning, nor until recently had I ever considered that computers could actually learn something on their own and decide what to do in a situation. The problem I have is that I don't understand why a computer would make a decision other than that we programmed it to do so. I have even talked to other students at A&M who are engaged in this kind of research about writing a program that not only makes a choice but has a reason as to WHY it chooses it. I cannot grasp the idea that the program is deciding on its own because it comes from code that was written by a person. The computer only knows what we created it to do, nothing more. This goes back to the idea in one of the first papers we read about how machines can not be intelligent because of the systems that are put inside them. I think that this kind of tool while it might be great and will shape the way programmers see things, however it might only be so useful. When it comes down to it, there will still be some way to argue that the program is not actually making the decision but is only a programed response and the program does not actually understand what its doing. However if the program is complex enough maybe it will be able to determine just that, that the machine appears to be making a decision but is really only following a very complex decision tree. I think the most interesting part of Patel's program is that we are going to understand this broken down in the simplest parts and truly understand what the machine is doing. Despite my very pessimistic views this would be a program I would be interested in seeing, the results make me think a lot about the possibilities of computing.

1 comment:

  1. I think you're mostly right about a computer only being able to do what it's programmed to do, but it can base its next action on data it has collected- it can take that "decision tree" and modify it in some way based on previous "experience". Whether the computer is conscious of anything it's "experiencing" or "learning"... I don't know. Probably not?

    ReplyDelete