Download as docx, pdf, or txt
Download as docx, pdf, or txt
You are on page 1of 10

A Project Report on

MOVIE RECOMMENDATION SYSTEM


Bachelor of Technology

Carried out as a part of Mini Project Submitted

By:

Prateek Lavti 219311054

Under the supervision of:

Somya Goyal

Bachelor of Technology

in

IoT & Intelligent System

Department of Computer and Communication Engineering


Manipal University Jaipur
VPO. Dehmi Kalan, Jaipur, Rajasthan, India – 303007
Contents:

1. Abstract

2. Introduction

2.1 Problem statement

2.2 Motivation

3.. Literature Survey

4. Methodology

5. Implemantion

6. Conclusion

7. References
Chapter 1- Abstract

In the age of information overload and digital content explosion, the ability to curate
personalized recommendations has become paramount. Movie recommendation
systems have gained substantial prominence due to their capacity to provide tailored
suggestions to users, enhancing their entertainment experience. This report delves
into the development and evaluation of a Movie Recommendation System, exploring
the utilization of Support Vector Machines (SVM), K-Nearest Neighbors (KNN), and
Decision Trees for the task. The primary focus of this report is to provide insights into
the methods employed, the challenges faced, and the final results achieved.
Chapter 2 - Introduction

2.1 Problem Statement

The goal of the project is to recommend a movie to the user. Providing


related content out of relevant and irrelevant collection of items to users of
online service providers.

2.2 Motivation

The motivation behind this project stems from the increasing importance of
recommendation systems in our daily lives. In an era where we are
inundated with an ever-expanding library of movies, the need to streamline
and personalize content selection is undeniable. By creating an effective
Movie Recommendation System, we aim to enhance user satisfaction,
increase user engagement, and ultimately drive user retention. The project's
primary goal is to explore and compare the performance of SVM, KNN, and
Decision Trees for the movie recommendation task, ultimately identifying
the most efficient method for generating accurate and relevant movie
recommendations. Through this endeavor, we seek to contribute to the
growing field of recommendation systems and improve the quality of user
experiences in the realm of entertainment.
Chapter 3 - LITERATURE SURVEY

Over the years, many recommendation systems have been developed using either
collaborative, content based or hybrid filtering methods. These systems have been
implemented using various big data and machine learning algorithms.

Movie Recommendation System by K-Means Clustering AND K-Nearest Neighbour


A recommendation system collect data about the user’s preferences either implicitly
or explicitly on different items like movies. An implicit acquisition in the development
of movie recommendation system uses the user’s behaviour while watching the
movies. On the other hand, a explicit acquisition in the development of movie
recommendation system uses the user’s previous ratings or history. The other
supporting technique that are used in the development of recommendation system is
clustering. Clustering is a process to group a set of objects in such a way that
objects in the same clusters are more similar to each other than to those in other
clusters. KMeans Clustering along with K-Nearest Neighbour is implemented on the
movie lens dataset in order to obtain the best-optimized result. In existing technique,
the data is scattered which results in a high number of clusters while in the proposed
technique data is gathered and results in a low number of clusters. The process of
recommendation of a movie is optimized in the proposed scheme. The proposed
recommender system predicts the user’s preference of a movie on the basis of
different parameters. The recommender system works on the concept that people
are having common preference or choice. These users will influence on each other’s
opinions. This process optimizes the process and having lower RMSE.

Movie Recommendation System Using Collaborative Filtering: By Ching-Seh (Mike)


Wu,Deepti Garg,Unnathi Bhandary Collaborative filtering systems analyse the user's
behaviour and preferences and predict what they would like based on similarity with
other users. There are two kinds of collaborative filtering systems; user-based
recommender and item-based recommender. 1. Use-based filtering: User-based
preferences are very common in the field of designing personalized systems. This
approach is based on the user's likings. The process starts with users giving ratings
(1-5) to some movies. These ratings can be implicit or explicit. Explicit ratings are
when the user explicitly rates the item on some scale or indicates a
thumbs-up/thumbs-down to the item. Often explicit ratings are hard to gather as not
every user is much interested in providing feedbacks. In these scenarios, we gather
implicit ratings based on their behaviour. For instance, if a user buys a product more
than once, it indicates a positive preference. In context to movie systems, we can
imply that if a user watches the entire movie, he/she has some likeability to it. Note
that there are no clear rules in determining implicit ratings. Next, for each user, we
first find some defined number of nearest neighbours. We calculate correlation
between users' ratings using Pearson Correlation algorithm. The assumption that if
two users' ratings are highly correlated, then these two users must enjoy similar
items and products is used to recommend items to users. 2. Item-based filtering:
Unlike the user-based filtering method, itembased focuses on the similarity between
the item’s users like instead of the users themselves. The most similar items are
computed ahead of time. Then for recommendation, the items that are most similar
to the target item are recommended to the user
Chapter 4 – Methodology

1 Collecting the data sets: Collecting all the required data set from Kaggle web
site.in this project we require movie.csv,ratings.csv,users.csv.

2.Data Analysis: make sure that that the collected data sets are correct and analysing
the data in the csv files. i.e. checking whether all the column Felds are present in the
data sets.

3.Algorithms: in our project we have used SVM, KNN, and decision trees with best
results on KNN.

4.Training and Testing the model: once the implementation of algorithm is


completed . we have to train the model to get the result. We have tested it several
times the model is recommend different set of movies to different users.

5.Improvements in the project: In the later stage we can implement different


algorithms and methods for better recommendation.
Chapter 5 – Implementation

Data Collection and Preprocessing

To commence the development of our Movie Recommendation System, we began


by collecting a comprehensive dataset of user preferences and movie information.
This dataset included user ratings, movie genres, and other relevant features. The
dataset was subsequently preprocessed to handle missing values, eliminate
duplicates, and ensure data quality.

Feature Engineering

Feature engineering was a crucial step in enhancing the performance of our


recommendation system. We created feature vectors that represented the
characteristics of movies and user preferences. This involved encoding categorical
variables, such as movie genres, into numerical values to facilitate machine learning
model compatibility.

Model Selection

For our Movie Recommendation System, we explored the utilization of three


different machine learning algorithms: Support Vector Machines (SVM), K-Nearest
Neighbors (KNN), and Decision Trees. Each algorithm was implemented and fine-
tuned to optimize performance.

Support Vector Machines (SVM)


SVM, a powerful classifier, was implemented to evaluate its ability to generate movie
recommendations. It was trained to learn the relationship between user preferences
and movie attributes. While SVMs are effective in many classification tasks, they did
not yield the best results in our recommendation system.

K-Nearest Neighbors (KNN)


KNN, a non-parametric algorithm, showed superior results in generating movie
recommendations. By identifying similar users based on their movie preferences,
KNN was able to recommend movies that were popular among users with similar
tastes.

Decision Trees
Decision Trees, known for their interpretability, were also tested as a potential
recommendation system. However, their performance fell behind that of KNN, and
thus, they were not selected as the primary recommendation method.
Model Evaluation

To assess the effectiveness of our recommendation system, we utilized common


evaluation metrics such as Mean Absolute Error (MAE) and Root Mean Square Error
(RMSE). These metrics provided insights into the accuracy and precision of our
recommendations, enabling us to fine-tune the models and improve their
performance.

User Interface

A user-friendly interface was developed to allow users to interact with our Movie
Recommendation System. This interface facilitated the input of user preferences and
presented personalized movie recommendations in a visually appealing manner.

Deployment

The final implementation of our Movie Recommendation System was deployed on a


scalable and robust platform, ensuring that it could handle a growing number of
users and movie entries. This deployment phase aimed to make the recommendation
system accessible to a wide audience.

In the implementation phase of our Movie Recommendation System, we diligently


collected and preprocessed data, engineered meaningful features, and explored the
capabilities of three machine learning algorithms: SVM, KNN, and Decision Trees.
KNN emerged as the most effective method for generating accurate and relevant
movie recommendations, surpassing the other models in terms of performance. With
an intuitive user interface and a scalable deployment, our recommendation system is
well-equipped to enhance user satisfaction and engagement in the realm of movie
consumption.
Chapter 6 : Conclusion

In the real world, the movie box office can be determined by many things that are
vey hard to collect, such as current economic situation, recent news and popularity
of actors, and number of competing film. The film market is very competitive, and
predicting movie box office is a tough challenge. However, I believe I can improve
the performance of my model by cleaning up the outliers, collecting more
observations and features, and using more mothed.
Chapter 7 – References

1: Chuansun76. "Imdb-5000-movie-dataset." Kaggle. N.p., n.d. Web.


https://www.kaggle.com/deepmatrix/imdb-5000-movie-dataset
2: Sharda, Ramesh, and Dursun Delen. "Predicting Box-office Success of Motion
Pictures with Neural Networks." N.p., n.d.
Web. http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.85.679&rep=rep1&type=pdf
3: Im, Darin, and Minh Thao Nguyen. "PREDICTING BOX-OFFICE SUCCESS OF
MOVIES IN THE U.S. MARKET." PREDICTING BOX-OFFICE SUCCESS OF
MOVIES IN THE U.S. MARKET (n.d.): n. pag. Http://cs229.stanford.edu.
Web. http://cs229.stanford.edu/proj2011/ImNguyen- PredictingBoxOfficeSuccess.pdf
4: Merwe, Jason Van Der, and Bridge Eimon.
"Http://cs229.stanford.edu/proj2013/vanderMerweEimon-MaximizingMovieProfit.pdf."
Predicting Movie Box Office Gross (n.d.): n. pag. Http://cs229.stanford.edu.
Web. http://cs229.stanford.edu/proj2013/vanderMerweEimon-MaximizingMovieProfit.pdf
5: Arias, Marta. "Log-Linear Models and Logistic Regression." Linear and Logistic
Regression 40.3 (1998): 267-68. Www.cs.upc.edu. Fall 2012. Web.
6: Maji, Subhransu. "Binary Particle Classification." Practical Guide to Machine
Vision Software (2014): 191-208. Http://www.csee.umbc.edu. Web.
7: Shalev-Shwartz, Shai, Yoram Singer, Nathan Srebro, and Andrew Cotter.
"Pegasos: Primal Estimated Sub-gradient Solver for SVM." Mathematical
Programming 127.1 (2010): 3-30. Http://ttic.uchicago.edu. Web.
8: "CRAN - Package E1071." CRAN - Package E1071. Comprehensive R Archive
Network (CRAN), n.d. Web. 15 Dec. 2016.
9: "CRAN - Package RandomForest." CRAN - Package RandomForest. N.p., n.d.
Web. 15 Dec. 2016.

You might also like