Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Tutorial: Context-awareness In Information Retrieval and Recommender Systems

1,643 views

Published on

Context-awareness In Information Retrieval and Recommender Systems

Published in: Data & Analytics
  • Be the first to comment

Tutorial: Context-awareness In Information Retrieval and Recommender Systems

  1. 1. Tutorial: Context-Awareness In Information Retrieval and Recommender Systems Yong Zheng School of Applied Technology Illinois Institute of Technology, Chicago Time: 2:00 PM – 5:00 PM, Oct 13, 2016 Location: Omaha Hilton, Omaha, NE, USA The 16th IEEE/WIC/ACM Conference on Web Intelligence, Omaha, USA
  2. 2. Introduction Yong Zheng School of Applied Technology Illinois Institute of Technology, Chicago, USA 2016, PhD in CIS, DePaul University, USA Dissertation: Context-awareness In Recommender Systems Research: Data Science for Web Intelligence Short Tutorial (2 hrs, non-technical): Schedule: 2:00 PM – 5:00 PM, Oct 13, 2016 Break: 3:00 PM – 3:30 PM (Outside Merchants) Location: Herndon, Omaha Hilton, Omaha, USA 2
  3. 3. Topics in this Tutorial • Information Overload • Solution: Information Retrieval (IR) e.g., Google Search Engine • Solution: Recommender Systems (RecSys) e.g., Movie recommender by Netflix • Context and Context-awareness e.g., Mobile computing and smart home devices • Context-awareness in IR and RecSys • Extended Topics: Trends, Challenges and Future 3
  4. 4. Information Overload
  5. 5. Populations v.s. Flood Information 5 https://www.youtube.com/watch?v=ia5FxoeFJWI
  6. 6. Documents 6
  7. 7. Website 7
  8. 8. Multimedia / Streaming Media 8
  9. 9. Business and Applications 9
  10. 10. Life via Multi-Channel & Multi-Device 10
  11. 11. We are the victim! 11
  12. 12. Information Overload 12 • Information overload refers to the difficulty a person can have understanding an issue and making decisions that can be caused by the presence of too much information. • The term is popularized by Alvin Toffler in his bestselling 1970 book “Future Shock”
  13. 13. Information Overload 13 • We are living in the information age • But, you may want to LEAVE (escape from) the overloaded information age right now.
  14. 14. Alleviating Information Overload 14 Some solutions (Meyer 1998) • Chunking: Deal with group of things, not individuals • Omission: Ignore some information • Queuing: Put information aside & catch up later • Capitulation: Escape from the task • Filtering: ignore irrelevant information • And so forth … Let’s take Emails for example
  15. 15. Alleviating Information Overload 15 Information Extraction and Filtering Query Information Retrieval Recommender Systems
  16. 16. Information Retrieval
  17. 17. Information Retrieval 17 Information Retrieval, one example: Web Search
  18. 18. Information Retrieval 18 Information Retrieval, one example: Web Search
  19. 19. Information Retrieval 19 Information Retrieval, one example: Web Search
  20. 20. Information Retrieval 20 Information Retrieval, one example: Web Search
  21. 21. Information Retrieval Task In Information Retrieval: • Given a query • Retrieve a list of documents related to the query/intent The query could be a term: 21
  22. 22. Information Retrieval Task In Information Retrieval: • Given a query • Retrieve a list of documents related to the query/intent The query could be a sentence: 22
  23. 23. Information Retrieval Task In Information Retrieval: • Given a query • Retrieve a list of documents related to the query/intent The query could be a picture: 23
  24. 24. Information Retrieval Task In Information Retrieval: • Given a query • Retrieve a list of documents related to the query/intent The query could be an audio/voice: 24
  25. 25. Information Retrieval Task In Information Retrieval: • Given a query • Retrieve a list of documents related to the query The query could be even anything!!!! Thanks to the contributions by: • Multimedia • Natural language processing (NLP) 25
  26. 26. Information Retrieval Key issues in IR 26 Creation Utilization Searching & Ranking Active Inactive Semi-Active Retention/ Mining Disposition Discard Using Creating Authoring Modifying Organizing Indexing Storing Retrieval Distribution Networking Accessing Filtering
  27. 27. Recommender Systems
  28. 28. Outline • Recommender Systems Introduction and Applications Tasks and Evaluations List of Traditional Recommendation Algorithms 28
  29. 29. Outline • Recommender Systems Introduction and Applications Tasks and Evaluations List of Traditional Recommendation Algorithms 29
  30. 30. Recommender System (RS) • RS: item recommendations tailored to user tastes 30
  31. 31. Recommender Systems 31 E-Commerce: Amazon.com, eBay.com, BestBuy, NewEgg
  32. 32. Recommender Systems 32 Online Streaming: Netflix, Pandora, Spotify, Youtube, etc
  33. 33. Recommender Systems 33 Social Media: Facebook, Twitter, Weibo, etc
  34. 34. Recommender Systems 34 • RecSys are able to provide item recommendations tailored by users’ preferences in the history. The notion of “item” may vary from domains to domains E-Commerce: single item, a bundle of items, etc Movies: each movie, director, actor, movie genre, etc Music: single track, album, artist, playlist, etc Travel: tour, flight, hotel, car rental, travel package, etc Social networks: tweets, user accounts, groups, etc
  35. 35. How it works 35
  36. 36. How it works 36
  37. 37. How it works 37
  38. 38. How it works 38 Binary FeedbackRatings Reviews Behaviors • User Preferences Explicit Implicit
  39. 39. Rating-Based Data Sets 39 T1 T2 T3 T4 T5 T6 T7 T8 U1 4 3 4 2 5 U2 3 4 2 5 U3 4 4 2 2 4 U4 3 5 2 4 U5 2 5 2 4 ? 4 User demographic Information: Age, Gender, Race, Country, etc Item feature information: Movie/Music Genre, Movie director, Music Composer, etc
  40. 40. How it works 40 Red Mars Juras- sic Park Lost World 2001 Found ation Differ- ence Engine Recommender Systems User Profile Neuro- mancer 2010 Recommendations
  41. 41. Outline • Recommender Systems Introduction and Applications Tasks and Evaluations List of Traditional Recommendation Algorithms 41
  42. 42. 42 Task and Eval (1): Rating Prediction User Item Rating U1 T1 4 U1 T2 3 U1 T3 3 U2 T2 4 U2 T3 5 U2 T4 5 U3 T4 4 U1 T4 3 U2 T1 2 U3 T1 3 U3 T2 3 U3 T3 4 Train Test Task: P(U, T) in testing set Prediction error: e = R(U, T) – P(U, T) Mean Absolute Error (MAE) = Other evaluation metrics: • Root Mean Square Error (RMSE) • Coverage • and more …
  43. 43. 43 Task and Eval (1): Rating Prediction User Item Rating U1 T1 4 U1 T2 3 U1 T3 3 U2 T2 4 U2 T3 5 U2 T4 5 U3 T4 4 U1 T4 3 U2 T1 2 U3 T1 3 U3 T2 3 U3 T3 4 Train Test Task: P(U, T) in testing set 1. Build a model, e.g., P(U, T) = Avg (T) 2. Process of Rating Prediction P(U1, T4) = Avg(T4) = (5+4)/2 = 4.5 P(U2, T1) = Avg(T1) = 4/1 = 4 P(U3, T1) = Avg(T1) = 4/1 = 4 P(U3, T2) = Avg(T2) = (3+4)/2 = 3.5 P(U3, T3) = Avg(T3) = (3+5)/2 = 4 3. Evaluation by Metrics Mean Absolute Error (MAE) = ei = R(U, T) – P(U, T) MAE = (|3 – 4.5| + |2 - 4| + |3 - 4| + |3 – 3.5| + |4 - 4|) / 5 = 1
  44. 44. 44 Task and Eval (2): Top-N Recommendation User Item Rating U1 T1 4 U1 T2 3 U1 T3 3 U2 T2 4 U2 T3 5 U2 T4 5 U3 T4 4 U1 T4 3 U2 T1 2 U3 T1 3 U3 T2 3 U3 T3 4 Train Test Task: Top-N Items to a user U3 Predicted Rank: T3, T1, T4, T2 Real Rank: T3, T2, T1 Then compare the two lists: Precision@N = # of hits/N Other evaluation metrics: • Recall • Mean Average Precision (MAP) • Normalized Discounted Cumulative Gain (NDCG) • Mean Reciprocal Rank (MRR) • and more …
  45. 45. 45 Task and Eval (2): Top-N Recommendation User Item Rating U1 T1 4 U1 T2 3 U1 T3 3 U2 T2 4 U2 T3 5 U2 T4 5 U3 T4 4 U1 T4 3 U2 T1 2 U3 T1 3 U3 T2 3 U3 T3 4 Train Test Task: Top-N Items to user U3 1. Build a model, e.g., P(U, T) = Avg (T) 2. Process of Rating Prediction P(U3, T1) = Avg(T1) = 4/1 = 4 P(U3, T2) = Avg(T2) = (3+4)/2 = 3.5 P(U3, T3) = Avg(T3) = (3+5)/2 = 4 P(U3, T4) = Avg(T4) = (4+5)/2 = 3.5 Predicted Rank: T3, T1, T4, T2 Real Rank: T3, T2, T1 3. Evaluation Based on the two lists Precision@N = # of hits/N Precision@1 = 1/1 Precision@2 = 2/2 Precision@3 = 2/3
  46. 46. Outline • Recommender Systems Introduction and Applications Tasks and Evaluations List of Traditional Recommendation Algorithms 46
  47. 47. Traditional Recommendation Algorithms 47 Content-Based Recommendation Algorithms The user will be recommended items similar to the ones the user preferred in the past, such as book/movie recsys Collaborative Filtering Based Recommendation Algorithms The user will be recommended items that people with similar tastes and preferences liked in the past, e.g., movie recsys Hybrid Recommendation Algorithms Combine content-based and collaborative filtering based algorithms to produce item recommendations.
  48. 48. Context and Context-awareness
  49. 49. Outline • Context and Context-awareness What is context and examples What is context-awareness and examples Context collections 49
  50. 50. Outline • Context and Context-awareness What is context and examples What is context-awareness and examples Context collections 50
  51. 51. Factors Influencing Holiday Decisions 51
  52. 52. Example of Contexts 52 • Search in Google (by time)
  53. 53. Example of Contexts 53 • Search in Google Map (by location)
  54. 54. Example of Contexts Beyond Time & Locations 54 • Search in Google Map (by location)
  55. 55. Example of Contexts Beyond Time & Locations 55 • Search in Google Map (by location)
  56. 56. What is Context? 56 • “Context is any information that can be used to characterize the situation of an entity” by Anind K. Dey, 2001
  57. 57. What is Context? 57 There are tons of ways to split contexts into different categories
  58. 58. What is Context? 58 The most common contextual variables: Time and Location User intent or purpose User emotional states Devices Topics of interests, e.g., apple vs. Apple Others: companion, weather, budget, etc Usually, the selection/definition of contexts is a domain-specific problem
  59. 59. Outline • Context and Context-awareness What is context and examples What is context-awareness and examples Context collections 59
  60. 60. Context-Awareness 60 • Context-Awareness = Adapt to the changes of the contextual situations, to build smart applications • It has been successfully applied to: – Ubiquitous computing – Mobile computing – Information Retrieval – Recommender Systems – And so forth…
  61. 61. Example: Smart Home with Remote Controls 61 https://www.youtube.com/watch?v=jB7iuBKcfZw
  62. 62. Example: Smart Home with Context-awareness 62 https://www.youtube.com/watch?v=UQWYRsXkbAM
  63. 63. Content vs Context 63 • Content-Based Approaches • Context-Driven Applications and Approaches
  64. 64. Content-Based Approaches 64
  65. 65. Context-Driven Applications and Approaches 65 At Cinema with Friends At Home with Family At Swimming Pool with Partner
  66. 66. When Contexts Take Effect? • Contexts could be useful in different time points 66 Timeline Past Context Current Context Future Context Most Applications Historical Data or Knowledge Ubiquitous Computing Context Modeling Context Mining Context Matching Context Adaptation Context Prediction Context Adaptation
  67. 67. Outline • Context and Context-awareness What is context and examples What is context-awareness and examples Context collections 67
  68. 68. How to Collect Contexts • Sensors e.g., the application of smart homes • User Inputs e.g., survey or user interactions • Inference e.g., from user reviews 68
  69. 69. How to Collect Contexts • Sensors, e.g., the application of smart homes 69
  70. 70. How to Collect Contexts • User Inputs, e.g., survey or user interactions 70
  71. 71. How to Collect Contexts • Inference, e.g., from user reviews 71 Family Trip Early Arrival Season and Family Trip
  72. 72. Short Summary • Information Overload • Solution: Information Retrieval (IR) e.g., Google Search Engine • Solution: Recommender Systems (RecSys) e.g., Movie recommender by Netflix • Context and Context-awareness e.g., Mobile computing and smart home devices 72
  73. 73. Next • Coffee Break – Time: 3:00 PM to 3:30 PM – Location: Outside Merchants • Context-awareness in IR and RecSys • Extended Topics: Trends, Challenges and Future 73
  74. 74. Context-awareness in IR
  75. 75. 75 • Search in Google (by time) Context-awareness in IR: Examples
  76. 76. 76 • Search in Google Map (by location) Context-awareness in IR: Examples
  77. 77. Context in IR 77 • Searches should be processed in the context of the information surrounding them, allowing more accurate search results that better reflect the user’s actual intentions. (Finkelstein, 2001) • Context, in IR, refers to the whole data, metadata, applications and cognitive structures embedded in situations of retrieval or information seeking. (Tamine, et al., 2010) • These information usually have an impact on the user’s behavior and perception of relevance.
  78. 78. Context in IR 78
  79. 79. Context-awareness in IR 79 Gareth J.F. Jones, 2004
  80. 80. Context-awareness in IR 80 The development of Context-awareness in IR Interactive and Proactive by Gareth J.F. Jones, 2001 Other Frameworks or Models Temporal Models Semantic Models Topic Models Multimedia as inputs: IR based on voice or audios And so forth…
  81. 81. Terminologies in IR 81 The Author: The author of documents, info provider The End User: Who releases the queries or Whose context information is captured Information Recipient: Who finally receive the retrieved information We assume the end user and information recipient are the same person.
  82. 82. Context-awareness in IR: Interactive Applications 82 Interactive app • User-driven approach • Users explicitly issue a request (along with context information) to retrieve relevant documents • Examples: What are the comfortable hotels near the Omaha Zoo (assume there are no automatic location detectors or sensors) • Contexts are included in the query; or finer-grained query can be derived from related key words
  83. 83. Context-awareness in IR: Proactive Applications 83 Proactive App • Author-driven approach • Each document is associated with a trigger context. The documents are retrieved to the user if the trigger context matches user’s current context. • Example-1: (Location, Time) = trigger contexts for each restaurant; open Yelp, input Chinese dish, Yelp will return a list of Chinese restaurants nearby and valid opening hours at the current moment. [search with queries] • Example-2: (Location, Time) = trigger contexts for each restaurant; open Yelp, Yelp will deliver a list of Chinese restaurants nearby and valid opening hours at the current moment. [retrieval or recommendation without queries]
  84. 84. Context-awareness in IR 84 Other Frameworks or Models Temporal Models Image retrieval, NYC pictures: old, new? Summer, winter? Semantic Models Text retrieval, apple vs Apple? Topic Models Academic papers retrieval, AI, ML, DM, RecSys? Multimedia as inputs: IR based on voice or audios Bird singing, which birds? real birds? emotional reactions? And so forth…
  85. 85. Context-awareness in IR 85 Interactive User must give a query The context information are involved in the user inputs It is a process from user contexts to relevant documents Proactive User may or may not give a query Context are captured automatically It is a process of matching trigger contexts with user contexts It is a process from documents to users
  86. 86. Context-awareness in RecSys
  87. 87. Outline • Context-aware Recommendation Intro: Does context matter?  Definition: What is Context in RecSys?  Collection: Context Acquisition  Selection: How to identify the relevant context? Context Incorporation Context Filtering Context Modeling Other Challenges and CARSKit 87
  88. 88. Non-context vs Context 88 Companion • Decision Making = Rational + Contextual • Examples:  Travel destination: in winter vs in summer  Movie watching: with children vs with partner  Restaurant: quick lunch vs business dinner  Music: workout vs study
  89. 89. What is Context? 89 • “Context is any information that can be used to characterize the situation of an entity” by Anind K. Dey, 2001 • Representative Context: Fully Observable and Static • Interactive Context: Non-Fully observable and Dynamic
  90. 90. Interactive Context Adaptation 90 • Interactive Context: Non-fully observable and Dynamic List of References:  M Hosseinzadeh Aghdam, N Hariri, B Mobasher, R Burke. "Adapting Recommendations to Contextual Changes Using Hierarchical Hidden Markov Models", ACM RecSys 2015  N Hariri, B Mobasher, R Burke. "Adapting to user preference changes in interactive recommendation", IJCAI 2015  N Hariri, B Mobasher, R Burke. "Context adaptation in interactive recommender systems", ACM RecSys 2014  N Hariri, B Mobasher, R Burke. "Context-aware music recommendation based on latent topic sequential patterns", ACM RecSys 2012
  91. 91. CARS With Representative Context 91 • Observed Context: Contexts are those variables which may change when a same activity is performed again and again. • Examples: Watching a movie: time, location, companion, etc Listening to a music: time, location, emotions, occasions, etc Party or Restaurant: time, location, occasion, etc Travels: time, location, weather, transportation condition, etc
  92. 92. What is Representative Context? 92 Activity Structure: 1). Subjects: group of users 2). Objects: group of items/users 3). Actions: the interactions within the activities Which variables could be context? 1). Attributes of the actions Watching a movie: time, location, companion Listening to a music: time, occasions, etc 2). Dynamic attributes or status from the subjects User emotions Yong Zheng. "A Revisit to The Identification of Contexts in Recommender Systems", IUI 2015
  93. 93. Context-aware RecSys (CARS) 93 • Traditional RS: Users × Items Ratings • Contextual RS: Users × Items × Contexts Ratings Example of Multi-dimensional Context-aware Data set User Item Rating Time Location Companion U1 T1 3 Weekend Home Kids U1 T2 5 Weekday Home Partner U2 T2 2 Weekend Cinema Partner U2 T3 3 Weekday Cinema Family U1 T3 ? Weekend Cinema Kids
  94. 94. Terminology in CARS 94 • Example of Multi-dimensional Context-aware Data set Context Dimension: time, location, companion Context Condition: Weekend/Weekday, Home/Cinema Context Situation: {Weekend, Home, Kids} User Item Rating Time Location Companion U1 T1 3 Weekend Home Kids U1 T2 5 Weekday Home Partner U2 T2 2 Weekend Cinema Partner U2 T3 3 Weekday Cinema Family U1 T3 ? Weekend Cinema Kids
  95. 95. Context Acquisition 95 How to Collect the context and user preferences in contexts? • By User Surveys or Explicitly Asking for User Inputs Predefine context & ask users to rate items in these situations; Or directly ask users about their contexts in user interface; • By Usage data The log data usually contains time and location (at least); User behaviors can also infer context signals; • By User reviews Text mining or opinion mining could be helpful to infer context information from user reviews
  96. 96. Examples: Context Acquisition (RealTime) 96
  97. 97. Examples: Context Acquisition (Explicit) 97
  98. 98. Examples: Context Acquisition (Explicit) 98
  99. 99. Examples: Context Acquisition (Explicit) 99 Mobile App: South Tyrol Suggests Personality Collection Context Collection
  100. 100. • Inference, e.g., from user reviews 100 Family Trip Early Arrival Season and Family Trip Examples: Context Acquisition (Implicit)
  101. 101. Examples: Context Acquisition (PreDefined) 101
  102. 102. Examples: Context Acquisition (PreDefined) 102 Google Music: Listen Now
  103. 103. Examples: Context Acquisition (User Behavior) 103
  104. 104. Context Relevance and Context Selection 104 Apparently, not all of the context are relevant or influential • By User Surveys e.g., which ones are important for you in this domain • By Feature Selection e.g., Principal Component Analysis (PCA) e.g., Linear Discriminant Analysis (LDA) • By Statistical Analysis or Detection on Contextual Ratings Statistical test, e.g., Freeman-Halton Test Other methods: information gain, mutual information, etc Reference: Odic, Ante, et al. "Relevant context in a movie recommender system: Users’ opinion vs. statistical detection." CARS Workshop@ACM RecSys 2012
  105. 105. Context-aware Data Sets 105 Public Data Set for Research Purpose • Food: AIST Japan Food, Mexico Tijuana Restaurant Data • Movies: AdomMovie, DePaulMovie, LDOS-CoMoDa Data • Music: InCarMusic • Travel: TripAdvisor, South Tyrol Suggests (STS) • Mobile: Frappe Frappe is a large data set, others are either small or sparse Downloads and References: https://github.com/irecsys/CARSKit/tree/master/context- aware_data_sets
  106. 106. 106 • Once we collect context information, and also identify the most influential or relevant contexts, the next step is to incorporate contexts into the recommender systems. Context Incorporation • Traditional RS: Users × Items Ratings • Contextual RS: Users × Items × Contexts Ratings
  107. 107. 107 • There are three ways to build algorithms for CARS Context-aware RecSys (CARS)
  108. 108. 108 • Next, we focus on the following CARS algorithms: Contextual Filtering: Use Context as Filter Contextual Modeling: Independent vs Dependent Context-aware RecSys (CARS)
  109. 109. 109 Contextual Filtering
  110. 110. 110 Reduction-based Approach, 2005 Exact and Generalized PreFiltering, 2009 Item Splitting, 2009 User Splitting, 2011 Dimension as Virtual Items, 2011 Differential Context Relaxation, 2012 Differential Context Weighting, 2013 Semantic Contextual Pre-Filtering, 2013 UI Splitting, 2014 Contextual Filtering
  111. 111. 111 • Data Sparsity Problem in Contextual Rating Differential Context Modeling User Movie Time Location Companion Rating U1 Titanic Weekend Home Girlfriend 4 U2 Titanic Weekday Home Girlfriend 5 U3 Titanic Weekday Cinema Sister 4 U1 Titanic Weekday Home Sister ? Context Matching  Only profiles given in <Weekday, Home, Sister> Context Relaxation  Use a subset of context dimensions to match Context Weighting  Use all profiles, but weighted by context similarity
  112. 112. 112 • Context Relaxation Differential Context Modeling User Movie Time Location Companion Rating U1 Titanic Weekend Home Girlfriend 4 U2 Titanic Weekday Home Girlfriend 5 U3 Titanic Weekday Cinema Sister 4 U1 Titanic Weekday Home Sister ? Use {Time, Location, Companion}  0 record matched! Use {Time, Location}  1 record matched! Use {Time}  2 records matched! Note: a balance is required for relaxation and accuracy
  113. 113. 113 • Context Weighting Differential Context Modeling User Movie Time Location Companion Rating U1 Titanic Weekend Home Girlfriend 4 U2 Titanic Weekday Home Girlfriend 5 U3 Titanic Weekday Cinema Sister 4 U1 Titanic Weekday Home Sister ? c and d are two contexts. (Two red regions in the Table above.) σ is the weighting vector <w1, w2, w3> for three dimensions. Assume they are equal weights, w1 = w2 = w3 = 1. J(c, d, σ) = # of matched dimensions / # of all dimensions = 2/3 Similarity of contexts is measured by Weighted Jaccard similarity
  114. 114. 114 • Notion of “differential” In short, we apply different context relaxation and context weighting to each component Differential Context Modeling 1.Neighbor Selection 2.Neighbor contribution 3.User baseline 4.User Similarity
  115. 115. 115 • Workflow Step-1: We decompose an algorithm to different components; Step-2: We try to find optimal context relaxation/weighting:  In context relaxation, we select optimal context dimensions  In context weighting, we find optimal weights for each dimension • Optimization Problem Assume there are 4 components and 3 context dimensions Differential Context Modeling 1 2 3 4 5 6 7 8 9 10 11 12 DCR 1 0 0 0 1 1 1 1 0 1 1 1 DCW 0.2 0.3 0 0.1 0.2 0.3 0.5 0.1 0.2 0.1 0.5 0.2 1st 2nd 3rd 4th
  116. 116. 116 • Optimization Approach  Particle Swarm Optimization (PSO)  Genetic Algorithms  Other non-linear approaches Differential Context Modeling Fish Birds Bees
  117. 117. 117 • How PSO works? Differential Context Modeling Swarm = a group of birds Particle = each bird ≈ search entity in algorithm Vector = bird’s position in the space ≈ Vectors we need in DCR/DCW Goal = the distance to location of pizza ≈ prediction error So, how to find goal by swam intelligence? 1.Looking for the pizza Assume a machine can tell the distance 2.Each iteration is an attempt or move 3.Cognitive learning from particle itself Am I closer to the pizza comparing with my “best ”locations in previous history? 4.Social Learning from the swarm Hey, my distance is 1 mile. It is the closest! . Follow me!! Then other birds move towards here. DCR – Feature selection – Modeled by binary vectors – Binary PSO DCW – Feature weighting – Modeled by real-number vectors – PSO
  118. 118. 118 • Summary Pros: Alleviate data sparsity problem in CARS Cons: Computational complexity in optimization Cons: Local optimum by non-linear optimizer Our Suggestion:  We may just run these optimizations offline to find optimal context relaxation or context weighting solutions; And those optimal solutions can be obtained periodically; Differential Context Modeling
  119. 119. 119 Contextual Modeling
  120. 120. 120 Tensor Factorization, 2010 Context-aware Matrix Factorization, 2011 Factorization Machines, 2011 Deviation-Based Contextual Modeling, 2014 Similarity-Based Contextual Modeling, 2015 Contextual Modeling
  121. 121. 121 Independent Contextual Modeling (Tensor Factorization)
  122. 122. 122 • Tensor Factorization Independent Contextual Modeling Multi-dimensional space: Users × Items × Contexts  Ratings Each context variable is modeled as an individual and independent dimension in addition to user & item dims. Thus we can create a multidimensional space, where rating is the value in the space.
  123. 123. 123 • Tensor Factorization (Optimization) 1).By CANDECOMP/PARAFAC (CP) Decomposition Independent Contextual Modeling Multi-dimensional space: Users × Items × Contexts  Ratings
  124. 124. 124 • Tensor Factorization (Optimization) 2).By Tucker Decomposition Independent Contextual Modeling Multi-dimensional space: Users × Items × Contexts  Ratings
  125. 125. 125 • Tensor Factorization Pros: Straightforward, easily to incorporate contexts into the model Cons: 1). Ignore the dependence between contexts and user/item dims 2). Increased computational cost if more context dimensions There are some research working on efficiency improvement on TF, such as reusing GPU computations, and so forth… Independent Contextual Modeling
  126. 126. 126 Dependent Contextual Modeling (Deviation-Based v.s. Similarity-Based)
  127. 127. 127 • Dependence between Every two Contexts  Deviation-Based: rating deviation between two contexts  Similarity-Based: similarity of rating behaviors in two contexts Dependent Contextual Modeling
  128. 128. 128 • Notion: Contextual Rating Deviation (CRD) CRD how user’s rating is deviated from context c1 to c2? CRD(D1) = 0.5  Users’ rating in Weekday is generally higher than users’ rating at Weekend by 0.5 CRD(D2) = -0.1  Users’ rating in Cinema is generally lower than users’ rating at Home by 0.1 Deviation-Based Contextual Modeling Context D1: Time D2: Location c1 Weekend Home c2 Weekday Cinema CRD(Di) 0.5 -0.1
  129. 129. 129 • Notion: Contextual Rating Deviation (CRD) CRD how user’s rating is deviated from context c1 to c2? Assume Rating (U, T, c1) = 4 Predicted Rating (U, T, c2) = Rating (U, T, c1) + CRDs = 4 + 0.5 -0.1 = 4.4 Deviation-Based Contextual Modeling Context D1: Time D2: Location c1 Weekend Home c2 Weekday Cinema CRD(Di) 0.5 -0.1
  130. 130. 130 • Build a deviation-based contextual modeling approach Assume Ø is a special situation: without considering context Assume Rating (U, T, Ø) = Rating (U, T) = 4 Predicted Rating (U, T, c2) = 4 + 0.5 -0.1 = 4.4 Deviation-Based Contextual Modeling Context D1: Time D2: Location Ø UnKnown UnKnown c2 Weekday Cinema CRD(Di) 0.5 -0.1 In other words, F(U, T, C) = P(U, T) + 𝑖=0 𝑁 𝐶𝑅𝐷(𝑖)
  131. 131. 131 • Build a deviation-based contextual modeling approach Note: P(U, T) could be a rating prediction by any traditional recommender systems, such as matrix factorization Deviation-Based Contextual Modeling Simplest model: F(U, T, C) = P(U, T) + 𝑖=0 𝑁 𝐶𝑅𝐷(𝑖) User-personalized model: F(U, T, C) = P(U, T) + 𝑖=0 𝑁 𝐶𝑅𝐷(𝑖, 𝑈) Item-personalized model: F(U, T, C) = P(U, T) + 𝑖=0 𝑁 𝐶𝑅𝐷(𝑖, 𝑇)
  132. 132. 132 • Build a similarity-based contextual modeling approach Assume Ø is a special situation: without considering context Assume Rating (U, T, Ø) = Rating (U, T) = 4 Predicted Rating (U, T, c2) = 4 × Sim(Ø, c2) Similarity-Based Contextual Modeling Context D1: Time D2: Location Ø UnKnown UnKnown c2 Weekday Cinema Sim(Di) 0.5 0.1 In other words, F(U, T, C) = P(U, T) × Sim(Ø, C)
  133. 133. 133 • Challenge: how to model context similarity, Sim(c1,c2) We propose three representations: • Independent Context Similarity (ICS) • Latent Context Similarity (LCS) • Multidimensional Context Similarity (MCS) Similarity-Based Contextual Modeling
  134. 134. 134 • Sim(c1, c2): Independent Context Similarity (ICS) 𝑆𝑖𝑚 c1, 𝑐2 = 𝑖=1 𝑁 𝑠𝑖𝑚(𝐷𝑖) = 0.5 × 0.1 = 0.05 Similarity-Based Contextual Modeling Context D1: Time D2: Location c1 Weekend Home c2 Weekday Cinema Sim(Di) 0.5 0.1 𝐺𝑒𝑛𝑒𝑟𝑎𝑙𝑙𝑦, 𝐼𝑛 𝐼𝐶𝑆: 𝑆𝑖𝑚 c1, 𝑐2 = 𝑖=1 𝑁 𝑠𝑖𝑚(𝐷𝑖) Weeend Weekday Home Cinema Weekend 1 b — — Weekday a 1 — — Home — — 1 c Cinema — — d 1
  135. 135. 135 • Sim(c1, c2): Latent Context Similarity (LCS) In training, we learnt (home, cinema), (work, cinema) In testing, we need (home, work) Similarity-Based Contextual Modeling 𝐺𝑒𝑛𝑒𝑟𝑎𝑙𝑙𝑦, 𝐼𝑛 𝐿𝐶𝑆: 𝑆𝑖𝑚 c1, 𝑐2 = 𝑖=1 𝑁 𝑠𝑖𝑚(𝐷𝑖) 𝑆𝑖𝑚 𝐷𝑖 = 𝑑𝑜𝑡𝑃𝑟𝑜𝑑𝑢𝑐𝑡 (𝑉𝑖1, 𝑉𝑖2) f1 f2 … … … … fN home 0.1 -0.01 … … … … 0.5 work 0.01 0.2 … … … … 0.01 cinema 0.3 0.25 … … … … 0.05 Vector Representation
  136. 136. 136 • Sim(c1, c2): Multidimensional Context Similarity (MCS)  Each context condition is an individual axis in the space.  For each axis, there are only two values: 0 and 1.  1 means this condition is selected; otherwise, not selected.  When value is 1, each condition is associated with a weight c1 = <Weekday, Cinema, with Kids> c2 = <Weekend, Home, with Family> They can be mapped as two points in the space Similarity-Based Contextual Modeling 𝐼𝑛 𝑀𝐶𝑆: 𝐷𝑖𝑠𝑆𝑖𝑚 c1, 𝑐2 = distance between two point
  137. 137. 137 Similarity-Based Contextual Modeling Similarity-Based CAMF: Similarity-Based CSLIM: • Build algorithms based on traditional recommender 𝐼𝑛 𝐼𝐶𝑆: 𝑆𝑖𝑚 c1, 𝑐2 = 𝑖=1 𝑁 𝑠𝑖𝑚(𝐷𝑖) 𝐼𝑛 𝐿𝐶𝑆: 𝑆𝑖𝑚 c1, 𝑐2 = 𝑖=1 𝑁 𝑠𝑖𝑚 𝐷𝑖 , 𝑠𝑖𝑚 𝐷𝑖 𝑖𝑠 𝑑𝑜𝑡𝑃𝑟𝑜𝑑𝑢𝑐𝑡 𝐼𝑛 𝑀𝐶𝑆: 𝐷𝑖𝑠𝑠𝑖𝑚𝑖𝑙𝑎𝑟𝑖𝑡𝑦 𝑖𝑠 𝑑𝑖𝑠𝑡𝑎𝑛𝑐𝑒, 𝑠𝑢𝑐ℎ 𝑎𝑠 𝐸𝑢𝑐𝑙𝑖𝑑𝑒𝑎𝑛 𝑑𝑖𝑠𝑡𝑎𝑛𝑐𝑒
  138. 138. 138 CARSKit: Recommendation Library
  139. 139. 139 Recommendation Library • Motivations to Build a Recommendation Library 1). Standard Implementations for popular algorithms 2). Standard platform for benchmark or evaluations 3). Helpful for both research purpose and industry practice 4). Helpful as tools in teaching and learning
  140. 140. 140 Recommendation Library There are many recommendation library for traditional recommendation. Users × Items Ratings
  141. 141. 141 CARSKit: A Java-based Open-source Context-aware Recommendation Library CARSKit: https://github.com/irecsys/CARSKit Users × Items × Contexts Ratings User Guide: http://arxiv.org/abs/1511.03780
  142. 142. 142 CARSKit: A Short User Guide 1. Download the JAR library, i.e., CARSKit.jar 2. Prepare your data 3. Setting: setting.conf 4. Run: java –jar CARSKit.jar –c setting.conf
  143. 143. 143 CARSKit: A Short User Guide Sample of Outputs: Data Statistics
  144. 144. 144 CARSKit: A Short User Guide Sample of Outputs: 1). Results by Rating Prediction Task Final Results by CAMF_C, MAE: 0.714544, RMSE: 0.960389, NAME: 0.178636, rMAE: 0.683435, rRMSE: 1.002392, MPE: 0.000000, numFactors: 10, numIter: 100, lrate: 2.0E-4, maxlrate: -1.0, regB: 0.001, regU: 0.001, regI: 0.001, regC: 0.001, isBoldDriver: true, Time: '00:01','00:00‘ 2). Results by Top-N Recommendation Task Final Results by CAMF_C, Pre5: 0.048756,Pre10: 0.050576, Rec5: 0.094997, Rec10: 0.190364, AUC: 0.653558, MAP: 0.054762, NDCG: 0.105859, MRR: 0.107495, numFactors: 10, numIter: 100, lrate: 2.0E-4, maxlrate: -1.0, regB: 0.001, regU: 0.001, regI: 0.001, regC: 0.001, isBoldDriver: true, Time: '00:01','00:00'
  145. 145. 145 Example of Experimental Results
  146. 146. 146 Example of Experimental Results
  147. 147. Extended Topics: Trends, Challenges & Future
  148. 148. 148 Challenges • There could be many other challenges in context- awareness in IR and RecSys: Numeric v.s. Categorical Context Information Explanations by Context New User Interfaces and Interactions User Intent Predictions or References in IR and RecSys Cold-start and Data Sparisty Problems in CARS
  149. 149. 149 Challenges: Numeric Context • List of Categorical Context Time: morning, evening, weekend, weekday, etc Location: home, cinema, work, party, etc Companion: family, kid, partner, etc • How about numeric context Time: 2016, 6:30 PM, 2 PM to 6 PM (time-aware recsys) Temperature: 12°C, 38°C Principle component by PCA: numeric values
  150. 150. 150 Challenges: Explanation • Recommendation Using social networks (By Netflix) The improvement is not significant; Unless we explicitly explain it to the end users; • IR and RecSys Using context (Open Research) Similar thing could happen to context-aware IR & recsys; How to use contexts to explain information filtering; How to design new user interface to explain; How to introduce user-centric evaluations;
  151. 151. 151 Challenges: User Interface • Potential Research Problems in User Interface New UI to collect context; New UI to interact with users friendly and smoothly; New UI to explain context-aware IR and RecSys; New UI to avoid debates on user privacy; User privacy problems in context collection & usage
  152. 152. 152 Challenges: Cold-Start and Data Sparsity • Cold-start Problems Cold-start user: no rating history by this user Cold-start item: no rating history on this item Cold-start context: no rating history within this context • Solution: Hybrid Method by Matthias Braunhofer, et al.
  153. 153. 153 Challenges: User Intent • User Intent could be the most influential contexts How to better predict that How to better design UI to capture that How to balance user intent and limitations in resources
  154. 154. 154 Trends and Future • Context-awareness enable new applications: context suggestion, or context-driven UI/Applications Context Suggestion
  155. 155. Context Suggestion 155 • Task: Suggest a list of contexts to users (on items) Context Rec Contextual RecTraditional Rec
  156. 156. 156 Context Suggestion: Motivations • Motivation-1: Maximize user experience User Experience (UX) refers to a person's emotions and attitudes about using a particular product, system or service.
  157. 157. 157 Context Suggestion: Motivations • Motivation-1: Maximize user experience It is not enough to recommend items only
  158. 158. Zoo Parks in San Diego, USA 158 • San Diego Zoo • San Diego Zoo Safari Park
  159. 159. Zoo Parks in San Diego, USA 159
  160. 160. 160 Context Suggestion: Motivations • Motivation-2: Contribute to Context Collection Predefine contexts and suggest them to users
  161. 161. 161 Context Suggestion: Motivations • Motivation-3: Connect with Context-aware RecSys User’s actions on context is a context-query to system
  162. 162. 162 References  L Baltrunas, M Kaminskas, F Ricci, et al. Best usage context prediction for music tracks. CARS@ACM RecSys, 2010  Y Zheng, B Mobasher, R Burke. Context Recommendation Using Multi- label Classification. IEEE/WIC/ACM WI, 2014  Y Zheng. Context Suggestion: Solutions and Challenges. ICDM Workshop, 2015  Y Zheng. Context-Driven Mobile Apps Management and Recommendation. ACM SAC, 2016  Yong Zheng, Bamshad Mobasher, Robin Burke. “User-Oriented Context Suggestion“, ACM UMAP, 2016
  163. 163. Tutorial: Context-Awareness In Information Retrieval and Recommender Systems Yong Zheng School of Applied Technology Illinois Institute of Technology, Chicago The 16th IEEE/WIC/ACM Conference on Web Intelligence, Omaha, USA

×