CLiMF: Collaborative Less-is-More Filtering

Alexandros Karatzoglou
Alexandros KaratzoglouResearch Scientist at Google
CLiMF: Learning to Maximize
                  Reciprocal Rank with
                Collaborative Less-is-More
                         Filtering
Yue Shia, Alexandros Karatzogloub (Presenter), Linas Baltrunasb, Martha
Larsona, Alan Hanjalica, Nuria Oliverb

aDelft   University of Technology, Netherlands
bTelefonica   Research, Spain


                                             RecSys 2012, Dublin, Ireland, September 13, 2012
                                                                                                1
Top-k Recommendations




                RecSys 2012, Dublin, Ireland, September 13, 2012
                                                                   2
Implicit feedback




                    RecSys 2012, Dublin, Ireland, September 13, 2012
                                                                       3
Models for Implicit feedback

•  Classification or Learning to Rank
•  Binary pairwise ranking loss function (Hinge, AUC loss)
•  Sample from non-observed/irrelevant entries

         Friend                                     Not a Friend




                                     RecSys 2012, Dublin, Ireland, September 13, 2012
                                                                                        4
Learning to Rank in CF

•  The Point-wise Approach      f (user, item) → R
   •  Reduce Ranking to Regression, Classification, or Ordinal
      Regression problem, [OrdRec@Recys 2011]

•  The Pairwise Approach   f (user, item1 , item2 ) → R
   •  Reduce Ranking to pair-wise classification [BPR@UAI 2010]

•  List-wise Approach      f(user, item1 , . . . , itemn ) → R
   •  Direct optimization of IR measures, List-wise loss minimization
   [CoFiRank@NIPS 2008]




                                        RecSys 2012, Dublin, Ireland, September 13, 2012
                                                                                           5
Ranking metrics

List-wise ranking measures for implicit feedback:

                                         1
Reciprocal Rank:                  RR =
                                       ranki
                                              |S|
                                              
Average precision:                                    P (k)
                                              k=1
     [TFMAP@SIGIR2012]            AP =
                                                     |S|



                                     RecSys 2012, Dublin, Ireland, September 13, 2012
                                                                                        6
Ranking metrics


                      RR = 1

                       AP = 1




                  RecSys 2012, Dublin, Ireland, September 13, 2012
                                                                     7
Ranking metrics


                      RR = 1

                   AP = 0.66




                  RecSys 2012, Dublin, Ireland, September 13, 2012
                                                                     8
Less is more

•  Focus at the very top of the list

•  Try to get at least one interesting item at the top of the list


•  MRR particularly important measure in domains that usually
   provide users with only few recommendations, i.e. Top-3 or
   Top-5




                                       RecSys 2012, Dublin, Ireland, September 13, 2012
                                                                                          9
Ingredients

•  What kind of model should we use?
    •  Factor model

•  Which Ranking measure do we need to optimize to have a good
   Top-k recommender?
    •  MRR captures the quality of Top-k recommendations

•  But MRR is not smooth so what can we do?
   •  We can perhaps find a smooth version of MRR

•  How to ensure the proposed solution scalable?
    •  A fast learning algorithm (SGD), smoothness - gradients


                                       RecSys 2012, Dublin, Ireland, September 13, 2012
                                                                                          10
Model


              +                      +

         +           +               +

             +           +

         +           +
  fij = Ui , Vj 

                         RecSys 2012, Dublin, Ireland, September 13, 2012
                                                                            11
The Non-smoothness of Reciprocal
    Rank
•  Reciprocal Rank (RR) of a ranked list of items for a given user

       N
       Yij  N
RRi =           (1 − Yik I(Rik  Rij ))
      j=1
          Rij
                  k=1




                                     RecSys 2012, Dublin, Ireland, September 13, 2012
                                                                                        12
Non-smoothness
     0.81   2

     0.75   1

     0.64   3
Fi   0.61   4                         RR = 0.5
     0.58   5

     0.55   6
     0.49   7

     0.43   8
                 RecSys 2012, Dublin, Ireland, September 13, 2012
                                                                    13
Non-smoothness
     0.84   2

     0.82   1

     0.56   3
Fi   0.50   4                        RR = 0.5
     0.45   5

     0.40   6
     0.32   7

     0.31   8
                 RecSys 2012, Dublin, Ireland, September 13, 2012
                                                                    14
Non-smoothness
     0.85   1

     0.84   2

     0.56   3
Fi   0.50   4                           RR = 1
     0.45   5

     0.40   6
     0.32   7

     0.31   8
                 RecSys 2012, Dublin, Ireland, September 13, 2012
                                                                    15
RecSys 2012, Dublin, Ireland, September 13, 2012
                                                   16
How can we get a smooth-MRR?

•  Borrow techniques from learning-to-rank:


      I(Rik  Rij ) ≈ g(fik − fij )

       1
          ≈ g(fij )
      Rij

     g(x) = 1/(1 + e−x )

                                   RecSys 2012, Dublin, Ireland, September 13, 2012
                                                                                      17
MRR Loss function
        N
                           N
                                                                                   
RRi ≈         Yij g(fij )         1 − Yik g(fik − fij )
        j=1                 k=1


fij = Ui , Vj 

Ui , V = arg max{RRi }
                Ui ,V

                              2
                        O(N )
                                  RecSys 2012, Dublin, Ireland, September 13, 2012
                                                                                     18
MRR loss function II

  •  Use concavity and monotonicity of log function,

               N
                                       N
                                        
                                                                                              
L(Ui , V ) =         Yij ln g(fij ) +           ln 1 − Yik g(fik − fij )
               j=1                      k=1




                                  +2
                            O(n          )

                                        RecSys 2012, Dublin, Ireland, September 13, 2012
                                                                                           19
Optimization
                     M N
                                 
        E(U, V ) =              Yij ln g(UiT Vj )
                     i=1 j=1
                         N
                                                                      
                     +         ln 1 −   Yik g(UiT Vk    −   UiT Vj )
                         k=1
                         λ
                     −     (U 2 + V 2 )
                         2

                                       ∂E                          ∂E
•  Objective is smooth we can compute:
                                       ∂Ui                         ∂Vj
•  We use Stochastic Gradient Descent

•  Overall scalability linear to # of relevant items                  O(dS)


                                             RecSys 2012, Dublin, Ireland, September 13, 2012
                                                                                                20
What’s different ?

•  CLiMF reciprocal rank loss essentially pushes relevant items
   apart

•  In the process at least one items ends up high-up in the list




                                     RecSys 2012, Dublin, Ireland, September 13, 2012
                                                                                        21
Conventional loss




                    RecSys 2012, Dublin, Ireland, September 13, 2012
                                                                       22
CLiMF MRR-loss




                 RecSys 2012, Dublin, Ireland, September 13, 2012
                                                                    23
Experimental Evaluation
         Data sets

•  Epinions :
    •  346K observations of trust relationship
    •  1767 users; 49288 trustees
    •  99.85% Sparseness
    •  Avg. friends/trustees per user 73.34




                                      RecSys 2012, Dublin, Ireland, September 13, 2012
                                                                                         24
Experimental Evaluation
         Data sets

•  Tuenti :
    •  798K observations of trust relationship
    •  11392 users; 50000 friends
    •  99.86% Sparseness
    •  Avg. friends/trustees per user 70.06




                                      RecSys 2012, Dublin, Ireland, September 13, 2012
                                                                                         25
Experimental Evaluation
           Experimental Protocol



       Given 5
       Friends/                                      Friends/
       Trustees                                      Trustees
data




                              Test data
                           (Items holdout)

        Training data



                                RecSys 2012, Dublin, Ireland, September 13, 2012
                                                                                   26
Experimental Evaluation
           Experimental Protocol


           Given 10
       Friends/                                      Friends/
       Trustees                                      Trustees
data




                              Test data
                           (Items holdout)

        Training data



                                RecSys 2012, Dublin, Ireland, September 13, 2012
                                                                                   27
Experimental Evaluation
           Experimental Protocol


                    Given 15

       Friends/                                        Friends/
       Trustees                                        Trustees
data




                                               Test data
                                          (Items holdout)
                  Training data



                                  RecSys 2012, Dublin, Ireland, September 13, 2012
                                                                                     28
Experimental Evaluation
           Experimental Protocol


                     Given 20

       Friends/                                        Friends/
       Trustees                                        Trustees
data




                                                           Test data
                                                      (Items holdout)
                  Training data



                                  RecSys 2012, Dublin, Ireland, September 13, 2012
                                                                                     29
Experimental Evaluation
   Evaluation Metrics
            |S|
        1   1
M RR =
       |S| i=1 ranki

P @5
                  ratio of test users who have at
1 − call@5       least one relevant item in their
                                Top-5



                         RecSys 2012, Dublin, Ireland, September 13, 2012
                                                                            30
Experimental Evaluation
    Scalability




                  RecSys 2012, Dublin, Ireland, September 13, 2012
                                                                     31
Experimental Evaluation
      Competition

 •  Pop: Naive, recommend based on popularity of each item

 •  iMF (Hu and Koren, ICDM 08): Optimizes Squared error loss

 •  BPR-MF (Rendle et al., UAI 09): Optimizes AUC




                                    RecSys 2012, Dublin, Ireland, September 13, 2012
                                                                                       32
Epinions MRR




      0.4
                Pop        iMF             BPR−MF           CLiMF




      0.3
MRR

      0.2
      0.1
      0.0




            5         10              15                    20


                                 RecSys 2012, Dublin, Ireland, September 13, 2012
                                                                                    33
Epinions P@5




      0.30
                 Pop        iMF            BPR−MF           CLiMF




      0.25
      0.20
P@5

      0.15
      0.10
      0.05
      0.00




             5         10             15                    20


                                  RecSys 2012, Dublin, Ireland, September 13, 2012
                                                                                     34
Epinions 1−call@5




           0.8
                     Pop         iMF             BPR−MF           CLiMF




           0.6
1−call@5

           0.4
           0.2
           0.0




                 5         10               15                    20


                                       RecSys 2012, Dublin, Ireland, September 13, 2012
                                                                                          35
Tuenti MRR




      0.20
                 Pop           iMF             BPR−MF           CLiMF




      0.15
MRR

      0.10
      0.05
      0.00




             5         10                 15                   20


                                 RecSys 2012, Dublin, Ireland, September 13, 2012
                                                                                    36
Tuenti P@5




      0.10
                 Pop           iMF              BPR−MF           CLiMF




      0.08
      0.06
P@5

      0.04
      0.02
      0.00




             5         10                  15                    20


                                     RecSys 2012, Dublin, Ireland, September 13, 2012
                                                                                        37
Tuenti 1−call@5




           0.30
                      Pop        iMF             BPR−MF           CLiMF




           0.25
           0.20
1−call@5

           0.15
           0.10
           0.05
           0.00




                  5         10              15                    20

                                       RecSys 2012, Dublin, Ireland, September 13, 2012
                                                                                          38
Conclusions and Future Work

•  Contribution
   •  Novel method for implicit data with some nice properties (Top-k, speed)


•  Future work
   •  Use CLiMF to avoid duplicate or very similar recommendations in
      the top-k part of the list
   •  To optimize other evaluation metrics for top-k recommendation
   •  To take the social network of users into account




                                            RecSys 2012, Dublin, Ireland, September 13, 2012
                                                                                               39
Thank you !




Telefonica Research is looking for interns!
        Contact: alexk@tid.es or linas@tid.es



                           RecSys 2012, Dublin, Ireland, September 13, 2012
                                                                              40
1 of 40

Recommended

TFMAP: Optimizing MAP for Top-N Context-aware Recommendation by
TFMAP: Optimizing MAP for Top-N Context-aware RecommendationTFMAP: Optimizing MAP for Top-N Context-aware Recommendation
TFMAP: Optimizing MAP for Top-N Context-aware RecommendationAlexandros Karatzoglou
1.1K views24 slides
Learning to Rank for Recommender Systems - ACM RecSys 2013 tutorial by
Learning to Rank for Recommender Systems -  ACM RecSys 2013 tutorialLearning to Rank for Recommender Systems -  ACM RecSys 2013 tutorial
Learning to Rank for Recommender Systems - ACM RecSys 2013 tutorialAlexandros Karatzoglou
34.3K views78 slides
Incorporating Diversity in a Learning to Rank Recommender System by
Incorporating Diversity in a Learning to Rank Recommender SystemIncorporating Diversity in a Learning to Rank Recommender System
Incorporating Diversity in a Learning to Rank Recommender SystemJacek Wasilewski
922 views19 slides
[SIGIR17] Learning to Rank Using Localized Geometric Mean Metrics by
[SIGIR17] Learning to Rank Using Localized Geometric Mean Metrics[SIGIR17] Learning to Rank Using Localized Geometric Mean Metrics
[SIGIR17] Learning to Rank Using Localized Geometric Mean MetricsYuxin Su
1.2K views29 slides
Ranking and Diversity in Recommendations - RecSys Stammtisch at SoundCloud, B... by
Ranking and Diversity in Recommendations - RecSys Stammtisch at SoundCloud, B...Ranking and Diversity in Recommendations - RecSys Stammtisch at SoundCloud, B...
Ranking and Diversity in Recommendations - RecSys Stammtisch at SoundCloud, B...Alexandros Karatzoglou
3.3K views51 slides
Algorithm evaluation using item response theory by
Algorithm evaluation using item response theoryAlgorithm evaluation using item response theory
Algorithm evaluation using item response theoryCSIRO
179 views28 slides

More Related Content

More from Alexandros Karatzoglou

Deep Learning for Recommender Systems RecSys2017 Tutorial by
Deep Learning for Recommender Systems RecSys2017 Tutorial Deep Learning for Recommender Systems RecSys2017 Tutorial
Deep Learning for Recommender Systems RecSys2017 Tutorial Alexandros Karatzoglou
32.2K views80 slides
Deep Learning for Recommender Systems - Budapest RecSys Meetup by
Deep Learning for Recommender Systems  - Budapest RecSys MeetupDeep Learning for Recommender Systems  - Budapest RecSys Meetup
Deep Learning for Recommender Systems - Budapest RecSys MeetupAlexandros Karatzoglou
7.4K views59 slides
Machine Learning for Recommender Systems MLSS 2015 Sydney by
Machine Learning for Recommender Systems MLSS 2015 SydneyMachine Learning for Recommender Systems MLSS 2015 Sydney
Machine Learning for Recommender Systems MLSS 2015 SydneyAlexandros Karatzoglou
10.4K views214 slides
ESSIR 2013 Recommender Systems tutorial by
ESSIR 2013 Recommender Systems tutorial ESSIR 2013 Recommender Systems tutorial
ESSIR 2013 Recommender Systems tutorial Alexandros Karatzoglou
9.6K views145 slides
Multiverse Recommendation: N-dimensional Tensor Factorization for Context-awa... by
Multiverse Recommendation: N-dimensional Tensor Factorization for Context-awa...Multiverse Recommendation: N-dimensional Tensor Factorization for Context-awa...
Multiverse Recommendation: N-dimensional Tensor Factorization for Context-awa...Alexandros Karatzoglou
2.6K views36 slides
Machine Learning in R by
Machine Learning in RMachine Learning in R
Machine Learning in RAlexandros Karatzoglou
16.3K views151 slides

More from Alexandros Karatzoglou(6)

Recently uploaded

Business Analyst Series 2023 - Week 3 Session 5 by
Business Analyst Series 2023 -  Week 3 Session 5Business Analyst Series 2023 -  Week 3 Session 5
Business Analyst Series 2023 - Week 3 Session 5DianaGray10
369 views20 slides
Keynote Talk: Open Source is Not Dead - Charles Schulz - Vates by
Keynote Talk: Open Source is Not Dead - Charles Schulz - VatesKeynote Talk: Open Source is Not Dead - Charles Schulz - Vates
Keynote Talk: Open Source is Not Dead - Charles Schulz - VatesShapeBlue
119 views15 slides
Zero to Cloud Hero: Crafting a Private Cloud from Scratch with XCP-ng, Xen Or... by
Zero to Cloud Hero: Crafting a Private Cloud from Scratch with XCP-ng, Xen Or...Zero to Cloud Hero: Crafting a Private Cloud from Scratch with XCP-ng, Xen Or...
Zero to Cloud Hero: Crafting a Private Cloud from Scratch with XCP-ng, Xen Or...ShapeBlue
88 views20 slides
How to Re-use Old Hardware with CloudStack. Saving Money and the Environment ... by
How to Re-use Old Hardware with CloudStack. Saving Money and the Environment ...How to Re-use Old Hardware with CloudStack. Saving Money and the Environment ...
How to Re-use Old Hardware with CloudStack. Saving Money and the Environment ...ShapeBlue
65 views28 slides
MVP and prioritization.pdf by
MVP and prioritization.pdfMVP and prioritization.pdf
MVP and prioritization.pdfrahuldharwal141
38 views8 slides
Igniting Next Level Productivity with AI-Infused Data Integration Workflows by
Igniting Next Level Productivity with AI-Infused Data Integration Workflows Igniting Next Level Productivity with AI-Infused Data Integration Workflows
Igniting Next Level Productivity with AI-Infused Data Integration Workflows Safe Software
344 views86 slides

Recently uploaded(20)

Business Analyst Series 2023 - Week 3 Session 5 by DianaGray10
Business Analyst Series 2023 -  Week 3 Session 5Business Analyst Series 2023 -  Week 3 Session 5
Business Analyst Series 2023 - Week 3 Session 5
DianaGray10369 views
Keynote Talk: Open Source is Not Dead - Charles Schulz - Vates by ShapeBlue
Keynote Talk: Open Source is Not Dead - Charles Schulz - VatesKeynote Talk: Open Source is Not Dead - Charles Schulz - Vates
Keynote Talk: Open Source is Not Dead - Charles Schulz - Vates
ShapeBlue119 views
Zero to Cloud Hero: Crafting a Private Cloud from Scratch with XCP-ng, Xen Or... by ShapeBlue
Zero to Cloud Hero: Crafting a Private Cloud from Scratch with XCP-ng, Xen Or...Zero to Cloud Hero: Crafting a Private Cloud from Scratch with XCP-ng, Xen Or...
Zero to Cloud Hero: Crafting a Private Cloud from Scratch with XCP-ng, Xen Or...
ShapeBlue88 views
How to Re-use Old Hardware with CloudStack. Saving Money and the Environment ... by ShapeBlue
How to Re-use Old Hardware with CloudStack. Saving Money and the Environment ...How to Re-use Old Hardware with CloudStack. Saving Money and the Environment ...
How to Re-use Old Hardware with CloudStack. Saving Money and the Environment ...
ShapeBlue65 views
Igniting Next Level Productivity with AI-Infused Data Integration Workflows by Safe Software
Igniting Next Level Productivity with AI-Infused Data Integration Workflows Igniting Next Level Productivity with AI-Infused Data Integration Workflows
Igniting Next Level Productivity with AI-Infused Data Integration Workflows
Safe Software344 views
HTTP headers that make your website go faster - devs.gent November 2023 by Thijs Feryn
HTTP headers that make your website go faster - devs.gent November 2023HTTP headers that make your website go faster - devs.gent November 2023
HTTP headers that make your website go faster - devs.gent November 2023
Thijs Feryn28 views
Backup and Disaster Recovery with CloudStack and StorPool - Workshop - Venko ... by ShapeBlue
Backup and Disaster Recovery with CloudStack and StorPool - Workshop - Venko ...Backup and Disaster Recovery with CloudStack and StorPool - Workshop - Venko ...
Backup and Disaster Recovery with CloudStack and StorPool - Workshop - Venko ...
ShapeBlue77 views
KVM Security Groups Under the Hood - Wido den Hollander - Your.Online by ShapeBlue
KVM Security Groups Under the Hood - Wido den Hollander - Your.OnlineKVM Security Groups Under the Hood - Wido den Hollander - Your.Online
KVM Security Groups Under the Hood - Wido den Hollander - Your.Online
ShapeBlue102 views
DRBD Deep Dive - Philipp Reisner - LINBIT by ShapeBlue
DRBD Deep Dive - Philipp Reisner - LINBITDRBD Deep Dive - Philipp Reisner - LINBIT
DRBD Deep Dive - Philipp Reisner - LINBIT
ShapeBlue62 views
DRaaS using Snapshot copy and destination selection (DRaaS) - Alexandre Matti... by ShapeBlue
DRaaS using Snapshot copy and destination selection (DRaaS) - Alexandre Matti...DRaaS using Snapshot copy and destination selection (DRaaS) - Alexandre Matti...
DRaaS using Snapshot copy and destination selection (DRaaS) - Alexandre Matti...
ShapeBlue46 views
Developments to CloudStack’s SDN ecosystem: Integration with VMWare NSX 4 - P... by ShapeBlue
Developments to CloudStack’s SDN ecosystem: Integration with VMWare NSX 4 - P...Developments to CloudStack’s SDN ecosystem: Integration with VMWare NSX 4 - P...
Developments to CloudStack’s SDN ecosystem: Integration with VMWare NSX 4 - P...
ShapeBlue82 views
CloudStack Object Storage - An Introduction - Vladimir Petrov - ShapeBlue by ShapeBlue
CloudStack Object Storage - An Introduction - Vladimir Petrov - ShapeBlueCloudStack Object Storage - An Introduction - Vladimir Petrov - ShapeBlue
CloudStack Object Storage - An Introduction - Vladimir Petrov - ShapeBlue
ShapeBlue46 views
State of the Union - Rohit Yadav - Apache CloudStack by ShapeBlue
State of the Union - Rohit Yadav - Apache CloudStackState of the Union - Rohit Yadav - Apache CloudStack
State of the Union - Rohit Yadav - Apache CloudStack
ShapeBlue145 views
NTGapps NTG LowCode Platform by Mustafa Kuğu
NTGapps NTG LowCode Platform NTGapps NTG LowCode Platform
NTGapps NTG LowCode Platform
Mustafa Kuğu141 views
VNF Integration and Support in CloudStack - Wei Zhou - ShapeBlue by ShapeBlue
VNF Integration and Support in CloudStack - Wei Zhou - ShapeBlueVNF Integration and Support in CloudStack - Wei Zhou - ShapeBlue
VNF Integration and Support in CloudStack - Wei Zhou - ShapeBlue
ShapeBlue85 views
Why and How CloudStack at weSystems - Stephan Bienek - weSystems by ShapeBlue
Why and How CloudStack at weSystems - Stephan Bienek - weSystemsWhy and How CloudStack at weSystems - Stephan Bienek - weSystems
Why and How CloudStack at weSystems - Stephan Bienek - weSystems
ShapeBlue111 views

CLiMF: Collaborative Less-is-More Filtering

  • 1. CLiMF: Learning to Maximize Reciprocal Rank with Collaborative Less-is-More Filtering Yue Shia, Alexandros Karatzogloub (Presenter), Linas Baltrunasb, Martha Larsona, Alan Hanjalica, Nuria Oliverb aDelft University of Technology, Netherlands bTelefonica Research, Spain RecSys 2012, Dublin, Ireland, September 13, 2012 1
  • 2. Top-k Recommendations RecSys 2012, Dublin, Ireland, September 13, 2012 2
  • 3. Implicit feedback RecSys 2012, Dublin, Ireland, September 13, 2012 3
  • 4. Models for Implicit feedback •  Classification or Learning to Rank •  Binary pairwise ranking loss function (Hinge, AUC loss) •  Sample from non-observed/irrelevant entries Friend Not a Friend RecSys 2012, Dublin, Ireland, September 13, 2012 4
  • 5. Learning to Rank in CF •  The Point-wise Approach f (user, item) → R •  Reduce Ranking to Regression, Classification, or Ordinal Regression problem, [OrdRec@Recys 2011] •  The Pairwise Approach f (user, item1 , item2 ) → R •  Reduce Ranking to pair-wise classification [BPR@UAI 2010] •  List-wise Approach f(user, item1 , . . . , itemn ) → R •  Direct optimization of IR measures, List-wise loss minimization [CoFiRank@NIPS 2008] RecSys 2012, Dublin, Ireland, September 13, 2012 5
  • 6. Ranking metrics List-wise ranking measures for implicit feedback: 1 Reciprocal Rank: RR = ranki |S| Average precision: P (k) k=1 [TFMAP@SIGIR2012] AP = |S| RecSys 2012, Dublin, Ireland, September 13, 2012 6
  • 7. Ranking metrics RR = 1 AP = 1 RecSys 2012, Dublin, Ireland, September 13, 2012 7
  • 8. Ranking metrics RR = 1 AP = 0.66 RecSys 2012, Dublin, Ireland, September 13, 2012 8
  • 9. Less is more •  Focus at the very top of the list •  Try to get at least one interesting item at the top of the list •  MRR particularly important measure in domains that usually provide users with only few recommendations, i.e. Top-3 or Top-5 RecSys 2012, Dublin, Ireland, September 13, 2012 9
  • 10. Ingredients •  What kind of model should we use? •  Factor model •  Which Ranking measure do we need to optimize to have a good Top-k recommender? •  MRR captures the quality of Top-k recommendations •  But MRR is not smooth so what can we do? •  We can perhaps find a smooth version of MRR •  How to ensure the proposed solution scalable? •  A fast learning algorithm (SGD), smoothness - gradients RecSys 2012, Dublin, Ireland, September 13, 2012 10
  • 11. Model + + + + + + + + + fij = Ui , Vj RecSys 2012, Dublin, Ireland, September 13, 2012 11
  • 12. The Non-smoothness of Reciprocal Rank •  Reciprocal Rank (RR) of a ranked list of items for a given user N Yij N RRi = (1 − Yik I(Rik Rij )) j=1 Rij k=1 RecSys 2012, Dublin, Ireland, September 13, 2012 12
  • 13. Non-smoothness 0.81 2 0.75 1 0.64 3 Fi 0.61 4 RR = 0.5 0.58 5 0.55 6 0.49 7 0.43 8 RecSys 2012, Dublin, Ireland, September 13, 2012 13
  • 14. Non-smoothness 0.84 2 0.82 1 0.56 3 Fi 0.50 4 RR = 0.5 0.45 5 0.40 6 0.32 7 0.31 8 RecSys 2012, Dublin, Ireland, September 13, 2012 14
  • 15. Non-smoothness 0.85 1 0.84 2 0.56 3 Fi 0.50 4 RR = 1 0.45 5 0.40 6 0.32 7 0.31 8 RecSys 2012, Dublin, Ireland, September 13, 2012 15
  • 16. RecSys 2012, Dublin, Ireland, September 13, 2012 16
  • 17. How can we get a smooth-MRR? •  Borrow techniques from learning-to-rank: I(Rik Rij ) ≈ g(fik − fij ) 1 ≈ g(fij ) Rij g(x) = 1/(1 + e−x ) RecSys 2012, Dublin, Ireland, September 13, 2012 17
  • 18. MRR Loss function N N RRi ≈ Yij g(fij ) 1 − Yik g(fik − fij ) j=1 k=1 fij = Ui , Vj Ui , V = arg max{RRi } Ui ,V 2 O(N ) RecSys 2012, Dublin, Ireland, September 13, 2012 18
  • 19. MRR loss function II •  Use concavity and monotonicity of log function, N N L(Ui , V ) = Yij ln g(fij ) + ln 1 − Yik g(fik − fij ) j=1 k=1 +2 O(n ) RecSys 2012, Dublin, Ireland, September 13, 2012 19
  • 20. Optimization M N E(U, V ) = Yij ln g(UiT Vj ) i=1 j=1 N + ln 1 − Yik g(UiT Vk − UiT Vj ) k=1 λ − (U 2 + V 2 ) 2 ∂E ∂E •  Objective is smooth we can compute: ∂Ui ∂Vj •  We use Stochastic Gradient Descent •  Overall scalability linear to # of relevant items O(dS) RecSys 2012, Dublin, Ireland, September 13, 2012 20
  • 21. What’s different ? •  CLiMF reciprocal rank loss essentially pushes relevant items apart •  In the process at least one items ends up high-up in the list RecSys 2012, Dublin, Ireland, September 13, 2012 21
  • 22. Conventional loss RecSys 2012, Dublin, Ireland, September 13, 2012 22
  • 23. CLiMF MRR-loss RecSys 2012, Dublin, Ireland, September 13, 2012 23
  • 24. Experimental Evaluation Data sets •  Epinions : •  346K observations of trust relationship •  1767 users; 49288 trustees •  99.85% Sparseness •  Avg. friends/trustees per user 73.34 RecSys 2012, Dublin, Ireland, September 13, 2012 24
  • 25. Experimental Evaluation Data sets •  Tuenti : •  798K observations of trust relationship •  11392 users; 50000 friends •  99.86% Sparseness •  Avg. friends/trustees per user 70.06 RecSys 2012, Dublin, Ireland, September 13, 2012 25
  • 26. Experimental Evaluation Experimental Protocol Given 5 Friends/ Friends/ Trustees Trustees data Test data (Items holdout) Training data RecSys 2012, Dublin, Ireland, September 13, 2012 26
  • 27. Experimental Evaluation Experimental Protocol Given 10 Friends/ Friends/ Trustees Trustees data Test data (Items holdout) Training data RecSys 2012, Dublin, Ireland, September 13, 2012 27
  • 28. Experimental Evaluation Experimental Protocol Given 15 Friends/ Friends/ Trustees Trustees data Test data (Items holdout) Training data RecSys 2012, Dublin, Ireland, September 13, 2012 28
  • 29. Experimental Evaluation Experimental Protocol Given 20 Friends/ Friends/ Trustees Trustees data Test data (Items holdout) Training data RecSys 2012, Dublin, Ireland, September 13, 2012 29
  • 30. Experimental Evaluation Evaluation Metrics |S| 1 1 M RR = |S| i=1 ranki P @5 ratio of test users who have at 1 − call@5 least one relevant item in their Top-5 RecSys 2012, Dublin, Ireland, September 13, 2012 30
  • 31. Experimental Evaluation Scalability RecSys 2012, Dublin, Ireland, September 13, 2012 31
  • 32. Experimental Evaluation Competition •  Pop: Naive, recommend based on popularity of each item •  iMF (Hu and Koren, ICDM 08): Optimizes Squared error loss •  BPR-MF (Rendle et al., UAI 09): Optimizes AUC RecSys 2012, Dublin, Ireland, September 13, 2012 32
  • 33. Epinions MRR 0.4 Pop iMF BPR−MF CLiMF 0.3 MRR 0.2 0.1 0.0 5 10 15 20 RecSys 2012, Dublin, Ireland, September 13, 2012 33
  • 34. Epinions P@5 0.30 Pop iMF BPR−MF CLiMF 0.25 0.20 P@5 0.15 0.10 0.05 0.00 5 10 15 20 RecSys 2012, Dublin, Ireland, September 13, 2012 34
  • 35. Epinions 1−call@5 0.8 Pop iMF BPR−MF CLiMF 0.6 1−call@5 0.4 0.2 0.0 5 10 15 20 RecSys 2012, Dublin, Ireland, September 13, 2012 35
  • 36. Tuenti MRR 0.20 Pop iMF BPR−MF CLiMF 0.15 MRR 0.10 0.05 0.00 5 10 15 20 RecSys 2012, Dublin, Ireland, September 13, 2012 36
  • 37. Tuenti P@5 0.10 Pop iMF BPR−MF CLiMF 0.08 0.06 P@5 0.04 0.02 0.00 5 10 15 20 RecSys 2012, Dublin, Ireland, September 13, 2012 37
  • 38. Tuenti 1−call@5 0.30 Pop iMF BPR−MF CLiMF 0.25 0.20 1−call@5 0.15 0.10 0.05 0.00 5 10 15 20 RecSys 2012, Dublin, Ireland, September 13, 2012 38
  • 39. Conclusions and Future Work •  Contribution •  Novel method for implicit data with some nice properties (Top-k, speed) •  Future work •  Use CLiMF to avoid duplicate or very similar recommendations in the top-k part of the list •  To optimize other evaluation metrics for top-k recommendation •  To take the social network of users into account RecSys 2012, Dublin, Ireland, September 13, 2012 39
  • 40. Thank you ! Telefonica Research is looking for interns! Contact: alexk@tid.es or linas@tid.es RecSys 2012, Dublin, Ireland, September 13, 2012 40