Presentation is loading. Please wait.

Presentation is loading. Please wait.

Exploiting Contextual Information from Event Logs for Personalized Recommendation ICIS2010 Intelligent Database Systems Lab. School of Computer Science.

Similar presentations


Presentation on theme: "Exploiting Contextual Information from Event Logs for Personalized Recommendation ICIS2010 Intelligent Database Systems Lab. School of Computer Science."— Presentation transcript:

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

2 Copyright  2010 by CEBT 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 2

3 Copyright  2010 by CEBT Contents  Introduction  Personalized Recommendation  Exploiting Contextual Information for Recommendation  Experiment  Conclusion 3

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

5 Copyright  2010 by CEBT  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 Recommendation from Event Logs 5 Large Number of Users’ Log Data Large Number of Users’ Log Data user_iditemtimestamp 1432 White winter hymnal - Fleet foxes 07/19/2008 16:55 1941 Let's get out of this country – Camera obscura 08/03/2008 22:14 1941 White winter hymnal - Fleet foxes 08/10/2008 22:12 Listen User_1432 07/19/2008 16:55 Listen 08/03/2008 22:14 User_1941 Implied Patterns in Preferences Use for the Recommendation Event Logs Listen 08/10/2008 22:12 White winter hymnal Let's get out of this country

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

7 Copyright  2010 by CEBT Contents  Introduction  Recommendation Recommendation Space Collaborative Filtering  Exploiting Contextual Information for Recommendation  Experiment  Conclusion 7

8 Copyright  2010 by CEBT Recommendation Space  Log n l 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 8 user_iditem_idtimestamp 1432 White winter hymnal - Fleet foxes 07/19/2008 16:55 1941 Let's get out of this country – Camera obscura 08/03/2008 22:14 1941 White winter hymnal - Fleet foxes 08/10/2008 22:12 1432 White winter hymnal - Fleet foxes 08/31/2008 12:01 2133 L'amour ne dure pas toujours - Feist 09/04/2008 01:04 2133 L'amour ne dure pas toujours - Feist 09/06/2008 14:21 Event-logs (user, item, timestamp) Event-log

9 Copyright  2010 by CEBT 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 9 item 1 item 2 item 3 item 4 item 5 …item i u1u1 53?313 u2u2 423?22 … ujuj 553214 sim 1 sim 2

10 Copyright  2010 by CEBT Contents  Introduction  Recommendation  Exploiting Contextual Information for Recommendation Context in Event Logs and Abstraction Context-Aware Recommendation Algorithms  Experiment  Conclusion 10

11 Copyright  2010 by CEBT 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, …) 11

12 Copyright  2010 by CEBT Context Abstraction  Schema for Event-logs in relational data model D season = {spring, summer, autumn, winter} D time-of-day ={morning, afternoon, evening, night, …} D location = {home, office, department store, …} D city ={city, country, …} D wheather ={cloudy, sunshine, …}, D temperature ={warm, cool, cold, hot, …} 12 Event-logs (user, item, timestamp, GPS code, temperature, …) Event-logs' (user, item, season, time of day, day of week, location, city, temperature, …) Context Abstraction

13 Copyright  2010 by CEBT 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 13 day0365 winter springsummerautumn

14 Copyright  2010 by CEBT Contents  Introduction  Recommendation  Exploiting Contextual Information for Personalized Recommendation Context in Event Logs Context Abstraction Context-Aware Recommendation Algorithms  Experiment  Conclusion 14 Combining Collaborative Filtering and Context-Aware Recommendation Method

15 Copyright  2010 by CEBT Popularity-based Approach  Context-dependent popularity p i,ctx : popularity of an item i in the context ctx  Integrate the contextual preference to Individual Preference Simple weighted sum 15 General preference of item i in the context ctx a’s Preference on item i

16 Copyright  2010 by CEBT Personalized Context-Aware Recommendation  The rating of user u j for a song s i in the context ctx =The number of times that u j listened s i in the ctx  Context-aware rating of users 16 item 1 item 2 …item i u1u1 533 u2u2 422 … ujuj 554 item 1 item 2 …item i u1u1 Context 1 510 Context 2 022 … Context k 001 u2u2 Context 1 402 Context 2 010 … Context k 010 … ujuj Context 1 012 Context 2 010 … Context k 532

17 Copyright  2010 by CEBT Personalized Context-Aware Recommendation  Two possible scenarios to find similar users 17 Similarity in Summer : 0.4 Overall Similarity : 0.5 Overall Similarity : 0.7 Similarity in Summer : 0.6 Song1 Song2 Song3 … Song1 Song2 Song3 … Song4 Song5 Song3 … Song4 Song5 Song3 … Items of Summer Items of Summer In Summer, what will A like?

18 Copyright  2010 by CEBT item 1 item 2 …item i u1u1 Context 1 500 Context 2 032 … Context k 001 u2u2 Context 1 402 Context 2 010 … Context k 010 … ujuj Context 1 012 Context 2 010 … Context k 532 Personalized Context-Aware Recommendation  Two approaches to find similar users 1) 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 18 item 1 item 2 …item i u1u1 533 u2u2 422 … ujuj 554 Data to Consider for determining similarity of users Data to Consider for recognizing the rating

19 Copyright  2010 by CEBT Personalized Context-Aware Recommendation  Two approaches 2) 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 19 item 1 item 2 …item i u1u1 533 u2u2 422 … ujuj 554 Data to Consider for determining similarity of users Data to Consider for recognizing the rating item 1 item 2 …item i u1u1 Context 1 500 Context 2 032 … Context k 001 u2u2 Context 1 402 Context 2 010 … Context k 010 … ujuj Context 1 012 Context 2 010 … Context k 532

20 Copyright  2010 by CEBT 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) Personalized Context-Aware Recommendation Season TimeOfDay SpringSummerFallWinter morning … evening night …. Tuesday Sunday Monday DayOf Week …  Defining context with context concepts RCA DCA

21 Copyright  2010 by CEBT Contents  Introduction  Recommendation  Exploiting Contextual Information for Recommendation  Experiment  Conclusion 21

22 Copyright  2010 by CEBT Experimental Setup  Dataset Last.fm 22

23 Copyright  2010 by CEBT Temporal Context Abstraction - Experiment Setup 23 TypeConcepts Seasonwinter, spring, summer, autumn Day of weekSunday, Monday, Tuesday, Wednesday, Thursday, Friday, Saturday Time of daydawn, morning, AM, noon, afternoon, evening, night, midnight Periodic Fuzzy Membership Function Temporal Concepts

24 Copyright  2010 by CEBT 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. 1. Generate a theoretical list of songs to recommend depending on the given user and the temporal context in the test data set 2. Check whether the list contains the actual song user listened in the log Test Set (Log) Recommendation List (n Songs) Recommendation List (n Songs) The relative frequency that the actual item user listened matches the song in the recommendation list The relative frequency that the actual item user listened matches the song in the recommendation list User1Temporal Context 1 Music1 User2Temporal Context 2 Music2 User3Temporal Context 3 Music3 User4Temporal Context 4 Music4 User5Temporal Context 5 Music5 …… Music6 Music7 Music1 Music3 … Check if Music 1 exists in the recommendation list Check if Music 1 exists in the recommendation list 1. 2.

25 Copyright  2010 by CEBT Personalized Context-Aware Recommendation Issues 1. Which contextual data should be considered to find similar users in adopting CF to the context-aware recommendation? 2. RCA(Reduction-based Context aware method) vs. DCA(Disjunction- based Approach) 25 MethodScoring POPpopularity CFgeneric CF CAPOPcontext -dependent popularity CA+CFweighted context aware CF (CF * CAPOP) CACF-A1Reduction-based CF based on global user similarity CACF-A2 Reduction-based CF based on global user similarity considering context CACF-AReduction-based CF based on context dependent user similarity CACF-OConcept-based disjunctive aggregating CF F-CACF-AConsidering fuzziness based on CACF-A F-CACF-OConsidering fuzziness based on CACF-O Similar users within same context type RCA DCA Similar users Regardless of context type Baseline methods

26 Copyright  2010 by CEBT 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 26

27 Copyright  2010 by CEBT 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 27

28 Copyright  2010 by CEBT 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. 28 Using context dependent similar users is better than using generally similar users !! DCA outperforms RCA

29 Copyright  2010 by CEBT Contents  Introduction  Recommendation  Exploiting Contextual Information for Recommendation  Experiment  Conclusion 29

30 Copyright  2010 by CEBT Conclusion  We have shown: 1. how to obtain implicit user preference and contextual information from event logs 2. a context abstraction strategy – a way to use contextual information from event logs for recommendation 3. several experiments using real-world dataset 30

31 Q&A Thank you 31


Download ppt "Exploiting Contextual Information from Event Logs for Personalized Recommendation ICIS2010 Intelligent Database Systems Lab. School of Computer Science."

Similar presentations


Ads by Google