From Amazon's product recommendations to Pandora's ability to find us new songs we like, the smartest Web services around rely on machine learning--algorithms that enable software to learn how to respond with a degree of intelligence to new information or events.
Now Google has launched a service that could bring such smarts to many more apps. Google Prediction API provides a simple way for developers to create software that learns how to handle incoming data. For example, the Google-hosted algorithms could be trained to sort e-mails into categories for "complaints" and "praise" using a dataset that provides many examples of both kinds. Future e-mails could then be screened by software using that API, and handled accordingly.
Currently just "hundreds" of developers have access to the service, says Travis Green, Google's product manager for Prediction API, "but already we can see people doing some amazing things." Users range from developers of mobile and Web apps to oil companies, he says. "Many want to do product recommendation, and there are also interesting NGO use cases with ideas such as extracting emergency information from Twitter or other sources online."
Machine learning is not an easy feature to build into software. Different algorithms and mathematical techniques work best for different kinds of data. Specialized knowledge of machine learning is typically needed to consider using it in a product, says Green.
Google's service provides a kind of machine-learning black box--data goes in one end, and predictions come out the other. There are three basic commands: one to upload a collection of data, another telling the service to learn what it can from it, and a third to submit new data for the system to react to based on what it learned.