49
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»

Recommendation systems

Embed Size (px)

Citation preview

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

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

Introduction

Master SIRM 7

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

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 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

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 heuristicfor the other

*Incorporating onecomponent as a partof the model for the other*Building one unifying model

Master SIRM 34

Our

Algorithm

What is Graph ?

5

3

2

40

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

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

01

02

03

Withoutpivoting

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 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

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