Introduction

A recommendation or a recommender system is defined as an information filtering system which aims at predicting the rating given by a user to a particular item(Pazzani and Billsus, 2007).

Recommender systems have found application in different areas like movies, news, research articles, music, books, search queries, products and social tags to name a few. Some recommender systems are used for Twitter pages, romantic partners, life insurance, financial services, garments, restaurants, jokes, collaborators and experts.

Book Recommendation Algorithm

Discussion 

The recommendation algorithms are simple and suitable only for smaller systems. Until today, a recommendation problem was considered as an overseen machine learning job. However, the time has come to implement unsupervised techniques for resolving problems. The most primary idea while developing a huge recommendation system for matrix decompositions and collaborative filtering to work longer is clustering(Onuma et.al, 2009).

When a business is initiated, it generally lacks the grades of previous users. Thus, clustering is considered as the most suitable approach here. On the whole, clustering is a weaker approach as user groups are identified in it and every user in the group is recommended with the same item. Clustering seems to be the most appropriate approach when adequate data is available. Every cluster is assigned to specific preferences depending on customer preferences belonging to a cluster. Recommendations will be given to the customers belonging to every cluster that are computed at the cluster level.

Collaborative Filtering

Collaborative filtering techniques focus on collection and analysis of enormous volumes of information associated with preferences, activities or behaviours of users to predict their likes depending on similarity with other users. Collaborative filtering depends on the assumption that individuals saying a yes in the past will also say a yes in the future and they will portray likeliness for similar items(Onuma et.al, 2009).

Content-based Filtering

Content-based filtering is a commonly used approach while designing recommender systems. A content-based recommender system uses keywords for describing the various items and the user profile is designed to indicate the express their preferences. Thus, these algorithms suggest items which are identical to the ones liked by the users in the past. Some of the candidate items are comparable with the items that have been rated previously by the users and the ones that are best-matching are suggested(Gong, 2010). 

An item presentation algorithm is used for abstracting the item features within the system. The most commonly used is the vector space representation.

There are two forms of information which play an important role in creating the user profile:

-A user preference model.

-A history showing the interactions of the user with a recommender system.

These techniques utilize an item profile comprising of a set of features and attributes describing the item. A content-based profile is created by the system for the users depending on a weighted vector of the features of the various items. These weights indicate the significance of every feature with respect to the user and can be measured from separately rated content vectors based on different methods(Zhao et.al, 2002). The simple methods make use of average values associated with the rated item vector whereas complicated methods utilize machine learning methods like artificial neural networks, decision tress, cluster analysis and Bayesian Classifiers for estimating the probability of a user to like an item.

Hybrid recommender systems

Current studies indicate that deploying a hybrid approach which combines content-based and collaborative filtering can be highly effective. These methods can be deployed in various ways-by making collaborative-based and content-based predictions distinctively and later combining them; by combining all the approaches into a single model: by adding the content-based approach to the other approach etc. There are a number of studies that compare the way hybrid systems perform with respect to the content-based and collaborative methods and indicate that the hybrid techniques are successful in providing highly accurate suggestions. They also help in resolving common issues faced by recommender systems like sparsity problem and cold start.

Netflix is the best example of a hybrid recommender system. Recommendations are made by the website based on the general searching and watching habits of the identical users(Zhao et.al, 2002). It thus offers movies which share similar features with a film which has been highly rated by the user.

Different methods like demographic, knowledge-based, content-based and collaborative are suggested. However, a hybrid recommender system tries to combine different methods and achieve some collaboration amongst them.

References 

Gong, S. (2010). A collaborative filtering recommendation algorithm based on user clustering and item clustering. JSW5(7), 745-752.

Onuma, K., Tong, H., & Faloutsos, C. (2009, June). TANGENT: a novel,’Surprise me’, recommendation algorithm. In Proceedings of the 15th ACM SIGKDD international conference on Knowledge discovery and data mining(pp. 657-666). ACM.

Pazzani, M. J., & Billsus, D. (2007). Content-based recommendation systems. In The adaptive web(pp. 325-341). Springer, Berlin, Heidelberg.

Zhao, L., Hu, N. J., & Zhang, S. Z. (2002). Algorithm design for personalization recommendation systems. Journal of computer research and development39(8), 986-991.