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

Recommender systems

  • 1.
    A survey on RecommenderSystems 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 thenumber of Internet Users 4 Percentage that do not use the Internet Mobile network coverage and evolving technologies ©ICT facts and figures
  • 5.
  • 6.
    Many online companies 6 Recommendingvarious items Recommending specific items
  • 7.
    What is arecommender 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 Arecommender system needs to filter the information to extract the relevant items. 9 Demographic Filtering Content-based Filtering (CBF) Collaborative Filtering (CF)
  • 10.
    Demographic filtering • Itrecommends 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 • Diegolikes “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 CrimeDrama Mafia Genre Subject Crime Thriller Drama Mafia Description Similar Diego likes “Goodfellas”.
  • 15.
    CBF – Keyword-based 15 Weightof 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-Itemrating 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 Diegolikes “Scarface.” How about Marcos? Diego likes “The Godfather.” Marcos likes “The Godfather” as well.
  • 18.
    CF - Findsimilar items based on ratings! 18 Item-Item Similarity R: User x Item User-User Similarity Neighborhood-based methods Marcos likes Scarface.
  • 19.
    CF - Predictratings 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 • Insome 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 ofthe list of items Quality of the set of items
  • 24.
    Prediction accuracy Mean AbsoluteError 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 someusers, 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 possibleitems 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 • Userslose 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 knowabout: • 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 iscontext? • 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 TuesdayWednesday 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 Tensorrepresentation 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 Ix 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 Josemaron 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 isa 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 socialmedia 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 - Movierecommendation • 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 – Peoplerecommendation 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 Itemi 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 neighborsof 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 isthe 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 insocial 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