recommendation systems
TRANSCRIPT
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
IntroductionIn 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
Master SIRM 8
Social Networks Definition
Social networks are built from agroup of people who share the sameinterests, backgrounds, and activities.
They can socially share and uploadfiles such as images, videos, andaudios to their profiles.
Social networks consist of nodes thatare the actors in the network. Thesenodes 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
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
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 predictswhat 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” … worksfor 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 highlightsUse 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 - LimitationsDifferent users might use different scales. Possiblesolution: weighted ratings, i.e. deviations from averagerating
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
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.
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 heuristicfor the other
*Incorporating onecomponent as a partof the model for the other*Building one unifying model
Master SIRM 34
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
32
40
1
Master SIRM 37
Defining Maximal Cliques
53
2
40
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
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 outputMaster 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 outputBronKerbosch2({5}, Ø, {1,2,4}): no output
Master SIRM 47
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