144 | International Journal of Computer Systems, ISSN-(2394-1065), Vol. 03, Issue 02, February, 2016 Available at http://www.ijcsonline.com/
Recommender Systems: A Survey
Sharu Vinayak, Rahul Singh
Computer Science and Engineering, Chandigarh University, Mohali, Punjab, India
Abstract
The development of recommender systems and web go hand in hand. Recommender systems try to minimize information overload and perpetuate customers by selecting a subset of items from a universal set based on user likings . Although these systems have grown out from the concept of information retrieval and filtering , with time it has successfully propagated into a authentic and challenging research area itself. Recommender systems have always been related to content based filtering versus collaborative filtering. Recommendations, however, are not made in void , but rather devised within an informal community of users and social context. Recommender Systems are therefore a subclass of information filtering systems that attempt to estimate the rating or preference that a user might give to an item or social elements that he may not had considered yet, using a model built from the characteristics of an item or the user’s social environment. This article gives an overview about recommender systems and their evolution as well as the various methods and algorithms related to them.
Keyword-Content Based, Collaborative, Demographic, Information Retrieval, Recommender Systems
I. INTRODUCTION
Since emergence of the first paper on collaborative filtering in the mid-1990s Recommender Systems(RS) have become an important research field. RS imparts advice to users about items they might like to buy or examine. Recommendations made by such systems can help users navigate through large information spaces of product descriptions, news articles or other items. RS are software contrivances and tactics that provide suggestions for items to be of use to a user. The purpose of a recommender system is to generate meaningful recommendations for items or products to a collection of users that might interest them. Real world examples of the operation of industry-strength recommender systems are suggestions for books on Amazon, or movies on Netflix . Features like age ,gender ,location ,followers ,tweets , posts etc. of the user may be used by the RS to collect information about the user and hence produce effective recommendations. In the recent times, RS implementation in the Internet has increased, which has facilitated its use in diverse areas [18]. The study about movie recommendations is the most common and focused amongst various research papers ; however, apart from this a great amount of RS literature is centred on different topics, like music [18,16,20], television [21,18], books [22,23], documents [6,15,14,16], learning [5,13], e-commerce [8,12], applications in markets [10] and web search [7].
According to the researchers there are four main dimensions that help in the study of recommender systems: how the system is (i) modeled and designed (i.e., are recommendations content based or collaborative?), (ii) targeted (to an individual, group, or topic), (iii) built, and (iv) maintained (online vs. offline) [10]. Recommender
systems are usually studied according to whether recommendations are content based or collaborative. The most exaggerated and popular modeling dichotomy is content-based filtering vs. collaborative filtering . Content-based filtering involves recommending items Content-based upon the description of items and a profile of the user‘s interests.; e.g., ‗if you liked Mahout In Action, you also might be interested in Apache Mahout Cookbook.‘ Where As Collaborative filtering ,involves recommending those items that the users, whose tastes are similar to the user seeking recommendation, have liked; e.g., ‗Mary and Maya like The Amazing Spiderman. Mary also likes Batman Returns. Maya also might like Batman Returns.‘ Recommender systems, however, have an inherently social element and ultimately bring people together—a viewpoint under-emphasized in the literature—and therefore should be surveyed from this perspective.
A. Recommender System Process
The three main phases of a RS process are as shown in figure 1.
Information collection phase: Relevant information
about the users is collected in order to generate user profiles or models for accomplishing recommendation tasks including user‘s attributes, their behaviors or the content of the resources accessed by the user.
Learning phase: Learning algorithms are applied in this phase in order to filter and exploit the user‘s features from the feedback gathered in the previous phase.
Recommendation phase: Final phase of a recommender
observed or using the dataset collected in the initial phase , dataset can be both memory or model based.
Feedback
Figure 1. Recommender System Process
B. Categories Of Recommender Systems
Broadly there are two categories of RSs , namely
Personalized RSs: Personalization in general is defined as the manner in which relevant information and services can be tailored from a vast set of information and services that matches the unique and specific needs of an individual or a community. In these type of RSs the users are requested for their explicit and implicit needs in order to recommend items or products to them. Usually E-commerce sites make use of this category of RSs in order to suggest items to their customers. Ebay.com is one of the most popular example. These techniques are helpful to the sites such that they can spread overall the internet to adapt themselves to the requirements of each customer hence resulting in a personalized recommendation for each of them.
Non – Personalized RSs: This type of RSs don‘t seek userneeds. They make recommendations either on the basis of top-ratings or showing same stuff to two different users who might be seeing them at the same time or different time. Such RSs are used because sometimes there is no knowledge about the identity of the user and also about what interests him. These systems are automatic and require little customer effort in order to generate the recommendations and are. Non-personalized recommender systems recommend products to customers based on what other customers have said about the products on average. The recommendations are independent of the customer, so each customer gets the same recommendations. Non-personalized recommender systems are automatic, because they require little customer effort to generate the recommendations and are fugitive. Amazon.com and Moviesfinder.com are examples of non-personalized RSs.
II. BASIS OF RECOMMENDER SYSTEMS This section of the paper presents the most pertinent notions on which the traditional RSs are based. Here, we
extend general descriptions on the traditional taxonomies, algorithms, methods, various filtering approaches, databases, etc.
A. Basic Principles
The process of generating recommendations is based on a combination of the following analysis :
The type of data available in the database (e.g., ratings given by the user , user‘s registration information, attributes and content for the items that can be ranked, social relationships among users and location-aware information).
The type of filtering algorithm being used (e.g., demographic, content-based, collaborative, social-based, context-aware , utility based and hybrid). The type of model chosen (e.g., based on direct use of
data i.e. ‗‗memory-based,‘‘ or a model generated using such data i.e. ‗‗model-based‘‘).
The employed techniques used to reduce sparsity levels, etc.
Sparsity level of the database and the desired scalability.
Performance of the system (time and space consuming).
The objective pursued (e.g., predictions and top N recommendations) as well as The expected quality of the results (e.g., novelty, coverage and precision). III. RECOMMENDER SYSTEM APPROACHES There exist several approaches of recommender systems based on their functionality . Point of interest in this discussion is not the kind of interface or the properties of the user‘s interaction with the recommender, but rather the sources of data on which recommendation is based and the use to which that data is put. Specifically, recommender systems have (i) The information that the system has before the recommendation process begins, known as background data,(ii) The information that user must communicate to the system in order to generate a recommendation ,known as input data and (iii) An algorithm that combines background and input data to arrive at its recommendations. In his work [25] A. Iskold outlined four main approaches to recommendations namely,(i) Personalized recommendation – things are recommended based on the user's past behaviour, (ii) Social recommendation – recommendations made are based on the past behaviour of similar users , (iii) Item recommendation – items are recommended based on the item itself and (iv) A combination of all the three approaches.
On the basis of their internal functionality the following approaches are being discussed in this paper :
A. Content Based Recommender Systems
In content based recommender systems instead of other user‘s ratings of the system , item recommendations are made based upon either the description or the contents of items. The content-based approach to recommendation has its roots in information retrieval and information filtering Information
Phase
Learning Phase
research. Item –to – item correlation is employed for generating recommendations rather than deriving a user – to – item correlation and defining methodologies. Data gathering is the first and foremost phase of recommendation process in these systems. For example, artist, album, genre etc. for music are some of the common content information. Feature extraction and information indexing are few techniques used in order to extract content data. In these systems items are defined by their associated features ; also the long-term models are updated as more evident about user preferences .
BargainFinder and Jango are the websites that try to gather information from various different web information sources. PRES[12] abbreviated for Personalized Recommender System is a content based RS that compares a user profile with the contents of each document in the collection to make recommendations .
Figure 2.represents the basic architecture of content based recommender systems.
Recommendations Figure 2. Content Based Recommender Systems
Advantages :
user independence ;
transparency in explanations ; no cold start.
Disadvantages:
limited content analysis content may not be automatically extractable (multimedia) missing domain knowledge keywords may not be sufficient overspecialization – ―more of the same‖, too similar items new user – ratings or information about user has to be collected
B. Collaborative Filtering Recommender Systems
Collaborative Filtering RSs allow users to give ratings about a set of items (e.g. videos, songs, movies, books, etc. in a CF based website)so that when there is enough information stored on the system, recommendations to each user can be made based on the information provided by those users considering the most things in common with them. User ratings can also be acquired implicitly (e.g., number of times a song is heard). The k Nearest Neighbors (kNN) is the most widely and commonly used algorithm for collaborative filtering .In CF time-based discounting of ratings is used.
CF is of two types :
User Based Collaborative Filtering(UBCF): in this
type of CF items are recommended by finding out similar users. But it is often harder to scale because of the dynamic nature of the user. UBCF is also called as memory based collaborative filtering. Memory-based type of algorithms are also known as the nearest neighbors method, being the first technique to be employed in this category. When computing the recommendation, the whole set of user ratings is processed because the opinions of the current user are compared with the ones of all the other users in order to find the neighbors (users with the most similar opinions) [2].
Item Based Collaborative Filtering (IBCF):IBCF is
also called as model-based collaborative filtering or techniques. Model-based techniques use a different strategy, mainly to minimize some weaknesses of the memory-based methods. Model-based methods use data mining techniques to develop a model of user ratings, which is used to predict user preferences[2]. Recommendations are made by calculating the correlation similarities between the items. It is easy to compute the same offline to because items usually don‘t change much.
C. Hybrid Recommender Systems
This approach is a combination of multiple methods or approaches. The main agenda behind the introduction of this approach is to cope up with the problem of conventional recommender systems. Hybrid approach is further classified as:
Weighted Hybrid Approach : In this scores/votes of several recommendation techniques are combined together in order to produce a single recommendation.
Switching Hybrid Approach : In this the system
switches between various recommendation techniques depending upon the current scenario.
Mixed Hybrid Approach : This approach presents
recommendations from several different recommendations at the same time.
Feature combination hybrid approach : Various
features from different recommendation data sources are thrown together into a single recommendation algorithm
Cascade Hybrid Approach : The recommendations
given by one recommender are refined by another recommender .
Feature Augmentation Hybrid Approach : Output from
one technique is used as an input feature to another. Meta-level Hybrid Approach : The model learned by
one recommender is used as input to another
D. Demographic Recommender Systems
Also known as Location Aware Recommender Systems. These recommend items based on the demographic profile of the user. It supposes that for different demographic by places different recommendations must be introduced. It provides simple and effective solutions. In the marketing literature it is quite literature but proper RSs research in this is relatively little.
User Profile
Item Description
Recommender Systems
E. Knowledge Based Recommender Systems
These are specific types of RSs that are used in scenarios where approaches such as CBF and CF cannot be applied. These can be often conversational i.e. User requirements are drawn within the scope of the feedback loop .Application domains for knowledge based recommender systems : expensive items, not frequently purchased, few ratings (car, house) time span important (technological products) explicit requirements of user (vacation) collaborative filtering unusable – not enough data content based – ―similarity‖ not sufficient constraint-based explicitly defined conditions case-based similarity to specified requirements ―conversational‖ recommendations .The major merit of this approach is the non-existence of ―cold start crunch‖. The need of defining Recommendation knowledge in an explicit manner triggers the knowledge acquisition bottlenecks which is a drawback.
F. Community Based Recommender Systems
This type of approach is a good solution to the ―cold start crunch‖. In order to extract the information about the user and fill the gaps existing between the cold start problem and thus find the similarities between the users social networks are used.
G. Semantic Based Recommender Systems
With this approach RSs can generate more accurate results. It can be stated as a general approach for digital assistants in the field of self servicing and e-care. It is a good approach that can help the vendors of various services nad products in increasing the customer satisfaction. The FAQ systems are one of the examples of this approach that uses this approach in order to find out the right answers as well as the right questions and corresponding sections of the technical documentations.
H. Metrics For Evaluating Recommender Systems
The goodness of a recommender system can be evaluated by comparing its results with a test set comprising of known user ratings. Predictive accuracy metrics [28] are used to measure these systems, where there is a direct comparison between predicted ratings and actual user ratings. Mean Absolute Error(MAE) is the most commonly used metric , defined as the average absolute difference between predicted ratings and actual ratings. A. Umanetset al. in their work [29] have used this parameter in order to find the most appropriate algorithm out of SlopeOne ,Eucledian , LogLikeLihood etc. for the system that they have designed.
Root Mean Squared Error (RMSE) is another commonly used metric , that puts more emphasis on larger absolute errors.
Other evaluation metrics are Precision, Recall and Area Under the ROC Curve (AUC) that can be used to discriminate between the ‗good‘ and the ‗bad‘ items in context to information retrieval.
IV. RESEARCH CHALLENGES IN RECOMMENDER SYSTEMS
The Netflix Prize[30] gave a boost the recommendation research. There are a lot of good quality research papers
on how to predict a 1-5 rating for items from a dataset of previous ratings[31]. That is one field that seems to be saturated, but there are lots of open problems:
Cross-Domain Recommendation: Current
systems might be really effective at learning preferences in a domain (say books or movies ), but for the other domains the algorithms might not function that effectively . For e.g. if you like comedy and fiction in books, what does it say about your taste in movies? It would be really fascinating to see how preferences in one domain can be used to judge preferences for the other domain.
Constraint-Based Recommendation: Most of the
research is focused on virtual goods like books , movies and music, where an item can be recommended n number of times. In the real world, it‘s completely not the same . For e.g. Recommending a good restaurant to more number of people than it can handle, it might face trouble to cope up with the load and it's service may decline . How are recommendations made in domains where items are limited? This challenge of recommendation becomes a relaxed version of becomes a relaxed version of the classic matching problem.
Group Recommendations: The basic assertion is
to recommend an item to a group of people. Individual recommendations are computed using typical models the results are then combined using a smart way. But often there might be disagreements, as different groups may have different dynamics.
Impact of Recommendations: The rating
tendencies of individuals are surely effected by recommendations. There has been a little research on the effect of recommendations on our preferences. For e.g. if I am told to buy an item that is liked by 99% of the users whose taste is similar to that of mine?
Recommendation and Social Networks: "Social"
recommendation seems to being an emerging trend in the current research field. Social features are used by many companies in order to provide recommendations based on one‘s friend's preferences and other network characteristics. E.g. A and 20 others like an item X. However, little is understood about how social interactions influence people‘s preferences about an item and other things. Further, social networks themselves act as vehicles of information, diffusing ideas and information across the network. This means that user preferences in a network are not only dynamic, they have an interdependency with the network .How do you design recommender models in social contexts?
Context-aware Recommendation: With the
proliferation in the use of mobile devices, users themselves disclose a lot of contextual information, like location, current activity etc. These data sources provide real-time information, that are both an opportunity and challenge for a recommender system.
Recommendation and Privacy: A major concern
usability and privacy concerns of recommendations are important to be understood, so as to design more privacy concerned systems.
Recommendation as Intelligent Task
Routing: This is a new field (in Cyber Security) which
discusses the growth of online communities. Wikipedia is a good example, which is currently trying hard to attract new editors.
V. CONCLUSION
To extract out relevant information from the overload of online available information recommender systems are proving to be a good tool. The evolution of the web is accompanied by its evolution. The method of data collection in recommender systems varied from generation to generation like ,collecting information from content – based data from purchased or used products in the first generation to using web 3.0 in the third generation. As the use of internet and mobile devices is increasing day by day and so is the amount of online information , recommender systems is an interesting research field to deal with. In this paper we reviewed various recommender system approaches and research challenges.
In future the main agenda is to design a cross domain recommender system using social networks.
REFERENCES
[1].Kantor, Paul B., LiorRokach, Francesco Ricci, and BrachaShapira.Recommender systems handbook.Springer, 2018. [2]. Prasad, R. V. V. S. V., and V. ValliKumari. "ACategorical REVIEW OF RECOMMENDER SYSTEMS." System 1, no. U2 (2012): U3. [3].Burke, Robin. "Hybrid recommender systems: Survey and experiments."Usermodeling and user-adapted interaction 12, no. 4 (2002): 331-370.
[4].Melville, Prem, and VikasSindhwani. "Recommender systems."InEncyclopedia of machine learning, pp. 829-838.Springer US, 2010.
[5] . Zaiane, Building a recommender agent for e-learning systems, in: Proceedings of the International Conference on Computers Education (ICCE‘02), vol. 1, 2002, pp. 55–59.
[6] J. Serrano-Guerrero, E. Herrera-Viedma, J.A. Olivas, A. Cerezo, F.P. Romero, A google wave-based fuzzy recommender system to disseminate information in University Digital Libraries 2.0., Information Sciences 181 (9) (2018) 1503– 1516.
[7] K. Mcnally, M.P. O‘mahony, M. Coyle, P. Briggs, B. Smyth, A case study of collaboration and reputation in social web search, ACM Transactions on Intelligent Systems and Technology 3 (1) (2018). Article 4
[8] Z. Huang, D. Zeng, H. Chen, A comparison of collaborative filtering recommendation algorithms for e-commerce, IEEE Intelligent Systems 22 (5) (2007) 68–78.
[9] Van Meteren, Robin, and Maarten Van Someren."Using content-based filtering for recommendation." In Proceedings of the Machine Learning in the New Information Age: MLnet/ECML2000 Workshop, pp. 47-56. 2000.
[10] E. Costa-Montenegro, A.B. Barragáns-Martı´ nez, M. Rey-López, Which App? A recommender system of applications in markets: implementation of the service for monitoring users‘ interaction, Expert Systems with Applications 39 (10) (2012) 9310–9375.
[18]Jonathan L. Herlocker, Joseph A. Konstan, Loren G. Terveen, and John T. Riedl.Evaluating collaborative filtering recommender systems. ACM Trans. Inf. Syst., 22(1):5–53, 2004.
[12] J.J. Castro-Sanchez, R. Miguel, D. Vallejo, L.M. López-López, A highly adaptive recommender system based on fuzzy logic for B2C e-commerce portals, Expert Systems with Applications 38 (3) (2018) 2441–2412.
[13] J. Bobadilla, F. Serradilla, A. Hernando, Collaborative filtering adapted to recommender systems of e-learning, Knowledge Based Systems 22 (2009) 261–265.
[14] C. Porcel, E. Herrera-Viedma, Dealing with incomplete information in a fuzzy linguistic recommender system to disseminate information in university digital libraries, Knowledge-Based Systems 23 (1) (2010) 32– 39.
[15] C. Porcel, J.M. Moreno, E. Herrera-Viedma, A multi-disciplinar recommender system to advice research resources in university digital libraries, Expert Systems with Applications 36 (10) (2009) 12520–12528. [16] C. Porcel, A. Tejeda-Lorente, M.A. Martı´ nez, E. Herrera-Viedma, A hybrid recommender system for the selective dissemination of research resources in a technology transfer office, Information Sciences 15 (1) (2012) 1–19.
[17] D.H. Park, H.K. Kim, I.Y. Choi, J.K. Kim, A literature review and classification of recommender Systems research, Expert Systems with Applications 39 (2012) 10059–10072.
[18] S.K. Lee, Y.H. Cho, S.H. Kim, Collaborative filtering with ordinal scale-based implicit ratings for mobile music recommendations, Information Sciences 180 (18) (2010) 2142–2155.
[19] A. Nanolopoulus, D. Rafailidis, P. Symeonidis, Y. Manolopoulus, Music Box: personalizad music recommendation based on cubic analysis of social tags, IEEE Transactions on Audio, Speech and Language Processing 18 (2) (2010) 407–412.
[20] S. Tan, J. Bu, CH. Chen, X. He, Using rich social media information for music recommendation via hypergraph model, ACM Transactions on Multimedia Computing, Communications, and Applications 7 (1) (2018). Article 7
[21] Z. Yu, X. Zhou, Y. Hao, J. Gu, TV program recommendation for multiple viewers based on user profile merging, User Modeling and User-Adapted Interaction 16 (1) (2006) 63–82
[22] E.R. Núñez-Valdéz, J.M. Cueva-Lovelle, O. Sanjuán-Martı´nez, V. Garcı´ a-Dı´ az, P. Ordoñez, C.E. Montenegro-Marı´ n, Implicit feedback techniques on recommender systems applied to electronic books, Computers in Human Behavior 28 (4) (2012) 1236–1893.
[23] R. González-Crespo, O. Sanjuán-Martı´ nez, J. Manuel-Cueva, B. Cristina-Pelayo, J.E. Labra-Gayo, P. Ordoñez, Recommendation system based on user interaction data applied to intelligent electronic books, Computers in Human Behavior 27 (4) (2018) 1445–1449.
[24] A.B. Barragáns-Martı´ nez, E. Costa-Montenegro, J.C. Burguillo, M. Rey-López, F.A. Mikic-Fonte, A. Peleteiro, A hybrid content-based and item-based collaborative filtering approach to recommend TV programs enhanced with singular value decomposition, Information Sciences 180 (22) (2010) 4290– 4318.
[25] Iskold, A. (2007). The art, science and business of recommendation engines. Retrieved April, 5, 2012.
[26]Mettam, G. R., & Adams, L. B. (1999).How to prepare an electronic version of your article. In B. S. Jones & R. Z. Smith (Eds.), Introduction to the electronic age (pp. 281–134). New York: E-Publishing Inc. [27] Fachinger, J., den Exter, M., Grambow, B., Holgerson, S.,
Landesmann, C., Titov, M., et al. (2004).Behavior of spent HTR fuel elements in aquatic phases of repository host rock formations, 2nd International Topical Meeting on High Temperature Reactor Technology. Beijing, China, paper #B08.
[28] Ken Lang. NewsWeeder: Learning to filter netnews. In Proceedings of the Twelfth International Conference on Machine Learning (ICML-95), pages 331–339, San Francisco, CA, 1995.
[29]Umanets, A., Ferreira, A., &Leite, N. (2014). GuideMe–A tourist guide with a recommender system and social interaction. Procedia Technology, 17, 407-414.