SlideShare una empresa de Scribd logo
1 de 48
Descargar para leer sin conexión
A survey on
Recommender Systems
Mahdi Seyednezhad
BioComplex Laboratory
School of Computing
Florida Institute of Technology
May, 2017
seyednezhad@gmail.com
https://seyednejad.wixsite.com/home
Outline
Introduction
Methods
Evaluation
Context
Social
media
2
At the end …
At the end …
At the end …
At the end …
At the end …
Why we need recommender
systems?
How do traditional
methods work?
How to evaluate
recommender systems?
How to use context in
recommender systems?
What is social information?
How to use social information?
Why recommender systems?
• Ancient human relied on advice from experts.
• We are not expert in everything!
• We need an expert for advice.
• Computers change the global market.
Egypt agriculture
© http://www.crystalinks.com/egyptagriculture.html
3
Growth in the number of Internet Users
4
Percentage that do not use the Internet
Mobile network coverage
and evolving technologies
©ICT facts and figures
Many Online Items
5
Books
People
Magazines
News
Movies
VideosClothes
Scientific papers
Which one is
better?????
Websites
Many online companies
6
Recommending various items Recommending specific items
What is a recommender system (RS)?
7
Items
Users
Recommender System Users
Profile
Features
Ratings
RSs recommend items to users
based on users’ preferences
Recommender system challenges
Data
acquisition
• Explicitly
• Implicitly
8
Cold start
• New community
• New user
• New item
Data sparsity
• 99% of the user-item
matrix elements
have no value.
• Number of users is
much larger than
the number of items.
Traditional recommender systems
A recommender system needs to filter the information to extract
the relevant items.
9
Demographic Filtering Content-based Filtering (CBF) Collaborative Filtering (CF)
Demographic filtering
• It recommends items based on the demographic profile of users.
• People from the same group tend to have the same taste.
10
User Gender Country Age The Godfather
Diego M Brazil 27
+
Josemar M Brazil 20 +
Pacheco M Brazil 45 +
Hugo M Brazil 36
-
Firas M Iraq 51
-
Priya F India ?
-
Marcos M Brazil 27
?
Demographic filtering - Example
• Diego, Josemar and Pacheco liked “The Godfather”.
• How about Marcos?
11
User Gen. Nationality Age The Godfather
Diego M Brazil 28
+
Josemar M Brazil 20 +
Pacheco M Brazil 45 +
Hugo M Brazil 36
-
Marcello M Italy 30
Firas M Iraq 51 -
Priya F India ? -
Marcos M Brazil 30
?
Probably
+
Content-based Filtering (CBF)
12
• CBF method recommends items based on their description.
• It consists of three major parts:
Content
Analyzer
• Pre-processing
• Text to feature
vector
Profile
Learner
• Find average
content of
items
• Make prototype
text vector
Filter
Components
• Find similar
documents
• Filter out
dissimilar
de Gemmis, Marco, et al. "Semantics-aware content-based recommender systems." Recommender Systems Handbook. Springer US, 2015. 119-159.
CBF- Example
• Diego likes “The Godfather”.
13
• Does Diego like “Goodfellas”?
?
RS does not knows:RS knows:
Make him an offer he can't refuse!
CBF- Example
14
Description
Genre Subject
Crime Drama Mafia
Genre Subject
Crime Thriller Drama Mafia
Description
Similar
Diego likes “Goodfellas”.
CBF – Keyword-based
15
Weight of term
tk in document dj
Content Analyzer
TF-IDF:
terms that are
frequently found in
one text (TF),
but rarely in other
documents (IDF)
Calculate similarity of documents.
Filter out dissimilar documents.
IDF(tk) = log
N
nk
sim(di, dj) =
P
k wk,i · wk,j
pP
k wk,i
2 ·
pP
k wk,j
2
Salton, G.: Automatic Text Processing. Addison-Wesley (1989)
TF: Term Frequency
IDF: Inverse Document Frequency
TF(tk, dj) =
fk,j
max{fz,j}
Collaborative Filtering (CB)
16
User-Item rating matrix
The
Godfather Goodfellas Scarface Heat … Casino
Diego 5 5 2 5 … 3
Priya 4 ? ? 2 … 4
Harith 5 2 2 2 … ?
:
:
… … … … … …
Josemar 4 5 4 2 … 3
Pacheco 5 5 2 ? … 2
Items
users
User-item matrix
in reality
CF - Example
17
Diego likes “Scarface.”
How about Marcos?
Diego likes “The Godfather.”
Marcos likes “The Godfather” as well.
CF - Find similar items based on
ratings!
18
Item-Item Similarity
R: User x Item
User-User Similarity
Neighborhood-based methods Marcos likes Scarface.
CF - Predict ratings
19
Item-Item Similarity
User-User Similarity
Predicted rating of user a
for item i
The average rating of user u
The average rating for item a
The weight between two
users a and u
Rating of user u for item i
Set of users that rated items i and j
Set of items that has been rated by users u and v
wi,j =
P
u2Ui,j
(ru,i ¯ri) · (ru,j ¯rj)
qP
u2Ui,j
(ru,i ¯ri)
2
·
qP
u2Ui,j
(ru,j ¯rj)
2
wu,v =
P
i2Iu,v
(ru,i ¯ru) · (rv,i ¯rv)
qP
i2Iu,v
(ru,i ¯ru)
2
·
qP
i2Iu,v
(rv,i ¯rv)
2
Pa,i = ¯ra +
P
u2U (ru,i ¯ru) · wa,u
P
u2U |wa,u|
Su, Xiaoyuan, and Taghi M. Khoshgoftaar. "A survey of collaborative filtering techniques." Advances in artificial intelligence 2009 (2009): 4.
Hybrid methods
20
• In some application we use benefits of two or more recommendation methods.
• Usually, other methods are combined with collaborative filtering.
• For example, demographic filtering can help collaborative filtering in cold-start situations.
Bel-rrooh! Bel-ddam!
Naftikah Godfather!
There is no rating from some Iraqi costumers:
• Firas
• Harith
• Younes
The Godfather is popular in Iraq, then it is
recommended to them.
Hybrid methods - CF+CBF
21
CF CBF
Recommendation
CBF
CF Recommendation
CBF
CF
Recommendation
CBFCF
Recommendation
Model
(a) (b)
(d)
(c)
Bobadilla, Jesús, et al. "Recommender systems survey." Knowledge-based systems 46 (2013): 109-132.
It combines CF and
CBF with a weighting
method. It may
rank the items from
both and recommend
the top best items
from them.
It uses CBF
methods to extract
features and
send it to CF to
make the final
recommendation.
Hybrid methods - CF+CBF
22
CF CBF
Recommendation
CBF
CF Recommendation
CBF
CF
Recommendation
CBFCF
Recommendation
Model
(a) (b)
(d)
(c)
The collaborative
filter recommends
items to CBF, and CBF
works on them.
A unified model is
depicted that
utilizes CF and CBF
to have their
output for another
classifier, such
as rule based
classier or a
probability model.
Bobadilla, Jesús, et al. "Recommender systems survey." Knowledge-based systems 46 (2013): 109-132.
Evaluation
Prediction accuracy
23
Quality of the list of items
Quality of the set of items
Prediction accuracy
Mean Absolute Error
Root Mean Square Error
O : set of rated items
U : set of users
Ou : set of items rated by user u
pu,i : prediction of the ratings of
user u for item i
ru,i : ratings of user u for item i
#{*} : cardinality of set {*}
24
MAE =
1
#U
X
u2U
1
#Ou
X
i2Ou
|pu,i ru,i|
!
RMSE =
1
#U
X
u2U
s
1
#Ou
X
i2Ou
(pu,i ru,i)
2
Prediction accuracy - Coverage
Coverage for user u: The percentage of situations in which at least one k-neighbor of user u can
rate an item that has not been rated by user u.
Rated
by
user u
At least one of
the user u’s
neighbors rated
these items
Ou Cu
Du
 
25
All rated items = Ou U Du
Total coverage : Average of the coverage for each user
• It could be defined as capacity of prediction.
• The percentage of a dataset that the recommender system can make prediction.
Cu : set of items that have not been rated by user u and at least one of the neighbors rated it
Du : set of items that have not been rated by user u
coverage =
1
#U
X
u2U
1
#Ou
X
i2Ou
✓
100 ⇥
#Cu
#Du
◆
Set quality
For some users, having a set of items recommended is very important.
There should be some methods that evaluate the quality of the set of recommended items.
All possible items
Y=n=number of recommended
items
Precision = X/Y
Z=number of
relevant items
X=number of
relevant items
recommended
Recall=X/Z
26
Set quality
All possible items items
Y=n=number of recommended items
Precision = X/Y
Z=number
of relevant
items
X=number of
relevant items
recommended
Recall=X/Z
Zu
Zc
u
U : set of users
Zu : set of relevant items recommended to user u
Zc
u : set of relevant items not recommended to user u
n : number of recommended items (size of the set of
recommendations)
 
 
27
The percentage of relevant items
among recommended items.
The percentage of recommended
items among relevant items.
Bobadilla, Jesús, et al. "Recommender systems survey." Knowledge-based systems 46 (2013): 109-132.
List quality
• Users lose attention to the following items in the list
drastically.
• In some applications, items on top of the list are very
important.
• Half-life (Hl) is one of the metrics to evaluate the quality
of recommendation list.
 
28
Hl =
1
#U
X
u2U
NX
i=1
max(ru,pi d, 0)
2(i 1)/(↵ 1)
Now, we know about:
• Traditional methods
• How to evaluate recommender
systems
Let us step further and use more
information to improve recommender
systems.
29
Why recommender systems?
Traditional methods
Evaluations
More
inform
ation
Context
• What is context?
• Webster’s:
❑ The interrelated conditions in which something
exists or occurs.
• The concept of context is controversial.
• Interaction:
➡ Time
➡ Location
• Feature:
➡ Type of actors
Reed Hasting, the CEO of Netflix, claimed that they can improve the performance of their recommender
system up to 3% when considering such contextual information.
30
Sunday Monday Tuesday Wednesday Thursday Friday Saturday
Example of context - Time
• Pacheco watched these movies and TV series and liked them:
31
Including Sunday
• What should be recommended to Pacheco
if he wants to watch a movie on Saturday?
Example of context - Features
• Pacheco likes “The Godfather I and II”. • Does Pacheco like “Heat”?
Context-based recommender
systems: Pacheco likes it,
because they have popular
academy award winners in
common.
32
Hierarchical representation Tensor representation
Context in recommender systems
Traditional methods:
Add context to recommender systems:
E-retailer DB
Personal
k1
Work
k2
Other
k2
Gift
k1
Partner
Friend
k2
Partner
k3
Friend
k3
Parent
Other
k2
Parent
k3
Other
k3
If we consider Time as context:
UName Address Age
As
context
IName Type Price Year Month Day
User Item Time
Granular to
coarse
 
 
33
R : User ⇥ Items ! Rating
R : User ⇥ Items ⇥ Context ! Rating
Palmisano, et al. "Using context to improve predictive modeling of customers in personalization applications." IEEE transactions on knowledge and data engineering 20.11
(2008): 1535-1549.
Obtaining contextual information
• Explicitly
▪ The information is gained directly from entities.
▪ the information of location or time can be extracted from the users' device.
• Implicitly
▪ It needs a monitoring system to observe the users and interactions.
▪ The source of information is accessed directly.
• Inferring
▪ RS should infer information from other data that has already been extracted.
▪ The information here is hidden and requires special algorithms to be revealed.
34
Utilizing context – Pre-filtering
How?
1. Use contextual information to filter the relevant data.
2. Feed the 2D (User x Item) to a traditional method.
Data
U x I x C x R
Contextualized Data
U x I x R
2D Recommender
U x I R
Contextual
Recommender
i1,i2,i3 ,...
C
u
It uses context to filter out irrelevant data:
• Exact filtering
❖ Example: Find data about ratings on Saturdays
× Drawback: The filtered information is too narrow.
• Aggregation
❖ Example: Find data about ratings on the weekends
× Drawback: We don’t know how much aggregation we
need.
35
Gediminas Adomavicius and Alexander Tuzhilin,. Context-aware recommender systems. In Recommender systems handbook, p. 191-226. Springer, 2015.
Data
U x I x C x R
2D Recommender
U x I R
Contextual
Recommender
i1,i2,i3 ,...
C
u
Recommendations
i1,i2,i3 ,...
Utilizing context – Post-filtering
How?
1. Find the recommendation based on items and users.
2. Adjust the final list of recommendations based on
context.
• Filter our the items that do not satisfies the context.
• Reorder or rank the list with respect to the degree
they match the context.
36
Gediminas Adomavicius and Alexander Tuzhilin,. Context-aware recommender systems. In Recommender systems handbook, p. 191-226. Springer, 2015.
Utilizing context – Modelling
How?
• This method uses the 3D data.
• We can use a similarity function to predict the unknown
ratings.
ru,I,k : rating of user u for item i regarding context c
k : normalization factor
Data
U x I x C x R
MD Recommender
U x I x C R
C
u
Contextual
Recommender
i1,i2,i3 ,...
W : weight of participating in predicting the unknown
rating
37
ru,i,c = k
X
(u0,i0,c0)6=(u,i,c)
W ((u0
, i0
, c0
), (u, i, c)) ⇥ ru0,i0,c0
W ((u0
, i0
, c0
), (u, i, c)) /
1
distance ((u0, i0, c0), (u, i, c))
Gediminas Adomavicius and Alexander Tuzhilin,. Context-aware recommender systems. In Recommender systems handbook, p.
191-226. Springer, 2015.
How about Josemar on Twitter?
38
Pacheco
Marcos
Diego
Firas
Josemar follows Diego, Marcos, Pacheco and Firas on Twitter, and Diego follows him.
There is no information about Josemar’s ratings or preferences.
Josemar
Why?
Social
networks
are popular.
It is a
powerful
source of
information.
Friend have
similar
taste.
Items are
available
through
social
networks.
User
profiling is
improved by
social
information.
Social-based recommender systems
39
Content in social media
Content can be recommended.
Content can be used to improve recommendation.
• Content in social media:
40
o Blog
o Multimedia
o Question & Answer
o News
o Job
o Microblog
Ido Guy, Social recommender systems. In Recommender systems handbook, p. 511-543. Springer, 2015.
Example - Movie recommendation
• Carrer-Neto et al. use the information extracted from the
profile of users
• Social aperture
• Moderate
✓ Use (25% friends’ ratings + 75% user ratings)
• Liberal
✓ Use (50% friends’ ratings + 50% user ratings)
• Conservative
✓ Use (user ratings)
41
Carrer-Neto, Walter, et al. "Social knowledge-based recommender system. Application to the movies domain." Expert Systems with applications 39.12 (2012): 10990-11000.
Example – People recommendation
WTF
Who To Follow algorithm:
1. Find the circle of trust (CoT).
2. Create a bipartite graph of
individuals from the CoT.
3. Run Twitter's Money algorithm
to find the relevant people.
4. Recommend top relevant
people.
42
Geil, Afton et al., "WTF, GPU! computing twitter's who-to-follow on the GPU." Proceedings of the second ACM conference on Online social networks. ACM, 2014.
Immediate friend inference
Item i has set of attributes
User u has set of attributes
User u has some neighbors
What is the rating of user u for item i given set
of attributes of item i and set of attributes of
user u and neighbors of the user u
b1 b2 … bn
a1 a2 … am
Item acceptance
Probability of rating
k for item i given set
of user attributes ai
User preference
Probability of rating k of
user u given set of item
attributes bi
user u
Nu
Neighbor preference
Probability of rating k
of user u given
neighbors Nu
Naive Bayesian assumption
43
44
Preference of neighbors of user u
Neighbors of user u
Item acceptance
Set of users that rated for item iProbability of rating k of user u for item i (Ru,i), given the set of
attributes au of user, set of attributes bi of item and the rating of
the neighbors.
User preference : probability of a rating k
of user u given set of item attributes bi
Immediate friend inference
P (Ru,i = k|B = bi, A = au, {Rv,i = rv,i : 8v 2 Ui  Nu})
=
1
Z
P (Ru,i = k|B = bi) ⇥ P (Ru,i = k|A = au)
⇥P (Ru,i = k|{Rv,i = rv,i : 8v 2 Ui  Nu})
Jianming He and Wesley W. Chu, A social network-based recommender systems. In Data Mining for Social Network Data handbook, p. 47-74. Springer, 2010.
Example
45
Item acceptance
What is the movie’s rating if
somebody like user u watches
it?
User preference
What is my rating if Al Pacino
plays in a movie?
Neighbor preference
What is my friends’ rating if
Al Pacino plays in a movie?
Immediate friend inference
P (Ri = k|A = ai) =
P(Ri = k) ⇥
Qj=m
j=1 P(Aj|Ri = k)
P(A1, A2, . . . , An)
, Aj 2 {A1, A2, . . . , Am}
P (Ru = k|B = bi) =
P(Ru = k) ⇥
Qj=n
j=1 P(Bj|Ru = k)
P(B1, B2, . . . , Bn)
, Bj 2 {B1, B2, . . . , Bn}User Preference
Item Acceptance
P(Ru,i = k|Rv,i = rv,i) / H(k rv,i)Neighbor influence
Histogram of the difference
between user’s rating and the
neighbors’ rating
46
Summary
Why social?
Content in social
media
People
recommendation
Immediate friend
inference
Social-based
What is context?
Obtaining context
Utilizing context
Pre-filtering
Post-filtering
Modelling
Context-based
Accuracy
Set quality
List Quality
Evaluation
Demographic
filtering
Content based
filtering
Collaborative
filtering
Hybrid methods
Traditional methods
Recommender systems

Más contenido relacionado

La actualidad más candente

Recommender systems
Recommender systemsRecommender systems
Recommender systemsTamer Rezk
 
Recommender system algorithm and architecture
Recommender system algorithm and architectureRecommender system algorithm and architecture
Recommender system algorithm and architectureLiang Xiang
 
An introduction to Recommender Systems
An introduction to Recommender SystemsAn introduction to Recommender Systems
An introduction to Recommender SystemsDavid Zibriczky
 
Movie Recommendation System - MovieLens Dataset
Movie Recommendation System - MovieLens DatasetMovie Recommendation System - MovieLens Dataset
Movie Recommendation System - MovieLens DatasetJagruti Joshi
 
Recommendation system
Recommendation systemRecommendation system
Recommendation systemAkshat Thakar
 
Recommender Systems
Recommender SystemsRecommender Systems
Recommender SystemsT212
 
Recent advances in deep recommender systems
Recent advances in deep recommender systemsRecent advances in deep recommender systems
Recent advances in deep recommender systemsNAVER Engineering
 
Tutorial on sequence aware recommender systems - UMAP 2018
Tutorial on sequence aware recommender systems - UMAP 2018Tutorial on sequence aware recommender systems - UMAP 2018
Tutorial on sequence aware recommender systems - UMAP 2018Paolo Cremonesi
 
Recommendation Systems
Recommendation SystemsRecommendation Systems
Recommendation SystemsRobin Reni
 
Recsys 2016 tutorial: Lessons learned from building real-life recommender sys...
Recsys 2016 tutorial: Lessons learned from building real-life recommender sys...Recsys 2016 tutorial: Lessons learned from building real-life recommender sys...
Recsys 2016 tutorial: Lessons learned from building real-life recommender sys...Xavier Amatriain
 
GRU4Rec v2 - Recurrent Neural Networks with Top-k Gains for Session-based Rec...
GRU4Rec v2 - Recurrent Neural Networks with Top-k Gains for Session-based Rec...GRU4Rec v2 - Recurrent Neural Networks with Top-k Gains for Session-based Rec...
GRU4Rec v2 - Recurrent Neural Networks with Top-k Gains for Session-based Rec...Balázs Hidasi
 
Collaborative Filtering using KNN
Collaborative Filtering using KNNCollaborative Filtering using KNN
Collaborative Filtering using KNNŞeyda Hatipoğlu
 
Recommender Systems
Recommender SystemsRecommender Systems
Recommender SystemsLior Rokach
 
Music Personalization : Real time Platforms.
Music Personalization : Real time Platforms.Music Personalization : Real time Platforms.
Music Personalization : Real time Platforms.Esh Vckay
 
Movie Recommendation engine
Movie Recommendation engineMovie Recommendation engine
Movie Recommendation engineJayesh Lahori
 
Recommender systems using collaborative filtering
Recommender systems using collaborative filteringRecommender systems using collaborative filtering
Recommender systems using collaborative filteringD Yogendra Rao
 

La actualidad más candente (20)

Recommender system
Recommender systemRecommender system
Recommender system
 
Recommender systems
Recommender systemsRecommender systems
Recommender systems
 
Recommender system algorithm and architecture
Recommender system algorithm and architectureRecommender system algorithm and architecture
Recommender system algorithm and architecture
 
An introduction to Recommender Systems
An introduction to Recommender SystemsAn introduction to Recommender Systems
An introduction to Recommender Systems
 
Movie Recommendation System - MovieLens Dataset
Movie Recommendation System - MovieLens DatasetMovie Recommendation System - MovieLens Dataset
Movie Recommendation System - MovieLens Dataset
 
Recommendation system
Recommendation systemRecommendation system
Recommendation system
 
Recommender Systems
Recommender SystemsRecommender Systems
Recommender Systems
 
Recent advances in deep recommender systems
Recent advances in deep recommender systemsRecent advances in deep recommender systems
Recent advances in deep recommender systems
 
Tutorial on sequence aware recommender systems - UMAP 2018
Tutorial on sequence aware recommender systems - UMAP 2018Tutorial on sequence aware recommender systems - UMAP 2018
Tutorial on sequence aware recommender systems - UMAP 2018
 
Recommender systems
Recommender systemsRecommender systems
Recommender systems
 
Recommendation Systems
Recommendation SystemsRecommendation Systems
Recommendation Systems
 
Recsys 2016 tutorial: Lessons learned from building real-life recommender sys...
Recsys 2016 tutorial: Lessons learned from building real-life recommender sys...Recsys 2016 tutorial: Lessons learned from building real-life recommender sys...
Recsys 2016 tutorial: Lessons learned from building real-life recommender sys...
 
GRU4Rec v2 - Recurrent Neural Networks with Top-k Gains for Session-based Rec...
GRU4Rec v2 - Recurrent Neural Networks with Top-k Gains for Session-based Rec...GRU4Rec v2 - Recurrent Neural Networks with Top-k Gains for Session-based Rec...
GRU4Rec v2 - Recurrent Neural Networks with Top-k Gains for Session-based Rec...
 
Collaborative Filtering using KNN
Collaborative Filtering using KNNCollaborative Filtering using KNN
Collaborative Filtering using KNN
 
Recommender Systems
Recommender SystemsRecommender Systems
Recommender Systems
 
Collaborative filtering
Collaborative filteringCollaborative filtering
Collaborative filtering
 
Recommendation system
Recommendation systemRecommendation system
Recommendation system
 
Music Personalization : Real time Platforms.
Music Personalization : Real time Platforms.Music Personalization : Real time Platforms.
Music Personalization : Real time Platforms.
 
Movie Recommendation engine
Movie Recommendation engineMovie Recommendation engine
Movie Recommendation engine
 
Recommender systems using collaborative filtering
Recommender systems using collaborative filteringRecommender systems using collaborative filtering
Recommender systems using collaborative filtering
 

Similar a Recommender systems

Tutorial: Context-awareness In Information Retrieval and Recommender Systems
Tutorial: Context-awareness In Information Retrieval and Recommender SystemsTutorial: Context-awareness In Information Retrieval and Recommender Systems
Tutorial: Context-awareness In Information Retrieval and Recommender SystemsYONG ZHENG
 
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
 
Information retrieval systems irt ppt do
Information retrieval systems irt ppt doInformation retrieval systems irt ppt do
Information retrieval systems irt ppt doPonnuthuraiSelvaraj1
 
Recommender Systems Fairness Evaluation via Generalized Cross Entropy
Recommender Systems Fairness Evaluation via Generalized Cross EntropyRecommender Systems Fairness Evaluation via Generalized Cross Entropy
Recommender Systems Fairness Evaluation via Generalized Cross EntropyVito Walter Anelli
 
2 Studies UX types should know about (Straub UXPA unconference13)
2 Studies UX types should know about (Straub UXPA unconference13)2 Studies UX types should know about (Straub UXPA unconference13)
2 Studies UX types should know about (Straub UXPA unconference13)Kath Straub
 
KnowMe and ShareMe: understanding automatically discovered personality traits...
KnowMe and ShareMe: understanding automatically discovered personality traits...KnowMe and ShareMe: understanding automatically discovered personality traits...
KnowMe and ShareMe: understanding automatically discovered personality traits...Leon Gou
 
Demography basedhybridrecommendersystemformovierecommendation
Demography basedhybridrecommendersystemformovierecommendationDemography basedhybridrecommendersystemformovierecommendation
Demography basedhybridrecommendersystemformovierecommendationUmmeSalmaM1
 
Ws1 introduction talk
Ws1 introduction talkWs1 introduction talk
Ws1 introduction talkRuthBeresford
 
Statistical Analysis of Results in Music Information Retrieval: Why and How
Statistical Analysis of Results in Music Information Retrieval: Why and HowStatistical Analysis of Results in Music Information Retrieval: Why and How
Statistical Analysis of Results in Music Information Retrieval: Why and HowJulián Urbano
 
Measuring the usefulness of Knowledge Organization Systems in Information Ret...
Measuring the usefulness of Knowledge Organization Systems in Information Ret...Measuring the usefulness of Knowledge Organization Systems in Information Ret...
Measuring the usefulness of Knowledge Organization Systems in Information Ret...GESIS
 
Human-centered AI: how can we support lay users to understand AI?
Human-centered AI: how can we support lay users to understand AI?Human-centered AI: how can we support lay users to understand AI?
Human-centered AI: how can we support lay users to understand AI?Katrien Verbert
 
Social Recommender Systems Tutorial - WWW 2011
Social Recommender Systems Tutorial - WWW 2011Social Recommender Systems Tutorial - WWW 2011
Social Recommender Systems Tutorial - WWW 2011idoguy
 
Measure for Measure: The role of metrics in assessing research performance - ...
Measure for Measure: The role of metrics in assessing research performance - ...Measure for Measure: The role of metrics in assessing research performance - ...
Measure for Measure: The role of metrics in assessing research performance - ...Michael Habib
 
A Cognitive-Based Semantic Approach to Deep Content Analysis in Search Engines
A Cognitive-Based Semantic Approach to Deep Content Analysis in Search EnginesA Cognitive-Based Semantic Approach to Deep Content Analysis in Search Engines
A Cognitive-Based Semantic Approach to Deep Content Analysis in Search EnginesMei Chen, PhD
 
Supporting Exploratory People Search: A Study of Factor Transparency and User...
Supporting Exploratory People Search: A Study of Factor Transparency and User...Supporting Exploratory People Search: A Study of Factor Transparency and User...
Supporting Exploratory People Search: A Study of Factor Transparency and User...Shuguang Han
 
Agents vs Users: Visual Recommendation of Research Talks with Multiple Dimens...
Agents vs Users: Visual Recommendation of Research Talks with Multiple Dimens...Agents vs Users: Visual Recommendation of Research Talks with Multiple Dimens...
Agents vs Users: Visual Recommendation of Research Talks with Multiple Dimens...Katrien Verbert
 

Similar a Recommender systems (20)

master_thesis.pdf
master_thesis.pdfmaster_thesis.pdf
master_thesis.pdf
 
Tutorial: Context-awareness In Information Retrieval and Recommender Systems
Tutorial: Context-awareness In Information Retrieval and Recommender SystemsTutorial: Context-awareness In Information Retrieval and Recommender Systems
Tutorial: Context-awareness In Information Retrieval and Recommender Systems
 
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)
 
Information retrieval systems irt ppt do
Information retrieval systems irt ppt doInformation retrieval systems irt ppt do
Information retrieval systems irt ppt do
 
Recommender Systems Fairness Evaluation via Generalized Cross Entropy
Recommender Systems Fairness Evaluation via Generalized Cross EntropyRecommender Systems Fairness Evaluation via Generalized Cross Entropy
Recommender Systems Fairness Evaluation via Generalized Cross Entropy
 
2 Studies UX types should know about (Straub UXPA unconference13)
2 Studies UX types should know about (Straub UXPA unconference13)2 Studies UX types should know about (Straub UXPA unconference13)
2 Studies UX types should know about (Straub UXPA unconference13)
 
KnowMe and ShareMe: understanding automatically discovered personality traits...
KnowMe and ShareMe: understanding automatically discovered personality traits...KnowMe and ShareMe: understanding automatically discovered personality traits...
KnowMe and ShareMe: understanding automatically discovered personality traits...
 
Search quality in practice
Search quality in practiceSearch quality in practice
Search quality in practice
 
Demography basedhybridrecommendersystemformovierecommendation
Demography basedhybridrecommendersystemformovierecommendationDemography basedhybridrecommendersystemformovierecommendation
Demography basedhybridrecommendersystemformovierecommendation
 
HealthRecSys: Phd Dissertation.
HealthRecSys: Phd Dissertation.HealthRecSys: Phd Dissertation.
HealthRecSys: Phd Dissertation.
 
Ws1 introduction talk
Ws1 introduction talkWs1 introduction talk
Ws1 introduction talk
 
Statistical Analysis of Results in Music Information Retrieval: Why and How
Statistical Analysis of Results in Music Information Retrieval: Why and HowStatistical Analysis of Results in Music Information Retrieval: Why and How
Statistical Analysis of Results in Music Information Retrieval: Why and How
 
Measuring the usefulness of Knowledge Organization Systems in Information Ret...
Measuring the usefulness of Knowledge Organization Systems in Information Ret...Measuring the usefulness of Knowledge Organization Systems in Information Ret...
Measuring the usefulness of Knowledge Organization Systems in Information Ret...
 
Human-centered AI: how can we support lay users to understand AI?
Human-centered AI: how can we support lay users to understand AI?Human-centered AI: how can we support lay users to understand AI?
Human-centered AI: how can we support lay users to understand AI?
 
Social Recommender Systems Tutorial - WWW 2011
Social Recommender Systems Tutorial - WWW 2011Social Recommender Systems Tutorial - WWW 2011
Social Recommender Systems Tutorial - WWW 2011
 
Measure for Measure: The role of metrics in assessing research performance - ...
Measure for Measure: The role of metrics in assessing research performance - ...Measure for Measure: The role of metrics in assessing research performance - ...
Measure for Measure: The role of metrics in assessing research performance - ...
 
A Cognitive-Based Semantic Approach to Deep Content Analysis in Search Engines
A Cognitive-Based Semantic Approach to Deep Content Analysis in Search EnginesA Cognitive-Based Semantic Approach to Deep Content Analysis in Search Engines
A Cognitive-Based Semantic Approach to Deep Content Analysis in Search Engines
 
Supporting Exploratory People Search: A Study of Factor Transparency and User...
Supporting Exploratory People Search: A Study of Factor Transparency and User...Supporting Exploratory People Search: A Study of Factor Transparency and User...
Supporting Exploratory People Search: A Study of Factor Transparency and User...
 
Agents vs Users: Visual Recommendation of Research Talks with Multiple Dimens...
Agents vs Users: Visual Recommendation of Research Talks with Multiple Dimens...Agents vs Users: Visual Recommendation of Research Talks with Multiple Dimens...
Agents vs Users: Visual Recommendation of Research Talks with Multiple Dimens...
 
PhD defense
PhD defense PhD defense
PhD defense
 

Último

Real-Time AI Streaming - AI Max Princeton
Real-Time AI  Streaming - AI Max PrincetonReal-Time AI  Streaming - AI Max Princeton
Real-Time AI Streaming - AI Max PrincetonTimothy Spann
 
Bank Loan Approval Analysis: A Comprehensive Data Analysis Project
Bank Loan Approval Analysis: A Comprehensive Data Analysis ProjectBank Loan Approval Analysis: A Comprehensive Data Analysis Project
Bank Loan Approval Analysis: A Comprehensive Data Analysis ProjectBoston Institute of Analytics
 
FAIR, FAIRsharing, FAIR Cookbook and ELIXIR - Sansone SA - Boston 2024
FAIR, FAIRsharing, FAIR Cookbook and ELIXIR - Sansone SA - Boston 2024FAIR, FAIRsharing, FAIR Cookbook and ELIXIR - Sansone SA - Boston 2024
FAIR, FAIRsharing, FAIR Cookbook and ELIXIR - Sansone SA - Boston 2024Susanna-Assunta Sansone
 
Data Factory in Microsoft Fabric (MsBIP #82)
Data Factory in Microsoft Fabric (MsBIP #82)Data Factory in Microsoft Fabric (MsBIP #82)
Data Factory in Microsoft Fabric (MsBIP #82)Cathrine Wilhelmsen
 
modul pembelajaran robotic Workshop _ by Slidesgo.pptx
modul pembelajaran robotic Workshop _ by Slidesgo.pptxmodul pembelajaran robotic Workshop _ by Slidesgo.pptx
modul pembelajaran robotic Workshop _ by Slidesgo.pptxaleedritatuxx
 
Principles and Practices of Data Visualization
Principles and Practices of Data VisualizationPrinciples and Practices of Data Visualization
Principles and Practices of Data VisualizationKianJazayeri1
 
Conf42-LLM_Adding Generative AI to Real-Time Streaming Pipelines
Conf42-LLM_Adding Generative AI to Real-Time Streaming PipelinesConf42-LLM_Adding Generative AI to Real-Time Streaming Pipelines
Conf42-LLM_Adding Generative AI to Real-Time Streaming PipelinesTimothy Spann
 
Student Profile Sample report on improving academic performance by uniting gr...
Student Profile Sample report on improving academic performance by uniting gr...Student Profile Sample report on improving academic performance by uniting gr...
Student Profile Sample report on improving academic performance by uniting gr...Seán Kennedy
 
Defining Constituents, Data Vizzes and Telling a Data Story
Defining Constituents, Data Vizzes and Telling a Data StoryDefining Constituents, Data Vizzes and Telling a Data Story
Defining Constituents, Data Vizzes and Telling a Data StoryJeremy Anderson
 
Unveiling the Role of Social Media Suspect Investigators in Preventing Online...
Unveiling the Role of Social Media Suspect Investigators in Preventing Online...Unveiling the Role of Social Media Suspect Investigators in Preventing Online...
Unveiling the Role of Social Media Suspect Investigators in Preventing Online...Milind Agarwal
 
Advanced Machine Learning for Business Professionals
Advanced Machine Learning for Business ProfessionalsAdvanced Machine Learning for Business Professionals
Advanced Machine Learning for Business ProfessionalsVICTOR MAESTRE RAMIREZ
 
Digital Marketing Plan, how digital marketing works
Digital Marketing Plan, how digital marketing worksDigital Marketing Plan, how digital marketing works
Digital Marketing Plan, how digital marketing worksdeepakthakur548787
 
6 Tips for Interpretable Topic Models _ by Nicha Ruchirawat _ Towards Data Sc...
6 Tips for Interpretable Topic Models _ by Nicha Ruchirawat _ Towards Data Sc...6 Tips for Interpretable Topic Models _ by Nicha Ruchirawat _ Towards Data Sc...
6 Tips for Interpretable Topic Models _ by Nicha Ruchirawat _ Towards Data Sc...Dr Arash Najmaei ( Phd., MBA, BSc)
 
INTRODUCTION TO Natural language processing
INTRODUCTION TO Natural language processingINTRODUCTION TO Natural language processing
INTRODUCTION TO Natural language processingsocarem879
 
What To Do For World Nature Conservation Day by Slidesgo.pptx
What To Do For World Nature Conservation Day by Slidesgo.pptxWhat To Do For World Nature Conservation Day by Slidesgo.pptx
What To Do For World Nature Conservation Day by Slidesgo.pptxSimranPal17
 
SMOTE and K-Fold Cross Validation-Presentation.pptx
SMOTE and K-Fold Cross Validation-Presentation.pptxSMOTE and K-Fold Cross Validation-Presentation.pptx
SMOTE and K-Fold Cross Validation-Presentation.pptxHaritikaChhatwal1
 
English-8-Q4-W3-Synthesizing-Essential-Information-From-Various-Sources-1.pdf
English-8-Q4-W3-Synthesizing-Essential-Information-From-Various-Sources-1.pdfEnglish-8-Q4-W3-Synthesizing-Essential-Information-From-Various-Sources-1.pdf
English-8-Q4-W3-Synthesizing-Essential-Information-From-Various-Sources-1.pdfblazblazml
 
Data Analysis Project : Targeting the Right Customers, Presentation on Bank M...
Data Analysis Project : Targeting the Right Customers, Presentation on Bank M...Data Analysis Project : Targeting the Right Customers, Presentation on Bank M...
Data Analysis Project : Targeting the Right Customers, Presentation on Bank M...Boston Institute of Analytics
 
Cyber awareness ppt on the recorded data
Cyber awareness ppt on the recorded dataCyber awareness ppt on the recorded data
Cyber awareness ppt on the recorded dataTecnoIncentive
 

Último (20)

Real-Time AI Streaming - AI Max Princeton
Real-Time AI  Streaming - AI Max PrincetonReal-Time AI  Streaming - AI Max Princeton
Real-Time AI Streaming - AI Max Princeton
 
Bank Loan Approval Analysis: A Comprehensive Data Analysis Project
Bank Loan Approval Analysis: A Comprehensive Data Analysis ProjectBank Loan Approval Analysis: A Comprehensive Data Analysis Project
Bank Loan Approval Analysis: A Comprehensive Data Analysis Project
 
FAIR, FAIRsharing, FAIR Cookbook and ELIXIR - Sansone SA - Boston 2024
FAIR, FAIRsharing, FAIR Cookbook and ELIXIR - Sansone SA - Boston 2024FAIR, FAIRsharing, FAIR Cookbook and ELIXIR - Sansone SA - Boston 2024
FAIR, FAIRsharing, FAIR Cookbook and ELIXIR - Sansone SA - Boston 2024
 
Insurance Churn Prediction Data Analysis Project
Insurance Churn Prediction Data Analysis ProjectInsurance Churn Prediction Data Analysis Project
Insurance Churn Prediction Data Analysis Project
 
Data Factory in Microsoft Fabric (MsBIP #82)
Data Factory in Microsoft Fabric (MsBIP #82)Data Factory in Microsoft Fabric (MsBIP #82)
Data Factory in Microsoft Fabric (MsBIP #82)
 
modul pembelajaran robotic Workshop _ by Slidesgo.pptx
modul pembelajaran robotic Workshop _ by Slidesgo.pptxmodul pembelajaran robotic Workshop _ by Slidesgo.pptx
modul pembelajaran robotic Workshop _ by Slidesgo.pptx
 
Principles and Practices of Data Visualization
Principles and Practices of Data VisualizationPrinciples and Practices of Data Visualization
Principles and Practices of Data Visualization
 
Conf42-LLM_Adding Generative AI to Real-Time Streaming Pipelines
Conf42-LLM_Adding Generative AI to Real-Time Streaming PipelinesConf42-LLM_Adding Generative AI to Real-Time Streaming Pipelines
Conf42-LLM_Adding Generative AI to Real-Time Streaming Pipelines
 
Student Profile Sample report on improving academic performance by uniting gr...
Student Profile Sample report on improving academic performance by uniting gr...Student Profile Sample report on improving academic performance by uniting gr...
Student Profile Sample report on improving academic performance by uniting gr...
 
Defining Constituents, Data Vizzes and Telling a Data Story
Defining Constituents, Data Vizzes and Telling a Data StoryDefining Constituents, Data Vizzes and Telling a Data Story
Defining Constituents, Data Vizzes and Telling a Data Story
 
Unveiling the Role of Social Media Suspect Investigators in Preventing Online...
Unveiling the Role of Social Media Suspect Investigators in Preventing Online...Unveiling the Role of Social Media Suspect Investigators in Preventing Online...
Unveiling the Role of Social Media Suspect Investigators in Preventing Online...
 
Advanced Machine Learning for Business Professionals
Advanced Machine Learning for Business ProfessionalsAdvanced Machine Learning for Business Professionals
Advanced Machine Learning for Business Professionals
 
Digital Marketing Plan, how digital marketing works
Digital Marketing Plan, how digital marketing worksDigital Marketing Plan, how digital marketing works
Digital Marketing Plan, how digital marketing works
 
6 Tips for Interpretable Topic Models _ by Nicha Ruchirawat _ Towards Data Sc...
6 Tips for Interpretable Topic Models _ by Nicha Ruchirawat _ Towards Data Sc...6 Tips for Interpretable Topic Models _ by Nicha Ruchirawat _ Towards Data Sc...
6 Tips for Interpretable Topic Models _ by Nicha Ruchirawat _ Towards Data Sc...
 
INTRODUCTION TO Natural language processing
INTRODUCTION TO Natural language processingINTRODUCTION TO Natural language processing
INTRODUCTION TO Natural language processing
 
What To Do For World Nature Conservation Day by Slidesgo.pptx
What To Do For World Nature Conservation Day by Slidesgo.pptxWhat To Do For World Nature Conservation Day by Slidesgo.pptx
What To Do For World Nature Conservation Day by Slidesgo.pptx
 
SMOTE and K-Fold Cross Validation-Presentation.pptx
SMOTE and K-Fold Cross Validation-Presentation.pptxSMOTE and K-Fold Cross Validation-Presentation.pptx
SMOTE and K-Fold Cross Validation-Presentation.pptx
 
English-8-Q4-W3-Synthesizing-Essential-Information-From-Various-Sources-1.pdf
English-8-Q4-W3-Synthesizing-Essential-Information-From-Various-Sources-1.pdfEnglish-8-Q4-W3-Synthesizing-Essential-Information-From-Various-Sources-1.pdf
English-8-Q4-W3-Synthesizing-Essential-Information-From-Various-Sources-1.pdf
 
Data Analysis Project : Targeting the Right Customers, Presentation on Bank M...
Data Analysis Project : Targeting the Right Customers, Presentation on Bank M...Data Analysis Project : Targeting the Right Customers, Presentation on Bank M...
Data Analysis Project : Targeting the Right Customers, Presentation on Bank M...
 
Cyber awareness ppt on the recorded data
Cyber awareness ppt on the recorded dataCyber awareness ppt on the recorded data
Cyber awareness ppt on the recorded data
 

Recommender systems

  • 1. A survey on Recommender Systems Mahdi Seyednezhad BioComplex Laboratory School of Computing Florida Institute of Technology May, 2017 seyednezhad@gmail.com https://seyednejad.wixsite.com/home
  • 2. Outline Introduction Methods Evaluation Context Social media 2 At the end … At the end … At the end … At the end … At the end … Why we need recommender systems? How do traditional methods work? How to evaluate recommender systems? How to use context in recommender systems? What is social information? How to use social information?
  • 3. Why recommender systems? • Ancient human relied on advice from experts. • We are not expert in everything! • We need an expert for advice. • Computers change the global market. Egypt agriculture © http://www.crystalinks.com/egyptagriculture.html 3
  • 4. Growth in the number of Internet Users 4 Percentage that do not use the Internet Mobile network coverage and evolving technologies ©ICT facts and figures
  • 6. Many online companies 6 Recommending various items Recommending specific items
  • 7. What is a recommender system (RS)? 7 Items Users Recommender System Users Profile Features Ratings RSs recommend items to users based on users’ preferences
  • 8. Recommender system challenges Data acquisition • Explicitly • Implicitly 8 Cold start • New community • New user • New item Data sparsity • 99% of the user-item matrix elements have no value. • Number of users is much larger than the number of items.
  • 9. Traditional recommender systems A recommender system needs to filter the information to extract the relevant items. 9 Demographic Filtering Content-based Filtering (CBF) Collaborative Filtering (CF)
  • 10. Demographic filtering • It recommends items based on the demographic profile of users. • People from the same group tend to have the same taste. 10 User Gender Country Age The Godfather Diego M Brazil 27 + Josemar M Brazil 20 + Pacheco M Brazil 45 + Hugo M Brazil 36 - Firas M Iraq 51 - Priya F India ? - Marcos M Brazil 27 ?
  • 11. Demographic filtering - Example • Diego, Josemar and Pacheco liked “The Godfather”. • How about Marcos? 11 User Gen. Nationality Age The Godfather Diego M Brazil 28 + Josemar M Brazil 20 + Pacheco M Brazil 45 + Hugo M Brazil 36 - Marcello M Italy 30 Firas M Iraq 51 - Priya F India ? - Marcos M Brazil 30 ? Probably +
  • 12. Content-based Filtering (CBF) 12 • CBF method recommends items based on their description. • It consists of three major parts: Content Analyzer • Pre-processing • Text to feature vector Profile Learner • Find average content of items • Make prototype text vector Filter Components • Find similar documents • Filter out dissimilar de Gemmis, Marco, et al. "Semantics-aware content-based recommender systems." Recommender Systems Handbook. Springer US, 2015. 119-159.
  • 13. CBF- Example • Diego likes “The Godfather”. 13 • Does Diego like “Goodfellas”? ? RS does not knows:RS knows: Make him an offer he can't refuse!
  • 14. CBF- Example 14 Description Genre Subject Crime Drama Mafia Genre Subject Crime Thriller Drama Mafia Description Similar Diego likes “Goodfellas”.
  • 15. CBF – Keyword-based 15 Weight of term tk in document dj Content Analyzer TF-IDF: terms that are frequently found in one text (TF), but rarely in other documents (IDF) Calculate similarity of documents. Filter out dissimilar documents. IDF(tk) = log N nk sim(di, dj) = P k wk,i · wk,j pP k wk,i 2 · pP k wk,j 2 Salton, G.: Automatic Text Processing. Addison-Wesley (1989) TF: Term Frequency IDF: Inverse Document Frequency TF(tk, dj) = fk,j max{fz,j}
  • 16. Collaborative Filtering (CB) 16 User-Item rating matrix The Godfather Goodfellas Scarface Heat … Casino Diego 5 5 2 5 … 3 Priya 4 ? ? 2 … 4 Harith 5 2 2 2 … ? : : … … … … … … Josemar 4 5 4 2 … 3 Pacheco 5 5 2 ? … 2 Items users User-item matrix in reality
  • 17. CF - Example 17 Diego likes “Scarface.” How about Marcos? Diego likes “The Godfather.” Marcos likes “The Godfather” as well.
  • 18. CF - Find similar items based on ratings! 18 Item-Item Similarity R: User x Item User-User Similarity Neighborhood-based methods Marcos likes Scarface.
  • 19. CF - Predict ratings 19 Item-Item Similarity User-User Similarity Predicted rating of user a for item i The average rating of user u The average rating for item a The weight between two users a and u Rating of user u for item i Set of users that rated items i and j Set of items that has been rated by users u and v wi,j = P u2Ui,j (ru,i ¯ri) · (ru,j ¯rj) qP u2Ui,j (ru,i ¯ri) 2 · qP u2Ui,j (ru,j ¯rj) 2 wu,v = P i2Iu,v (ru,i ¯ru) · (rv,i ¯rv) qP i2Iu,v (ru,i ¯ru) 2 · qP i2Iu,v (rv,i ¯rv) 2 Pa,i = ¯ra + P u2U (ru,i ¯ru) · wa,u P u2U |wa,u| Su, Xiaoyuan, and Taghi M. Khoshgoftaar. "A survey of collaborative filtering techniques." Advances in artificial intelligence 2009 (2009): 4.
  • 20. Hybrid methods 20 • In some application we use benefits of two or more recommendation methods. • Usually, other methods are combined with collaborative filtering. • For example, demographic filtering can help collaborative filtering in cold-start situations. Bel-rrooh! Bel-ddam! Naftikah Godfather! There is no rating from some Iraqi costumers: • Firas • Harith • Younes The Godfather is popular in Iraq, then it is recommended to them.
  • 21. Hybrid methods - CF+CBF 21 CF CBF Recommendation CBF CF Recommendation CBF CF Recommendation CBFCF Recommendation Model (a) (b) (d) (c) Bobadilla, Jesús, et al. "Recommender systems survey." Knowledge-based systems 46 (2013): 109-132. It combines CF and CBF with a weighting method. It may rank the items from both and recommend the top best items from them. It uses CBF methods to extract features and send it to CF to make the final recommendation.
  • 22. Hybrid methods - CF+CBF 22 CF CBF Recommendation CBF CF Recommendation CBF CF Recommendation CBFCF Recommendation Model (a) (b) (d) (c) The collaborative filter recommends items to CBF, and CBF works on them. A unified model is depicted that utilizes CF and CBF to have their output for another classifier, such as rule based classier or a probability model. Bobadilla, Jesús, et al. "Recommender systems survey." Knowledge-based systems 46 (2013): 109-132.
  • 23. Evaluation Prediction accuracy 23 Quality of the list of items Quality of the set of items
  • 24. Prediction accuracy Mean Absolute Error Root Mean Square Error O : set of rated items U : set of users Ou : set of items rated by user u pu,i : prediction of the ratings of user u for item i ru,i : ratings of user u for item i #{*} : cardinality of set {*} 24 MAE = 1 #U X u2U 1 #Ou X i2Ou |pu,i ru,i| ! RMSE = 1 #U X u2U s 1 #Ou X i2Ou (pu,i ru,i) 2
  • 25. Prediction accuracy - Coverage Coverage for user u: The percentage of situations in which at least one k-neighbor of user u can rate an item that has not been rated by user u. Rated by user u At least one of the user u’s neighbors rated these items Ou Cu Du   25 All rated items = Ou U Du Total coverage : Average of the coverage for each user • It could be defined as capacity of prediction. • The percentage of a dataset that the recommender system can make prediction. Cu : set of items that have not been rated by user u and at least one of the neighbors rated it Du : set of items that have not been rated by user u coverage = 1 #U X u2U 1 #Ou X i2Ou ✓ 100 ⇥ #Cu #Du ◆
  • 26. Set quality For some users, having a set of items recommended is very important. There should be some methods that evaluate the quality of the set of recommended items. All possible items Y=n=number of recommended items Precision = X/Y Z=number of relevant items X=number of relevant items recommended Recall=X/Z 26
  • 27. Set quality All possible items items Y=n=number of recommended items Precision = X/Y Z=number of relevant items X=number of relevant items recommended Recall=X/Z Zu Zc u U : set of users Zu : set of relevant items recommended to user u Zc u : set of relevant items not recommended to user u n : number of recommended items (size of the set of recommendations)     27 The percentage of relevant items among recommended items. The percentage of recommended items among relevant items. Bobadilla, Jesús, et al. "Recommender systems survey." Knowledge-based systems 46 (2013): 109-132.
  • 28. List quality • Users lose attention to the following items in the list drastically. • In some applications, items on top of the list are very important. • Half-life (Hl) is one of the metrics to evaluate the quality of recommendation list.   28 Hl = 1 #U X u2U NX i=1 max(ru,pi d, 0) 2(i 1)/(↵ 1)
  • 29. Now, we know about: • Traditional methods • How to evaluate recommender systems Let us step further and use more information to improve recommender systems. 29 Why recommender systems? Traditional methods Evaluations More inform ation
  • 30. Context • What is context? • Webster’s: ❑ The interrelated conditions in which something exists or occurs. • The concept of context is controversial. • Interaction: ➡ Time ➡ Location • Feature: ➡ Type of actors Reed Hasting, the CEO of Netflix, claimed that they can improve the performance of their recommender system up to 3% when considering such contextual information. 30
  • 31. Sunday Monday Tuesday Wednesday Thursday Friday Saturday Example of context - Time • Pacheco watched these movies and TV series and liked them: 31 Including Sunday • What should be recommended to Pacheco if he wants to watch a movie on Saturday?
  • 32. Example of context - Features • Pacheco likes “The Godfather I and II”. • Does Pacheco like “Heat”? Context-based recommender systems: Pacheco likes it, because they have popular academy award winners in common. 32
  • 33. Hierarchical representation Tensor representation Context in recommender systems Traditional methods: Add context to recommender systems: E-retailer DB Personal k1 Work k2 Other k2 Gift k1 Partner Friend k2 Partner k3 Friend k3 Parent Other k2 Parent k3 Other k3 If we consider Time as context: UName Address Age As context IName Type Price Year Month Day User Item Time Granular to coarse     33 R : User ⇥ Items ! Rating R : User ⇥ Items ⇥ Context ! Rating Palmisano, et al. "Using context to improve predictive modeling of customers in personalization applications." IEEE transactions on knowledge and data engineering 20.11 (2008): 1535-1549.
  • 34. Obtaining contextual information • Explicitly ▪ The information is gained directly from entities. ▪ the information of location or time can be extracted from the users' device. • Implicitly ▪ It needs a monitoring system to observe the users and interactions. ▪ The source of information is accessed directly. • Inferring ▪ RS should infer information from other data that has already been extracted. ▪ The information here is hidden and requires special algorithms to be revealed. 34
  • 35. Utilizing context – Pre-filtering How? 1. Use contextual information to filter the relevant data. 2. Feed the 2D (User x Item) to a traditional method. Data U x I x C x R Contextualized Data U x I x R 2D Recommender U x I R Contextual Recommender i1,i2,i3 ,... C u It uses context to filter out irrelevant data: • Exact filtering ❖ Example: Find data about ratings on Saturdays × Drawback: The filtered information is too narrow. • Aggregation ❖ Example: Find data about ratings on the weekends × Drawback: We don’t know how much aggregation we need. 35 Gediminas Adomavicius and Alexander Tuzhilin,. Context-aware recommender systems. In Recommender systems handbook, p. 191-226. Springer, 2015.
  • 36. Data U x I x C x R 2D Recommender U x I R Contextual Recommender i1,i2,i3 ,... C u Recommendations i1,i2,i3 ,... Utilizing context – Post-filtering How? 1. Find the recommendation based on items and users. 2. Adjust the final list of recommendations based on context. • Filter our the items that do not satisfies the context. • Reorder or rank the list with respect to the degree they match the context. 36 Gediminas Adomavicius and Alexander Tuzhilin,. Context-aware recommender systems. In Recommender systems handbook, p. 191-226. Springer, 2015.
  • 37. Utilizing context – Modelling How? • This method uses the 3D data. • We can use a similarity function to predict the unknown ratings. ru,I,k : rating of user u for item i regarding context c k : normalization factor Data U x I x C x R MD Recommender U x I x C R C u Contextual Recommender i1,i2,i3 ,... W : weight of participating in predicting the unknown rating 37 ru,i,c = k X (u0,i0,c0)6=(u,i,c) W ((u0 , i0 , c0 ), (u, i, c)) ⇥ ru0,i0,c0 W ((u0 , i0 , c0 ), (u, i, c)) / 1 distance ((u0, i0, c0), (u, i, c)) Gediminas Adomavicius and Alexander Tuzhilin,. Context-aware recommender systems. In Recommender systems handbook, p. 191-226. Springer, 2015.
  • 38. How about Josemar on Twitter? 38 Pacheco Marcos Diego Firas Josemar follows Diego, Marcos, Pacheco and Firas on Twitter, and Diego follows him. There is no information about Josemar’s ratings or preferences. Josemar
  • 39. Why? Social networks are popular. It is a powerful source of information. Friend have similar taste. Items are available through social networks. User profiling is improved by social information. Social-based recommender systems 39
  • 40. Content in social media Content can be recommended. Content can be used to improve recommendation. • Content in social media: 40 o Blog o Multimedia o Question & Answer o News o Job o Microblog Ido Guy, Social recommender systems. In Recommender systems handbook, p. 511-543. Springer, 2015.
  • 41. Example - Movie recommendation • Carrer-Neto et al. use the information extracted from the profile of users • Social aperture • Moderate ✓ Use (25% friends’ ratings + 75% user ratings) • Liberal ✓ Use (50% friends’ ratings + 50% user ratings) • Conservative ✓ Use (user ratings) 41 Carrer-Neto, Walter, et al. "Social knowledge-based recommender system. Application to the movies domain." Expert Systems with applications 39.12 (2012): 10990-11000.
  • 42. Example – People recommendation WTF Who To Follow algorithm: 1. Find the circle of trust (CoT). 2. Create a bipartite graph of individuals from the CoT. 3. Run Twitter's Money algorithm to find the relevant people. 4. Recommend top relevant people. 42 Geil, Afton et al., "WTF, GPU! computing twitter's who-to-follow on the GPU." Proceedings of the second ACM conference on Online social networks. ACM, 2014.
  • 43. Immediate friend inference Item i has set of attributes User u has set of attributes User u has some neighbors What is the rating of user u for item i given set of attributes of item i and set of attributes of user u and neighbors of the user u b1 b2 … bn a1 a2 … am Item acceptance Probability of rating k for item i given set of user attributes ai User preference Probability of rating k of user u given set of item attributes bi user u Nu Neighbor preference Probability of rating k of user u given neighbors Nu Naive Bayesian assumption 43
  • 44. 44 Preference of neighbors of user u Neighbors of user u Item acceptance Set of users that rated for item iProbability of rating k of user u for item i (Ru,i), given the set of attributes au of user, set of attributes bi of item and the rating of the neighbors. User preference : probability of a rating k of user u given set of item attributes bi Immediate friend inference P (Ru,i = k|B = bi, A = au, {Rv,i = rv,i : 8v 2 Ui Nu}) = 1 Z P (Ru,i = k|B = bi) ⇥ P (Ru,i = k|A = au) ⇥P (Ru,i = k|{Rv,i = rv,i : 8v 2 Ui Nu}) Jianming He and Wesley W. Chu, A social network-based recommender systems. In Data Mining for Social Network Data handbook, p. 47-74. Springer, 2010.
  • 45. Example 45 Item acceptance What is the movie’s rating if somebody like user u watches it? User preference What is my rating if Al Pacino plays in a movie? Neighbor preference What is my friends’ rating if Al Pacino plays in a movie?
  • 46. Immediate friend inference P (Ri = k|A = ai) = P(Ri = k) ⇥ Qj=m j=1 P(Aj|Ri = k) P(A1, A2, . . . , An) , Aj 2 {A1, A2, . . . , Am} P (Ru = k|B = bi) = P(Ru = k) ⇥ Qj=n j=1 P(Bj|Ru = k) P(B1, B2, . . . , Bn) , Bj 2 {B1, B2, . . . , Bn}User Preference Item Acceptance P(Ru,i = k|Rv,i = rv,i) / H(k rv,i)Neighbor influence Histogram of the difference between user’s rating and the neighbors’ rating 46
  • 47. Summary Why social? Content in social media People recommendation Immediate friend inference Social-based What is context? Obtaining context Utilizing context Pre-filtering Post-filtering Modelling Context-based Accuracy Set quality List Quality Evaluation Demographic filtering Content based filtering Collaborative filtering Hybrid methods Traditional methods