Recommender Systems using Graph Theory

Similar documents
Collaborative Filtering using a Spreading Activation Approach

A Constrained Spreading Activation Approach to Collaborative Filtering

A Constrained Spreading Activation Approach to Collaborative Filtering

Advances in Natural and Applied Sciences. Information Retrieval Using Collaborative Filtering and Item Based Recommendation

Improving Results and Performance of Collaborative Filtering-based Recommender Systems using Cuckoo Optimization Algorithm

Using Data Mining to Determine User-Specific Movie Ratings

IJREAT International Journal of Research in Engineering & Advanced Technology, Volume 1, Issue 5, Oct-Nov, ISSN:

Studying Recommendation Algorithms by Graph Analysis

Hybrid Recommendation System Using Clustering and Collaborative Filtering

International Journal of Advanced Research in. Computer Science and Engineering

Review on Techniques of Collaborative Tagging

Key Learning in Computing: Years 5 and 6 Information Technology

Prowess Improvement of Accuracy for Moving Rating Recommendation System

Inferring User Search for Feedback Sessions

A Time-based Recommender System using Implicit Feedback

Keywords: geolocation, recommender system, machine learning, Haversine formula, recommendations

International Journal of Advance Engineering and Research Development. A Facebook Profile Based TV Shows and Movies Recommendation System

Project Report. An Introduction to Collaborative Filtering

Image Similarity Measurements Using Hmok- Simrank

Proposing a New Metric for Collaborative Filtering

Recap: Project and Practicum CS276B. Recommendation Systems. Plan for Today. Sample Applications. What do RSs achieve? Given a set of users and items

Making Recommendations by Integrating Information from Multiple Social Networks

Visualizing Recommendation Flow on Social Network

A PROPOSED HYBRID BOOK RECOMMENDER SYSTEM

Predicting user preference for movies using movie lens dataset

System For Product Recommendation In E-Commerce Applications

Recommendation Algorithms: Collaborative Filtering. CSE 6111 Presentation Advanced Algorithms Fall Presented by: Farzana Yasmeen

Demystifying movie ratings 224W Project Report. Amritha Raghunath Vignesh Ganapathi Subramanian

THE RECOMMENDATION ALGORITHM FOR AN ONLINE ART GALLERY

arxiv: v4 [cs.ir] 28 Jul 2016

Towards a hybrid approach to Netflix Challenge

GROW YOUR BUSINESS WITH AN ALL-IN-ONE REAL ESTATE PLATFORM

Recommendation on the Web Search by Using Co-Occurrence

Novel Hybrid k-d-apriori Algorithm for Web Usage Mining

amount of available information and the number of visitors to Web sites in recent years

CSE 454 Final Report TasteCliq

Sparse Estimation of Movie Preferences via Constrained Optimization

Recommender Systems (RSs)

Decentralised Social Filtering based on Trust

Overview. Data-mining. Commercial & Scientific Applications. Ongoing Research Activities. From Research to Technology Transfer

Graph Algorithms using Map-Reduce. Graphs are ubiquitous in modern society. Some examples: The hyperlink structure of the web

An Overview of various methodologies used in Data set Preparation for Data mining Analysis

Making Recommendations Better: An Analytic Model for Human- Recommender Interaction

INFREQUENT WEIGHTED ITEM SET MINING USING NODE SET BASED ALGORITHM

Introduction Types of Social Network Analysis Social Networks in the Online Age Data Mining for Social Network Analysis Applications Conclusion

Filtering Unwanted Messages from (OSN) User Wall s Using MLT

A Survey on Various Techniques of Recommendation System in Web Mining

Raunak Rathi 1, Prof. A.V.Deorankar 2 1,2 Department of Computer Science and Engineering, Government College of Engineering Amravati

Keywords Fuzzy, Set Theory, KDD, Data Base, Transformed Database.

A Supervised Method for Multi-keyword Web Crawling on Web Forums

Websites of different companies

Tag-Based Contextual Collaborative Filtering

Collaborative Filtering using Euclidean Distance in Recommendation Engine

Automation of URL Discovery and Flattering Mechanism in Live Forum Threads

DEVELOPING AN INTELLIGENCE ANALYSIS PROCESS THROUGH SOCIAL NETWORK ANALYSIS

LOCAWARD: A SECURITY AND PRIVACY AWARE LOCATION-BASED REWARDING SYSTEM

Infrequent Weighted Itemset Mining Using SVM Classifier in Transaction Dataset

Know your neighbours: Machine Learning on Graphs

Web Personalization & Recommender Systems

R. R. Badre Associate Professor Department of Computer Engineering MIT Academy of Engineering, Pune, Maharashtra, India

Combining Review Text Content and Reviewer-Item Rating Matrix to Predict Review Rating

Doing it for FREE Online

Results and Discussions on Transaction Splitting Technique for Mining Differential Private Frequent Itemsets

I N D E X GOOGLE DROPS KEYWORD TOOL. REPLACES IT WITH KEYWORD PLANNER BENEFITS OF GUEST BLOGGING FOR SEO

Recommender Systems: User Experience and System Issues

CS224W: Social and Information Network Analysis Project Report: Edge Detection in Review Networks

Chapter 12: Social Implications of IT

Recommender System for volunteers in connection with NGO

Knowing something about how to create this optimization to harness the best benefits will definitely be advantageous.

International Journal of Computer Engineering and Applications, Volume XII, Special Issue, July 18, ISSN

08. First and second degree equations

Study and Analysis of Recommendation Systems for Location Based Social Network (LBSN)

Final Project Report. Sharon O Boyle. George Mason University. ENGH 375, Section 001. May 12, 2014

744 Motooka Nishi-ku Fukuoka , Japan Phone/Fax:

Ad hoc networking using Wi-Fi during natural disasters: overview and improvements.

A Web Mining Methodology for Personalized Recommendations in E-commerce

Centralities (4) Ralucca Gera, Applied Mathematics Dept. Naval Postgraduate School Monterey, California Excellence Through Knowledge

Graph Mining and Social Network Analysis

USING OF THE K NEAREST NEIGHBOURS ALGORITHM (k-nns) IN THE DATA CLASSIFICATION

The Fuzzy Search for Association Rules with Interestingness Measure

Cognizable Recommendation System using Spatial Ratings with Collaborative Filter Shilpa Mathapati 1, Bhuvaneswari Raju 2

Comparison of Recommender System Algorithms focusing on the New-Item and User-Bias Problem

BEYOND THE LIVING ROOM

Analysis of Dendrogram Tree for Identifying and Visualizing Trends in Multi-attribute Transactional Data

Keywords Data alignment, Data annotation, Web database, Search Result Record

Predicting Popular Xbox games based on Search Queries of Users

Classification of Page to the aspect of Crawl Web Forum and URL Navigation

Whitepaper US SEO Ranking Factors 2012

Lab 9. Julia Janicki. Introduction

Statistical Disclosure Control meets Recommender Systems: A practical approach

Recommender Systems. Collaborative Filtering & Content-Based Recommending

Building a website. Should you build your own website?

Structure of Social Networks

Improving the Efficiency of Fast Using Semantic Similarity Algorithm

Routing Concepts. IPv4 Routing Forwarding Some definitions Policy options Routing Protocols

Web Personalization & Recommender Systems

Jumping Connections: A Graph-Theoretic Model for Recommender Systems

Accumulative Privacy Preserving Data Mining Using Gaussian Noise Data Perturbation at Multi Level Trust

Web Mining Evolution & Comparative Study with Data Mining

Image retrieval based on bag of images

Transcription:

Recommender Systems using Graph Theory Vishal Venkatraman * School of Computing Science and Engineering vishal2010@vit.ac.in Swapnil Vijay School of Computing Science and Engineering swapnil2010@vit.ac.in Aayush Jain School of Computing Science and Engineering jainaayush.kamal2010@vit.ac.in Kiran Vedantham School of Information Technology and Engineering kiran.vedantham2010@vit.ac.in Abstract : Recommender systems have become one of the important tools in E-Commerce. They combine the ratings of services or products by one user with the ratings from other users to answer similar interest queries with predictions and suggestions. The users thus receive anonymous recommendations from people similar interests. Even though this process seems unobjectionable, it aggregates user preferences, which can be tapped to recognise information about a particular user. Users who rate products or services across different types or domains in the systems are the major victims for this exploitation. We could determine the advantages and risks by performing a detailed analysis with a particular recommendation algorithm, but it would be difficult to draw general conclusions from this approach. In this paper, we aim for an algorithm independent analysis by applying a graph-theoretic model. By employing this model, we show that a user benefits most from recommendations based on similarity between the various products rated by the users. This paper tries to draw a graph through the various items rated by the users and finds the items that are most common among the user and his friends which is then recommended to him. Keywords: Recommender System, Common vertices, Degree of vertex, Graph Theory approach. 1. Introduction Recommender Systems are becoming more and more useful in the domain of the Internet. It is based on a simple technique of recommending certain items based on the ratings given by the friends of the person to whom the recommendations are being presented. To explain this properly, let us take an example. Let us consider the different genres of music. These include Rock, Jazz, Metal, Death Metal, Alternative, Blues, Classical etc. Now let us assume that a certain person Ram likes Rock, Metal and Jazz. His friend Sarah likes Rock, Death Metal and Classical while his other friend Ramesh likes Rock, Metal and Alternative. We use our technique to see the common genres of music between Ram and his friends. We see that both Sarah and Ramesh like Rock along with Ram. However, Ramesh also likes Metal which is in common with Ram s tastes but not with Sarah who prefers Death Metal. So, we select Ramesh as the person whose genres will be recommended to Ram. We see that Ramesh also likes Alternative. Since both Ram and Ramesh have two genres in common, there is a high chance that Ram likes Alternative as well but is probably not aware of it. So, the genre Alternative is recommended to Ram. Here, it is worth noting that Sarah s choice of Death Metal and Classical could also be recommended but since Ramesh has two genres in common, there is a higher probability of Ram liking Alternative than Death Metal and Classical. ISSN : 0975-5462 Vol. 5 No.08 August 2013 1577

Table 1.Example Genre ratings. Table 1. Classification of users according to different music genre Music Ram Ramesh Sarah Digvijay Ryan Genre Alternative N Y N N Y Hip-Hop N N N Y N Rock Y Y Y Y N Metal Y Y N N N Jazz Y N N N Y Death N N Y Y N Metal Classical N N Y N Y Country N N N Y N Pop N N N N Y In our technique we create a graph with the vertices as the items on which ratings have been made and the users as the nodes. Based upon the ratings made by the users on the various items we create the edges. The result is a bipartite graph which is also called a hammock graph due to its shape. Using this graph, we can decide on the recommendations to be made to the users. A sample graph based on the above used example is shown in Fig. 1 Fig. 1: Sample graph for Table 1 Recommendation algorithms are designed to balance several considerations, including statistical significance [2], potential for additional revenues and boosting sales, and ability to hold the user s attention. Recommender systems are almost completely based on the principle of serendipity the ability to recommend something unexpected, unknown but desirable because in addition to reflecting consumers buying patterns, the goal is to enable cross-selling or to cater to populations with novel tastes. Let us show how Serendipitous Algorithms work. Let us take a sample that includes cross-domains, for example take the two domains-books and Music Genres. Let us assume that Ram likes Rock Music and also loves to read Biographies. In this case, Ram would probably like to read the book The rise of The Rolling Stones. This would cater to both the domains and has a high chance of impressing Ram. Serendipitous recommendation work on the following basis: If a person or several people rated at least two Biographies that Ram rated and also rated atleast one of the Rock Music titles that Ram did, if that person or group also rated the above book then the book will also be recommended to Ram. Of course, many other people might have rated the Rock Music book but since we work through common products, we can allow the user to get an unexpected but tempting recommendation. The Recommender systems are being used more and more in the Internet especially by multi-marketing sites like Flipkart, EBay etc. to recommend and advertise products users may like. This serves the purpose of cross-marketing of various products and also gives the user a chance to get something that he possibly doesn t know about but would probably like to. This system is also used in social networking sites like Facebook and Twitter to recommend friends and pages that the user may like to know. ISSN : 0975-5462 Vol. 5 No.08 August 2013 1578

2. Graph Theory Approach We have already demonstrated how the Recommender System algorithms work by explaining their basic principles and sample applications. Now let us apply the Graph Theory approach to these algorithms to simplify our work. The problem with the above algorithms is that they can be rather tedious to implement when we consider a large number of people. This problem is non-trivial since recommender systems are generally used while targeting a large number of people. The social networking and multi-marketing sites generally have over 1 billion people that use the site so the recommender algorithms have to utilized for all of them. We notice that, as mentioned already above, this task becomes very tedious to implement by conventional means. The code complexity increases exponentially with the amount of people considered in the algorithm. Thus, to simplify our work and the code complexity, we use the graph theory approach. This approach greatly simplifies our work with the large amount of target audience. This can be shown by considering the above example that we used for Serendipitous Recommendations. If we consider multiple domains, the coding done through conventional means would include a very large amount of if statements. If we can consider this in the form of graphs, our work is much simpler as shown in Fig. 2 Fig. 2: Multiple domains for large amount of target audience As we can see, the Graph theory method is better as it is less complex. By simply following the edges that connect with the most common nodes, we can reach the recommendation of the Book that we need. Thus, we see that the graph theory method is better when compared to the traditional method for Recommender Systems. 3. Existing Algorithms We have already seen that the Graph Theory approach to Recommender Systems is better than the conventional approach. In the graph representation of ratings, the common ratings form what we call a hammock. A hammock of width k connects two people if they share at least k ratings. A sequence of hammocks can be employed to connect two people. Different algorithms use hammocks in different ways to make recommendations. Hammocks are very important in Graph Theory Applications since they are used in almost all the available Recommender System Algorithms. Nearest-neighbor algorithms, such as those used by GroupLens, LikeMinds, and Firefly, employ an implicit hammock path of length 1 [3]. Additional constraints are typically imposed regarding agreement in rating values. The Horting algorithm uses hammock paths of length greater than 1.2. Recommendation is usually studied by comparing predicted ratings from hammock paths versus user feedback. However, we consider recommendations according to hammock width and path length instead. This allows us to add constraints on the Hammocks which can help to fine-tune the recommendations. In this paper, we do not stress on the transformation of individual ratings on the hammocks into predictions. In reality, there are likely to be multiple paths between a certain artifact X and a person Y with various constraints on k and l. Intuitively, a wider hammock seems likely to generate better recommendations because we have more common ratings to work with. By insisting on a wide hammock, however, we might have to traverse longer paths to reach a particular artifact from a given person [4]. Still, recommendations involving shorter path lengths are preferred over longer paths because they are easier to explain. From a graph-theoretic viewpoint, the parameters k and l determine the reachability of artifacts from each person and thus, also help to map the prediction quality. So now let us now discuss the existing algorithms that are used for Recommender Systems. The most commonly used algorithms are the LikeMinds Algorithm and the Horting Algorithm. 3.1 LikeMinds Algorithm:- The LikeMinds algorithm uses a single hammock to isolate the role of k in recommendation quality. For this study, we used the public-domain MovieLens dataset, which consists of 943 people, 1682 movies, and at least 20 ratings from every person for movies of their choice. We masked each rating, in ISSN : 0975-5462 Vol. 5 No.08 August 2013 1579

turn, and obtained a pre- diction for that rating based on the remaining data. To predict the rating of movie X for person Y, LikeMinds computes a metric called the agreement scalar (between Y and every other person who has rated X). The algorithm uses the ratings from the person with the highest agreement scalar to compute the recommendation. We recorded k as the number of common ratings between person Y and the person with the highest agreement scalar. The results indicate that, for this algorithm, wider hammocks contribute to lower discrepancies and better ratings. Notice that Like- Minds uses hammocks not just to model commonality, but also to represent agreement between the rating values spanning a hammock. 3.2 Horting algorithm:- The Horting algorithm uses explicit hammock paths of varying length to provide recommendations. To study the effect of path length l, we fixed the hammock width k at 113 and analyzed paths of varying lengths from people to movies. The algorithm uses a transformation technique similar to one used by LikeMinds to make predictions from others ratings. For the MovieLens data set, we found that all paths involved 1, 2, or 3 hops between people and a final hop to the recommended movie, resulting in path lengths of 2, 3, and 4 for all recommendations. Greater path lengths caused a faster-than linear decay in prediction quality for a given k. 4. Proposed Model We have already seen the algorithms that are currently used worldwide in the implementation of Recommender Systems. Now, to improve upon the existing practices, we propose a model of our own which may be used to implement Recommender Systems with more simplicity and lesser complexity of code. This model of ours is based on the number of common interests or products that exist between a user and his friends. This algorithm seeks to recommend those products to the user which are also rated by his friend, who has the highest amount of common interests or ratings with the user. Let us consider an example which is similar to an example already presented in the introduction of this paper-let us take 4 users who have rated products based on a certain domain-here let us take it as TV shows. Let the shows be represented alphabetically as A, B, C, etc. Let us represent it using a diagram as shown in Fig. 3 Let us consider Users and the shows they have rated:- Users User 1 User 2 User 3 User 4 Fig. 3: Graph with 4 users and TV shows represented as nodes Table 2. Users and the TV shows they have rated Ratings A,B,D,E B,D,F,G A,B,D,H,I C,J Now let us consider the recommendations for User 1. We find the user with which the User 1 has the highest number of common ratings for shows. This can be seen below:- User 2 has two shows in common with User 1- B and D. User 3 has three shows in common with User 1- A, B and D. User 4 has no shows in common with User 1. Thus we take the user with the most number of common ratings which here is User 3. Since User 3 has also rated H and I, these two shows are recommended to the User 1. This can also be done by assigning weights to the vertices of the graph. These weights are the number of incident edges on the vertices. These weights are important because they can be used to define the order in which the shows are recommended to the target user. ISSN : 0975-5462 Vol. 5 No.08 August 2013 1580

The shows are recommended in the decreasing order of the weights of the shows. This helps us to recommend shows that majority users have rated and thus the target user has more probability of liking. This is shown in Fig. 5. After the recommendation to User 1, we can follow the same procedure for all the other users. Now the problem that arises here is that not always will we have a clear winner in terms of common ratings. A lot of times we will have two or more Users which have the same number of common ratings. This is demonstrated in Fig. 4. Fig. 4: Graph showing users with same number of common ratings In the above we can see that both User 2 and User 3 have the same number of shows in common with User 1. This can be shown as:- User 1-A, B, D, E. User 2-B, D, F. User 3-A, B, G, H. Now User 2 has the two shows B and D in common with User 1 while User 3 has the shows A and B in common with User 1. Now, to solve this scenario, we propose two different solutions which can be selected depending upon the requirement of the person implementing the Algorithm. The first solution is to compare the two or more users who have the same number of shows in common with the user to whom recommendation is to be given. Now, between these users, we select the user who has rated the least number of shows. This solution is based upon probability and should be chosen by organisations whose main aim is user satisfaction. This solution is based upon the principle that the user who has rated lesser number of shows will most probably have more in common with the targeted user than the person who has rated larger number of shows. This is derived by applying the principles of mathematical probability. Lesser number of shows means lesser denominator and therefore more probability since probability is based on the formula: Number of common shows/total shows rated. Thus, this solution gives more user satisfaction but reduces number of recommendations which defeats the purpose of cross-marketing. This solution prefers quality over quantity. The second solution is to compare the users and take the user who has rated the most number of shows. This solution is used to give the most number of recommendations and is based upon the practice of providing as many recommendations to the user as possible to offer more variety. This practice is also based on the theory that the more the recommendations provided to the user, the more the chance that he may come across something he may like. This solution prefers quantity over quality. This solution should be used by organisations that promote cross-marketing and offer more variety to their users. Fig. 5: Number of ratings for a TV show represented as the weight of that node ISSN : 0975-5462 Vol. 5 No.08 August 2013 1581

A third scenario also occurs. In this scenario, two or more users have exactly the same number of shows in common with the target user and each of the users have also rated the exact same number of shows. In this case, the solution is that any of the users may be selected at random and his/hers shows can be recommended to the target user. An algorithm is also devised based upon the above three scenario s. The algorithm is as follows:- 1. Check whether User 1 has rated X. If true, check the other users for the same ratings. 2. If match found, increase the common ratings counter value by 1 and continue checking for all the ratings. 3. If no two max common ratings counter values are equal: Then for the user, say user M, who has the maximum common ratings counter Then recommend all the ratings given by user M to User 1 that User 1 hasn't rated. Else // (If the two max common ratings counter values are equal) Then assign weight to the corresponding ratings that User 1 hasn't given and recommend those to User 1 in the decreasing order of their weights. The above recommendation can be done in two ways:- Option 1: Find the user who has given the least number of ratings. Then recommend those to User 1 according to decreasing order their weights. // If fine-tuned recommendations are needed. Option 2: Find the user who has given the maximum number of ratings. Then recommend those movies according to decreasing order of their weights. // If more quantity of recommendations is needed. If two or more users have same common ratings counter and same number of ratings given Then select any user at random and recommend his ratings to the target user. 5. Issues The problem with Recommender Systems is that even though they give a chance for the user to discover something that he doesn t know but may like, they also invade upon the privacy of the user and may irritate him. It may also compel him to buy something that he actually doesn t need but is tricked into believing that it is needed by him. Hackers may also use these Systems to their advantage to further dupe the users by recommending illegal and/or potentially harmful services. Solutions to these problems are beyond the scope of this paper but they need to be mentioned as they affect the users that are targeted by these algorithms. References: [1] Privacy Risks in Recommender Systems by Naren Ramakrishnan, Benjamin J. Keller and Batul J. Mirza from Virginia Tech, Ananth Y. Grama from Purdue University and George Karypis from University of Minnesota. [2] J.A. Konstan et al., GroupLens: Applying Collaborative Filtering to Usenet News, Comm. ACM, vol. 40, no.3, Mar. 1997, pp. 77-87. [3] C.C. Aggarwal et al., Horting Hatches an Egg: A New Graph Theoretic Approach to Collaborative Filtering, Proc. Fifth Int l Conf. Knowledge Discovery and Data Mining (ACM SIGKDD 99), ACM Press, 1999, pp. 201-212. [4] B.J. Mirza, Jumping Connections: A Graph-Theoretic Model for Recommender Systems, master s thesis, Computer Science Dept., Virginia Tech, Blacksburg, 2001. ISSN : 0975-5462 Vol. 5 No.08 August 2013 1582