1 / 31

Exploiting Contextual Information from Event Logs for Personalized Recommendation

Exploiting Contextual Information from Event Logs for Personalized Recommendation. ICIS2010. Aug 18,2010. Dongjoo Lee, Sung Eun Park, Minsuk Kahng, Sangkeun Lee, and Sang-goo Lee. Intelligent Database Systems Lab. School of Computer Science & Engineering Seoul National University.

espen
Télécharger la présentation

Exploiting Contextual Information from Event Logs for Personalized Recommendation

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Exploiting Contextual Information from Event Logs for Personalized Recommendation ICIS2010 Aug 18,2010 Dongjoo Lee, Sung Eun Park, Minsuk Kahng, Sangkeun Lee, and Sang-goo Lee Intelligent Database Systems Lab. School of Computer Science & Engineering Seoul National University Center for E-Business Technology Seoul National University Seoul, Korea

  2. Contents • Introduction • Recommendation and Personalized Recommendation • Recommendation Space • Personalized Recommendation • Exploiting Contextual Information for Recommendation • Context and Context Abstraction • Context-Aware Recommendation Algorithm • Experiment • Conclusion

  3. Contents • Introduction • Personalized Recommendation • Exploiting Contextual Information for Recommendation • Experiment • Conclusion

  4. Motivation • Do you always get same list no matter what the context is? • We recommend items depending on the context User User Song1 Song2 Song3 … Song1 Song2 Song3 … 08/10/28 09:59 08/10/28 09:59 List 1 List 1 Song1 Song2 Song3 … Song3 Song4 Song5 … 08/08/02 08:51 08/08/02 08:51 List 1 List 2 08/05/29 04:43 Song1 Song2 Song3 … 08/05/29 04:43 Song4 Song5 Song6 … List 3 List 1

  5. Recommendation from Event Logs • Assuming that there are enough number of ratings from users is less practical • Find implied patterns in preferences from logs and use it for the recommendation Use for the Recommendation Large Number of Users’ Log Data Implied Patterns in Preferences Let's get out of this country White winter hymnal User_1941 User_1432 Listen Listen Listen 07/19/2008 16:55 08/03/2008 22:14 08/10/2008 22:12 Event Logs

  6. Exploiting Information from Event Logs • We can obtain popularity, personal preference, and contextual information from log data, and consider them for recommendation Personalization Cooperating Achieved Information Personal Preferences Event Logs (from large accumulated data) 2. Recommender System Contextual Preferences 1.. Abstracting Contextual Information Context-Awareness

  7. Contents • Introduction • Recommendation • Recommendation Space • Collaborative Filtering • Exploiting Contextual Information for Recommendation • Experiment • Conclusion

  8. Recommendation Space • Log • nl Event-logs • Each event-log is a tuple that consists of user, item, timestamp, GPS code and other context-related data. • l = (u, s, ctx) = (u, s, timestamp, GPS code, …) • Items • Music, product, news… • User • A subject of the event Event-logs (user, item, timestamp) Event-log

  9. Personalized Recommendation • Collaborative Filtering • Find user A and B that share similar rating history • Recommend user A’s preferred item to user B • Collaborative Filtering from Event-Logs • Assumption : users rating equals to the frequency of songs listened • User’s similarity score is defined by cosine similarity of rating vector • Weighted sum of similar users’ rating score on a item = The predicted rating on the item of the active user • k most similar users are considered sim1 sim2

  10. Contents • Introduction • Recommendation • Exploiting Contextual Information for Recommendation • Context in Event Logs and Abstraction • Context-Aware Recommendation Algorithms • Experiment • Conclusion

  11. Context-Aware Recommendation • Find items that people like in the current context and recommend them • Context • Context is any information that can be used to characterize the situation of an entity. • (Anind K. Dey, 2001, Understanding and Using Context ) • Context data • any data recorded in event logs • l.ctx = (timestamp, GPS code, temperature, …)

  12. Context Abstraction • Schema for Event-logs in relational data model • Dseason = {spring, summer, autumn, winter} • Dtime-of-day ={morning, afternoon, evening, night, …} • Dlocation = {home, office, department store, …} • Dcity={city, country, …} • Dwheather ={cloudy, sunshine, …}, Dtemperature ={warm, cool, cold, hot, …} Event-logs (user, item, timestamp, GPS code, temperature, …) Context Abstraction Event-logs' (user, item, season, time of day, day of week, location, city, temperature, …)

  13. Context Abstraction • It can be subjective to map raw context value to exactly one concept • timestamp: 2009-09-03 00:00 -> summer? autumn? • temperature: 24℃ ->warm? hot? • Mapping based on Fuzzy Membership Function • Membership degree indicates how strongly an element belongs to the set winter spring summer autumn winter 0 365 day

  14. Contents • Introduction • Recommendation • Exploiting Contextual Information for Personalized Recommendation • Context in Event Logs • Context Abstraction • Context-Aware Recommendation Algorithms • Experiment • Conclusion Combining Collaborative Filtering and Context-Aware Recommendation Method

  15. Popularity-based Approach • Context-dependent popularity • pi,ctx : popularity of an item i in the context ctx • Integrate the contextual preference to Individual Preference • Simple weighted sum General preference of item i in the context ctx a’s Preference on item i

  16. Personalized Context-Aware Recommendation • The rating of user uj for a song si in the context ctx =The number of times that uj listened si in the ctx • Context-aware rating of users

  17. Personalized Context-Aware Recommendation • Two possible scenarios to find similar users In Summer, what will A like? Similarity in Summer : 0.4 B Overall Similarity : 0.7 Items of Summer Song1 Song2 Song3 … A Similarity in Summer : 0.6 Overall Similarity : 0.5 C Items of Summer Song4 Song5 Song3 …

  18. Personalized Context-Aware Recommendation • Two approaches to find similar users • find users with similar ratings regardless of context type, and recommend items to the current context based on the similar context previously preferred by the same user Data to Consider for determining similarity of users Data to Consider for recognizing the rating

  19. Personalized Context-Aware Recommendation • Two approaches • find users with similar ratings with respect to the context type, and recommend items to the current context based on the similar context previously preferred by the same user Data to Consider for determining similarity of users Data to Consider for recognizing the rating

  20. Personalized Context-Aware Recommendation • Reduction-based Context Aware method • Conjunction of context concepts ( ex. Winter& Monday &Night) • Adomavicius et al., Incorporating contextual information in recommender systems using a multidimensional approach, ACM Transactions on Information Systems 2005 • Data sparsity problem • Disjunction-based Context Aware method applies collaborative filtering to data in each context concept and aggregate the result disjunctively • Disjunction of context concepts ( ex. Winter | Monday | Night) • Defining context with context concepts TimeOfDay morning … evening Sunday … …. Tuesday RCA night DCA Monday DayOfWeek Spring Summer Fall Winter Season

  21. Contents • Introduction • Recommendation • Exploiting Contextual Information for Recommendation • Experiment • Conclusion

  22. Experimental Setup • Dataset • Last.fm

  23. Temporal Context Abstraction - Experiment Setup Temporal Concepts Periodic Fuzzy Membership Function

  24. Evaluation Metric • HR@n • The log in the test set has only one item under one user in the temporal context • How many real usages of each recommendation were found within top-n recommended items. • Generate a theoretical list of songs to recommend depending on the given user and the temporal context in the test data set • Check whether the list contains the actual song user listened in the log 1. Check if Music 1 exists in the recommendation list Test Set (Log) Recommendation List (n Songs) 2. The relative frequency that the actual item user listened matches the song in the recommendation list

  25. Personalized Context-Aware Recommendation Issues • Which contextual data should be considered to find similar users in adopting CF to the context-aware recommendation? • RCA(Reduction-based Context aware method) vs. DCA(Disjunction-based Approach) Baseline methods RCA DCA Similar users within same context type Similar users Regardless of context type

  26. Experimental Results • Impact of the Number of Similar Users • Generally, CACF-O method gives you the best result using : • Context-aware Disjunctive Collaborative Filtering method (DCA) • preferences of similar users within same contextual type

  27. Experimental Results • Most measure showed the best performance when the number of similar users is less than 20. • Larger dataset does not reveal the patterns of users’ preference well. • It is easy to assume that large dataset would contribute more to find patterns of preferences • What matters is the quality of dataset not the quantity

  28. Experimental Results • Disjunctive aggregation is a better way for incorporating contextual information in CF than Reduction-based aggregation • Applying preferences of similar users within same contextual type is more adequate. DCA outperforms RCA Using context dependent similar users is better than using generally similar users !!

  29. Contents • Introduction • Recommendation • Exploiting Contextual Information for Recommendation • Experiment • Conclusion

  30. Conclusion • We have shown: • how to obtain implicit user preference and contextual information from event logs • a context abstraction strategy • a way to use contextual information from event logs for recommendation • several experiments using real-world dataset

  31. Q&A Thank you

More Related