SlideShare a Scribd company logo
1 of 40
Chapter 12 (Section 12.4):
Recommender Systems
Second edition of the book, coming soon
Road Map
 Introduction
 Content-based recommendation
 Collaborative filtering based recommendation
 K-nearest neighbor
 Association rules
 Matrix factorization
CS583, Bing Liu, UIC 2
Introduction
 Recommender systems are widely used on the
Web for recommending products and services
to users.
 Most e-commerce sites have such systems.
 These systems serve two important functions.
 They help users deal with the information overload
by giving them recommendations of products, etc.
 They help businesses make more profits, i.e.,
selling more products.
CS583, Bing Liu, UIC 3
E.g., movie recommendation
 The most common scenario is the following:
 A set of users has initially rated some subset of
movies (e.g., on the scale of 1 to 5) that they have
already seen.
 These ratings serve as the input. The
recommendation system uses these known
ratings to predict the ratings that each user would
give to those not rated movies by him/her.
 Recommendations of movies are then made to
each user based on the predicted ratings.
CS583, Bing Liu, UIC 4
Different variations
 In some applications, there is no rating
information while in some others there are also
additional attributes
 about each user (e.g., age, gender, income, marital
status, etc), and/or
 about each movie (e.g., title, genre, director,
leading actors or actresses, etc).
 When no rating information, the system will not
predict ratings but predict the likelihood that a
user will enjoy watching a movie.
CS583, Bing Liu, UIC 5
The Recommendation Problem
 We have a set of users U and a set of items S
to be recommended to the users.
 Let p be an utility function that measures the
usefulness of item s ( S) to user u ( U), i.e.,
 p:U×S  R, where R is a totally ordered set (e.g.,
non-negative integers or real numbers in a range)
 Objective
 Learn p based on the past data
 Use p to predict the utility value of each item s (
S) to each user u ( U)
CS583, Bing Liu, UIC 6
As Prediction
 Rating prediction, i.e., predict the rating score
that a user is likely to give to an item that s/he
has not seen or used before. E.g.,
 rating on an unseen movie. In this case, the utility
of item s to user u is the rating given to s by u.
 Item prediction, i.e., predict a ranked list of
items that a user is likely to buy or use.
CS583, Bing Liu, UIC 7
Two basic approaches
 Content-based recommendations:
 The user will be recommended items similar to the
ones the user preferred in the past;
 Collaborative filtering (or collaborative
recommendations):
 The user will be recommended items that people
with similar tastes and preferences liked in the past.
 Hybrids: Combine collaborative and content-
based methods.
CS583, Bing Liu, UIC 8
Road Map
 Introduction
 Content-based recommendation
 Collaborative filtering based recommendation
 K-nearest neighbor
 Association rules
 Matrix factorization
CS583, Bing Liu, UIC 9
Content-Based Recommendation
 Perform item recommendations by predicting
the utility of items for a particular user based
on how “similar” the items are to those that
he/she liked in the past. E.g.,
 In a movie recommendation application, a movie
may be represented by such features as specific
actors, director, genre, subject matter, etc.
 The user’s interest or preference is also
represented by the same set of features, called
the user profile.
CS583, Bing Liu, UIC 10
Content-based recommendation (contd)
 Recommendations are made by comparing
the user profile with candidate items
expressed in the same set of features.
 The top-k best matched or most similar items
are recommended to the user.
 The simplest approach to content-based
recommendation is to compute the similarity
of the user profile with each item.
CS583, Bing Liu, UIC 11
Road Map
 Introduction
 Content-based recommendation
 Collaborative filtering based recommendations
 K-nearest neighbor
 Association rules
 Matrix factorization
CS583, Bing Liu, UIC 12
Collaborative filtering
 Collaborative filtering (CF) is perhaps the
most studied and also the most widely-used
recommendation approach in practice.
 k-nearest neighbor,
 association rules based prediction, and
 matrix factorization
 Key characteristic of CF: it predicts the utility
of items for a user based on the items
previously rated by other like-minded users.
CS583, Bing Liu, UIC 13
k-nearest neighbor
 kNN (which is also called the memory-based
approach) utilizes the entire user-item
database to generate predictions directly, i.e.,
there is no model building.
 This approach includes both
 User-based methods
 Item-based methods
CS583, Bing Liu, UIC 14
User-based kNN CF
 A user-based kNN collaborative filtering
method consists of two primary phases:
 the neighborhood formation phase and
 the recommendation phase.
 There are many specific methods for both.
Here we only introduce one for each phase.
CS583, Bing Liu, UIC 15
Neighborhood formation phase
 Let the record (or profile) of the target user be
u (represented as a vector), and the record of
another user be v (v  T).
 The similarity between the target user, u, and
a neighbor, v, can be calculated using the
Pearson’s correlation coefficient:
CS583, Bing Liu, UIC 16
,
)
(
)
(
)
)(
(
)
,
(
2
,
2
,
,
,











C
i i
C
i i
C
i i
i
r
r
r
r
r
r
r
r
sim
v
v
u
u
v
v
u
u
v
u
Recommendation Phase
 Use the following formula to compute the
rating prediction of item i for target user u
where V is the set of k similar users, rv,i is the
rating of user v given to item i,
CS583, Bing Liu, UIC 17








V
V i
sim
r
r
sim
r
i
p
v
v v
v
u
v
u
v
u
u
)
,
(
)
(
)
,
(
)
,
(
,
Issue with the user-based kNN CF
 The problem with the user-based formulation
of collaborative filtering is the lack of
scalability:
 it requires the real-time comparison of the target
user to all user records in order to generate
predictions.
 A variation of this approach that remedies
this problem is called item-based CF.
CS583, Bing Liu, UIC 18
Item-based CF
 The item-based approach works by
comparing items based on their pattern of
ratings across users. The similarity of items i
and j is computed as follows:
CS583, Bing Liu, UIC 19











U j
U i
U j
i
r
r
r
r
r
r
r
r
j
i
sim
u u
u
u u
u
u u
u
u
u
2
,
2
,
,
,
)
(
)
(
)
)(
(
)
,
(
Recommendation phase
 After computing the similarity between items
we select a set of k most similar items to the
target item and generate a predicted value of
user u’s rating
where J is the set of k similar items
CS583, Bing Liu, UIC 20






J
j
J
j j
j
i
sim
j
i
sim
r
i
p
)
,
(
)
,
(
)
(
,
u
u,
Road Map
 Introduction
 Content-based recommendation
 Collaborative filtering based recommendation
 K-nearest neighbor
 Association rules
 Matrix factorization
CS583, Bing Liu, UIC 21
Association rule-based CF
 Association rules obviously can be used for
recommendation.
 Each transaction for association rule mining
is the set of items bought by a particular user.
 We can find item association rules, e.g.,
buy_X, buy_Y -> buy_Z
 Rank items based on measures such as
confidence, etc.
 See Chapter 3 for details
CS583, Bing Liu, UIC 22
Road Map
 Introduction
 Content-based recommendation
 Collaborative filtering based recommendation
 K-nearest neighbor
 Association rules
 Matrix factorization
CS583, Bing Liu, UIC 23
Matrix factorization
 The idea of matrix factorization is to
decompose a matrix M into the product of
several factor matrices, i.e.,
where n can be any number, but it is usually
2 or 3.
CS583, Bing Liu, UIC 24
n
F
F
F
M ...
2
1

CF using matrix factorization
 Matrix factorization has gained popularity for
CF in recent years due to its superior
performance both in terms of recommendation
quality and scalability.
 Part of its success is due to the Netflix Prize
contest for movie recommendation, which
popularized a Singular Value Decomposition
(SVD) based matrix factorization algorithm.
 The prize winning method of the Netflix Prize
Contest employed an adapted version of SVD
CS583, Bing Liu, UIC 25
The abstract idea
 Matrix factorization a latent factor model.
Latent variables (also called features,
aspects, or factors) are introduced to account
for the underlying reasons of a user
purchasing or using a product.
 When the connections between the latent
variables and observed variables (user, product,
rating, etc.) are estimated during the training
 recommendations can be made to users by
computing their possible interactions with each
product through the latent variables.
CS583, Bing Liu, UIC 26
Netflix Prize Contest
CS583, Bing Liu, UIC 27
Netflix Prize Task
 Training data: Quadruples of the form
(user, movie, rating, time)
 For our purpose here, we only use triplets, i.e.,
(user, movie, rating)
 For example, (132456, 13546, 4) means that the
user with ID 132456 gave the movie with ID 13546
a rating of 4 (out of 5).
 Testing: predict the rating of each triplet:
(user, movie, ?)
CS583, Bing Liu, UIC 28
SVD factorization
 The technique discussed here is based on
the SVD method given by
 Simon Funk at his blog site,
 the derivation of Funk’s method described by
Wagman in the Netflix forums.
 the paper by Takacs et al.
 The method was later improved by Koren et
al., Paterek and several other researchers.
CS583, Bing Liu, UIC 29
Intuitive Idea
CS583, Bing Liu, UIC 30
Simon Funk’s SVD method
CS583, Bing Liu, UIC 31
where U = [u1, u2, …, uI] and M = [m1, m2, …, mJ]
SVD method (contd)
 Let us use K = 90 latent aspects (K needs to
be set experimentally).
 Then, each movie will be described by only
ninety aspect values indicating how much
that movie exemplifies each aspect.
 Correspondingly, each user is also described
by ninety aspect values indicating how much
he/she prefers each aspect.
CS583, Bing Liu, UIC 32
SVD method (contd)
 To combine these together into a rating, we
multiply each user preference by the
corresponding movie aspect, and then sum
them up to give a rating to indicate how much
that user likes that movie:
 U = [u1, u2, …, uI] and M = [m1, m2, …, mJ]
 Using SVD, we can perform the task
CS583, Bing Liu, UIC 33





K
k
kj
ki
j
T
i
ij m
u
r
1
m
u
SVD method (contd)
 SVD is a mathematical way to find these two
smaller matrices which minimizes the
resulting approximation error, the mean
square error (MSE).
 We can use the resulting matrices U and M to
predict the ratings in the test set.
CS583, Bing Liu, UIC 34
SVD method (contd)
CS583, Bing Liu, UIC 35
SVD method (contd)
 To minimize the error, the gradient descent
approach is used.
 For gradient descent, we take the partial
derivative of the square error with respect to
each parameter, i.e. with respect to each uki
and mkj.
CS583, Bing Liu, UIC 36
ki
ij
ij
ki
ij
u
e
e
u
e





2
)
( 2
SVD method (contd)
CS583, Bing Liu, UIC 37
SVD method (contd)
CS583, Bing Liu, UIC 38
The final update rules
 By the same reasoning, we can also compute
the update rule for mkj.
 Finally, we have both rules
 The final prediction uses Eq. (11)
CS583, Bing Liu, UIC 39
Further improvements
 The two basic rules need some
improvements to make them work well.
 There are also some pre-processing.
 Time was also added later.
 Etc
 Note:
 Funk used stochastic gradient descent
 Not the batch (global) gradient descent.
CS583, Bing Liu, UIC 40

More Related Content

Similar to CS583-recommender-systems.ppt

Recent advances in deep recommender systems
Recent advances in deep recommender systemsRecent advances in deep recommender systems
Recent advances in deep recommender systemsNAVER Engineering
 
Movie Recommender System Using Artificial Intelligence
Movie Recommender System Using Artificial Intelligence Movie Recommender System Using Artificial Intelligence
Movie Recommender System Using Artificial Intelligence Shrutika Oswal
 
Introduction to recommendation system
Introduction to recommendation systemIntroduction to recommendation system
Introduction to recommendation systemAravindharamanan S
 
Collaborative Filtering Recommendation System
Collaborative Filtering Recommendation SystemCollaborative Filtering Recommendation System
Collaborative Filtering Recommendation SystemMilind Gokhale
 
Recommenders Systems
Recommenders SystemsRecommenders Systems
Recommenders SystemsTariq Hassan
 
Digital Trails Dave King 1 5 10 Part 2 D3
Digital Trails   Dave King   1 5 10   Part 2   D3Digital Trails   Dave King   1 5 10   Part 2   D3
Digital Trails Dave King 1 5 10 Part 2 D3Dave King
 
Recommendation Systems
Recommendation SystemsRecommendation Systems
Recommendation SystemsRobin Reni
 
Rokach-GomaxSlides.pptx
Rokach-GomaxSlides.pptxRokach-GomaxSlides.pptx
Rokach-GomaxSlides.pptxJadna Almeida
 
Rokach-GomaxSlides (1).pptx
Rokach-GomaxSlides (1).pptxRokach-GomaxSlides (1).pptx
Rokach-GomaxSlides (1).pptxJadna Almeida
 
A hybrid recommender system user profiling from keywords and ratings
A hybrid recommender system user profiling from keywords and ratingsA hybrid recommender system user profiling from keywords and ratings
A hybrid recommender system user profiling from keywords and ratingsAravindharamanan S
 
Explain Yourself: Why You Get the Recommendations You Do
Explain Yourself: Why You Get the Recommendations You DoExplain Yourself: Why You Get the Recommendations You Do
Explain Yourself: Why You Get the Recommendations You DoDatabricks
 
Social media recommendation based on people and tags (final)
Social media recommendation based on people and tags (final)Social media recommendation based on people and tags (final)
Social media recommendation based on people and tags (final)es712
 
movie recommender system using vectorization and SVD tech
movie recommender system using vectorization and SVD techmovie recommender system using vectorization and SVD tech
movie recommender system using vectorization and SVD techUddeshBhagat
 
Recommendation System using Machine Learning Techniques
Recommendation System using Machine Learning TechniquesRecommendation System using Machine Learning Techniques
Recommendation System using Machine Learning TechniquesIRJET Journal
 
Overview of Movie Recommendation System using Machine learning by R programmi...
Overview of Movie Recommendation System using Machine learning by R programmi...Overview of Movie Recommendation System using Machine learning by R programmi...
Overview of Movie Recommendation System using Machine learning by R programmi...IRJET Journal
 
An Experiment In Cross-Representation Mediation Of User Models
An Experiment In Cross-Representation Mediation Of User ModelsAn Experiment In Cross-Representation Mediation Of User Models
An Experiment In Cross-Representation Mediation Of User ModelsDaniel Wachtel
 
Real-world News Recommender Systems
Real-world News Recommender SystemsReal-world News Recommender Systems
Real-world News Recommender Systemskib_83
 
IntroductionRecommenderSystems_Petroni.pdf
IntroductionRecommenderSystems_Petroni.pdfIntroductionRecommenderSystems_Petroni.pdf
IntroductionRecommenderSystems_Petroni.pdfAlphaIssaghaDiallo
 
International Journal on Natural Language Computing (IJNLC)
International Journal on Natural Language Computing (IJNLC)International Journal on Natural Language Computing (IJNLC)
International Journal on Natural Language Computing (IJNLC)kevig
 

Similar to CS583-recommender-systems.ppt (20)

Developing Movie Recommendation System
Developing Movie Recommendation SystemDeveloping Movie Recommendation System
Developing Movie Recommendation System
 
Recent advances in deep recommender systems
Recent advances in deep recommender systemsRecent advances in deep recommender systems
Recent advances in deep recommender systems
 
Movie Recommender System Using Artificial Intelligence
Movie Recommender System Using Artificial Intelligence Movie Recommender System Using Artificial Intelligence
Movie Recommender System Using Artificial Intelligence
 
Introduction to recommendation system
Introduction to recommendation systemIntroduction to recommendation system
Introduction to recommendation system
 
Collaborative Filtering Recommendation System
Collaborative Filtering Recommendation SystemCollaborative Filtering Recommendation System
Collaborative Filtering Recommendation System
 
Recommenders Systems
Recommenders SystemsRecommenders Systems
Recommenders Systems
 
Digital Trails Dave King 1 5 10 Part 2 D3
Digital Trails   Dave King   1 5 10   Part 2   D3Digital Trails   Dave King   1 5 10   Part 2   D3
Digital Trails Dave King 1 5 10 Part 2 D3
 
Recommendation Systems
Recommendation SystemsRecommendation Systems
Recommendation Systems
 
Rokach-GomaxSlides.pptx
Rokach-GomaxSlides.pptxRokach-GomaxSlides.pptx
Rokach-GomaxSlides.pptx
 
Rokach-GomaxSlides (1).pptx
Rokach-GomaxSlides (1).pptxRokach-GomaxSlides (1).pptx
Rokach-GomaxSlides (1).pptx
 
A hybrid recommender system user profiling from keywords and ratings
A hybrid recommender system user profiling from keywords and ratingsA hybrid recommender system user profiling from keywords and ratings
A hybrid recommender system user profiling from keywords and ratings
 
Explain Yourself: Why You Get the Recommendations You Do
Explain Yourself: Why You Get the Recommendations You DoExplain Yourself: Why You Get the Recommendations You Do
Explain Yourself: Why You Get the Recommendations You Do
 
Social media recommendation based on people and tags (final)
Social media recommendation based on people and tags (final)Social media recommendation based on people and tags (final)
Social media recommendation based on people and tags (final)
 
movie recommender system using vectorization and SVD tech
movie recommender system using vectorization and SVD techmovie recommender system using vectorization and SVD tech
movie recommender system using vectorization and SVD tech
 
Recommendation System using Machine Learning Techniques
Recommendation System using Machine Learning TechniquesRecommendation System using Machine Learning Techniques
Recommendation System using Machine Learning Techniques
 
Overview of Movie Recommendation System using Machine learning by R programmi...
Overview of Movie Recommendation System using Machine learning by R programmi...Overview of Movie Recommendation System using Machine learning by R programmi...
Overview of Movie Recommendation System using Machine learning by R programmi...
 
An Experiment In Cross-Representation Mediation Of User Models
An Experiment In Cross-Representation Mediation Of User ModelsAn Experiment In Cross-Representation Mediation Of User Models
An Experiment In Cross-Representation Mediation Of User Models
 
Real-world News Recommender Systems
Real-world News Recommender SystemsReal-world News Recommender Systems
Real-world News Recommender Systems
 
IntroductionRecommenderSystems_Petroni.pdf
IntroductionRecommenderSystems_Petroni.pdfIntroductionRecommenderSystems_Petroni.pdf
IntroductionRecommenderSystems_Petroni.pdf
 
International Journal on Natural Language Computing (IJNLC)
International Journal on Natural Language Computing (IJNLC)International Journal on Natural Language Computing (IJNLC)
International Journal on Natural Language Computing (IJNLC)
 

Recently uploaded

如何办理(UC毕业证书)堪培拉大学毕业证毕业证成绩单原版一比一
如何办理(UC毕业证书)堪培拉大学毕业证毕业证成绩单原版一比一如何办理(UC毕业证书)堪培拉大学毕业证毕业证成绩单原版一比一
如何办理(UC毕业证书)堪培拉大学毕业证毕业证成绩单原版一比一fjjwgk
 
call girls in G.T.B. Nagar (DELHI) 🔝 >༒9953330565🔝 genuine Escort Service 🔝✔️✔️
call girls in  G.T.B. Nagar (DELHI) 🔝 >༒9953330565🔝 genuine Escort Service 🔝✔️✔️call girls in  G.T.B. Nagar (DELHI) 🔝 >༒9953330565🔝 genuine Escort Service 🔝✔️✔️
call girls in G.T.B. Nagar (DELHI) 🔝 >༒9953330565🔝 genuine Escort Service 🔝✔️✔️9953056974 Low Rate Call Girls In Saket, Delhi NCR
 
BLUE VEHICLES the kids picture show 2024
BLUE VEHICLES the kids picture show 2024BLUE VEHICLES the kids picture show 2024
BLUE VEHICLES the kids picture show 2024AHOhOops1
 
定制(Plymouth文凭证书)普利茅斯大学毕业证毕业证成绩单学历认证原版一比一
定制(Plymouth文凭证书)普利茅斯大学毕业证毕业证成绩单学历认证原版一比一定制(Plymouth文凭证书)普利茅斯大学毕业证毕业证成绩单学历认证原版一比一
定制(Plymouth文凭证书)普利茅斯大学毕业证毕业证成绩单学历认证原版一比一fhhkjh
 
如何办理(Flinders毕业证)查理斯特大学毕业证毕业证成绩单原版一比一
如何办理(Flinders毕业证)查理斯特大学毕业证毕业证成绩单原版一比一如何办理(Flinders毕业证)查理斯特大学毕业证毕业证成绩单原版一比一
如何办理(Flinders毕业证)查理斯特大学毕业证毕业证成绩单原版一比一ypfy7p5ld
 
(办理学位证)(Rice毕业证)莱斯大学毕业证成绩单修改留信学历认证原版一模一样
(办理学位证)(Rice毕业证)莱斯大学毕业证成绩单修改留信学历认证原版一模一样(办理学位证)(Rice毕业证)莱斯大学毕业证成绩单修改留信学历认证原版一模一样
(办理学位证)(Rice毕业证)莱斯大学毕业证成绩单修改留信学历认证原版一模一样gfghbihg
 
Dubai Call Girls Size E6 (O525547819) Call Girls In Dubai
Dubai Call Girls  Size E6 (O525547819) Call Girls In DubaiDubai Call Girls  Size E6 (O525547819) Call Girls In Dubai
Dubai Call Girls Size E6 (O525547819) Call Girls In Dubaikojalkojal131
 
UNIT-1-VEHICLE STRUCTURE AND ENGINES.ppt
UNIT-1-VEHICLE STRUCTURE AND ENGINES.pptUNIT-1-VEHICLE STRUCTURE AND ENGINES.ppt
UNIT-1-VEHICLE STRUCTURE AND ENGINES.pptDineshKumar4165
 
Innovating Manufacturing with CNC Technology
Innovating Manufacturing with CNC TechnologyInnovating Manufacturing with CNC Technology
Innovating Manufacturing with CNC Technologyquickpartslimitlessm
 
原版工艺美国普林斯顿大学毕业证Princeton毕业证成绩单修改留信学历认证
原版工艺美国普林斯顿大学毕业证Princeton毕业证成绩单修改留信学历认证原版工艺美国普林斯顿大学毕业证Princeton毕业证成绩单修改留信学历认证
原版工艺美国普林斯顿大学毕业证Princeton毕业证成绩单修改留信学历认证jjrehjwj11gg
 
John Deere 300 3029 4039 4045 6059 6068 Engine Operation and Service Manual
John Deere 300 3029 4039 4045 6059 6068 Engine Operation and Service ManualJohn Deere 300 3029 4039 4045 6059 6068 Engine Operation and Service Manual
John Deere 300 3029 4039 4045 6059 6068 Engine Operation and Service ManualExcavator
 
UNIT-II-ENGINE AUXILIARY SYSTEMS &TURBOCHARGER
UNIT-II-ENGINE AUXILIARY SYSTEMS &TURBOCHARGERUNIT-II-ENGINE AUXILIARY SYSTEMS &TURBOCHARGER
UNIT-II-ENGINE AUXILIARY SYSTEMS &TURBOCHARGERDineshKumar4165
 
( Best ) Genuine Call Girls In Mandi House =DELHI-| 8377087607
( Best ) Genuine Call Girls In Mandi House =DELHI-| 8377087607( Best ) Genuine Call Girls In Mandi House =DELHI-| 8377087607
( Best ) Genuine Call Girls In Mandi House =DELHI-| 8377087607dollysharma2066
 
Hauz Khas Call Girls ☎ 7042364481 independent Escorts Service in delhi
Hauz Khas Call Girls ☎ 7042364481 independent Escorts Service in delhiHauz Khas Call Girls ☎ 7042364481 independent Escorts Service in delhi
Hauz Khas Call Girls ☎ 7042364481 independent Escorts Service in delhiHot Call Girls In Sector 58 (Noida)
 
UNIT-V-ELECTRIC AND HYBRID VEHICLES.pptx
UNIT-V-ELECTRIC AND HYBRID VEHICLES.pptxUNIT-V-ELECTRIC AND HYBRID VEHICLES.pptx
UNIT-V-ELECTRIC AND HYBRID VEHICLES.pptxDineshKumar4165
 
Russian Call Girls Delhi Indirapuram {9711199171} Aarvi Gupta ✌️Independent ...
Russian  Call Girls Delhi Indirapuram {9711199171} Aarvi Gupta ✌️Independent ...Russian  Call Girls Delhi Indirapuram {9711199171} Aarvi Gupta ✌️Independent ...
Russian Call Girls Delhi Indirapuram {9711199171} Aarvi Gupta ✌️Independent ...shivangimorya083
 
Beautiful Vip Call Girls Punjabi Bagh 9711199012 Call /Whatsapps
Beautiful Vip  Call Girls Punjabi Bagh 9711199012 Call /WhatsappsBeautiful Vip  Call Girls Punjabi Bagh 9711199012 Call /Whatsapps
Beautiful Vip Call Girls Punjabi Bagh 9711199012 Call /Whatsappssapnasaifi408
 
如何办理(UQ毕业证书)昆士兰大学毕业证毕业证成绩单原版一比一
如何办理(UQ毕业证书)昆士兰大学毕业证毕业证成绩单原版一比一如何办理(UQ毕业证书)昆士兰大学毕业证毕业证成绩单原版一比一
如何办理(UQ毕业证书)昆士兰大学毕业证毕业证成绩单原版一比一hnfusn
 
FULL ENJOY - 9953040155 Call Girls in Sector 61 | Noida
FULL ENJOY - 9953040155 Call Girls in Sector 61 | NoidaFULL ENJOY - 9953040155 Call Girls in Sector 61 | Noida
FULL ENJOY - 9953040155 Call Girls in Sector 61 | NoidaMalviyaNagarCallGirl
 
Call Girls in Karachi | +923081633338 | Karachi Call Girls
Call Girls in Karachi  | +923081633338 | Karachi Call GirlsCall Girls in Karachi  | +923081633338 | Karachi Call Girls
Call Girls in Karachi | +923081633338 | Karachi Call GirlsAyesha Khan
 

Recently uploaded (20)

如何办理(UC毕业证书)堪培拉大学毕业证毕业证成绩单原版一比一
如何办理(UC毕业证书)堪培拉大学毕业证毕业证成绩单原版一比一如何办理(UC毕业证书)堪培拉大学毕业证毕业证成绩单原版一比一
如何办理(UC毕业证书)堪培拉大学毕业证毕业证成绩单原版一比一
 
call girls in G.T.B. Nagar (DELHI) 🔝 >༒9953330565🔝 genuine Escort Service 🔝✔️✔️
call girls in  G.T.B. Nagar (DELHI) 🔝 >༒9953330565🔝 genuine Escort Service 🔝✔️✔️call girls in  G.T.B. Nagar (DELHI) 🔝 >༒9953330565🔝 genuine Escort Service 🔝✔️✔️
call girls in G.T.B. Nagar (DELHI) 🔝 >༒9953330565🔝 genuine Escort Service 🔝✔️✔️
 
BLUE VEHICLES the kids picture show 2024
BLUE VEHICLES the kids picture show 2024BLUE VEHICLES the kids picture show 2024
BLUE VEHICLES the kids picture show 2024
 
定制(Plymouth文凭证书)普利茅斯大学毕业证毕业证成绩单学历认证原版一比一
定制(Plymouth文凭证书)普利茅斯大学毕业证毕业证成绩单学历认证原版一比一定制(Plymouth文凭证书)普利茅斯大学毕业证毕业证成绩单学历认证原版一比一
定制(Plymouth文凭证书)普利茅斯大学毕业证毕业证成绩单学历认证原版一比一
 
如何办理(Flinders毕业证)查理斯特大学毕业证毕业证成绩单原版一比一
如何办理(Flinders毕业证)查理斯特大学毕业证毕业证成绩单原版一比一如何办理(Flinders毕业证)查理斯特大学毕业证毕业证成绩单原版一比一
如何办理(Flinders毕业证)查理斯特大学毕业证毕业证成绩单原版一比一
 
(办理学位证)(Rice毕业证)莱斯大学毕业证成绩单修改留信学历认证原版一模一样
(办理学位证)(Rice毕业证)莱斯大学毕业证成绩单修改留信学历认证原版一模一样(办理学位证)(Rice毕业证)莱斯大学毕业证成绩单修改留信学历认证原版一模一样
(办理学位证)(Rice毕业证)莱斯大学毕业证成绩单修改留信学历认证原版一模一样
 
Dubai Call Girls Size E6 (O525547819) Call Girls In Dubai
Dubai Call Girls  Size E6 (O525547819) Call Girls In DubaiDubai Call Girls  Size E6 (O525547819) Call Girls In Dubai
Dubai Call Girls Size E6 (O525547819) Call Girls In Dubai
 
UNIT-1-VEHICLE STRUCTURE AND ENGINES.ppt
UNIT-1-VEHICLE STRUCTURE AND ENGINES.pptUNIT-1-VEHICLE STRUCTURE AND ENGINES.ppt
UNIT-1-VEHICLE STRUCTURE AND ENGINES.ppt
 
Innovating Manufacturing with CNC Technology
Innovating Manufacturing with CNC TechnologyInnovating Manufacturing with CNC Technology
Innovating Manufacturing with CNC Technology
 
原版工艺美国普林斯顿大学毕业证Princeton毕业证成绩单修改留信学历认证
原版工艺美国普林斯顿大学毕业证Princeton毕业证成绩单修改留信学历认证原版工艺美国普林斯顿大学毕业证Princeton毕业证成绩单修改留信学历认证
原版工艺美国普林斯顿大学毕业证Princeton毕业证成绩单修改留信学历认证
 
John Deere 300 3029 4039 4045 6059 6068 Engine Operation and Service Manual
John Deere 300 3029 4039 4045 6059 6068 Engine Operation and Service ManualJohn Deere 300 3029 4039 4045 6059 6068 Engine Operation and Service Manual
John Deere 300 3029 4039 4045 6059 6068 Engine Operation and Service Manual
 
UNIT-II-ENGINE AUXILIARY SYSTEMS &TURBOCHARGER
UNIT-II-ENGINE AUXILIARY SYSTEMS &TURBOCHARGERUNIT-II-ENGINE AUXILIARY SYSTEMS &TURBOCHARGER
UNIT-II-ENGINE AUXILIARY SYSTEMS &TURBOCHARGER
 
( Best ) Genuine Call Girls In Mandi House =DELHI-| 8377087607
( Best ) Genuine Call Girls In Mandi House =DELHI-| 8377087607( Best ) Genuine Call Girls In Mandi House =DELHI-| 8377087607
( Best ) Genuine Call Girls In Mandi House =DELHI-| 8377087607
 
Hauz Khas Call Girls ☎ 7042364481 independent Escorts Service in delhi
Hauz Khas Call Girls ☎ 7042364481 independent Escorts Service in delhiHauz Khas Call Girls ☎ 7042364481 independent Escorts Service in delhi
Hauz Khas Call Girls ☎ 7042364481 independent Escorts Service in delhi
 
UNIT-V-ELECTRIC AND HYBRID VEHICLES.pptx
UNIT-V-ELECTRIC AND HYBRID VEHICLES.pptxUNIT-V-ELECTRIC AND HYBRID VEHICLES.pptx
UNIT-V-ELECTRIC AND HYBRID VEHICLES.pptx
 
Russian Call Girls Delhi Indirapuram {9711199171} Aarvi Gupta ✌️Independent ...
Russian  Call Girls Delhi Indirapuram {9711199171} Aarvi Gupta ✌️Independent ...Russian  Call Girls Delhi Indirapuram {9711199171} Aarvi Gupta ✌️Independent ...
Russian Call Girls Delhi Indirapuram {9711199171} Aarvi Gupta ✌️Independent ...
 
Beautiful Vip Call Girls Punjabi Bagh 9711199012 Call /Whatsapps
Beautiful Vip  Call Girls Punjabi Bagh 9711199012 Call /WhatsappsBeautiful Vip  Call Girls Punjabi Bagh 9711199012 Call /Whatsapps
Beautiful Vip Call Girls Punjabi Bagh 9711199012 Call /Whatsapps
 
如何办理(UQ毕业证书)昆士兰大学毕业证毕业证成绩单原版一比一
如何办理(UQ毕业证书)昆士兰大学毕业证毕业证成绩单原版一比一如何办理(UQ毕业证书)昆士兰大学毕业证毕业证成绩单原版一比一
如何办理(UQ毕业证书)昆士兰大学毕业证毕业证成绩单原版一比一
 
FULL ENJOY - 9953040155 Call Girls in Sector 61 | Noida
FULL ENJOY - 9953040155 Call Girls in Sector 61 | NoidaFULL ENJOY - 9953040155 Call Girls in Sector 61 | Noida
FULL ENJOY - 9953040155 Call Girls in Sector 61 | Noida
 
Call Girls in Karachi | +923081633338 | Karachi Call Girls
Call Girls in Karachi  | +923081633338 | Karachi Call GirlsCall Girls in Karachi  | +923081633338 | Karachi Call Girls
Call Girls in Karachi | +923081633338 | Karachi Call Girls
 

CS583-recommender-systems.ppt

  • 1. Chapter 12 (Section 12.4): Recommender Systems Second edition of the book, coming soon
  • 2. Road Map  Introduction  Content-based recommendation  Collaborative filtering based recommendation  K-nearest neighbor  Association rules  Matrix factorization CS583, Bing Liu, UIC 2
  • 3. Introduction  Recommender systems are widely used on the Web for recommending products and services to users.  Most e-commerce sites have such systems.  These systems serve two important functions.  They help users deal with the information overload by giving them recommendations of products, etc.  They help businesses make more profits, i.e., selling more products. CS583, Bing Liu, UIC 3
  • 4. E.g., movie recommendation  The most common scenario is the following:  A set of users has initially rated some subset of movies (e.g., on the scale of 1 to 5) that they have already seen.  These ratings serve as the input. The recommendation system uses these known ratings to predict the ratings that each user would give to those not rated movies by him/her.  Recommendations of movies are then made to each user based on the predicted ratings. CS583, Bing Liu, UIC 4
  • 5. Different variations  In some applications, there is no rating information while in some others there are also additional attributes  about each user (e.g., age, gender, income, marital status, etc), and/or  about each movie (e.g., title, genre, director, leading actors or actresses, etc).  When no rating information, the system will not predict ratings but predict the likelihood that a user will enjoy watching a movie. CS583, Bing Liu, UIC 5
  • 6. The Recommendation Problem  We have a set of users U and a set of items S to be recommended to the users.  Let p be an utility function that measures the usefulness of item s ( S) to user u ( U), i.e.,  p:U×S  R, where R is a totally ordered set (e.g., non-negative integers or real numbers in a range)  Objective  Learn p based on the past data  Use p to predict the utility value of each item s ( S) to each user u ( U) CS583, Bing Liu, UIC 6
  • 7. As Prediction  Rating prediction, i.e., predict the rating score that a user is likely to give to an item that s/he has not seen or used before. E.g.,  rating on an unseen movie. In this case, the utility of item s to user u is the rating given to s by u.  Item prediction, i.e., predict a ranked list of items that a user is likely to buy or use. CS583, Bing Liu, UIC 7
  • 8. Two basic approaches  Content-based recommendations:  The user will be recommended items similar to the ones the user preferred in the past;  Collaborative filtering (or collaborative recommendations):  The user will be recommended items that people with similar tastes and preferences liked in the past.  Hybrids: Combine collaborative and content- based methods. CS583, Bing Liu, UIC 8
  • 9. Road Map  Introduction  Content-based recommendation  Collaborative filtering based recommendation  K-nearest neighbor  Association rules  Matrix factorization CS583, Bing Liu, UIC 9
  • 10. Content-Based Recommendation  Perform item recommendations by predicting the utility of items for a particular user based on how “similar” the items are to those that he/she liked in the past. E.g.,  In a movie recommendation application, a movie may be represented by such features as specific actors, director, genre, subject matter, etc.  The user’s interest or preference is also represented by the same set of features, called the user profile. CS583, Bing Liu, UIC 10
  • 11. Content-based recommendation (contd)  Recommendations are made by comparing the user profile with candidate items expressed in the same set of features.  The top-k best matched or most similar items are recommended to the user.  The simplest approach to content-based recommendation is to compute the similarity of the user profile with each item. CS583, Bing Liu, UIC 11
  • 12. Road Map  Introduction  Content-based recommendation  Collaborative filtering based recommendations  K-nearest neighbor  Association rules  Matrix factorization CS583, Bing Liu, UIC 12
  • 13. Collaborative filtering  Collaborative filtering (CF) is perhaps the most studied and also the most widely-used recommendation approach in practice.  k-nearest neighbor,  association rules based prediction, and  matrix factorization  Key characteristic of CF: it predicts the utility of items for a user based on the items previously rated by other like-minded users. CS583, Bing Liu, UIC 13
  • 14. k-nearest neighbor  kNN (which is also called the memory-based approach) utilizes the entire user-item database to generate predictions directly, i.e., there is no model building.  This approach includes both  User-based methods  Item-based methods CS583, Bing Liu, UIC 14
  • 15. User-based kNN CF  A user-based kNN collaborative filtering method consists of two primary phases:  the neighborhood formation phase and  the recommendation phase.  There are many specific methods for both. Here we only introduce one for each phase. CS583, Bing Liu, UIC 15
  • 16. Neighborhood formation phase  Let the record (or profile) of the target user be u (represented as a vector), and the record of another user be v (v  T).  The similarity between the target user, u, and a neighbor, v, can be calculated using the Pearson’s correlation coefficient: CS583, Bing Liu, UIC 16 , ) ( ) ( ) )( ( ) , ( 2 , 2 , , ,            C i i C i i C i i i r r r r r r r r sim v v u u v v u u v u
  • 17. Recommendation Phase  Use the following formula to compute the rating prediction of item i for target user u where V is the set of k similar users, rv,i is the rating of user v given to item i, CS583, Bing Liu, UIC 17         V V i sim r r sim r i p v v v v u v u v u u ) , ( ) ( ) , ( ) , ( ,
  • 18. Issue with the user-based kNN CF  The problem with the user-based formulation of collaborative filtering is the lack of scalability:  it requires the real-time comparison of the target user to all user records in order to generate predictions.  A variation of this approach that remedies this problem is called item-based CF. CS583, Bing Liu, UIC 18
  • 19. Item-based CF  The item-based approach works by comparing items based on their pattern of ratings across users. The similarity of items i and j is computed as follows: CS583, Bing Liu, UIC 19            U j U i U j i r r r r r r r r j i sim u u u u u u u u u u u 2 , 2 , , , ) ( ) ( ) )( ( ) , (
  • 20. Recommendation phase  After computing the similarity between items we select a set of k most similar items to the target item and generate a predicted value of user u’s rating where J is the set of k similar items CS583, Bing Liu, UIC 20       J j J j j j i sim j i sim r i p ) , ( ) , ( ) ( , u u,
  • 21. Road Map  Introduction  Content-based recommendation  Collaborative filtering based recommendation  K-nearest neighbor  Association rules  Matrix factorization CS583, Bing Liu, UIC 21
  • 22. Association rule-based CF  Association rules obviously can be used for recommendation.  Each transaction for association rule mining is the set of items bought by a particular user.  We can find item association rules, e.g., buy_X, buy_Y -> buy_Z  Rank items based on measures such as confidence, etc.  See Chapter 3 for details CS583, Bing Liu, UIC 22
  • 23. Road Map  Introduction  Content-based recommendation  Collaborative filtering based recommendation  K-nearest neighbor  Association rules  Matrix factorization CS583, Bing Liu, UIC 23
  • 24. Matrix factorization  The idea of matrix factorization is to decompose a matrix M into the product of several factor matrices, i.e., where n can be any number, but it is usually 2 or 3. CS583, Bing Liu, UIC 24 n F F F M ... 2 1 
  • 25. CF using matrix factorization  Matrix factorization has gained popularity for CF in recent years due to its superior performance both in terms of recommendation quality and scalability.  Part of its success is due to the Netflix Prize contest for movie recommendation, which popularized a Singular Value Decomposition (SVD) based matrix factorization algorithm.  The prize winning method of the Netflix Prize Contest employed an adapted version of SVD CS583, Bing Liu, UIC 25
  • 26. The abstract idea  Matrix factorization a latent factor model. Latent variables (also called features, aspects, or factors) are introduced to account for the underlying reasons of a user purchasing or using a product.  When the connections between the latent variables and observed variables (user, product, rating, etc.) are estimated during the training  recommendations can be made to users by computing their possible interactions with each product through the latent variables. CS583, Bing Liu, UIC 26
  • 27. Netflix Prize Contest CS583, Bing Liu, UIC 27
  • 28. Netflix Prize Task  Training data: Quadruples of the form (user, movie, rating, time)  For our purpose here, we only use triplets, i.e., (user, movie, rating)  For example, (132456, 13546, 4) means that the user with ID 132456 gave the movie with ID 13546 a rating of 4 (out of 5).  Testing: predict the rating of each triplet: (user, movie, ?) CS583, Bing Liu, UIC 28
  • 29. SVD factorization  The technique discussed here is based on the SVD method given by  Simon Funk at his blog site,  the derivation of Funk’s method described by Wagman in the Netflix forums.  the paper by Takacs et al.  The method was later improved by Koren et al., Paterek and several other researchers. CS583, Bing Liu, UIC 29
  • 31. Simon Funk’s SVD method CS583, Bing Liu, UIC 31 where U = [u1, u2, …, uI] and M = [m1, m2, …, mJ]
  • 32. SVD method (contd)  Let us use K = 90 latent aspects (K needs to be set experimentally).  Then, each movie will be described by only ninety aspect values indicating how much that movie exemplifies each aspect.  Correspondingly, each user is also described by ninety aspect values indicating how much he/she prefers each aspect. CS583, Bing Liu, UIC 32
  • 33. SVD method (contd)  To combine these together into a rating, we multiply each user preference by the corresponding movie aspect, and then sum them up to give a rating to indicate how much that user likes that movie:  U = [u1, u2, …, uI] and M = [m1, m2, …, mJ]  Using SVD, we can perform the task CS583, Bing Liu, UIC 33      K k kj ki j T i ij m u r 1 m u
  • 34. SVD method (contd)  SVD is a mathematical way to find these two smaller matrices which minimizes the resulting approximation error, the mean square error (MSE).  We can use the resulting matrices U and M to predict the ratings in the test set. CS583, Bing Liu, UIC 34
  • 35. SVD method (contd) CS583, Bing Liu, UIC 35
  • 36. SVD method (contd)  To minimize the error, the gradient descent approach is used.  For gradient descent, we take the partial derivative of the square error with respect to each parameter, i.e. with respect to each uki and mkj. CS583, Bing Liu, UIC 36 ki ij ij ki ij u e e u e      2 ) ( 2
  • 37. SVD method (contd) CS583, Bing Liu, UIC 37
  • 38. SVD method (contd) CS583, Bing Liu, UIC 38
  • 39. The final update rules  By the same reasoning, we can also compute the update rule for mkj.  Finally, we have both rules  The final prediction uses Eq. (11) CS583, Bing Liu, UIC 39
  • 40. Further improvements  The two basic rules need some improvements to make them work well.  There are also some pre-processing.  Time was also added later.  Etc  Note:  Funk used stochastic gradient descent  Not the batch (global) gradient descent. CS583, Bing Liu, UIC 40