Offline Components: Collaborative Filtering in Cold -start...

50
Offline Components: Offline Components: Collaborative Filtering in Cold Collaborative Filtering in Cold - - start Situations start Situations

Transcript of Offline Components: Collaborative Filtering in Cold -start...

Page 1: Offline Components: Collaborative Filtering in Cold -start ...pages.cs.wisc.edu/~beechung/kdd10-tutorial/2-Recommender...Deepak Agarwal & Bee-Chung Chen @ KDD’10 3 Model Choices

Offline Components:Offline Components:

Collaborative Filtering in ColdCollaborative Filtering in Cold--start Situationsstart Situations

Page 2: Offline Components: Collaborative Filtering in Cold -start ...pages.cs.wisc.edu/~beechung/kdd10-tutorial/2-Recommender...Deepak Agarwal & Bee-Chung Chen @ KDD’10 3 Model Choices

2Deepak Agarwal & Bee-Chung Chen @ KDD’10

Problem Definition

Item j with

User iwith

user features xi(demographics,

browse history,

search history, …)

item features xj(keywords, content categories, ...)

(i, j) : response yijvisits

Algorithm selects

(rating or click/no-click)

Predict the unobserved entries based onfeatures and the observed entries

Page 3: Offline Components: Collaborative Filtering in Cold -start ...pages.cs.wisc.edu/~beechung/kdd10-tutorial/2-Recommender...Deepak Agarwal & Bee-Chung Chen @ KDD’10 3 Model Choices

3Deepak Agarwal & Bee-Chung Chen @ KDD’10

Model Choices

• Feature-based (or content-based) approach– Use features to predict response (regression, Bayes Net, mixture

models, …)

– Bottleneck: need predictive features

• Does not capture signals at granular levels

• Collaborative filtering (CF aka Memory based)– Make recommendation based on past user-item interaction

• User-user, item-item, matrix factorization, …

• See [Adomavicius & Tuzhilin, TKDE, 2005], [Konstan, SIGMOD’08

Tutorial], etc.

– Better performance for old users and old items

– Does not naturally handle new users and new items (cold-start)

Page 4: Offline Components: Collaborative Filtering in Cold -start ...pages.cs.wisc.edu/~beechung/kdd10-tutorial/2-Recommender...Deepak Agarwal & Bee-Chung Chen @ KDD’10 3 Model Choices

4Deepak Agarwal & Bee-Chung Chen @ KDD’10

Collaborative Filtering (Memory based methods)

User-User Similarity

Item-Item similarities, incorporating both

Estimating Similarities

• Pearson’s correlation• Optimization based (Koren et al)

Page 5: Offline Components: Collaborative Filtering in Cold -start ...pages.cs.wisc.edu/~beechung/kdd10-tutorial/2-Recommender...Deepak Agarwal & Bee-Chung Chen @ KDD’10 3 Model Choices

5Deepak Agarwal & Bee-Chung Chen @ KDD’10

How to Deal with the Cold-Start Problem

• Heuristic-based approaches– Linear combination of feature-based and CF models

• Learn weights adaptively at user level– Filterbot

• Add user features as psuedo users and do collaborative filtering- Hybrid approaches

- Use content based to fill up entries, then use CF

• Model-based approaches– Mixed kernel learnt jointly

• Popularity, features, user-user similarities, item-item similarities– Bayesian mixed-effects models

• Given modeling assumptions are reasonable: state-of-the-art

• Drilldown– Matrix factorization

• Superior than others on Netflix data [Koren, 2009], also on our Yahoo! data

– Add feature-based regression to matrix factorization– Add topic discovery (from textual items) to matrix factorization

Page 6: Offline Components: Collaborative Filtering in Cold -start ...pages.cs.wisc.edu/~beechung/kdd10-tutorial/2-Recommender...Deepak Agarwal & Bee-Chung Chen @ KDD’10 3 Model Choices

Per-user, per-item models

via bilinear random-effects model

Matrix Factorization

Page 7: Offline Components: Collaborative Filtering in Cold -start ...pages.cs.wisc.edu/~beechung/kdd10-tutorial/2-Recommender...Deepak Agarwal & Bee-Chung Chen @ KDD’10 3 Model Choices

7Deepak Agarwal & Bee-Chung Chen @ KDD’10

Motivation

• Data measuring k-way interactions pervasive– Consider k = 2 for all our discussions

– E.g. User-Movie, User-content, User-Publisher-Ads,….

• Classical Techniques – Approximate matrix through a singular value decomposition (SVD)

• After adjusting for marginal effects (user pop, movie pop,..)

– Does not work

• Matrix highly incomplete, overfit very easily

– Key issue

• Putting constraints on the eigenvectors (factors) to avoid overfitting

Page 8: Offline Components: Collaborative Filtering in Cold -start ...pages.cs.wisc.edu/~beechung/kdd10-tutorial/2-Recommender...Deepak Agarwal & Bee-Chung Chen @ KDD’10 3 Model Choices

8Deepak Agarwal & Bee-Chung Chen @ KDD’10

Early work in the literature

• Tukey’s 1-df model (1956)– Rank 1 approximation of small nearly complete matrix

• Criss-cross regression (Gabriel, 1978)

• Incomplete matrices: Psychometrics (1-factor model only; small data sets; 1960s)

• Modern day web datasets– Highly incomplete, large, noisy.

Page 9: Offline Components: Collaborative Filtering in Cold -start ...pages.cs.wisc.edu/~beechung/kdd10-tutorial/2-Recommender...Deepak Agarwal & Bee-Chung Chen @ KDD’10 3 Model Choices

9Deepak Agarwal & Bee-Chung Chen @ KDD’10

Factorization – Brief Overview

• Latent user factors: (αi , ui=(ui1,…,uin))

• (Nn + Mm) parameters

• Key technical issue:

• Latent movie factors: (βj , vj=(v j1,….,v jn))

will overfit for moderate

values of n,m

Regularization

Interaction

jijiij BvuyE ′+++= βαµ)(

Page 10: Offline Components: Collaborative Filtering in Cold -start ...pages.cs.wisc.edu/~beechung/kdd10-tutorial/2-Recommender...Deepak Agarwal & Bee-Chung Chen @ KDD’10 3 Model Choices

10Deepak Agarwal & Bee-Chung Chen @ KDD’10

Model: Different choices of factors

• Bi-Clustering– Hard, Soft

• Matrix Factorization– Factors in Euclidean space

– Regularization

• Incorporating features

• Online updates

Page 11: Offline Components: Collaborative Filtering in Cold -start ...pages.cs.wisc.edu/~beechung/kdd10-tutorial/2-Recommender...Deepak Agarwal & Bee-Chung Chen @ KDD’10 3 Model Choices

11Deepak Agarwal & Bee-Chung Chen @ KDD’10

10 20 30 40 50 60 70 80 90 100

10

20

30

40

50

60

70

80

90

100

RAW DATA

Smooth Rows using column clusters; reduces variance

10 20 30 40 50 60 70 80 90 100

10

20

30

40

50

60

70

80

90

100

After ROW CLUSTERING

10 20 30 40 50 60 70 80 90 100

10

20

30

40

50

60

70

80

90

100

After COLUMN Clustering

IterateUntil

convergence

10 20 30 40 50 60 70 80 90 100

10

20

30

40

50

60

70

80

90

100

BICLUSTERING: Iterative row and column k-means

Page 12: Offline Components: Collaborative Filtering in Cold -start ...pages.cs.wisc.edu/~beechung/kdd10-tutorial/2-Recommender...Deepak Agarwal & Bee-Chung Chen @ KDD’10 3 Model Choices

12Deepak Agarwal & Bee-Chung Chen @ KDD’10

Bi-Clustering can be represented as factorization

• m user clusters, n item clusters

• B: bi-cluster means

• Hard-clustering– Each row(col) belongs to exactly one cluster

• Soft-clustering– Weighted assignment to several clusters

Page 13: Offline Components: Collaborative Filtering in Cold -start ...pages.cs.wisc.edu/~beechung/kdd10-tutorial/2-Recommender...Deepak Agarwal & Bee-Chung Chen @ KDD’10 3 Model Choices

13Deepak Agarwal & Bee-Chung Chen @ KDD’10

Factors in Euclidean space

• Latent user factors: (αi , ui=(ui1,…,uir))

• (N + M)(r+1) parameters

• Key technical issue:

• Usual approach:

• Latent movie factors: (βj , vj=(v j1,….,v jr))

will overfit for moderate

values of r

Regularization

Gaussian ZeroMean prior

Interaction

Page 14: Offline Components: Collaborative Filtering in Cold -start ...pages.cs.wisc.edu/~beechung/kdd10-tutorial/2-Recommender...Deepak Agarwal & Bee-Chung Chen @ KDD’10 3 Model Choices

14Deepak Agarwal & Bee-Chung Chen @ KDD’10

Existing Zero-Mean Factorization Model

Observation Equation

State Equation

Predict for new cell:

Page 15: Offline Components: Collaborative Filtering in Cold -start ...pages.cs.wisc.edu/~beechung/kdd10-tutorial/2-Recommender...Deepak Agarwal & Bee-Chung Chen @ KDD’10 3 Model Choices

15Deepak Agarwal & Bee-Chung Chen @ KDD’10

PROBLEM DEFINITION

• Models to predict ratings for new pairs

– Warm-start: (user, movie) present in the training data

– Cold-start: At least one of (user, movie) new

• Challenges– Highly incomplete (user, movie) matrix

– Heavy tailed degree distributions for users/movies

• Large fraction of ratings from small fraction of users/movies

– Handling both warm-start and cold-start effectively

Page 16: Offline Components: Collaborative Filtering in Cold -start ...pages.cs.wisc.edu/~beechung/kdd10-tutorial/2-Recommender...Deepak Agarwal & Bee-Chung Chen @ KDD’10 3 Model Choices

16Deepak Agarwal & Bee-Chung Chen @ KDD’10

Possible approaches

• Large scale regression based on covariates– Does not provide good estimates for heavy users/movies

– Large number of predictors to estimate interactions

• Collaborative filtering– Neighborhood based

– Factorization (our approach )

– Good for warm-start; cold-start dealt with separately

• Single model that handles cold-start and warm-start – Heavy users/movies → User/movie specific model

– Light users/movies → fallback on regression model

– Smooth fallback mechanism for good performance

Page 17: Offline Components: Collaborative Filtering in Cold -start ...pages.cs.wisc.edu/~beechung/kdd10-tutorial/2-Recommender...Deepak Agarwal & Bee-Chung Chen @ KDD’10 3 Model Choices

Add Feature-based Regression into

Matrix Factorization

RLFM: Regression-based Latent Factor Model

Page 18: Offline Components: Collaborative Filtering in Cold -start ...pages.cs.wisc.edu/~beechung/kdd10-tutorial/2-Recommender...Deepak Agarwal & Bee-Chung Chen @ KDD’10 3 Model Choices

18Deepak Agarwal & Bee-Chung Chen @ KDD’10

Regression-based Factorization Model (RLFM)

• Main idea: Flexible prior, predict factors through regressions

• Seamlessly handles cold-start and warm-start

• Modified state equation to incorporate covariates

Page 19: Offline Components: Collaborative Filtering in Cold -start ...pages.cs.wisc.edu/~beechung/kdd10-tutorial/2-Recommender...Deepak Agarwal & Bee-Chung Chen @ KDD’10 3 Model Choices

19Deepak Agarwal & Bee-Chung Chen @ KDD’10

RLFM: Model

• Rating: ),(~ 2σµijij Ny

)(~ ijij Bernoulliy µ)(~ ijijij NPoissony µ

Gaussian Model

Logistic Model (for binary rating)

Poisson Model (for counts)

j

t

ijitijij vubxt +++= βαµ )(

user i

gives

item j

• Bias of user i: ),0(~ , 2

0 ααα σεεα Nxg iii

t

i +=

• Popularity of item j: ),0(~ , 2

0 βββ σεεβ Nxd jjj

t

j +=

• Factors of user i: ),0(~ , 2INGxu u

ui

uiii σεε+=

• Factors of item j: ),0(~ , 2INDxv v

vi

viji σεε+=

Could use other classes of regression models

Page 20: Offline Components: Collaborative Filtering in Cold -start ...pages.cs.wisc.edu/~beechung/kdd10-tutorial/2-Recommender...Deepak Agarwal & Bee-Chung Chen @ KDD’10 3 Model Choices

20Deepak Agarwal & Bee-Chung Chen @ KDD’10

Advantages of RLFM

• Better regularization of factors

– Covariates “shrink” towards a better centroid

• Cold-start: Fallback regression model (FeatureOnly)

Page 21: Offline Components: Collaborative Filtering in Cold -start ...pages.cs.wisc.edu/~beechung/kdd10-tutorial/2-Recommender...Deepak Agarwal & Bee-Chung Chen @ KDD’10 3 Model Choices

21Deepak Agarwal & Bee-Chung Chen @ KDD’10

Graphical representation of the model

Page 22: Offline Components: Collaborative Filtering in Cold -start ...pages.cs.wisc.edu/~beechung/kdd10-tutorial/2-Recommender...Deepak Agarwal & Bee-Chung Chen @ KDD’10 3 Model Choices

22Deepak Agarwal & Bee-Chung Chen @ KDD’10

RLFM: Illustration of Shrinkage

Plot the first factor value for each user(fitted using Yahoo! FP data)

Page 23: Offline Components: Collaborative Filtering in Cold -start ...pages.cs.wisc.edu/~beechung/kdd10-tutorial/2-Recommender...Deepak Agarwal & Bee-Chung Chen @ KDD’10 3 Model Choices

23Deepak Agarwal & Bee-Chung Chen @ KDD’10

Induced correlations among observations

Hierarchical random-effects model

Marginal distribution obtained by

integrating out random effects

Page 24: Offline Components: Collaborative Filtering in Cold -start ...pages.cs.wisc.edu/~beechung/kdd10-tutorial/2-Recommender...Deepak Agarwal & Bee-Chung Chen @ KDD’10 3 Model Choices

24Deepak Agarwal & Bee-Chung Chen @ KDD’10

Closer look at induced marginal correlations

Page 25: Offline Components: Collaborative Filtering in Cold -start ...pages.cs.wisc.edu/~beechung/kdd10-tutorial/2-Recommender...Deepak Agarwal & Bee-Chung Chen @ KDD’10 3 Model Choices

25Deepak Agarwal & Bee-Chung Chen @ KDD’10

Overview: EM for our class of models

Page 26: Offline Components: Collaborative Filtering in Cold -start ...pages.cs.wisc.edu/~beechung/kdd10-tutorial/2-Recommender...Deepak Agarwal & Bee-Chung Chen @ KDD’10 3 Model Choices

26Deepak Agarwal & Bee-Chung Chen @ KDD’10

The parameters for RLFM

• Latent parameters

• Hyper-parameters

}){},{},{},({ jiji vuβα=∆

)IaAI,aAD, G, ,( vvuu ===Θ b

Page 27: Offline Components: Collaborative Filtering in Cold -start ...pages.cs.wisc.edu/~beechung/kdd10-tutorial/2-Recommender...Deepak Agarwal & Bee-Chung Chen @ KDD’10 3 Model Choices

27Deepak Agarwal & Bee-Chung Chen @ KDD’10

Computing the mode

Page 28: Offline Components: Collaborative Filtering in Cold -start ...pages.cs.wisc.edu/~beechung/kdd10-tutorial/2-Recommender...Deepak Agarwal & Bee-Chung Chen @ KDD’10 3 Model Choices

28Deepak Agarwal & Bee-Chung Chen @ KDD’10

The EM algorithm

Page 29: Offline Components: Collaborative Filtering in Cold -start ...pages.cs.wisc.edu/~beechung/kdd10-tutorial/2-Recommender...Deepak Agarwal & Bee-Chung Chen @ KDD’10 3 Model Choices

29Deepak Agarwal & Bee-Chung Chen @ KDD’10

Computing the E-step

• Often hard to compute in closed form

• Stochastic EM (Markov Chain EM; MCEM)– Compute expectation by drawing samples from

– Effective for multi-modal posteriors but more expensive

• Iterated Conditional Modes algorithm (ICM)– Faster but biased hyper-parameter estimates

Page 30: Offline Components: Collaborative Filtering in Cold -start ...pages.cs.wisc.edu/~beechung/kdd10-tutorial/2-Recommender...Deepak Agarwal & Bee-Chung Chen @ KDD’10 3 Model Choices

30Deepak Agarwal & Bee-Chung Chen @ KDD’10

Model Fitting

• Challenging, multi-modal posterior

• Monte-Carlo EM (MCEM)– E-step: Sample factors through Gibbs sampling

– M-step: Estimate regressions through off-the-shelf linear regression routines using sampled factors as response

• We used t-regression, others like LASSO could be used

• Iterated Conditional Mode (ICM)– Replace E-step by CG : conditional modes of factors

– M-step: Estimate regressions using the modes as response

• Incorporating uncertainty in factor estimates in MCEM helps

Page 31: Offline Components: Collaborative Filtering in Cold -start ...pages.cs.wisc.edu/~beechung/kdd10-tutorial/2-Recommender...Deepak Agarwal & Bee-Chung Chen @ KDD’10 3 Model Choices

31Deepak Agarwal & Bee-Chung Chen @ KDD’10

Monte Carlo E-step

• Through a vanilla Gibbs sampler (conditionals closed form)

• Other conditionals also Gaussian and closed form

• Conditionals of users (movies) sampled simultaneously

• Small number of samples in early iterations, large numbers

in later iterations

Page 32: Offline Components: Collaborative Filtering in Cold -start ...pages.cs.wisc.edu/~beechung/kdd10-tutorial/2-Recommender...Deepak Agarwal & Bee-Chung Chen @ KDD’10 3 Model Choices

32Deepak Agarwal & Bee-Chung Chen @ KDD’10

M-step (Why MCEM is better than ICM)

• Update G, optimize

• Update Au=au I

Ignored by ICM, underestimates factor variabilityFactors over-shrunk, posterior not explored well

Page 33: Offline Components: Collaborative Filtering in Cold -start ...pages.cs.wisc.edu/~beechung/kdd10-tutorial/2-Recommender...Deepak Agarwal & Bee-Chung Chen @ KDD’10 3 Model Choices

33Deepak Agarwal & Bee-Chung Chen @ KDD’10

Experiment 1: Better regularization

• MovieLens-100K, avg RMSE using pre-specified splits

• ZeroMean, RLFM and FeatureOnly (no cold-start issues)

• Covariates: – Users : age, gender, zipcode (1st digit only)

– Movies: genres

Page 34: Offline Components: Collaborative Filtering in Cold -start ...pages.cs.wisc.edu/~beechung/kdd10-tutorial/2-Recommender...Deepak Agarwal & Bee-Chung Chen @ KDD’10 3 Model Choices

34Deepak Agarwal & Bee-Chung Chen @ KDD’10

Experiment 2: Better handling of Cold-start

• MovieLens-1M; EachMovie

• Training-test split based on timestamp

• Same covariates as in Experiment 1.

Page 35: Offline Components: Collaborative Filtering in Cold -start ...pages.cs.wisc.edu/~beechung/kdd10-tutorial/2-Recommender...Deepak Agarwal & Bee-Chung Chen @ KDD’10 3 Model Choices

35Deepak Agarwal & Bee-Chung Chen @ KDD’10

Experiment 4: Predicting click-rate on articles

• Goal: Predict click-rate on articles for a user on F1 position

• Article lifetimes short, dynamic updates important

• User covariates:– Age, Gender, Geo, Browse behavior

• Article covariates– Content Category, keywords

• 2M ratings, 30K users, 4.5 K articles

Page 36: Offline Components: Collaborative Filtering in Cold -start ...pages.cs.wisc.edu/~beechung/kdd10-tutorial/2-Recommender...Deepak Agarwal & Bee-Chung Chen @ KDD’10 3 Model Choices

36Deepak Agarwal & Bee-Chung Chen @ KDD’10

Results on Y! FP data

Page 37: Offline Components: Collaborative Filtering in Cold -start ...pages.cs.wisc.edu/~beechung/kdd10-tutorial/2-Recommender...Deepak Agarwal & Bee-Chung Chen @ KDD’10 3 Model Choices

37Deepak Agarwal & Bee-Chung Chen @ KDD’10

Another Interesting Regularization on the factors

To incorporate neighborhood information like social network, hierarchies etc

to regularize the factor estimates

Page 38: Offline Components: Collaborative Filtering in Cold -start ...pages.cs.wisc.edu/~beechung/kdd10-tutorial/2-Recommender...Deepak Agarwal & Bee-Chung Chen @ KDD’10 3 Model Choices

Add Topic Discovery into

Matrix Factorization

fLDA: Matrix Factorization through Latent Dirichlet Allocation

Page 39: Offline Components: Collaborative Filtering in Cold -start ...pages.cs.wisc.edu/~beechung/kdd10-tutorial/2-Recommender...Deepak Agarwal & Bee-Chung Chen @ KDD’10 3 Model Choices

39Deepak Agarwal & Bee-Chung Chen @ KDD’10

fLDA: Introduction

• Model the rating yij that user i gives to item j as the user’s affinity to the topics that the item has

– Unlike regular unsupervised LDA topic modeling, here the LDA topics are learnt in a supervised manner based on past rating data

– fLDA can be thought of as a “multi-task learning” version of the supervised LDA model [Blei’07] for cold-start recommendation

∑+=k jkikij zsy ...

User i ’s affinity to topic k

Pr(item j has topic k) estimated by averagingthe LDA topic of each word in item j

Old items: zjk’s are Item latent factors learnt from data with the LDA priorNew items: zjk’s are predicted based on the bag of words in the items

Page 40: Offline Components: Collaborative Filtering in Cold -start ...pages.cs.wisc.edu/~beechung/kdd10-tutorial/2-Recommender...Deepak Agarwal & Bee-Chung Chen @ KDD’10 3 Model Choices

40Deepak Agarwal & Bee-Chung Chen @ KDD’10

Φ11, …, Φ1W

Φk1, …, ΦkW

ΦK1, …, ΦKW

Topic 1

Topic k

Topic K

LDA Topic Modeling (1)

• LDA is effective for unsupervised topic discovery [Blei’03]

– It models the generating process of a corpus of items (articles)

– For each topic k, draw a word distribution Φk = [Φk1, …, ΦkW] ~ Dir(η)

– For each item j, draw a topic distribution θj = [θj1, …, θjK] ~ Dir(λ)

– For each word, say the nth word, in item j,

• Draw a topic zjn for that word from θj = [θj1, …, θjK]

• Draw a word wjn from Φk = [Φk1, …, ΦkW] with topic k = zjn

Item j

Topic distribution: [θj1, …, θjK]

Words: wj1, …, wjn, …

Per-word topic: zj1, …, zjn, …Assume zjn = topic k

Observed

Page 41: Offline Components: Collaborative Filtering in Cold -start ...pages.cs.wisc.edu/~beechung/kdd10-tutorial/2-Recommender...Deepak Agarwal & Bee-Chung Chen @ KDD’10 3 Model Choices

41Deepak Agarwal & Bee-Chung Chen @ KDD’10

LDA Topic Modeling (2)

• Model training:

– Estimate the prior parameters and the posterior topic×worddistribution Φ based on a training corpus of items

– EM + Gibbs sampling is a popular method

• Inference for new items– Compute the item topic distribution based on the prior parameters

and Φ estimated in the training phase

• Supervised LDA [Blei’07]

– Predict a target value for each item based on supervised LDA topics

∑=k jkkj zsy

Target value of item jPr(item j has topic k) estimated by averaging

the topic of each word in item j

Regression weight for topic k

∑+=k jkikij zsy ...vs.

One regression per user

Same set of topics across different regressions

Page 42: Offline Components: Collaborative Filtering in Cold -start ...pages.cs.wisc.edu/~beechung/kdd10-tutorial/2-Recommender...Deepak Agarwal & Bee-Chung Chen @ KDD’10 3 Model Choices

42Deepak Agarwal & Bee-Chung Chen @ KDD’10

fLDA: Model

• Rating: ),(~ 2σµijij Ny

)(~ ijij Bernoulliy µ)(~ ijijij NPoissony µ

Gaussian Model

Logistic Model (for binary rating)

Poisson Model (for counts)

jkikkji

t

ijij zsbxt ∑+++= βαµ )(

user i

gives

item j

• Bias of user i: ),0(~ , 2

0 ααα σεεα Nxg iii

t

i +=

• Popularity of item j: ),0(~ , 2

0 βββ σεεβ Nxd jjj

t

j +=

• Topic affinity of user i: ),0(~ , 2INHxs s

s

i

s

iii σεε+=

• Pr(item j has topic k): ) itemin words#/()(1 jkzz jnnjk =∑=The LDA topic of the nth word in item j

• Observed words: ),,(~ jnjn zLDAw ηλThe nth word in item j

Page 43: Offline Components: Collaborative Filtering in Cold -start ...pages.cs.wisc.edu/~beechung/kdd10-tutorial/2-Recommender...Deepak Agarwal & Bee-Chung Chen @ KDD’10 3 Model Choices

43Deepak Agarwal & Bee-Chung Chen @ KDD’10

Model Fitting

• Given:– Features X = {xi, xj, xij}

– Observed ratings y = {yij} and words w = {wjn}

• Estimate:– Parameters: Θ = [b, g0, d0, H, σ2, aα, aβ, As, λ, η]

• Regression weights and prior parameters

– Latent factors: ∆ = {αi, βj, si} and z = {zjn}

• User factors, item factors and per-word topic assignment

• Empirical Bayes approach: – Maximum likelihood estimate of the parameters:

– The posterior distribution of the factors:∫ ∆Θ∆=Θ=Θ

ΘΘdzdzwywy ]|,,,Pr[maxarg]|,Pr[ maxargˆ

]ˆ,|,Pr[ Θ∆ yz

Page 44: Offline Components: Collaborative Filtering in Cold -start ...pages.cs.wisc.edu/~beechung/kdd10-tutorial/2-Recommender...Deepak Agarwal & Bee-Chung Chen @ KDD’10 3 Model Choices

44Deepak Agarwal & Bee-Chung Chen @ KDD’10

The EM Algorithm

• Iterate through the E and M steps until convergence

– Let be the current estimate

– E-step: Compute

• The expectation is not in closed form

• We draw Gibbs samples and compute the Monte Carlo mean

– M-step: Find

• It consists of solving a number of regression and optimization problems

)]|,,,Pr([log)()ˆ,,|,(

Θ∆=ΘΘ∆

zwyEf nwyz

)(maxargˆ )1( Θ=ΘΘ

+f

n

)(ˆ nΘ

Page 45: Offline Components: Collaborative Filtering in Cold -start ...pages.cs.wisc.edu/~beechung/kdd10-tutorial/2-Recommender...Deepak Agarwal & Bee-Chung Chen @ KDD’10 3 Model Choices

45Deepak Agarwal & Bee-Chung Chen @ KDD’10

Supervised Topic Assignment

( ) ∏ =⋅++

+∝

=

¬

¬

¬

ji jnij

jn

jkjn

k

jn

kl

jn

kzyfZWZ

Z

kz

rated )|(

)Rest|Pr(

λη

η

Same as unsupervised LDA Likelihood of observed ratingsby users who rated item j whenzjn is set to topic k

Probability of observing yij

given the model

The topic of the nth word in item j

Page 46: Offline Components: Collaborative Filtering in Cold -start ...pages.cs.wisc.edu/~beechung/kdd10-tutorial/2-Recommender...Deepak Agarwal & Bee-Chung Chen @ KDD’10 3 Model Choices

46Deepak Agarwal & Bee-Chung Chen @ KDD’10

fLDA: Experimental Results (Movie)

• Task: Predict the rating that a user would give a movie

• Training/test split:– Sort observations by time

– First 75% → Training data

– Last 25% → Test data

• Item warm-start scenario– Only 2% new items in test data

1.1190Constant

1.0906Feature-Only

0.9726MostPopular

0.9520unsup-LDA

0.9517FilterBot

0.9422Factor-Only

0.9381fLDA

0.9363RLFM

Test RMSEModel

fLDA is as strong as the best method

It does not reduce the performance in warm-start scenarios

Page 47: Offline Components: Collaborative Filtering in Cold -start ...pages.cs.wisc.edu/~beechung/kdd10-tutorial/2-Recommender...Deepak Agarwal & Bee-Chung Chen @ KDD’10 3 Model Choices

47Deepak Agarwal & Bee-Chung Chen @ KDD’10

fLDA: Experimental Results (Yahoo! Buzz)

• Task: Predict whether a user would buzz-up an article

• Severe item cold-start– All items are new in test data

Data Statistics1.2M observations

4K users10K articles

fLDA significantly

outperforms other models

Page 48: Offline Components: Collaborative Filtering in Cold -start ...pages.cs.wisc.edu/~beechung/kdd10-tutorial/2-Recommender...Deepak Agarwal & Bee-Chung Chen @ KDD’10 3 Model Choices

48Deepak Agarwal & Bee-Chung Chen @ KDD’10

Experimental Results: Buzzing Topics

North Korea issuesnorth, korea, china, north_korea, launch, nuclear,

rocket, missil, south, said, russia

Recessioneconomi, recess, job, percent, econom, bank, expect,

rate, jobless, year, unemploy, month

American idolidol, american, night, star, look, michel, win, dress,

susan, danc, judg, boyl, michelle_obama

Sarah Palinpalin, republican, parti, obama, limbaugh, sarah, rush,

gop, presid, sarah_palin, sai, gov, alaska

Gay marriagecourt, gai, marriag, suprem, right, judg, rule, sex,

pope, supreme_court, appeal, ban, legal, allow

NFL gamesNFL, player, team, suleman, game, nadya, star, high,

octuplet, nadya_suleman, michael, week

Swine flumexico, flu, pirat, swine, drug, ship, somali, border,

mexican, hostag, offici, somalia, captain

CIA interrogationbush, tortur, interrog, terror, administr, CIA, offici,

suspect, releas, investig, georg, memo, al

TopicTop Terms (after stemming)

3/4 topics are interpretable; 1/2 are similar to unsupervised topics

Page 49: Offline Components: Collaborative Filtering in Cold -start ...pages.cs.wisc.edu/~beechung/kdd10-tutorial/2-Recommender...Deepak Agarwal & Bee-Chung Chen @ KDD’10 3 Model Choices

49Deepak Agarwal & Bee-Chung Chen @ KDD’10

fLDA Summary

• fLDA is a useful model for cold-start item recommendation

• It also provides interpretable recommendations for users– User’s preference to interpretable LDA topics

• Future directions:– Investigate Gibbs sampling chains and the convergence properties of the

EM algorithm

– Apply fLDA to other multi-task prediction problems

• fLDA can be used as a tool to generate supervised features (topics) from text data

Page 50: Offline Components: Collaborative Filtering in Cold -start ...pages.cs.wisc.edu/~beechung/kdd10-tutorial/2-Recommender...Deepak Agarwal & Bee-Chung Chen @ KDD’10 3 Model Choices

50Deepak Agarwal & Bee-Chung Chen @ KDD’10

Summary

• Regularizing factors through covariates effective

• We presented a regression based factor model that regularizes better and deals with both cold-start and warm-

start in a single framework in a seamless way

• Fitting method scalable; Gibbs sampling for users and movies can be done in parallel. Regressions in M-step can

be done with any off-the-shelf scalable linear regression

routine