Presentation is loading. Please wait.

Presentation is loading. Please wait.

xStreams: Recommending Items to Users with Time-evolving Preferences

Similar presentations


Presentation on theme: "xStreams: Recommending Items to Users with Time-evolving Preferences"— Presentation transcript:

1 xStreams: Recommending Items to Users with Time-evolving Preferences
Thessaloniki, 3 June 2014 Presentation: Panagiotis Symeonidis Zaigham Faraz Siddiqui1, Eleftherios Tiakas2, Panagiotis Symeonidis2, Myra Spiliopoulou1 and Yannis Manolopoulos2 1Otto-von-Guericke University, Magdeburg 2Aristotle University, Thessaloniki

2 Outline Introduction Our Method Evaluation Conclusion
Problem Definition Motivation Related Work Our Method Learning User‘s Preferences Finding Similar Users Item Recommendation Evaluation Evaluation Issues Experimental Results Conclusion xStreams

3 Huge amount of data... YouTube receives 72 hrs of video content per minute. 20 novels are published each hour in English. There are approx. 18,000 restaurants in New York. What to see? What to read? Where to dine? xStreams

4 You should see Game of Thrones. I am sure you‘ll like it.
Recommender Systems Recommenders can help users by suggesting to them items of their preference You should see Game of Thrones. I am sure you‘ll like it. xStreams

5 Recommender Systems Items can be suggested to a user because they are:
either liked by similar users (Collaborative Filtering) or are similar to the items that s/he likes (Content-based Filtering) Hybrid approaches use a combination of both xStreams

6 Motivation 1 - Recommendations over Relational Data
E-shops stored data using relational DBMS. Information about the items, the users and their ratings on items is stored in a neighboring relation. Thus, information on user's preferences can be derived also from the properties/attributes of the items that s/he likes. name rates category size Ratings color price xStreams

7 Motivation 2- Concept drift over a stream of relational data
Preferences of a user are dynamic. Users may develop a liking for newer items over time, while s/he may stop liking what s/he used to prefer earlier. Tom&Jerry Game of Thrones Mickey Mouse Star Wars Milk Beer 5 years grows older 20 years xStreams

8 Related work of Stream Recommenders
Method of [Nasraoui et al., SDM 2007] TECHNO-Streams predicts the next web page in a user session. It is adaptive method and is based on clustering. However, forgeting a user session is unintuitive. Method of [Diaz-Aviles et al., RecSys 2012] SRMF performs Matrix Factorization and item ranking over a stream. However, the algorithm itself is not adaptive because it requires the matrix dimensions to be known in advance. xStreams

9 Our xStreams algorithm
It uses propositionalization/aggregation to merge multiple streams in a single one. It is a hybrid approach. It uses content-based filtering to learn a user's preference via items’ properties. It exploits users’ ratings on items to find a set of similar users (collaborative filtering). It uses a window to store only the most recent ratings (forgetting the past ratings) It adapts when the user's preferences change. xStreams

10 Learning User's Preferences
xStreams makes use of propositionalisation which converts many relational streams into a single stream. Multiple rated items of users are summarized to a propositionalised vector eu. eu stores all the information about the items that u likes during last w timepoints, i.e., from ti to ti-w. xStreams

11 Example of Propositionalisation
xStreams

12 Finding Similar Users (1/2)
Content-based similarity over prop. stream  user u, we perform content-based filtering with others by using cosine similarity. Collaborative filtering over user-item matrix  user u, we compute collaborative filtering with others by using the cosine similarity. xStreams

13 Finding Similar Users (2/2)
xStreams computes a hybrid similarity between users. The final similarity is acquired as a weighted similarity that is based on simCB() and simCF(). xStreams

14 Recommending Items (1/2)
xStreams sorts the users’ similarity based on simTotal() similarity. It selects K nearest neighbors (KNN) who are considered as most similar to user u. The items from the KNN users can serve as potential recommended items. xStreams

15 Finding Items to Recommend (2/2)
4. The final predicted rating of a user u for an item j 5. The items are sorted according to the computed predicted ratings and the TOP-N items are recommended to u. xStreams

16 Evaluating a Stream Recommender
How long does the future span for a user? In hold-out evaluation, a subset of newly arrived objects is reserved only for evaluation. (It assumes that we can predict all future with the past ratings and no concept change occurs) This violates the stream mining assertion that changes do occur!!! In prequential evaluation, new objects are first evaluated and then are used for model learning. (It assumes that all objects appear in the next time batch ti+1) How to handle a user who appears once or occasionally? xStreams

17 Evaluating a Streaming Recommender
We use a version of prequential evaluation with hold-outs. We split the data from the ti into traini and testi. At ti+1, test data testi from ti gets incorporated into train. Old ratings are forgotten A portion of ratings in a batch is used for hold out and the rest for prequential evaluation xStreams

18 Evaluation Datasets MovieLens (hetrec2011-movielens-2k)
2113 users who rated 10197 movies (+ genre, actors, tags, etc.) 140 months period. Synthetic Dataset Created using MultiGen (Siddiqui et al., MUSE 2011) Simulates the rating behavior of users and concept drift User Rating Genre Movie Actors User Rating Item xStreams

19 Evaluation Datasets: Statistics
[MovieLens] There is increase of cold start items at t80. [MovieLens] There is concept shift at t80, i.e., global change in average rating of the rated items. [Synthetic] There is concept shift at t10. xStreams

20 Evaluation Framework Evaluation Strategies Evaluation Measures
xStreams with weights for simCB() & simCF() i.e.[simCB() =1, simCB() =0.66, simCB() = 0.33] CFStream Evaluation Measures Precision, Recall & RMSE Parameters MovieLens: w=12; K=100; N=2 Synthetic: w=2,4,8; K=7; N=7 xStreams

21 Experimental Results MovieLens w=12 K=100 N=2 time xStreams

22 Experimental Results Synthetic simCB()=1.0 K=7 N=7 time 15.01.2019
xStreams

23 Experimental Results Synthetic w=2 K=7 N=7 time xStreams

24 Conclusion We have presented a hybrid recommender for stream data, which combines CB filtering with CF. xStreams runs over a single combined stream of multiple relational streams. It adapts adequately in concept drift. We have outlined the challenges in the evaluation of streaming recommenders. xStreams

25 Future work There is a need for an evaluation framework that alleviates the drawbacks of prequential evaluation. Our datasets used in experiments follow power-law distribution. That is, there are users with many ratings on few items (Big Head), but many users with few ratings on different items (Long Tail). We want to develop measures that can capture the notion of similarity for the users of the Long Tail by incorporating serendipity in our item recommendations. xStreams

26 Thank You! Questions ? xStreams

27 Acknowledgements Part of this work was funded by the German Research Foundation project SP 572/11-1 "IMPRINT: Incremental Mining for Perennial Objects". xStreams


Download ppt "xStreams: Recommending Items to Users with Time-evolving Preferences"

Similar presentations


Ads by Google