Movie Recommendation System Using Machine Learning Algorithms

– Movies are one kind of enjoyment however the challenge is locating the specified resources among the lots of movies discharged annually. To search out a show what users are seeking out through this technology is incredibly troublesome. However, recommendation structures return abundant handier in these things. Searching is the first step depending on which the movies are recommended to the user. To search a movie the user may use any of the parameter like name of the actor, director, genres etc. Searching based on one of the parameters and recommending movies based on the parameter is how the current recommendation system works. The movies are recommended with the help of filtering technique i,e collaborative filtering which recommends the movies based on user preference and ratings of the movies. This can be further enhanced by taking multiple parameters (2 in this case) for searching the movies based on which the recommendation can be done. With the help of multiple parameters (2 in this case) the user can be more specific in what he wants to search so that it helps in more accurate recommendations of the movies.


I. INTRODUCTION
A recommendation system, typically called a recommendation engine, could be a model for data filtering that tries to anticipate a user's preferences and supply recommendations supported by those selections. Recommendation systems are an important part of many online shopping systems since they allow store owners to give customers customized items. In basic terms, it's an algorithm that proposes goods and services to consumers that seem to be relevant to them. These systems have become matured in quality in recent years, and that they square measure currently wide used in fields like movies, music, books, videos, apparel, restaurants, food, locations, and different services. Customers that use these applications usually turn out a big quantity of revenue, that is why several organizations square measure trying to boost their recommendation engines. Various technological choices were taken to address challenges linked to a variety of areas, including the lack of baselines, restricted data availability, performance measure options, and assessment methodologies, in order to create such suggestions. It enhances the on-site experience by bringing together different suggestions for a wide range of audiences.
Developing systems that provides effective and acceptable concepts could be an issue, despite the actual fact that recommendation systems are well-liked. every user has their own tastes and interests. What is more, a user's preference is influenced by a spread of things like their mood, the occasion, the aim for his or her purchase, and so on. If a web site or app cannot forecast and deliver applicable suggestions supported the user's preferences, the user is probably going to reject the web site or app. As a result, businesses can forever ought to update their recommendation systems. though there are many algorithms for recommendation, cooperative filtering technique is that the most frequently utilized by organizations since it needs a lot of user participation.
Collaborative filtering may be a methodology of filtering things that a user may get pleasure from supporting the reactions of alternative users. It works by screening through an enormous cluster of people to spot a smaller cluster of users with similar likes to a selected user. . Collaborative filtering will foresee more than content-based filtering since it analyses the user's browsing history and compares it to that of other users. Content-based filtering, on the other hand, searches for related films using the user's information and proposes them in decreasing order.
Users and the service provider both stand to gain from the recommendation system. They save users time by shortlisting the items they are searching or have searched by comparing and evaluating their profile with the database. They help the consumers reach and sell more of their products/services. Recommendation system helps users to arrive at a decision and save their time.
Data for recommender systems comes from specific user evaluations when seeing a motion-picture show or paying attention to a music, implicit computer program inquiries and get histories, and alternative data regarding the users/items themselves. The recommendations given by this system is never perfect, it provides suggestions based on other consumers choices and users searches. For example on OTT platform, which movie to watch, on e-commerce, which product to buy and videos on YouTube and so on.
II, WORK IN THIS AREA Paper [1] discusses about different filtering algorithms and its usage. It mainly demonstrates collaborative filtering algorithm utilizing Apache Mahout which were used to construct a movie recommender system. In paper also includes Matplotlib packages in Python which can be used to give a visual representation. This is more helpful to analyse the data in order to get insights of the movie dataset.
Different algorithms i.e K-NN and collaborative filtering are used in paper [2] in order to improving the accuracy of outcomes over content-based filtering. To avoid the limitations of content-based filtering process the strategy used is based on cosine similarity utilizing k-nearest neighbour and collaborative filtering. This method is based on cosine similarity utilizing k-nearest neighbour and a collaborative filtering strategy, avoiding the limitations of content-based filtering in the process.
Paper [3] discusses about the study of construction and contrast of many recommendation systems capable of producing item suggestions based on customer, product, and customer-product interaction data, as well as the usage of various machine learning techniques. In addition, several strategies for applying machine learning models to develop recommendation systems, as well as teaching, assessing, and contrasting the various methods in order to produce a broad yet precise ranking prediction answer.
A hybrid recommendation engine is discussed in paper [4] that combines both the Content-based and SVD filtering models to demonstrate optimal performance which helps in enhancing movie suggestions, allowing users to stay engage on the site. Model-based techniques, such as the SVD and SVD++ algorithms, use Dimensionality reduction and Matrix Factorization to solve the problem. It is a hybrid model which results in a 20% increase in performance and accuracy over the independent models.
An overview of strategies developed in a recommendation system, as well as their methodologies are discussed in Paper [5].One of the technique that is mainly discussed is Collaborative Filtering its benefits and limitations and its different types. Though Collaborative Filtering is the most widely and commonly used filtering technique it has some drawbacks such as it has high run time and faces issues like data sparsity.
An overview of recommendation systems as well as a description of the current generation of recommendation techniques is discussed in Paper [6].It also seeks to discuss various recommendation algorithms that are used in recommendation system along with its limitations and benefits. Personal, implicit, and local information from the Internet are used by recommendation algorithms. This document seeks to discuss the limitations and benefits of various recommendation algorithms.
A film recommender engine is described in paper [7], which essentially utilizes an item-based collaborative filtering approach to providing dynamic item suggestions that learn from positive feedback and uses only single parameter so its optimal and fast in producing results and can be used in real time to get results. Paper [8] discusses about how collaborative filtering is classified in different approaches such as matrix factorization, user-based recommendation, and item-based recommendation which helps in building recommendation system. Also to measure the performance of the system Root mean square method (RMSE), Mean Square method (MSE), macro and micro averaged f-measure are used.
A Hybrid approach is presented in paper [9], use of integrating content-based filtering and collaborative filtering, as well as using the Support Vector Machine as a classifier and a genetic algorithmic program, a hybrid approach to improve the quality of a movie recommendation system has been developed. The planned technique alters the accuracy, quality, and measurability of the flick suggestion system, according to comparative results. The hybrid strategy incorporates the benefits of both techniques while also attempting to eliminate the shortcomings of each.
The paper [10] mentions MovieREC, a moving-picture show recommendation recommender system. It describes how a user picks a moving-picture show from a set of datasets, as well as how the K-means formula works and hence the additive weight of the various features are used to propose a moving-picture show list. It allows a user to choose from a variety of features and then suggests a moving-picture show list to him based on the additive weight of the various attributes and hence the K-means formula. Because of the nature of our system, judging success is difficult because there is no right or wrong advise it is simply a matter of opinion.

III PROPOSED METHODOLOGY Problem Statement
Movies are one kind of enjoyment however the challenge is locating the specified resources among the lots of movies discharged annually. To search a movie of viewer choice is not so easy in the present scenarios. Searching the movie based on one factor (like actor, movie name, genre, etc.) may not propose the desired output for the user. The objective of this proposed solution is to present a model to design a movie recommendation system which includes multiple parameters(2 in this case) for searching of the movies, which helps in improving accuracy of searching the movies and proving better search results for the recommendation system.

IV METHODOLOGY
There are two types of major techniques to build recommendation system namely Content-based filtering and collaborative filtering. One prevalent approach for recommendation or recommender systems is content-based filtering. "Content" refers to the content or qualities of the products you favor. The algorithmic rule utilizes your characteristics and preferences to create suggestions for stuff you would possibly fancy. It takes data you supply via the web and therefore the information they will acquire and curates suggestions supported it. [11] This type of recommender system is vastly keen about the inputs provided by users, some common examples enclosed Google, Wikipedia, etc. as an example, once a user searches for a gaggle of keywords, then Google displays all the things consisting of these keywords. The contentbased recommendation system works on 2 ways, each of them exploitation completely different models and algorithms. One uses the vector spacing methodology and is termed methodology one, whereas the opposite uses a classification model and is termed methodology two.
Collaborative cooperative tend to find similar individuals and suggest what they relish. It doesn't utilize the item's options to suggest during this variety of suggestion system it teams customers into clusters of comparable classes and recommend every user supported the interests of their cluster. Collaborative Filtering is a technique that collects information from other users in the form of ratings and compares them. Consider A and B, two individuals who are watching movies online on a certain platform. They both viewed the X movie before moving on to the Y movie (on different time). Now that user B has seen movie Z, this film will be shown to A who hasn't seen it yet.
The two most popular forms of collaborative filtering are: User-based collaborative filtering and item-based collaborative filtering where User-based: As cooperative filtering procures its results from implicit information, it's ready to retrieve data that users otherwise won't give. With the use of collaborative filtering, this strategy narrows down people with comparable habits, shared contacts, closed demographics, and similar consumer behaviors. This strategy is used on social networking sites to advocate for users to various users based on their activity patterns. Furthermore, this method is also used for targeted marketing and suggested items for individuals who have similar choices and interests. User-based cooperative filtering was the first strategy to emerge among the several approaches to cooperative filtering. The second type of collaborative filtering is Item based collaborative filtering as shown in Fig 1. Item-based cooperative filtering refers to the advise of goods or commodities mistreatment cooperative filtering, which is a subset of cooperative filtering approaches. Things are advised to users based on their historical knowledge and interaction history by measuring similarity across products and inferring individual ratings. Amazon invented and used this type of collaborative filtering for the first time in 1998. Even today, e-commerce platforms like Myntra and [12] Ajio employ item-based suggestive algorithms to propose comparable goods or products to consumers by filtering them based on the user's previous interaction knowledge.
The primary category of cooperative filtering is that the user-based approach. User-Based Collaborative Filtering as shown in Fig 2, It's a method of forecasting what a user would enjoy based on the ratings provided to the item by entirely different users who have similar likes to the target user. Fig 3 shows cosine similarity where it shows how similar the documents are irrespective of their size. it's advantageous as a result of even though the similar documents are so much apart by the geometer distance. Cosine Similarity is a metric that measures the similarity between vector addition. The cos of the angle between vectors is the cos similarity. The vectors are typically non-zero and are contained inside a dot product region. The division between the scalar product of vectors, and therefore the product of the geometrician norms or magnitude of each vector, defines the cos similarity mathematically.
In the proposed work collaborative filtering is used to recommend the movies to the viewer's where user based approach filters the movies from the collection of various movies based on ratings and the cosine similarity matrix checks the similarity among items ratings provided by the various users which helps the viewer in searching the desired movie with ease and also find the best content available for watching.    Fig 4 will explain about the basic process involved in the recommendation system. In the proposed approach two parameters are taken as a input from user (example name of actor and genre of movie)depending on the input parameter provided by the user search is made, with the help of which movies are been searched from the dataset with more accuracy as the user is passing multiple parameters. In the generated list of movies based on the search, recommendation of the movies are made using collaborative [13] filtering approach based on the ratings with the help of cosine similarity the similarity between two items is calculated. Hence the movies with the maximum rating will be recommended to the user. V CONCLUSION The recommendation system is a great tool that assists people in discovering what they prefer. Searching is primary and important step in recommendation system with the help of searched results the also helps the outcome of the recommendation system. Therefore, the primary goal is to improve the search [14] and recommendation system so that better results could be obtained. For the future work we can introduce multiple parameters for search results in order to improve accuracy of the recommendation system.