The release of Google’s Prediction API in 2011 gave developers access to Google’s machine learning algorithms that improve prediction models for a range of use cases. The Prediction API has applications in automated spam filtering, recognizing hidden patterns in financial data to reveal investment potential, and providing customer recommendations based on demographics, among many others. In its simplest form, machine learning works out how to perform important tasks by generalizing from examples. The learning is achieved by combining a classification of the input, an evaluation function, and an optimization technique that acts upon the data.
As a very simple example, if you wanted to get restaurant recommendations you would input all of the local restaurants as your classification. The evaluation function would involve your testing which restaurants are good by eating a meal at each one. It is not feasible to eat at every restaurant when you are only looking for a single good one, and so you implement shortcuts to ease the task. These shortcuts could include asking friends for their opinions, reading the menu online, or discounting restaurants based on location. This filtering makes up the optimization technique that is able to produce a shorter list of restaurants that meet your preferences. Using pattern recognition and computational learning theory, machine learning is able to refine the outputs as more data is added and improve predictions based on the feedback it receives.
Google’s Prediction API works by analyzing data that the user has uploaded to Google Cloud Storage. The API implements supervised learning algorithms as a RESTful web service, allowing users to make real-time decisions by leveraging patterns in data to give users more relevant information.
This particular tutorial by Russell Savage covers Prediction API implementation with Adwords scripts to find insights within Pay Per Click (PPC) data to make more informed changes and improve Cost Per Click (CPC) performance. The example question/prediction is what the average CPC for a particular campaign will be, according to local weather. Readers are then guided through writing one script to gather and store training data, and a second script to build and update a model based on that training data.
The tutorial includes links to APIs used in the example, as well as extensive sample code that combines geo data from Adwords with location information from Weather Underground, storing the training data in a spreadsheet which can then be accessed from the modeling script to predict CPC.