Amazon finally reveals itself as the Matrix
Michael Arrington
64 comments »
Amazon’s new Mechanical Turk product is brilliant because it will help application developers overcome certain types of problems (resulting in the possibility for new kinds of applications) and somewhat scary because I can’t get the Matrix-we-are-all-plugged-into-a-machine vision out of my head.
The “machine” is a web service that Amazon is calling “artificial artificial intelligence.” If you need a process completed that only humans can do given current technology (judgment calls, text drafting or editing, etc.), you can simply make a request to the service to complete the process. The machine will then complete the task with volunteers, and return the results to your software.
Volunteers are paid different amounts for each task, and money earned is deposited into their Amazon accounts. Amazon keeps a 10% margin on what the requester pays.
Today, we build complex software applications based on the things computers do well, such as storing and retrieving large amounts of information or rapidly performing calculations. However, humans still significantly outperform the most powerful computers at completing such simple tasks as identifying objects in photographs – something children can do even before they learn to speak.
When we think of interfaces between human beings and computers, we usually assume that the human being is the one requesting that a task be completed, and the computer is completing the task and providing the results. What if this process were reversed and a computer program could ask a human being to perform a task and return the results? What if it could coordinate many human beings to perform a task?
Amazon Mechanical Turk provides a web services API for computers to integrate Artificial Artificial Intelligence directly into their processing by making requests of humans. Developers use the Amazon Mechanical Turk web services API to submit tasks to the Amazon Mechanical Turk web site, approve completed tasks, and incorporate the answers into their software applications. To the application, the transaction looks very much like any remote procedure call - the application sends the request, and the service returns the results. In reality, a network of humans fuels this Artificial Artificial Intelligence by coming to the web site, searching for and completing tasks, and receiving payment for their work.
All software developers need to do is write normal code. The pseudo code below illustrates how simple this can be.
read (photo);
photoContainsHuman = callMechanicalTurk(photo);
if (photoContainsHuman == TRUE){
acceptPhoto;
}
else {
rejectPhoto;
}
The name “Mechanical Turk” is a great one because it refers to a machine built in the 18th century that played chess against real people and beat them regularly. However, nearly a hundred years later it was finally revealed that the machine was in fact powered by a human being hidden inside of it. I actually read a book about the machine earlier this year - I was on a business trip and it was all I could find.
There are an enormous number of tasks that this can be used for. So plug in to the Matrix Machine and give it a try.
More on this from Rob Hof, Greg Yardley and others.




November 4th, 2005 at 8:13 pm
November 4th, 2005 at 8:59 pm
November 4th, 2005 at 9:20 pm
November 5th, 2005 at 6:44 am
November 5th, 2005 at 8:08 am
November 5th, 2005 at 8:09 am
November 5th, 2005 at 8:11 am
November 5th, 2005 at 8:48 am
November 5th, 2005 at 11:28 am
November 5th, 2005 at 5:55 pm
November 5th, 2005 at 6:38 pm
November 5th, 2005 at 9:06 pm
November 7th, 2005 at 11:55 am
November 7th, 2005 at 8:39 pm
November 9th, 2005 at 11:09 pm
November 11th, 2005 at 4:30 am
November 11th, 2005 at 11:25 pm
November 12th, 2005 at 10:29 am
November 28th, 2005 at 9:02 am
December 2nd, 2005 at 5:48 pm
March 8th, 2006 at 5:10 pm
November 14th, 2006 at 2:42 am
November 14th, 2006 at 5:12 am
November 14th, 2006 at 1:37 pm
November 15th, 2006 at 3:59 am
December 1st, 2006 at 11:40 am
December 1st, 2006 at 11:57 am
December 1st, 2006 at 12:15 pm
December 1st, 2006 at 3:57 pm
December 1st, 2006 at 10:19 pm
December 8th, 2006 at 1:21 am
December 8th, 2006 at 2:53 pm
December 25th, 2006 at 1:02 am
December 25th, 2006 at 1:11 am
December 26th, 2006 at 2:14 am
December 26th, 2006 at 10:07 pm
January 8th, 2007 at 10:37 am
January 8th, 2007 at 1:51 pm
January 8th, 2007 at 4:01 pm
January 12th, 2007 at 10:43 pm
January 13th, 2007 at 2:21 pm
February 3rd, 2007 at 12:52 pm
February 3rd, 2007 at 1:32 pm
February 6th, 2007 at 8:05 pm
April 17th, 2007 at 2:25 am
October 21st, 2007 at 12:57 am