このページは http://www.slideshare.net/studentalei/matrix-factorization-techniques-for-recommender-systems の内容を掲載しています。

掲載を希望されないスライド著者の方は、こちらよりご連絡下さい。

- Matrix Factorization Techniques For Recommender

Systems

Reporter: Lei Guo

http://ir.sdu.edu.cn/index.htm

- 1 -

Copyright 2012 by IRLAB@SDU - Agenda

Recommender System Strategies

Matrix Factorization Methods

Basic Factorization Model

Learning Algorithms

Adding Biases

Additional Input Sources

Temporal Dynamics

Inputs With Varing Confidence Level

- 2 -

Copyright 2 - Recommender System Strategies

Contented-based recommendation

– Creates a profile for each user or product to characterize its nature

Eg. Movie profile include attributes regarding its genre, the paticipating

actors, its box office popularity…

Eg. User profile might include demographic information or answers provided

on a suitable questionnaire

– Programs use these profiles associate users with mathing products

- 3 -

Copyright 2 - Simple approach

– Compute the similarity of an unseen item with the user profile based on the

keyword overlap (e.g. using the Dice coefficient)

2 ∗|𝑘𝑒𝑦𝑤𝑜𝑟𝑑𝑠 𝑏 ∩𝑘𝑒𝑦𝑤𝑜𝑟𝑑𝑠 𝑏 |

– sim(b

𝑖

𝑗

i, bj) =

𝑘𝑒𝑦𝑤𝑜𝑟𝑑𝑠 𝑏 +𝑘𝑒𝑦𝑤𝑜𝑟𝑑𝑠 𝑏 |

𝑖

𝑗

– Or combine multiple metrics in a weighted approach

– Require gathering external information that might not be available

Collaborative-based recommendation

– Relies only on past user behavior (eg. Previous transactions or puduct ratings)

– Also known as collaborative filtering (CF)

Basic assumption and idea

– Users give ratings to catalog items (implicitly or explicitly)

– Customers who had similar tastes in the past, will have similar tastes in the future

- 4 -

Copyright 2 - Item1

Item2

Item3

Item4

Item5

Alice

5

3

4

4

?

User1

3

1

2

3

3

User2

4

3

4

3

5

User3

3

3

1

5

4

User4

1

5

5

2

1

– The goal is to estimate Alice's rating for this item

Neighborhood methods

User-oriented approach

– Centered on computing the relationships between users

Pearson correlation

- 5 -

Copyright 2 - Item-oriented approach

– Evaluates a user’s preference for an item based on ratings of “neighboring”

item by the same user

– Look for items that are similar to Item5

– Take Alice's ratings for these items to predict the rating for Item5

Item1

Item2

Item3

Item4

Item5

Alice

5

3

4

4

?

User1

3

1

2

3

3

User2

4

3

4

3

5

User3

3

3

1

5

4

User4

1

5

5

2

1

- 6 -

Copyright 2 - Latent factor models

– An alternative approach that tries to explain the ratings by charactering both

items and users with the more holistic goal to uncover the latent features

– For movies, these latent factors might measure obvious dimensions such as

comedy versus drama, amount of action, or orientation to children

– For users, each factor measures how much the users likes movies that score

high on the corresponding movie factor

– PLAS

– Neural networks

– Latent Dirichlet Allocation

– Matrix factorization (eg. SVD)

– …

- 7 -

Copyright 2 - Matrix Factorization Methods

Characteristic

– Characterizes both items and users by vectors of factors infered from item

rating patterns

– High correspondence between item and user factors leads to a

recommendation

Rely on matrix types of input data

– One dimention representing user

– The other representing items

Two data types

– High-quality explicit feedfack

Includs explicit input by users regarding their interest in products

We refer to explicit user feedback as ratings

Usually sparse matrix, since any single user is likely to have rated only a small

percentage of possible items

- 8 -

Copyright 2 - Implicit feedback

– Which indirectly reflects opion by observing user behavior

Purchase history, browsing history, search patterns, mouse movements

– Usually denotes the presence or absence of an event

– Typically represented by a densely filled matrix

- 9 -

Copyright 2 - Basic Matrix Factorization Model

Formalization

– Map both users and items to a joint latent factor space of dimensionality f

– User-item interactions are modeled as inner products in that space

– Each item i is associated with a vector qi ,and each user u is associated with a

a vector pu,

qi measures the extent to which the item possesses those factors

pu measure the extent of interest the user has in items

the resulting dot product q Tipu caputures the interaction between user u and item i –

the user’s overall interest in the item’s characteristics

– The appoximates user u’s rating of item i, which is denoted by rui, leading to

the estimate

– The major chanllenge is computing the mapping of each item and user to

factor vecotrs qi,pu

- 10 -

Copyright 2 - – We can caputure the latent relationships between users and items

– We can produce a low-dimensional representation of the original rating

matrix

– Factor rating matrix R using SVD obtain Q, S, P

– Reduce the matrix S to dimension k

– Compute two resultant matrices: QkSk (qT)and SkPk(p)

Predicting task

– These resultant matrices can now be used to compute the recommendation

score for any user and item

– We can simply calculte the dot product of the ith row of q and the uth column

of p

- 11 -

Copyright 2 - Top-N Recommendation Task

– We consider customer preference data as binary by treating each non-zero

entry of the customer-product matrix as “1”

– We are only interested in whether a customer consumed a particular product

but not how much the user liked

First Step (neighborhood formation in the reduced space)

– Factor rating matrix R using SVD obtain Q, S, P

– Reduce the matrix S to dimension k

– Compute resultant matrices: PkSk

– Performed vector similarity (cosine similarity) to form the neighborhood

Second Step(Top-N Recommendation)

– we scan through the purchase record of each of the k neighbors

– Compute the frequency count on the products they purchased

– Return the most frequently purchased N items for the target customer

- 12 -

Copyrig

ht 2 - Difficulties

– High portion of missing values caused by sparseness in the user-item rating

matrix

– Conventional SVD is undefined when knowledge about the matrix is

incomplete

– Carelessly addressing only the relatively few kown entries is highly prone to

overfitting

Solutions

Fill missing values

– Earlier systems relied on imputation to fill in missing rating and make the

rating matrix dense

– Such as using the average ratings for user and item

– However, (1)imputation can be very expensive as it significantly increases the

amount of data and (2) inaccurate imputation might distort the data.

- 13 -

Copyright 2 - Modeling directly the observed ratings only

– Avoiding overfitting through a regularized model

– The learn the factor vectors(pu and qi), the system minimizes the regularized

squared error on the set of known ratings:

– The goal is to generalize those previous ratings in a way that predicts future

unkown ratings

– The constant controls the extent of regularization

- 14 -

Copyright 2 - Learning Algorithms

Stochastic gradient desent

– Also known as incremental learning

– For each given training case, the system predicts rui and computes the

associated prediction error

– Learning rule

- 15 -

Copyright 2 - Alternating least squares

– Because both qi and pu are unknowns, the object function is not convex

– However, if fix one of the unknowns, the optimization problems quadratic and

can be solved optimally

– Als techniques rotate between fixing the qi’s and fixing the pu’s

– When all pu’s are fixed, the system recomputes the qi’s by sovling a least-

squares problem

– we can fix the matrix P as some matrix , such that minimization problem

would be equivalent to

– Analogously, we can fix Q as ,

- 16 -

Copyright 2 - Learning rule

– It can be shown that the only possible minimum is the global one

– so that P and Q must converge to the true SVD subspace

- 17 -

Copyright 2 - Adding Biases

We tries to capture the interactions between users and items that

produce the different rating values

However, typical collaborative filtering data exhibits large systematic

tendencies for some users to give higher ratings than others

And for some items to receive higher ratings than others

– Some products are widely perceived as better(or worse) than others

Its unwise to explain the full rating value in this form

We should identify the user and item bias

- 18 -

Copyright 2 - A first-order approximation of the bias is as follows:

– The bias accounts for the user and item effects, where denotes the

overall average rating

– bu and bi indicate the observed deviations of user u and item i.

For example

– Suppose we want to estimate user john’s rating of the movie Titanic

– And the averagerating over all movies is 3.7 stars

– Titanic is better than an average movie, so it tends to be rated 0.5 starts

above the average movie

– John is a critical user, who tends to rate 0.3 stars lower than the average

– Thus, the estimate for Titanic’s rating by John would be (3.7+0.5-0.3)

- 19 -

Copyright 2 - The estimation becomes:

The system learns by miniming the squared error function

The stochastic gradient descent learning rule becomes:

- 20 -

Copyrig

ht 2 - Additional Input Sources

A system must deal with cold start problem, wherein many users supply

very few ratings

We need to incorporate additional sources to relieve this problem

Use implicit feedback to gain insight into user preferences

– They can gather behavior information of user’s

– Eg. A retailer can use its customers’ purchases or browsing history to learn

their tendencies

– For simplicity, consider a case with a boolean implicit feedback

– The exact model is as follows

- 21 -

Copyright 2 - Several types of implicit feedback can be simultaneously introduced into

the model by using extra sets of item factors

Eg. Demographics, such as gender, age group, zip code, income level

– Use a distinct factor vector yj(2) corresponds to each attribute to describe a

user

The matrix factorization model should integrate all signal sources:

- 22 -

Copyright 2 - Temproal Dynamics

Time-drifting nature

– So far, the presented models have been static

– In reality, product perception and popularity constantly change as new

selections emerge

– Similarly, customer’s inclinations evolve, leading them to redefine their taste

– The system should account for the temporal effects

- 23 -

Copyright 2 - Multiple sources of temporal dynamics

Item-side effects:

– Product perception and popularity are constantly changing

– Seasonal patterns influence items’ popularity

User-side effects:

– Customers ever redefine their taste

– Transient, short-term bias; anchoring

– Drifting rating scale

– Change of rater within household

Multiple sources: Both items and users are changing over time

Multiple targets: Each user/item forms a unique time series

Scarce data per target

- 24 -

Copyright 2 - Addressing temporal dynamics

Factor model conveniently allows separately treating different aspects

We observe changes in:

1.

Rating scale of individual users

2.

Popularity of individual items

3.

User preferences

r (t) b (t) b (t)

T

q p (t)

ui

u

i

i

u

- 25 -

Copyright 2 - Parameterizing the model

r (t) b (t) b (t)

T

q p (t)

ui

u

i

i

u

Use functional forms: bu(t)=f(u,t), bi(t)=g(i,t), pu(t)=h(u,t)

Need to find adequate f(), g(), h()

General guidelines:

– Items show slower temporal changes

– Users exhibit frequent and sudden changes

– Factors –pu(t)– are expensive to model

– Gain flexibility by heavily parameterizing the functions

- 26 -

Copyright 2 - Take item biases and user biases as an example

It is more of a challenge on the users side

– we would like a finer resolution for users to detect very short lived temporal

effects

– we do not expect enough ratings per user to produce reliable estimates for

isolated bins

One simple modeling choice

– uses a linear function to capture a possible gradual drift of user bias

– Timedependent user-bias

- 27 -

Copyright 2 - item biases bi(t)

split the item biases into time-based bins and how?

– The decision of how to split the timeline into bins should balance the desire to

achieve finer resolution (hence, smaller bins) with the need for enough ratings

per bin (hence, larger bins).

The movie bias is split into a stationary part and a time changing part

- 28 -

Copyright 2 - Inputs With Varying Confidence Levels

Are all observed ratings deserve the same weight or confidence?

– For example, massive advertising might influence votes for certain items,

which do not aptly reflect longer-term characteristics

– Adversarial users might try to tilt the ratings of certain items

The same in implicit feedback

– The system works with a cruder binary representation (like or not like)

– A zero value may not means not liking

The user might be unaware of the existence of the item, or unable to consume

it due to its price

– Consuming an item can also be the result of factors different from preferring

it

a user may watch a TV show just because she is staying on the channel of the

previously watched show

a consumer may buy an item as gift for someone else, despite not liking the

item for himself

- 29 -

Copyright 2 - The notion of confidence

– Confidence can stem from available number values that describe the

frequency of actions

How much time the user watched a certain show

How frequently a user bought a certain item

– Various factors that have nothing to do with user preferences might cause a

one-time event

– A recurring event is more likely to reflect user opinion

We introduce a set of variables , which measure our confidence in

observing

– In general, as rui grows, we have a stronger

– Indication that the user indeed likes the item

- 30 -

Copyright 2 - A plausible choice for cui would be

– This way, we have some minimal confidence in pui for every user-item pair,

but as we observe more evidence for positive preference, our confidence in

pui = 1 increases accordingly.

– The rate of increase is controlled by the constant α

Our goal is to find a vector pu for each user u and a vector of item qi that

will factor user preferences

2

2

2

T

2

2

Min

c r ( b b p q ) p q b b

p ,q ,b

ui

ui

u

i

u

i

u

i

u

i

*

*

*

known rui

- 31 -

Copyright 2 - Conclusions

Basic Factorization Model

Adding Biases

Additional Input Sources

Temporal Dynamics

Inputs With Varing Confidence Level

- 32 -

Copyright 2 - References

[1] Matrix factorization techniques for recommender systerms, Yehuda Koren,2009.

[2]Application of Dimensionality Reduction in Recommender System-A case study,B.M. Sarwar,

KDD, 2000.

[3] A Guide to Singular Value Decomposition for collaborative filtering. Chih-Chao Ma

[4] Factorization meets the neighborhood: a multifacedted collaborative fitering model.

Yehuda Koren, KDD’08.

[5]Collaborative filtering for implicit feedback datasets. Yehuda Koren, ICDM’08.

[6]Collaborative filtering with temporal dynamics. Yehuda Koren, KDD’09.

[7] Recommender systems –An introduction, Dietmar Jannach, Cambridge university

press,2011.

[8] Recommender Systems Handbook, Francesco Ricci, Springer , 2011.

- 33 -

Copyright 2 - Thanks

- 34 -

Copyright 2