RECOMMENDER
SYSTEMS
Social Network
Based Algorithms
Année Universitaire 2014 - 2015
Realisé par:
ABBAD Zakariae
HIRCHOUA Badr
Master
« Systèmes d’Information, Réseaux et Multimédia»
OUTLINE
Algorithms
Conclusion
Introduction
Problematic and challenges
Types of RS in the SN
Our Algorithm
Master SIRM 2
Introduction
Introduction
In human history, people have always been trying to
make predictions and forecasts for a range of issues.
Master SIRM 4
01
02
the election results
Recommanding items to
customers(amazon,
facebook…)
Introduction
Recommender systems are widely used in several
different domains for the recommendation of
articles, music, movies, and even people.
Portals such as Amazon and Submarino use
recommender systems to suggest products to their
customers. Meanwhile, social networks such as
LinkedIn and Facebook use them to suggest new
Master SIRM 5
Master SIRM 6
Applications
2
3
People you may know
Based on mutual friends work and
education information …
Since our formula is automatic, you might
occasionally see people you don’t know or don’t
want to be friends with. To remove them from
view, just click the X next to their names
1
Facebook friend recommendations
Introduction
Master SIRM 7
Master SIRM 8
Social Networks Definition
Social networks are built from a
group of people who share the same
interests, backgrounds, and activities.
They can socially share and upload
files such as images, videos, and
audios to their profiles.
Social networks consist of nodes that
are the actors in the network. These
nodes might be a user, a company…
Master SIRM 9
Social Networks Definition
There are different properties that social networks provide
two main concepts:
Profiling
where each user has his own profile,
which represents the user’s preferences
and interests
Linking
between users, which make it easier to
analyze relationships among users
Master SIRM 10
Social Networks Definition
Social graph: the pattern of the social relationships in the social networks
Master SIRM 11
Social Networks Definition
 Understanding the structure of social networks
will help evaluating the strength , weaknesses,
opportunities and threats associated with them.
 One of the most popular papers is Milgram’s “The
Small-World Problem” where the earliest experiment
about the six degrees of separation was investigated.
Master SIRM 12
 A lot of types of the recommender systems, have
been studied by many researchers in the past decade.
 However, they ignore the social relationships
among users
 In fact, these relationships can improve the
accuracy of recommendation.
Traditional R.S
Problematic
and
challenges
Problematic and challenges
Gray
Sheep
Scalability
Early-
Rater
Cold
Start
Master SIRM 14
Master SIRM 15
 The problem accurs at the start of the system, or
when the system has a new user.
 HowevAutomatically the system does not have any
information of the tastes or preferences of the new
user.
 SO it’s difficult to recommand any item to this new
user.
The cold start problem
Master SIRM 16
 Wher the user has rare tastes, the recommendation
may not be accurate.
 a user with this profile is not easily related to other
users in the system.
 This situation is making it difficult to recommend
items to this user
The gray sheep problem
Master SIRM 17
 When a new item emerges, it cannot be
recommended to a user before a person assesses it.
 This issue is clearly identified in collaborative
filtering.
 In content-based filtering, knowing the contents of
an item is enough to enable a recommendation to a
user
The Early rater problem
Master SIRM 18
 Only items that are similar to those previously
evaluated by the user will be recommended.
 A user whose profile has been defined will always
receive items related to this profile.
 any personal profile modification (outside the
system) will not be reflected on the system.
Super-specialization problem
Master SIRM 19
 When the quantity of users, items and evaluations is
too large.
 the system that executes real-time calculations of the
relations among users may provide :
The scalability problem
Master SIRM 20
 How to make good recommendations without violating
privacy concerns
 This is a hot topic that makes the debate in the world
Privacy-preservation
Types of RS
in the SN
RS as a Research Problem
1) Content-Based Recommendations: It uses information describing the
nature of an item and based on a sample of the users preferences, to
predict which items the user will like.
2) Collaborative Recommendations: It uses a large amount of
information on users behaviors, activities or preferences and predicts
what users will like based on their similarities to other users.
3) Hybrid Recommendations. This is an approach combining collaborative
filtering and content-based filtering.
Master SIRM 22
Types of RS – Content based RS
Content based RS highlights
 Recommend items similar to those users preferred in the past
 User profiling is the key
 Items/content usually denoted by keywords
 Matching “user preferences” with “item characteristics” … works
for textual information
 Vector Space Model widely used
Master SIRM 24
Types of RS – Content based RS
Content based RS – Limitations
 Not all content is well represented by keywords, e.g. images
 Items represented by same set of features are indistinguishable
 Overspecialization: unrated items not shown
 Users with thousands of purchases is a problem
 New user: No history available
 Shouldn’t show items that are too different, or too similar
Master SIRM 25
Types of RS – Collaborative RS
Collaborative RS highlights
 Use other users recommendations (ratings) to
judge item’s utility
 Key is to find users/user groups whose interests
match with the current user
 Vector Space model widely used (directions of
vectors are user specified ratings)
 More users, more ratings: better results
 Can account for items dissimilar to the ones seen
in the past too
Master SIRM 26
Types of RS – Collaborative RS
Collaborative RS - Limitations
 Different users might use different scales. Possible
solution: weighted ratings, i.e. deviations from average
rating
 Finding similar users/user groups isn’t very easy
 New user: No preferences available
 New item: No ratings available
 Demographic filtering is required
 Multi-criteria ratings is required
Master SIRM 27
Master SIRM 28
Methods for recommendation in SN
1
2
3
 Explore the social network for raters
 Aggregate the ratings to compute prediction
 Store the social rating network
 No Learning phase
 Slow in prediction
 Most pioneer works for recommendation in SN are
memory based approaches
Master SIRM 29
Memory based approaches
Master SIRM 30
 Learn a model
 Store the model parameters only
 Extra time for learning
 Fast in Prediction
 Most models are based on matrix factorizatio
Model based approaches
Master SIRM 31
Link Prediction
 Emergence of online social network
The need to get connected to other
people led to link prediction
 Problem Definition
Given a user pair (u,v), estimate the
probability of creation of the link u v
Given a user u, recommend a list of top
users for u to connect to.
Master SIRM 32
Link prediction vs. Rating
prediction
Algorithms
Algorithm for each approach
Approaches Heuristic-Based Model-based
Content-based *TF-IDF (information retrieval)
*Clustering
* Bayesian classifiers
*Clustering
*Decision trees
*Artificial neural networks
Collaborative *Nearest neighbor
(cosine, correlation)
*Clustering
*Graph theory
*Bayesian networks
*Clustering
*Artificial neural Networks
*Probablistic models
*Linear regression
Hybrid *Linear combination of
predicted ratings
*Various voting schemes
*Incorporating one
component as a part of the
heuristic
for the other
*Incorporating one
component as a part
of the model for the other
*Building one unifying
model
Master SIRM 34
Our
Algorithm
What is Graph ?
5
3
2
4
0
1
Master SIRM 36
Defining Cliques
A Clique in a Graph G is a complete subgraph of
G that is, it is a subset S of the vertices such that
every two vertices in S form an edge in G
Nodes {O | 1 | 4} form a clique
in a social network such a clique is a subset of individuals
who are more closely and intensely tied to one another than
they are to other members of the network
3
2
4
0
1
Master SIRM 37
Defining Maximal Cliques
5
3
2
4
0
1
A Maximal is a clique to which no more vertices
can be added
The pairs {2,3} , {3,4} , {3,5}, {1,2}
Master SIRM 38
Maximum Cliques
 For some problemns, finding subgraphs of a graph
that are complete can be important
 Complete means that for every node in the graph,
it is connected to every other node
Examples :
 Finding sets of people in a social network
that all know each other
 Finding subjects in an infected population
that all have contact with on another
Master SIRM 39
Use of Cliques
 Analyzing communication network
 Designing circuits
 Analyzing gene expression data
 Analyzing social networks
Master SIRM 40
 The basic form of the Bron–Kerbosch algorithm is
recursive backtracking algorithm that searches for all
maximal cliques in a given graph G.
Bron–Kerbosch algorithm
Master SIRM 41
01
02
03
Without
pivoting
With pivoting
With vertex ordering
Types of Bron–Kerbosch
Master SIRM 42
Bron–Kerbosch algorithm
BK(R, P, X):
if P and X are both empty
report R as a maximal clique
for each vertex v in P:
BK(R ⋃ {v}, P ⋂ N(v), X ⋂ N(v)
P := P  {v}
X := X ⋃ {v}
Without pivoting
Master SIRM 43
Bron–Kerbosch algorithm
BronKerbosch2(R,P,X):
if P and X are both empty:
report R as a maximal clique
choose a pivot vertex u in P ⋃ X
for each vertex v in P  N(u):
BronKerbosch2(R ⋃ {v}, P ⋂ N(v), X ⋂
N(v))
P := P  {v}
X := X ⋃ {v}
With pivoting
Master SIRM 44
Bron–Kerbosch algorithm
BronKerbosch3(G):
P = V(G)
R = X = empty
for each vertex v in a degeneracy
ordering of G:
BronKerbosch2(R ⋃ {v}, P ⋂ N(v), X
⋂ N(v))
P := P  {v}
X := X ⋃ {v}
With vertex ordering
Master SIRM 45
Example
BronKerbosch2(Ø, {1,2,3,4,5,6}, Ø)
BronKerbosch2({2}, {1,3,5}, Ø)
BronKerbosch2({2,3}, Ø, Ø): output {2, 3}
BronKerbosch2({2,5}, {1}, Ø)
BronKerbosch2({1,2,5}, Ø, Ø): output {1,2,5}
BronKerbosch2({4}, {3,5,6}, Ø)
BronKerbosch2({3,4}, Ø, Ø): output {3,4}
BronKerbosch2({4,5}, Ø, Ø): output {4,5}
BronKerbosch2({4,6}, Ø, Ø): output {4,6}
BronKerbosch2({6}, Ø, {4}): no output
Master SIRM 46
Example
BronKerbosch3(G)
BronKerbosch2({6}, {4}, Ø)
BronKerbosch2({6,4}, Ø, Ø): output {6,4}
BronKerbosch2({4}, {3,5}, {6})
BronKerbosch2({4,3}, Ø, Ø): output {4,3}
BronKerbosch2({4,5}, Ø, Ø): output {4,5}
BronKerbosch2({3}, {2}, {4})
BronKerbosch2({3,2}, Ø, Ø): output {3,2}
BronKerbosch2({1}, {2,5}, Ø)
BronKerbosch2({1,2}, {5}, Ø)
BronKerbosch2({1,2,5}, Ø, Ø): output {1,2,5}
BronKerbosch2({2}, {5}, {1,3}): no output
BronKerbosch2({5}, Ø, {1,2,4}): no output
Master SIRM 47
Conclusion
Social Network Based Recommendation Systems use the
additional information from the social network structures to
improve the performance and accuracy of recommendations.
With the growing number of internet social networks, there
are great potential to utilize this information to help with improving
the recommendation systems. Good recommendation systems can not
only improve the business outcomes but also help with reducing the
information barriers for regular users.
Conclusion
Master SIRM 49

Recommendation systems

  • 1.
    RECOMMENDER SYSTEMS Social Network Based Algorithms AnnéeUniversitaire 2014 - 2015 Realisé par: ABBAD Zakariae HIRCHOUA Badr Master « Systèmes d’Information, Réseaux et Multimédia»
  • 2.
  • 3.
  • 4.
    Introduction In human history,people have always been trying to make predictions and forecasts for a range of issues. Master SIRM 4 01 02 the election results Recommanding items to customers(amazon, facebook…)
  • 5.
    Introduction Recommender systems arewidely used in several different domains for the recommendation of articles, music, movies, and even people. Portals such as Amazon and Submarino use recommender systems to suggest products to their customers. Meanwhile, social networks such as LinkedIn and Facebook use them to suggest new Master SIRM 5
  • 6.
    Master SIRM 6 Applications 2 3 Peopleyou may know Based on mutual friends work and education information … Since our formula is automatic, you might occasionally see people you don’t know or don’t want to be friends with. To remove them from view, just click the X next to their names 1 Facebook friend recommendations
  • 7.
  • 8.
    Master SIRM 8 SocialNetworks Definition Social networks are built from a group of people who share the same interests, backgrounds, and activities. They can socially share and upload files such as images, videos, and audios to their profiles. Social networks consist of nodes that are the actors in the network. These nodes might be a user, a company…
  • 9.
    Master SIRM 9 SocialNetworks Definition There are different properties that social networks provide two main concepts: Profiling where each user has his own profile, which represents the user’s preferences and interests Linking between users, which make it easier to analyze relationships among users
  • 10.
    Master SIRM 10 SocialNetworks Definition Social graph: the pattern of the social relationships in the social networks
  • 11.
    Master SIRM 11 SocialNetworks Definition  Understanding the structure of social networks will help evaluating the strength , weaknesses, opportunities and threats associated with them.  One of the most popular papers is Milgram’s “The Small-World Problem” where the earliest experiment about the six degrees of separation was investigated.
  • 12.
    Master SIRM 12 A lot of types of the recommender systems, have been studied by many researchers in the past decade.  However, they ignore the social relationships among users  In fact, these relationships can improve the accuracy of recommendation. Traditional R.S
  • 13.
  • 14.
  • 15.
    Master SIRM 15 The problem accurs at the start of the system, or when the system has a new user.  HowevAutomatically the system does not have any information of the tastes or preferences of the new user.  SO it’s difficult to recommand any item to this new user. The cold start problem
  • 16.
    Master SIRM 16 Wher the user has rare tastes, the recommendation may not be accurate.  a user with this profile is not easily related to other users in the system.  This situation is making it difficult to recommend items to this user The gray sheep problem
  • 17.
    Master SIRM 17 When a new item emerges, it cannot be recommended to a user before a person assesses it.  This issue is clearly identified in collaborative filtering.  In content-based filtering, knowing the contents of an item is enough to enable a recommendation to a user The Early rater problem
  • 18.
    Master SIRM 18 Only items that are similar to those previously evaluated by the user will be recommended.  A user whose profile has been defined will always receive items related to this profile.  any personal profile modification (outside the system) will not be reflected on the system. Super-specialization problem
  • 19.
    Master SIRM 19 When the quantity of users, items and evaluations is too large.  the system that executes real-time calculations of the relations among users may provide : The scalability problem
  • 20.
    Master SIRM 20 How to make good recommendations without violating privacy concerns  This is a hot topic that makes the debate in the world Privacy-preservation
  • 21.
  • 22.
    RS as aResearch Problem 1) Content-Based Recommendations: It uses information describing the nature of an item and based on a sample of the users preferences, to predict which items the user will like. 2) Collaborative Recommendations: It uses a large amount of information on users behaviors, activities or preferences and predicts what users will like based on their similarities to other users. 3) Hybrid Recommendations. This is an approach combining collaborative filtering and content-based filtering. Master SIRM 22
  • 24.
    Types of RS– Content based RS Content based RS highlights  Recommend items similar to those users preferred in the past  User profiling is the key  Items/content usually denoted by keywords  Matching “user preferences” with “item characteristics” … works for textual information  Vector Space Model widely used Master SIRM 24
  • 25.
    Types of RS– Content based RS Content based RS – Limitations  Not all content is well represented by keywords, e.g. images  Items represented by same set of features are indistinguishable  Overspecialization: unrated items not shown  Users with thousands of purchases is a problem  New user: No history available  Shouldn’t show items that are too different, or too similar Master SIRM 25
  • 26.
    Types of RS– Collaborative RS Collaborative RS highlights  Use other users recommendations (ratings) to judge item’s utility  Key is to find users/user groups whose interests match with the current user  Vector Space model widely used (directions of vectors are user specified ratings)  More users, more ratings: better results  Can account for items dissimilar to the ones seen in the past too Master SIRM 26
  • 27.
    Types of RS– Collaborative RS Collaborative RS - Limitations  Different users might use different scales. Possible solution: weighted ratings, i.e. deviations from average rating  Finding similar users/user groups isn’t very easy  New user: No preferences available  New item: No ratings available  Demographic filtering is required  Multi-criteria ratings is required Master SIRM 27
  • 28.
    Master SIRM 28 Methodsfor recommendation in SN 1 2 3
  • 29.
     Explore thesocial network for raters  Aggregate the ratings to compute prediction  Store the social rating network  No Learning phase  Slow in prediction  Most pioneer works for recommendation in SN are memory based approaches Master SIRM 29 Memory based approaches
  • 30.
    Master SIRM 30 Learn a model  Store the model parameters only  Extra time for learning  Fast in Prediction  Most models are based on matrix factorizatio Model based approaches
  • 31.
    Master SIRM 31 LinkPrediction  Emergence of online social network The need to get connected to other people led to link prediction  Problem Definition Given a user pair (u,v), estimate the probability of creation of the link u v Given a user u, recommend a list of top users for u to connect to.
  • 32.
    Master SIRM 32 Linkprediction vs. Rating prediction
  • 33.
  • 34.
    Algorithm for eachapproach Approaches Heuristic-Based Model-based Content-based *TF-IDF (information retrieval) *Clustering * Bayesian classifiers *Clustering *Decision trees *Artificial neural networks Collaborative *Nearest neighbor (cosine, correlation) *Clustering *Graph theory *Bayesian networks *Clustering *Artificial neural Networks *Probablistic models *Linear regression Hybrid *Linear combination of predicted ratings *Various voting schemes *Incorporating one component as a part of the heuristic for the other *Incorporating one component as a part of the model for the other *Building one unifying model Master SIRM 34
  • 35.
  • 36.
    What is Graph? 5 3 2 4 0 1 Master SIRM 36
  • 37.
    Defining Cliques A Cliquein a Graph G is a complete subgraph of G that is, it is a subset S of the vertices such that every two vertices in S form an edge in G Nodes {O | 1 | 4} form a clique in a social network such a clique is a subset of individuals who are more closely and intensely tied to one another than they are to other members of the network 3 2 4 0 1 Master SIRM 37
  • 38.
    Defining Maximal Cliques 5 3 2 4 0 1 AMaximal is a clique to which no more vertices can be added The pairs {2,3} , {3,4} , {3,5}, {1,2} Master SIRM 38
  • 39.
    Maximum Cliques  Forsome problemns, finding subgraphs of a graph that are complete can be important  Complete means that for every node in the graph, it is connected to every other node Examples :  Finding sets of people in a social network that all know each other  Finding subjects in an infected population that all have contact with on another Master SIRM 39
  • 40.
    Use of Cliques Analyzing communication network  Designing circuits  Analyzing gene expression data  Analyzing social networks Master SIRM 40
  • 41.
     The basicform of the Bron–Kerbosch algorithm is recursive backtracking algorithm that searches for all maximal cliques in a given graph G. Bron–Kerbosch algorithm Master SIRM 41
  • 42.
    01 02 03 Without pivoting With pivoting With vertexordering Types of Bron–Kerbosch Master SIRM 42
  • 43.
    Bron–Kerbosch algorithm BK(R, P,X): if P and X are both empty report R as a maximal clique for each vertex v in P: BK(R ⋃ {v}, P ⋂ N(v), X ⋂ N(v) P := P {v} X := X ⋃ {v} Without pivoting Master SIRM 43
  • 44.
    Bron–Kerbosch algorithm BronKerbosch2(R,P,X): if Pand X are both empty: report R as a maximal clique choose a pivot vertex u in P ⋃ X for each vertex v in P N(u): BronKerbosch2(R ⋃ {v}, P ⋂ N(v), X ⋂ N(v)) P := P {v} X := X ⋃ {v} With pivoting Master SIRM 44
  • 45.
    Bron–Kerbosch algorithm BronKerbosch3(G): P =V(G) R = X = empty for each vertex v in a degeneracy ordering of G: BronKerbosch2(R ⋃ {v}, P ⋂ N(v), X ⋂ N(v)) P := P {v} X := X ⋃ {v} With vertex ordering Master SIRM 45
  • 46.
    Example BronKerbosch2(Ø, {1,2,3,4,5,6}, Ø) BronKerbosch2({2},{1,3,5}, Ø) BronKerbosch2({2,3}, Ø, Ø): output {2, 3} BronKerbosch2({2,5}, {1}, Ø) BronKerbosch2({1,2,5}, Ø, Ø): output {1,2,5} BronKerbosch2({4}, {3,5,6}, Ø) BronKerbosch2({3,4}, Ø, Ø): output {3,4} BronKerbosch2({4,5}, Ø, Ø): output {4,5} BronKerbosch2({4,6}, Ø, Ø): output {4,6} BronKerbosch2({6}, Ø, {4}): no output Master SIRM 46
  • 47.
    Example BronKerbosch3(G) BronKerbosch2({6}, {4}, Ø) BronKerbosch2({6,4},Ø, Ø): output {6,4} BronKerbosch2({4}, {3,5}, {6}) BronKerbosch2({4,3}, Ø, Ø): output {4,3} BronKerbosch2({4,5}, Ø, Ø): output {4,5} BronKerbosch2({3}, {2}, {4}) BronKerbosch2({3,2}, Ø, Ø): output {3,2} BronKerbosch2({1}, {2,5}, Ø) BronKerbosch2({1,2}, {5}, Ø) BronKerbosch2({1,2,5}, Ø, Ø): output {1,2,5} BronKerbosch2({2}, {5}, {1,3}): no output BronKerbosch2({5}, Ø, {1,2,4}): no output Master SIRM 47
  • 48.
  • 49.
    Social Network BasedRecommendation Systems use the additional information from the social network structures to improve the performance and accuracy of recommendations. With the growing number of internet social networks, there are great potential to utilize this information to help with improving the recommendation systems. Good recommendation systems can not only improve the business outcomes but also help with reducing the information barriers for regular users. Conclusion Master SIRM 49