際際滷

際際滷Share a Scribd company logo
iTALS
Fast ALS-based tensor factorization for context-aware
recommendation from implicit feedback
Bal叩zs Hidasi  balazs.hidasi@gravityrd.com
Domonkos Tikk  domonkos.tikk@gravityrd.com




 ECML/PKDD, 25TH SEPTEMBER 2012, BRISTOL
Overview
 Implicit feedback problem
 Context-awareness
  Seasonality
  Sequentaility
 iTALS
  Model
  Learning
  Prediction
 Experiments
Feedback types
 Feedback: user-item interraction (events)
 Explicit:
   Preferences explicitely coded
   E.g.: Ratings
 Implicit:
   Preferences not coded explicitely
   E.g.: purchase history
Problems with implicit feedback
 Noisy positive preferences
  E.g.: bought & disappointed
 No negative feedback available
  E.g.: had no info on item

 Usually evaluated by ranking metrics
  Can not be directly optimized
Why to use implicit feedback?
 Every user provides
 Some magnitudes larger amount of information
  than explicit feedback
 More important in practice
  Explicit algorithms are for the biggest only
Context-awareness
 Context: any information associated with events
 Context state: a possible value of the context
  dimension
 Context-awareness
   Usage of context information
   Incorporating additional informations into the method
   Different predictions for same user given different
    context states
   Can greatly outperform context-unaware methods
     Context segmentates items/users well
Seasonality as context
 Season: a time period
   E.g.: a week
 Timeband: given interval in season
   Context-states
   E.g.: days
 Assumed:
   aggregated behaviour in a given
    timeband is similar inbetween
    seasons                            User   Item     Date       Context
   and different for different         1      A     12/07/2010      1
    timebands                           2      B     15/07/2010      3
   E.g.: daily/weekly routines         1      B     15/07/2010      3
                                                       
                                        1      A     19/07/2010      1
Sequentiality
 Bought A after B
   B is the context-state of the users
    event on A
 Usefullness
   Some items are bought together
   Some items bought repetetively
   Some are not
 Association rule like information
  incorporated into model as
  context
   Here: into factorization methods
 Can learn negated rules
   If C then not A
M3
iTALS - Model
 Binary tensor
   D dimensional




                                         User
   User  item  context(s)




                                    M1
                                                 T
 Importance weights
   Lower weights to zeroes (NIF)
   Higher weights to cells with                Item
    more events                                 M2
 Cells approximated by sum of
  the values in the elementwise
  product of D vectors
   Each for a dimension
   Low dimensional vectors
iTALS - Learning
iTALS - Prediction
 Sum of values in elementwise product of vectors
  User-item: scalar product of feature vectors
  User-item-context: weighted scalar product of
   feature vectors
 Context-state dependent reweighting of features
 E.g.:
  Third feature = horror movie
  Context state1 = Friday night  third feature high
  Context state2 = Sunday afternoon  third
   feature low
Experiments
 5 databases
   3 implicit
     Online grocery shopping
     VoD consumption
     Music listening habits
   2 implicitizied explicit
     Netflix
     MovieLens 10M
 Recall@20 as primary evaluation metric
 Baseline: context-unaware method in every context-
  state
Scalability
                                      Running times on the Grocery dataset
                     350

                     300
                                                                                iALS epoch
Running time (sec)




                     250
                                                                                iTALS (time bands) epoch
                     200
                                                                                iTALS (sequence) epoch
                     150
                                                                                iALS calc. matrix
                     100
                                                                                iTALS (time bands) calc.
                                                                                matrix
                      50
                                                                                iTALS (sequence) calc. matrix
                      0
                           10   20   30     40   50   60   70   80   90   100
                                          Number of factors (K)
Results  Recall@20
0.1200

0.1000

0.0800

0.0600

0.0400

0.0200

0.0000
             VoD        Grocery        LastFM            Netflix           MovieLens
     iALS (MF method)   iCA baseline   iTALS (seasonality)         iTALS (sequence)
Results  Precision-recall curves
0.25        Recall-precision (Grocery)
0.20
0.15
0.10                                                            iALS

0.05
0.00                                                            iCA baseline
    0.00   0.05          0.10       0.15          0.20
                  Recall-precision (VoD)                        iTALS
0.08                                                            (season)

0.06                                                            iTALS
                                                                (sequence)
0.04

0.02

0.00
    0.00    0.05           0.10            0.15          0.20
Summary
 iTALS is a
     scalable
     context-aware
     factorization method
     on implicit feedback data
 The problem is modelled
   by approximating the values of a binary tensor
   with elementwise product of short vectors
   using importance weighting
 Learning can be efficiently done by using
   ALS
   and other computation time reducing tricks
 Recommendation accuracy is significantly better than iCA-baseline
 Introduced a new context type: sequentiality
   association rule like information in factorization framework
Thank you for your attention!



For more of my recommender systems related research visit my website: http://www.hidasi.eu




                                         T

More Related Content

iTALS: implicit tensor factorization for context-aware recommendations (ECML/PKDD 2012 presentation)

  • 1. iTALS Fast ALS-based tensor factorization for context-aware recommendation from implicit feedback Bal叩zs Hidasi balazs.hidasi@gravityrd.com Domonkos Tikk domonkos.tikk@gravityrd.com ECML/PKDD, 25TH SEPTEMBER 2012, BRISTOL
  • 2. Overview Implicit feedback problem Context-awareness Seasonality Sequentaility iTALS Model Learning Prediction Experiments
  • 3. Feedback types Feedback: user-item interraction (events) Explicit: Preferences explicitely coded E.g.: Ratings Implicit: Preferences not coded explicitely E.g.: purchase history
  • 4. Problems with implicit feedback Noisy positive preferences E.g.: bought & disappointed No negative feedback available E.g.: had no info on item Usually evaluated by ranking metrics Can not be directly optimized
  • 5. Why to use implicit feedback? Every user provides Some magnitudes larger amount of information than explicit feedback More important in practice Explicit algorithms are for the biggest only
  • 6. Context-awareness Context: any information associated with events Context state: a possible value of the context dimension Context-awareness Usage of context information Incorporating additional informations into the method Different predictions for same user given different context states Can greatly outperform context-unaware methods Context segmentates items/users well
  • 7. Seasonality as context Season: a time period E.g.: a week Timeband: given interval in season Context-states E.g.: days Assumed: aggregated behaviour in a given timeband is similar inbetween seasons User Item Date Context and different for different 1 A 12/07/2010 1 timebands 2 B 15/07/2010 3 E.g.: daily/weekly routines 1 B 15/07/2010 3 1 A 19/07/2010 1
  • 8. Sequentiality Bought A after B B is the context-state of the users event on A Usefullness Some items are bought together Some items bought repetetively Some are not Association rule like information incorporated into model as context Here: into factorization methods Can learn negated rules If C then not A
  • 9. M3 iTALS - Model Binary tensor D dimensional User User item context(s) M1 T Importance weights Lower weights to zeroes (NIF) Higher weights to cells with Item more events M2 Cells approximated by sum of the values in the elementwise product of D vectors Each for a dimension Low dimensional vectors
  • 11. iTALS - Prediction Sum of values in elementwise product of vectors User-item: scalar product of feature vectors User-item-context: weighted scalar product of feature vectors Context-state dependent reweighting of features E.g.: Third feature = horror movie Context state1 = Friday night third feature high Context state2 = Sunday afternoon third feature low
  • 12. Experiments 5 databases 3 implicit Online grocery shopping VoD consumption Music listening habits 2 implicitizied explicit Netflix MovieLens 10M Recall@20 as primary evaluation metric Baseline: context-unaware method in every context- state
  • 13. Scalability Running times on the Grocery dataset 350 300 iALS epoch Running time (sec) 250 iTALS (time bands) epoch 200 iTALS (sequence) epoch 150 iALS calc. matrix 100 iTALS (time bands) calc. matrix 50 iTALS (sequence) calc. matrix 0 10 20 30 40 50 60 70 80 90 100 Number of factors (K)
  • 14. Results Recall@20 0.1200 0.1000 0.0800 0.0600 0.0400 0.0200 0.0000 VoD Grocery LastFM Netflix MovieLens iALS (MF method) iCA baseline iTALS (seasonality) iTALS (sequence)
  • 15. Results Precision-recall curves 0.25 Recall-precision (Grocery) 0.20 0.15 0.10 iALS 0.05 0.00 iCA baseline 0.00 0.05 0.10 0.15 0.20 Recall-precision (VoD) iTALS 0.08 (season) 0.06 iTALS (sequence) 0.04 0.02 0.00 0.00 0.05 0.10 0.15 0.20
  • 16. Summary iTALS is a scalable context-aware factorization method on implicit feedback data The problem is modelled by approximating the values of a binary tensor with elementwise product of short vectors using importance weighting Learning can be efficiently done by using ALS and other computation time reducing tricks Recommendation accuracy is significantly better than iCA-baseline Introduced a new context type: sequentiality association rule like information in factorization framework
  • 17. Thank you for your attention! For more of my recommender systems related research visit my website: http://www.hidasi.eu T