0% found this document useful (0 votes)
161 views17 pages

Movie Recommendation System: Synopsis For Project (KCA 353)

This document provides an overview of a student project to develop a movie recommendation system. It includes an introduction describing recommendation systems and their use in movies. It then discusses related works on movie recommendation systems using clustering and collaborative filtering techniques. The problem statement aims to recommend movies to users based on their preferences. The objectives are listed as improving accuracy, quality, scalability and user experience of the recommendation system. Motivation for the project cites benefits of recommendation systems for customers and businesses. The methodology section proposes a hybrid approach using content-based and collaborative filtering with cosine similarity to compute movie similarities efficiently. It also describes an agile development process. Finally, the document notes that the next chapter will specify the system requirements.

Uploaded by

Rishabh Mishra
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
161 views17 pages

Movie Recommendation System: Synopsis For Project (KCA 353)

This document provides an overview of a student project to develop a movie recommendation system. It includes an introduction describing recommendation systems and their use in movies. It then discusses related works on movie recommendation systems using clustering and collaborative filtering techniques. The problem statement aims to recommend movies to users based on their preferences. The objectives are listed as improving accuracy, quality, scalability and user experience of the recommendation system. Motivation for the project cites benefits of recommendation systems for customers and businesses. The methodology section proposes a hybrid approach using content-based and collaborative filtering with cosine similarity to compute movie similarities efficiently. It also describes an agile development process. Finally, the document notes that the next chapter will specify the system requirements.

Uploaded by

Rishabh Mishra
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 17

MOVIE RECOMMENDATION SYSTEM

Synopsis for Project (KCA 353)

Master
in
Computer Applications

Submitted by

2100520140036, Rishabh Mishra


2100520140031, Parmanand Prajapati
2100520140064, Vaibhav Raj Verma

Under the guidance of


Dr. Upendra Kumar
Ms. Priyanka Gautam

Department of Computer Science and Engineering


INSTITUTE OF ENGINEERING AND TECHNOLOGY
Dr. A.P.J Abdul Kalam Technical University Uttar Pradesh

Jan 2023

1
Table of Content

S. no. TOPIC PAGE NO.


1. INTRODUCTION 3
2. RELATED WORK 4-5
3. PROBLEM 6
4. OBJECTIVE 6
5. MOTIVATION 6
6. METHODOLOGY 7-8
7. SYSTEM REQUIREMENT SPECIFICATION 9-10
8. SYSTEM ANALYSIS AND DESIGN 11-13
9. PLAN OF WORK 14
10. CONCLUSION AND FUTURE SCOPE 15

REFERENCES 16

2
1 Introduction

A recommendation system or recommendation engine is a model


used for information filtering where it tries to predict the preferences of
a user and provide suggests based on these preferences. These systems
have become increasingly popular nowadays and are widely used today
in areas such as movies, music, books, videos, clothing, restaurants,
food, places and other utilities. These systems collect information about
a user's preferences and behaviour, and then use this information to
improve their suggestions in the future.

Movies are a part and parcel of life. There are different types of movies
like some for entertainment, some for educational purposes, some are
animated movies for children, and some are horror movies or action
films. Movies can be easily differentiated through their genres like
comedy, thriller, animation, action etc. Other way to distinguish among
movies can be either by releasing year, language, director etc. Watching
movies online, there are a number of movies to search in our most
liked movies . Movie Recommendation Systems helps us to search our
preferred movies among all of these different types of movies and hence
reduce the trouble of spending a lot of time searching our favourable
movies. So, it requires that the movie recommendation system should
be very reliable and should provide us with the recommendation of
movies which are exactly same or most matched with our preferences.

3
2. Related Works
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.

2.1 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. K- Means 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.

4
2.2 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, item-


based 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.

5
3. 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.

4. Objective of the Projects


▪ Improving the Accuracy of the recommendation system
▪ Improve the Quality of the movie Recommendation system
▪ Improving the Scalability.
▪ Enhancing the user experience.

5. Motivation

A large number of companies are making use of recommendation


systems to increase user interaction and enrich a user's shopping
experience. Recommendation systems have several benefits, the most
important being customer satisfaction and revenue. Movie
Recommendation system is very powerful and important system. But,
due to the problems associated with pure collaborative approach, movie
recommendation systems also suffer with poor recommendation quality
and scalability issues.

6
6. Methodology for Movie Recommendation

The hybrid approach proposed an integrative method by merging fuzzy k-


means clustering method and genetic algorithm based weighted similarity
measure to construct a movie recommendation system. The proposed
movie recommendation system gives finer similarity metrics and quality
than the existing Movie recommendation system but the computation
time which is taken by the proposed recommendation system is more
than the existing recommendation system. This problem can be fixed by
taking the clustered data points as an input dataset

The proposed approach is for improving the scalability and quality of the
movie recommendation system .We use a Hybrid approach , by unifying
Content-Based Filtering and Collaborative Filtering, so that the
approaches can be profited from each other. For computing similarity
between the different movies in the given dataset efficiently and in least
time and to reduce computation time of the movie recommender engine
we used cosine similarity measure.

7
Agile 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 analyzing 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 only two algorithms


one is cosine similarity and other is single valued
decomposition are used to build the machine learning
recommendation model.

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.

8
7. SYSTEM REQUIREMENTS SPECIFICATION

This chapter involves both the hardware and software requirements needed for
theproject and detailed explanation of the specifications.

7.1 Hardware Requirements


• A PC with Windows/Linux OS
• Processor with 1.7-2.4gHz speed
• Minimum of 8gb RAM
• 2gb Graphic card
7.2 Software Specification

• Text Editor (VS-code/WebStorm)


• Anaconda distribution package (PyCharm Editor)
• Python libraries
7.3 Software Requirements

7.3.1 Anaconda distribution:

Anaconda is a free and open-source distribution of the Python programming


languages for scientific computing (data science, machine learning
applications, large-scale data processing, predictive analytics, etc.), that aims
to simplify package management system and deployment. Package versions
are managed by the package management system conda. The anaconda
distribution includes data-science packages suitable for Windows, Linux and
MacOS.3

9
7.3.2 Python libraries:

For the computation and analysis we need certain python libraries which are
used to perform analytics. Packages such as SKlearn, Numpy, pandas,
Matplotlib, Flask framework, etc are needed.

SKlearn: It features various classification, regression and clustering


algorithms including support vector machines, random forests, gradient
boosting, k-means and DBSCAN, and is designed to interoperate with the
Python numerical and scientific libraries NumPy and SciPy.

NumPy: NumPy is a general-purpose array-processing package. It provides


a high-performance multidimensional array object, and tools for working
withthese arrays. It is the fundamental package for scientific computing with
Python. Pandas: Pandas is one of the most widely used python libraries in
datascience. It provides high-performance, easy to use structures and data
analysistools. Unlike NumPy library which provides objects for multi-
dimensional arrays, Pandas provides in-memory 2d table object called Data
frame.

Flask: It is a lightweight WSGI web application framework. It is designed to

make getting started quick and easy, with the ability to scale up to complex

applications. It began as a simple wrapper around Werkzeug.

10
8. SYSTEM ANALYSIS AND DESIGN

8.1 System Architecture of Proposed System:

Fig:-4.1 Architecture for hybrid approach

For each different individual use different list of movies are


recommended, as user login or enters the user id based on two different
approaches used in the project each will recommend the set of movies to the
particular user by combining the both the set of movie based on the user the hybrid
model will recommend the single list ofmovie to the user.

11
8.2 Activity Diagram:

Fig:-4.2 Activity diagram

Once the user login by entering the user id i.e. present in the csv file ranges
from 1-5000 the list of movie are recommended to the user.

12
8.3 Dataflow:

Fig:-4.3 Data Flow Diagram

Initially load the data sets that are required to build a model the data set
that are required in this project are movies.csv, ratinfg.csv, users.csv all
the data sets are available in the Kaggle.com. Basically, two models are
built in this project content based and collaborative filtering each
produce a list of movies to a particular user by combining both based on
the user id a single final list of movies are recommended to the
particular user

13
9. Plan of work
PERT CHART

A project plan needs to be created to ensure the timely completion of the project. As part of
project analysis, we break the project down to a number of stages and use a Gantt chart and PERT
chart to describe specific tasks and status.
The Work Breakdown Structure of our proposed system “E-Commerce” is shown below:

ID Task Name Duration Start Finish

1 Project Initiation 10 days 1/9/22 10/9/22

2 Draft Project Plan 10 days 11/9/22 20/9/22

3 Analysis Phase 10 days 21/9/22 30/9/22

4 Plan User Interviews 10 days 1/10/22 10/10/22

5 Schedule users 10 days 11/10/22 20/10/22


Interviews

6 Conducting users 11 days 21/10/22 31/10/22


Interviews

7 System Design 20 days 1/11/22 20/11/22

8 Modules Design 10 days 21/11/22 30/11/22

14
9 Data Structure 5 days 1/12/22 5/12/22
Design

10 User Interface 5 days 6/12/22 10/12/22


Design

11 Coding Phase 21 days 11/12/22 31/12/22

12 Testing Phase 5 days 1/1/23 5/1/23


13 Integration Testing 5 days 6/1/23 10/1/23

14 System Level 5 days 11/1/23 15/1/23


Testing

15 Implementation 5 days 16/1/23 20/1/23

16 Post-Implementation 4 days 21/1/23 24/1/23


Review

15
10. Conclusion and Future Scope

10.1 Conclusion
In this project, to improve the accuracy, quality and scalability of movie
recommendation system, a Hybrid approach by unifying content based filtering and
collaborative filtering; using Singular Value Decomposition (SVD) as a classifier and
Cosine Similarity is presented in the proposed methodology. Existing pure
approaches and proposed hybrid approach is implemented on three different Movie
datasets and the results are compared among them. Comparative results depicts
that the proposed approach shows an improvement in the accuracy, quality and
scalability of the movie recommendation system than the pure approaches. Also,
computing time of the proposed approach is lesser than the other two pure
approaches.

10.2 Future scope

In the proposed approach, It has considered Genres of movies but, in future we can
also consider age of user as according to the age movie preferences also changes,
likefor example, during our childhood we like animated movies more as compared
to other movies. There is a need to work on the memory requirements of the
proposed approach in the future. The proposed approach has been implemented
here on different movie datasets only. It can also be implemented on the Film
Affinity and Netflix datasets and the performance can be computed in the future.

16
REFERENCES
[1] Hirdesh Shivhare, Anshul Gupta and Shalki Sharma (2015), “Recommender
system using fuzzy c-means clustering and genetic algorithm based weighted
similarity measure”, IEEE International Conference on Computer,
Communication and Control.

[2] Manoj Kumar, D.K. Yadav, Ankur Singh and Vijay Kr. Gupta (2015), “A
Movie Recommender System: MOVREC”, International Journal of Computer
Applications (0975 – 8887) Volume 124 – No.3.

[3] RyuRi Kim, Ye Jeong Kwak, HyeonJeong Mo, Mucheol Kim, Seungmin
Rho,Ka Lok Man, Woon Kian Chong (2015),“Trustworthy Movie Recommender
System with Correct Assessment and Emotion Evaluation”, Proceedings of the
International MultiConference of Engineers and Computer Scientists Vol II.

[4] Zan Wang, Xue Yu*, Nan Feng, Zhenhua Wang (2014), “An Improved
Collaborative Movie Recommendation System using Computational
Intelligence”,Journal of Visual Languages & Computing,Volume 25, Issue 6.

[5] Debadrita Roy, Arnab Kundu, (2013), “Design of Movie Recommendation


System by Means of Collaborative Filtering”, International Journal of Emerging
Technology and Advanced Engineering, Volume 3, Issue 4.

17

You might also like