PredictionIO is a Machine Learning framework that you can run on Heroku and use for tasks like intelligent recommendations based on users’ past actions. In the DreamHouse app you can add PredictionIO to make recommendations based on users’ favorites. Check out a demo:
In this example the favorites that are stored in Salesforce are used to teach the system what properties it should recommend to users. PredictionIO uses a DASE model for providing predictions to an app:
[D] Data Source and Data Preparator
Data Source reads the favorites data from the DreamHouse Mobile Web App’s REST API. Data Preparator processes the data and forwards it to the algorithm for model training.
The Algorithm component includes the Machine Learning algorithm, the settings, and determines how a predictive model is constructed. For the DreamHouse PIO service the SparkML library is used to train and predict the property recommendations.
The Serving component takes prediction queries and returns prediction results.
[E] Evaluation Metrics
If multiple learning algorithms were used they could each help fine tune the actual recommendations.
The DASE model runs on Heroku and provides recommendations to the DreamHouse Mobile Web App via a REST interface. Check out the recommendations in the demo Mobile Web App.
The source code for DreamHouse Prediction IO recommendation service is available in this repository on GitHub.