This is my final year report of BIT course. You can get the code for this project on github. Link–> https://github.com/dingavinga/recommendation-system-in-django/
You can view the demo here:
Nowadays, Companies and individual are increasingly trying to buy and sell variety of
products online. The most of the transaction are conducted with the help of internet. Not
only products, but buying and selling of services are quite popular nowadays. According
to Statista, the revenue for ecommerce market was US$1,800,517 globally in 2019 and
expected to reach US$2,553,572 million in 2021.
These figures are projected to increase due to increase in number of mobile internet users
which can also be seen in figure above.
The ecommerce market is blooming in advanced and developed country of world. The
development of online commerce can also be seen in figure below. (statista, 2020)
The idea of building this system is to ease both buyer and seller by recommending
products to individual user. Our country Nepal stills lack certain types of ecommerce.
There are very limited ecommerce sites in Nepal where user get their desired product.
Nearly all of Nepal’s ecommerce platform fails to produce satisfactory revenue from the
product till this date.
Because of this reason I have built an ecommerce framework for
purchasing and selling of numerous products in different categories like books,
electronics, fashion, cosmetics, baby products and many more.
The one reason behind the stagnation of growth in the present ecommerce site is due to
lack of knowledge about the individual interest of the user and the customer’s on-site
behavior. Sales are not boosting as expected here in Nepal because it is one of the tough
tasks to find and target the right audience in ecommerce. To address this type of problem,
I researched the topic of recommendation system to generate the personalized
recommendation system for each user who uses our system.
This build system uses
automated recommendation system which solves the mentioned problem. The developed
recommendation system helps the new and existing user to discover relevant and related
product recommended from our system based on browsing history, user’s behaviors,
ratings, demographics and purchase history. The developed system is Business to
customer type of ecommerce where customer may order, buy, rate and review different
products online posted by the admin of this site.
The web application is very easy to use
because of simple and comfortable user-centric interface.
1.2 Academic question:
How will a recommendation system that uses machine learning technique be used to
predict the interest/desires of users, boost their experience to increase the sale of
products, earn revenue in ecommerce sector and what are the possible challenges and
issues in real word?
The main aim of this developed project are to:
• design, develop and test the full featured ecommerce web app for viewing, buying,
rating and reviewing different product
• build recommendation system to recommend different product to individual user.
• examine, identify and evaluate the past publication or existing system of the related
The main objectives of the study are as follows:
1) To study about the B2C type of ecommerce in Nepal and recommendation types that
can actually be used in ecommerce site.
2) To build the powerful recommendation system that can recommend each and every
individual user of the system.
3) To provide the online platform to view, buy rate and review different product.
4) To implement the MVC (Model, View, controlled) pattern in web-based application.
To develop all the artifact given below, Django framework with MySQL database is used.
The developed system is ecommerce which can recommend products to similar users of
1.5.1 Artifact 1-Web Application:
The developed system has scalable website design with different features like
registration, authentication, search products, product details, categories, sub categories,
search bar, user generated review, ratings etc. All the front-end is displayed from the
database where only admin can upload all the content. This site has also review system
where user can give their view about the specific products and can also give rating from
1 to 5. Admin can add the item to display to other users. The system is also made mobile
user-friendly and Search engine optimization for the better performance.
1.5.2 Artifact 2-Product Recommendation:
This site recommends relevant product to users individually based upon the user’s
behaviors, ratings and history of purchase. Various techniques are used and tested to
develop the model. Python is used to develop the AI model for this system.
1.6 Scope and limitation of project:
As the main aim of this project is to develop and test the ecommerce system and to
integrate recommendation system into web-based application. The scope of the study
may include product bought on various part of Nepal but can be used worldwide. The
study is not specific to one country or the region. Today’s users are demanding very rich
system to purchase product online.
There is some limitation of the system: It may not work
well with newly signed in users due to the fact that the recommendations emerge from a
correlation between the intended user and other used focused on collection of ratings.
So, it is almost impossible to judge the user and to categorize a user with very few ratings.
It only starts recommending things after user rate some of the products from the system.
In similar fashion, new item if not rated by any user, it gets recommended at the last part
of the recommendation. Since user only see upper part of the recommendation.
The product rated very low also does not appear at the top part of the recommendation. It is
also known as “early rater” problem and cold start program. To deal with this problem,
homepage of this site does not show recommended things but only shows the latest
product from the database and recommended things for the user can only be seen from
recommendation webpage. It takes much more time to recommend products to fresh
user. The reason behind choosing this project is to show how recommendation can be
build, designed and analyzed.
The recommendation is that type of system which can be extended in future and the algorithm used during the development of this project can be
improved throughout the period of maintenance of this project. Although the system works
perfect in larger dataset.
1.7 Report Outline:
The rest of this report is prearranged as: Chapter 2 of this report presents relevant
theoretical literature review of papers, journal and books related to recommendation
system approaches, technique and algorithm. Chapter 3 covers the requirements
gathering and analysis part of the system. Chapter 4 focuses in design and architecture
implemented in project. Chapter 5 deals with implementation part, highlighting key
aspects and development process. Chapter 6 takes the reader walkthrough of practical
implementation of system. Chapter 7 provides Testing and Evaluation of the system.
Chapter 8 concludes the report and final section describes future work in related topics
Chapter 2 Literature Review:
My topic of research is not the new topic but active area of research. Recommendation system (RS) is popular field of study among the researcher and scientist since last few decades. RS to recommend products, books and news is fairly common in large tech companies including amazon and Google. Social media site like Facebook, Tinder and twitter also suggest new friends and advertisements. Not only that but last FM, pandora etc. also offers songs that the user may like. Films and online videos are likewise generating meaningful recommendation by companies such as Netflix, Movie Lens, IMDb, YouTube etc. (aggrawal, et al., 2017)
RS comes into practice in order to address, deeper analyze and resolve the issue and problem of both buyers and sellers by automating the activities based on the quality of user-item communication. (Melville & Sindwani, 2018)
Recommendation engines is totally transforming or reshaping ecommerce industry by helping the customer to choose the relevant product. Recommendation system allows to increase the figures of sells, to offer more varied products, to improve user satisfaction and to fully consider customer needs. In simplest term recommendation engines are the ranked list of products to the user based upon different factors like user’s preference and constraints. To first determine the constraints and preference, RS collects user’s view with the help of ratings to the particular product in most of the cases. (Ricci, et al., 2011)
RS can also be called as information retrieval as it is used to filter the system and display only item’s that match the user’s interest. For this, user must give some of interest to the system and system tries to display products user may like. If user does not give any information to the system, the system cannot provide any recommendation. Various tools are available to recommend the product. Most used recommender system in existing online environment are collaborative filtering, content-based filtering, Popularity based, Hybrid approach. (Anantha & Bhattula, 2017)
You can download the full report from this link.