Project(CS-893)     SPATIALLY AWARERECOMMENDATION ALGORITHM             Under the supervision of :       Prof. (Dr.) Prose...
Wants to Buy Something Online ??            The Problem is.. How to get enough INFORMATION to make a Decision ?           ...
Introduction Recommender System– Apply statistical and knowledge discovery  techniques to the problem of making Product  ...
•Collaborative Filtering-Basic Principle :  To find a subset of users, having similar tastes and  preferences to that of ...
Past Works Amazon.com    - Uses Item-to-Item Collaborative Filtering.    - Focuses on finding similar Items, not similar ...
IMPORTANT                      CHALLENGES                     1. Scalability Issue                  Recommendation Algorit...
2. To improve Quality Of          Recommendation          Consumers need Recommendations       - they can trust upon to he...
Why Spatially Aware ? Recommendation system considers   Location of             Preferences of other   Active User       ...
Project ObjectiveTo Decompose User’s Space based on their       location (voronoi Diagram)To Find Correlation among Users ...
Voronoi Diagrampi : site pointsq : free pointe : Voronoi edgev : Voronoi vertex                              v            ...
Everyday Example of Voronoi          diagramThe post office problem:-        Suppose in a city with several post offices w...
Post offices in a section of kolkata
Post-offices as Points in Plane
Proximity Regions of Post offices
Post-office services in Kolkata
GUI Application developed in            Java
Raster-scan Concept
ProjectImplementation     Part
DATA SET PROVIDED   Users.dat file   UserID | Gender | Age | Occupation | Zip-code   * Contains around 6000 0f user’s info...
DATA SET PROVIDED    Movies.dat file    MovieID::Title::Genres    *Contains around 4000 movies informations        Ratings...
Decomposing User’s space based on         their location-      ‘Voronoi Diagram’            Concept
Users.dat file                        UserID | Gender | Age | Occupation | Zip-code                                       ...
Zip_cen.dat file             Zips_sm.txt file     All_zips.dat file                                    Find_zipcen_coords....
zip_cen_coordinates.dat                    zip_coordinates.dat*Contains all voronoi sites                *Contains all zip...
Find Correlation among Users      within same location‘Pearson’s correlation coefficient’
Given voronoi     site                                                                   Users.dat file                   ...
Ratings.dat file                                                                 UserID::MovieID::Rating::Timestamp       ...
Pearson’s correlation coefficient      Ca,b =Ca,b =Pearson correlation between user a & user bra,i =rating of user ‘a’ on ...
Zipsite_ratingsN.dat      Userid | movieid | ratings      *Contains the ratings of all the users within each of the      v...
To Recommend Relevant Items of    Interest to Active User    ‘Collaborative Filtering’
Filters out an array of                   Searches in which zip  Active user, u(i) cell, the user belongs   ZipsiteN.dat f...
Testing‘Experiments & Results’
Testing Algorithm                                                Active user [u(i)]Set of all the movies seen & rated so f...
Testing Continues..       From this Table of differences,                Calculate ..Number of users with positive differe...
Results !!TEST CASE 1.                                           N= 242 (around 250) Users                            3   ...
Rating difference -->                                                                                                     ...
Conclusion1. (Pos_countu ) /(Neg_countu) ≈3 : 1, so out of every four   users, three users are being recommended relativel...
Thank you..    Veer Chandra (085118)    Ashis Senapati (085123)    Suvodeep Majumder (085128)    -All B-tech in Computer S...
Upcoming SlideShare
Loading in...5
×

Spatially Aware Recommendation System

158

Published on

Published in: Technology
1 Comment
0 Likes
Statistics
Notes
  • Be the first to like this

No Downloads
Views
Total Views
158
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
0
Comments
1
Likes
0
Embeds 0
No embeds

No notes for slide

Spatially Aware Recommendation System

  1. 1. Project(CS-893) SPATIALLY AWARERECOMMENDATION ALGORITHM Under the supervision of : Prof. (Dr.) Prosenjit Gupta (professor) & Prof. (Dr.) Subhashis Majumdar(professor& HOD)
  2. 2. Wants to Buy Something Online ?? The Problem is.. How to get enough INFORMATION to make a Decision ? ProductBUT .. recommendations How to make a RIGHT DECISION out of enormous information ?
  3. 3. Introduction Recommender System– Apply statistical and knowledge discovery techniques to the problem of making Product Recommendation.–It receives information from a customer about which products he/she is interested in, and recommends products that are likely to fit his/her needs.– Today, recommender systems are deployed on hundreds of different e-commerce websites, serving millions of customers.
  4. 4. •Collaborative Filtering-Basic Principle : To find a subset of users, having similar tastes and preferences to that of active user. And offering recommendations based on that subset of users.-Assumptions : Users with similar interest have common preferences and vice-versa. Sufficiently large number of user preferences is available.
  5. 5. Past Works Amazon.com - Uses Item-to-Item Collaborative Filtering. - Focuses on finding similar Items, not similar Customers. Google- Hotpot - A recommendation engine for places. - To make local recommendation more personal, by recommending places based on ratings. Netflix.com - Recommendation engine for movies. - Uses matrix- factorization and so called “temporal- dynamics” to perform Collaborative Filtering.
  6. 6. IMPORTANT CHALLENGES 1. Scalability Issue Recommendation Algorithm- Performance In Searching Neighbors having similar preferences – Active userTens of thousands of users Tens of millions of users
  7. 7. 2. To improve Quality Of Recommendation Consumers need Recommendations - they can trust upon to help them in finding Time – toproducts - closer look on have they will like. Different contextual information BALANCE REQUIRED !! - To add new methods of To Search more number of related customers (neighbors) recommendation !!IN TWO CHALLENGES CONFLICTLesser Time algorithm spends in searching neighbors More scalable it is. But Lesser the Quality of Recommendation is.
  8. 8. Why Spatially Aware ? Recommendation system considers Location of Preferences of other Active User users, who share same Location Recommendation for Active user
  9. 9. Project ObjectiveTo Decompose User’s Space based on their location (voronoi Diagram)To Find Correlation among Users within same location (Pearson’s correlation coefficient) To Recommend relevant Items of interest to active user (Collaborative Filtering)
  10. 10. Voronoi Diagrampi : site pointsq : free pointe : Voronoi edgev : Voronoi vertex v q pi e
  11. 11. Everyday Example of Voronoi diagramThe post office problem:- Suppose in a city with several post offices we would like to mark the service region of each post office proximity. What are those regions?? Let us solve this problem for a section of kolkata.
  12. 12. Post offices in a section of kolkata
  13. 13. Post-offices as Points in Plane
  14. 14. Proximity Regions of Post offices
  15. 15. Post-office services in Kolkata
  16. 16. GUI Application developed in Java
  17. 17. Raster-scan Concept
  18. 18. ProjectImplementation Part
  19. 19. DATA SET PROVIDED Users.dat file UserID | Gender | Age | Occupation | Zip-code * Contains around 6000 0f user’s information Zips_sm.txt file Zip-code | City-name | longitude | latitude *Contains around 30000 cities information
  20. 20. DATA SET PROVIDED Movies.dat file MovieID::Title::Genres *Contains around 4000 movies informations Ratings.dat file UserID::MovieID::Rating::Timestamp *UserIDs range between 1 and 6040 *MovieIDs range between 0 and 3592 **Ratings are made on a 5-star scale **Each user has at least 20 ratings
  21. 21. Decomposing User’s space based on their location- ‘Voronoi Diagram’ Concept
  22. 22. Users.dat file UserID | Gender | Age | Occupation | Zip-code Find_sites.java Threshold value =15 users(say)Zip_cen.dat file all_Zips.dat fileZip-code | user’s count Zip-code*Contains all voronoi sites(i.e. zip- *Contains all zip-codescodes having no. of users >=Threshold value of users )
  23. 23. Zip_cen.dat file Zips_sm.txt file All_zips.dat file Find_zipcen_coords.javazip_cen_coordinates.dat zip_coordinates.datZip-code | longitude | latitude Zip-code | longitude | latitude*Contains all voronoi sites along with *Contains all zip-codestheir longitude and latitude along with their longitude and latitude
  24. 24. zip_cen_coordinates.dat zip_coordinates.dat*Contains all voronoi sites *Contains all zip-codes Find_zip_voronoi.java voronoi_zip_coordinates.dat Zip-code | Corresponding_zip_centre *Contains all zip-codes with corresponding voronoi centers
  25. 25. Find Correlation among Users within same location‘Pearson’s correlation coefficient’
  26. 26. Given voronoi site Users.dat file voronoi_zip_coordinates.dat UserID | Gender | Age | Zip-code | Corresponding_zip_centre Occupation | Zip-code Find_Zipsite_users.java ZipsiteN.dat file Zip-code| Userid *Contains all the users lying inside Nth voronoi cell , along with their corresponding zip-codes
  27. 27. Ratings.dat file UserID::MovieID::Rating::Timestamp ZipsiteN.dat file *UserIDs range between 1 and 6040 Zip-code| Userid *MovieIDs range between 0 and 3592*Contains all the users lying inside Nth **Ratings are made on a 5-star scale voronoi cell , along with their **Each user has at least 20 ratings corresponding zip-codes Find_zipcen_ratings.java Zipsite_ratingsN.dat Userid | movieid | ratings *Contains the ratings of all the users within one voronoi cell, on different movies
  28. 28. Pearson’s correlation coefficient Ca,b =Ca,b =Pearson correlation between user a & user bra,i =rating of user ‘a’ on item ‘i’rb,i =rating of user ‘b’ on item ‘i’ =average rating of user ‘a’ on all the ‘m’ items =average rating of user ‘b’ on all the ‘m’ items Value of Ca,b lies between -1 to 1.1/-1= positive/negative preferences between users.0= users have no common set of preferences.
  29. 29. Zipsite_ratingsN.dat Userid | movieid | ratings *Contains the ratings of all the users within each of the voronoi cells on different movies .Find_correlation.java CorrelationsN.dat Userid_a | userid_b | c(a,b) *Contains the correlation coefficient between all the pairs of different users lying within each voronoi cells.
  30. 30. To Recommend Relevant Items of Interest to Active User ‘Collaborative Filtering’
  31. 31. Filters out an array of Searches in which zip Active user, u(i) cell, the user belongs ZipsiteN.dat file CorrelationsN.dat highly correlated users ( > threshold value) RECOMMENDATION ALGORITHM (Find_recommendation.java)Set of User’s highly rated Set of movies highly Top two categories ofmovies (having ratings 4 rated by correlated users user’s choice or 5 out of 5) RECOMMENDED MOVIES
  32. 32. Testing‘Experiments & Results’
  33. 33. Testing Algorithm Active user [u(i)]Set of all the movies seen & rated so far Set of movies generated after collaborative by active user. filtering and being recommended to active user.Calculate average of all the ratings on these movies. (Avg2) Set of common movies in both the above two sets. Calculate average of all the ratings on these common movies. (Avg1) Calculate Difference , diff(i) = Avg1(i) – Avg2(i) Repeat this process for N no. of users. Store the Results in a Table.
  34. 34. Testing Continues.. From this Table of differences, Calculate ..Number of users with positive difference values. (Pos_countu )Number of users with negative difference values. (Neg_countu)Average of absolute of all these difference values. (Avgu) & Standard Deviation (SDu)
  35. 35. Results !!TEST CASE 1. N= 242 (around 250) Users 3 2 Rating Difference --> 1 0 -1 -2 -3 85 7 37 1 13 31 43 73 109 127 169 205 217 241 55 121 133 211 115 145 175 19 25 49 187 199 223 235 67 79 103 139 181 61 97 229 91 151 163 157 193 User-id --> RESULTS: [A] Pos_countu = 181, Neg_countu = 61 [B] Avgu = 0.35702798. [C] SDu = 0.63110024.
  36. 36. Rating difference --> 0 -3 -2 -1 1 2 3 1 11 21 31 41 51 61 71 81 TEST CASE 2. 91 101 RESULTS: 111 121 131 141 151 161 171 181 191 201 211 221 231 241 User-id --> 251 261 271 281 291 301 N= 488(around 500) Users 311 321 331 341 351 361 371 [A] Pos_countu = 373, Neg_countu = 115 381 391 401[B] Avgu = 0.3604241. [C] SDu = 0.60164124. 411 421 431 441 451 461 471 481
  37. 37. Conclusion1. (Pos_countu ) /(Neg_countu) ≈3 : 1, so out of every four users, three users are being recommended relatively better movies by our algorithm, than they have already seen and rated.2. Since Avgu ≈ 0.3 and SDu ≈ 0.6, so although the one user out of four, which are not being recommended better movies, Still the average rating of those recommended set of movies(which are not better) differ from the average rating on all the movies he has seen so far, just by [0.3 ± 0.6].
  38. 38. Thank you.. Veer Chandra (085118) Ashis Senapati (085123) Suvodeep Majumder (085128) -All B-tech in Computer Sc. & Engg. Heritage Institute of Technology (Kolkata)

×