E Commerce Recommendation Engine With PredictionIO

Posted By : Naveen Kamal Mishra | 27-Aug-2019


What Is PredictioIO?

One of the biggest challenges for software developers in the world today is to build real-world applications. Hence to overcome this problem, the PredictionIO, an open-source machine learning server is being used, which provides a step-by-step graphical user interface for developers and data scientists. PredictionIO will help us to evaluate, compare and deploy scalable learning algorithms, and also to evaluate model training status. An API also comes with this system to communicate with the software application to perform the events like data collection to send to the training model and Prediction Retrieval.

fig.1.1 Architure Of PredictionIO


Some Facts About PredictionIO :

  1. It is horizontally scalable.
  2. It is an algorithm agnostic.
  3. Written in scala but support other languages
  4. It is an open-source.

E-Commerce Recommendation Engine By PredictionIO

This engine is developed with the help of PredictionIO. With the help of the PredictionIO, we will predict anything according to our use and it will give us the desired results. PredictionIO generally uses the previous data and then prepare the mode according to that data and then predict the future data. On the same methodology, there is one application of the PredictionIO is an E-Commerce Recommendation Engine.


This engine provides personalized recommendations for e-commerce applications with the following features by default-


  1. Exclude out-of-stock items.

  2. Engine Provide recommendations to new users who sign up after the model are trained.

  3. Engine Recommend unseen items only (configurable).

  4. Engine Recommend popular items if no information about the user is available.


This engine can be used in E-Commerce websites. These days all the online shopping is on the training and due to this cause, there is a need to understand the customer's choice and the customers like and dislike products. If we understand it then we can grow our market according to the customer's reviews and we can get the maximum amount of profit in our E-Commerce selling.



If we discuss the scope of this Engine-

  • We can take it in use of the prediction of the most like and dislike products.

  • We can use it for the recommendation of the products for specific users. 

  • By the prediction, we can change the product according to the market.

  • We will always make available our stocks on that product basis.

  • We can get the maximum profit according to the prediction result.


System Components

PredictionIO- 0.9.3

PredictionIO is used to build the application and to train the machine according to the given data and finally deploy it on the server for the use of that engine.


Elasticsearch can be used as a storage backend for the metadata repository


HBase can be used to store the backend data of the event into the event data repository.


Spark is the default processing engine for PredictionIO. It provides interactive processing, graph processing, real-time stream processing, in-memory processing as well as batch processing with very fast speed, ease of use and standard interface.



psql (PostgreSQL) 9.5.19

psql(PostgreSQL) can be used by PredictionIO as a storage backend for all 3 repositories (event data, metadata, and model data). This is perhaps the easiest route if you are trying PredictionIO for the first time.


  System Architecture






About Author

Author Image
Naveen Kamal Mishra

Naveen Kamal Mishra has good knowledge in Core Java, and basic knowledge in JDBC, C, HTML, CSS, JavaScript. He is also familiar with Spring Boot Framework.

Request for Proposal

Name is required

Comment is required

Sending message..