Social Filtering for Niche Markets Matteo Dell`Amico Licia

Transcript

Social Filtering for Niche Markets Matteo Dell`Amico Licia
Social Filtering
SOFIA
Experiments
SOFIA
Social Filtering for Niche Markets
Matteo Dell'Amico
Licia Capra
University College London
UCL MobiSys Seminar
9 October 2007
Matteo Dell'Amico, Licia Capra
SOFIA: Social Filtering for Niche Markets
Social Filtering
SOFIA
Experiments
Outline
1
Social Filtering
Competence: Taste Similarity
Intent: Trust Transitivity
The Social Filtering Pattern
2
SOFIA
Intent: Personalized PageRank
Competence: HITS
From HITS to SOFIA
3
Experiments
Datasets
Hidden Judgements
Sybil Attacks
Matteo Dell'Amico, Licia Capra
SOFIA: Social Filtering for Niche Markets
Social Filtering
SOFIA
Experiments
Competence: Taste Similarity
Intent: Trust Transitivity
The Social Filtering Pattern
The Long Tail
Chris Anderson, 2006
Digital distribution:
millions of dierent
products are available to consumers.
An enormous market for
niche content is
appearing.
nd interesting content.
Filters are essential to connect supply and
demand.
Users need help to
Our Problem
Creating an
ecient and robust lter.
Matteo Dell'Amico, Licia Capra
SOFIA: Social Filtering for Niche Markets
Social Filtering
SOFIA
Experiments
Competence: Taste Similarity
Intent: Trust Transitivity
The Social Filtering Pattern
The Long Tail
Chris Anderson, 2006
Digital distribution:
millions of dierent
products are available to consumers.
An enormous market for
niche content is
appearing.
nd interesting content.
Filters are essential to connect supply and
demand.
Users need help to
Our Problem
Creating an
ecient and robust lter.
Matteo Dell'Amico, Licia Capra
SOFIA: Social Filtering for Niche Markets
Social Filtering
SOFIA
Experiments
Competence: Taste Similarity
Intent: Trust Transitivity
The Social Filtering Pattern
Outline
1
Social Filtering
Competence: Taste Similarity
Intent: Trust Transitivity
The Social Filtering Pattern
2
SOFIA
Intent: Personalized PageRank
Competence: HITS
From HITS to SOFIA
3
Experiments
Datasets
Hidden Judgements
Sybil Attacks
Matteo Dell'Amico, Licia Capra
SOFIA: Social Filtering for Niche Markets
Social Filtering
SOFIA
Experiments
Competence: Taste Similarity
Intent: Trust Transitivity
The Social Filtering Pattern
Collaborative Filtering
Which items might I like?
Let's look at what
similar users did.
Similarity in reviews, behaviour. . .
competent:
we agree with.
They are
they express (subjective!) judgements
Matteo Dell'Amico, Licia Capra
SOFIA: Social Filtering for Niche Markets
Social Filtering
SOFIA
Experiments
Competence: Taste Similarity
Intent: Trust Transitivity
The Social Filtering Pattern
Propagating Trust: Competence
Alice expressed judgement X (I like eating at SOAS ).
Bob agrees with Alice on X, therefore Alice ranks Bob as a
competent evaluator.
Bob also expressed judgement Y (They make good burgers at
ULU ).
Alice decides to
trust Bob's advice and tries ULU.
Matteo Dell'Amico, Licia Capra
SOFIA: Social Filtering for Niche Markets
Social Filtering
SOFIA
Experiments
Competence: Taste Similarity
Intent: Trust Transitivity
The Social Filtering Pattern
Sybil Attack
How to trick Alice?
Create
lots of false users (Sybils) that copy
Alice's judgements.
All Sybils vote for a
malicious judgement
they want to increase the ranking of.
Since the Sybils
look competent to Alice,
she will trust them.
Also known as. . .
Prole injection, shilling (CF), web spam (webpage ranking).
In Social Filtering, Alice leverages on her
Sybils.
Matteo Dell'Amico, Licia Capra
social ties to isolate
SOFIA: Social Filtering for Niche Markets
Social Filtering
SOFIA
Experiments
Competence: Taste Similarity
Intent: Trust Transitivity
The Social Filtering Pattern
Sybil Attack
How to trick Alice?
Create
lots of false users (Sybils) that copy
Alice's judgements.
All Sybils vote for a
malicious judgement
they want to increase the ranking of.
Since the Sybils
look competent to Alice,
she will trust them.
Also known as. . .
Prole injection, shilling (CF), web spam (webpage ranking).
In Social Filtering, Alice leverages on her
Sybils.
Matteo Dell'Amico, Licia Capra
social ties to isolate
SOFIA: Social Filtering for Niche Markets
Social Filtering
SOFIA
Experiments
Competence: Taste Similarity
Intent: Trust Transitivity
The Social Filtering Pattern
Outline
1
Social Filtering
Competence: Taste Similarity
Intent: Trust Transitivity
The Social Filtering Pattern
2
SOFIA
Intent: Personalized PageRank
Competence: HITS
From HITS to SOFIA
3
Experiments
Datasets
Hidden Judgements
Sybil Attacks
Matteo Dell'Amico, Licia Capra
SOFIA: Social Filtering for Niche Markets
Social Filtering
SOFIA
Experiments
Competence: Taste Similarity
Intent: Trust Transitivity
The Social Filtering Pattern
Propagating Trust: Intent
Web of Trust: a social network where A links to B if A trusts
behave honestly.
B to
Created explicitely by users (e.g., Facebook) or automatically
(e.g., email logs).
Trust Transitivity:
I trust the friends of my friends.
Alice thinks Bob is honest.
Bob recommends Charlie to Alice.
Since Alice trusts Bob, she decides to trusts Charlie as well.
Iteratively, Alice derives trust for Dave.
Matteo Dell'Amico, Licia Capra
SOFIA: Social Filtering for Niche Markets
Social Filtering
SOFIA
Experiments
Competence: Taste Similarity
Intent: Trust Transitivity
The Social Filtering Pattern
Isolating Sybils
no way to recognize legitimate users only by looking
at their judgements.
It is costly for the attacker to convince honest users to trust
There is
it.
A small number of honest users are connected to the Sybil
attack edges (Yu et al., ACM SIGCOMM '06).
We can isolate Sybils if we limit the amount of trust
propagated through the attack edges.
network via
Matteo Dell'Amico, Licia Capra
SOFIA: Social Filtering for Niche Markets
Social Filtering
SOFIA
Experiments
Competence: Taste Similarity
Intent: Trust Transitivity
The Social Filtering Pattern
Discussing Trust Transitivity
Pro
Users get trusted if they behave honestly.
If reciprocative behaviour is adopted, the rational choice for
selsh users is to behave honestly (Feldman et al., ACM EC
'04).
Sybils can get isolated.
Con
Trust transitivity does not take into account the
users.
tastes of the
This is a big problem in niches, where subjectivity is
extreme.
Matteo Dell'Amico, Licia Capra
SOFIA: Social Filtering for Niche Markets
Social Filtering
SOFIA
Experiments
Competence: Taste Similarity
Intent: Trust Transitivity
The Social Filtering Pattern
Discussing Trust Transitivity
Pro
Users get trusted if they behave honestly.
If reciprocative behaviour is adopted, the rational choice for
selsh users is to behave honestly (Feldman et al., ACM EC
'04).
Sybils can get isolated.
Con
Trust transitivity does not take into account the
users.
tastes of the
This is a big problem in niches, where subjectivity is
extreme.
Matteo Dell'Amico, Licia Capra
SOFIA: Social Filtering for Niche Markets
Social Filtering
SOFIA
Experiments
Competence: Taste Similarity
Intent: Trust Transitivity
The Social Filtering Pattern
Outline
1
Social Filtering
Competence: Taste Similarity
Intent: Trust Transitivity
The Social Filtering Pattern
2
SOFIA
Intent: Personalized PageRank
Competence: HITS
From HITS to SOFIA
3
Experiments
Datasets
Hidden Judgements
Sybil Attacks
Matteo Dell'Amico, Licia Capra
SOFIA: Social Filtering for Niche Markets
Social Filtering
SOFIA
Experiments
Competence: Taste Similarity
Intent: Trust Transitivity
The Social Filtering Pattern
Propagating Trust: Social Filtering
We trust users who are
both willing and able to give good
judgements.
Alice trusts Dave's intent because a path in the web of trust
connects her to him.
She trusts his competence because they agree on X.
Since Dave is honest and competent, Alice trusts his
judgement Y.
Matteo Dell'Amico, Licia Capra
SOFIA: Social Filtering for Niche Markets
Social Filtering
SOFIA
Experiments
Intent: Personalized PageRank
Competence: HITS
From HITS to SOFIA
Outline
1
Social Filtering
Competence: Taste Similarity
Intent: Trust Transitivity
The Social Filtering Pattern
2
SOFIA
Intent: Personalized PageRank
Competence: HITS
From HITS to SOFIA
3
Experiments
Datasets
Hidden Judgements
Sybil Attacks
Matteo Dell'Amico, Licia Capra
SOFIA: Social Filtering for Niche Markets
Social Filtering
SOFIA
Experiments
Intent: Personalized PageRank
Competence: HITS
From HITS to SOFIA
PageRank
rank the importance of web pages.
Intuitive consideration: an authoritative page is linked by
many authoritative pages.
A random surfer following links at random is more likely to
stumble in more important pages.
Google's algorithm to
With 1
−α
probability of stopping at each step, PageRank
computes the probability that
any given page.
the random surfer stops at
In Webs of Trust
reputable users are
recommended by other reputable users.
The same principle applies:
We swap the WWW graph with the social network.
Matteo Dell'Amico, Licia Capra
SOFIA: Social Filtering for Niche Markets
Social Filtering
SOFIA
Experiments
Intent: Personalized PageRank
Competence: HITS
From HITS to SOFIA
PageRank
rank the importance of web pages.
Intuitive consideration: an authoritative page is linked by
many authoritative pages.
A random surfer following links at random is more likely to
stumble in more important pages.
Google's algorithm to
With 1
−α
probability of stopping at each step, PageRank
computes the probability that
any given page.
the random surfer stops at
In Webs of Trust
reputable users are
recommended by other reputable users.
The same principle applies:
We swap the WWW graph with the social network.
Matteo Dell'Amico, Licia Capra
SOFIA: Social Filtering for Niche Markets
Social Filtering
SOFIA
Experiments
Intent: Personalized PageRank
Competence: HITS
From HITS to SOFIA
Personalized PageRank
PageRank does not take into account
subjectivity, which is
essential to isolate Sybil nodes.
We force the random walk to start in the
evaluating node:
this assures that the walk starts at a honest node.
The trust obtained by Sybil nodes is limited by the probability
of
following an attack edge.
Matteo Dell'Amico, Licia Capra
SOFIA: Social Filtering for Niche Markets
Social Filtering
SOFIA
Experiments
Personalized PageRank - The
α:
Intent: Personalized PageRank
Competence: HITS
From HITS to SOFIA
α
Parameter (1)
probability that our random walk continues at each step.
Low
α
implies shorter paths.
Pro:
Fast convergence
Close social ties may have related tastes (i.e., my friends
listen to similar music)
Con:
We don't trust honest users because they're socially far
away.
Matteo Dell'Amico, Licia Capra
SOFIA: Social Filtering for Niche Markets
Social Filtering
SOFIA
Experiments
Personalized PageRank - The
High
α
Intent: Personalized PageRank
Competence: HITS
From HITS to SOFIA
α
Parameter (2)
implies longer paths:
Pro:
We have more information about nodes.
Con:
Attack edges are more likely to be traversed: lower attack
resilience.
Matteo Dell'Amico, Licia Capra
SOFIA: Social Filtering for Niche Markets
Social Filtering
SOFIA
Experiments
Intent: Personalized PageRank
Competence: HITS
From HITS to SOFIA
Outline
1
Social Filtering
Competence: Taste Similarity
Intent: Trust Transitivity
The Social Filtering Pattern
2
SOFIA
Intent: Personalized PageRank
Competence: HITS
From HITS to SOFIA
3
Experiments
Datasets
Hidden Judgements
Sybil Attacks
Matteo Dell'Amico, Licia Capra
SOFIA: Social Filtering for Niche Markets
Social Filtering
SOFIA
Experiments
Intent: Personalized PageRank
Competence: HITS
From HITS to SOFIA
HITS: the Idea
Jon Kleinberg, JACM 1999
Web pages are seen as
hubs and authorities:
authorities are the authoritative pages;
hubs are pages that link to authorities.
Good hubs point to good authorities; good authorities are
pointed by good hubs.
In our case
Users instead of hubs; judgements instead of authorities.
Matteo Dell'Amico, Licia Capra
SOFIA: Social Filtering for Niche Markets
Social Filtering
SOFIA
Experiments
Intent: Personalized PageRank
Competence: HITS
From HITS to SOFIA
HITS: the Algorithm
We have a bipartite graph with
hubs/users (circles) and
authorities/judgements (squares).
All hubs start with the same weight.
Iteratively, until convergence:
Weights on authorities are the sum
of weights on all hubs that link them;
Weights on hubs become the sum of
weights on authorities they link;
Weights on hubs get renormalized.
Matteo Dell'Amico, Licia Capra
SOFIA: Social Filtering for Niche Markets
Social Filtering
SOFIA
Experiments
Intent: Personalized PageRank
Competence: HITS
From HITS to SOFIA
HITS: Example (1)
Initialization
Weights on hubs get initialized.
Matteo Dell'Amico, Licia Capra
SOFIA: Social Filtering for Niche Markets
Social Filtering
SOFIA
Experiments
Intent: Personalized PageRank
Competence: HITS
From HITS to SOFIA
HITS: Example (2)
Forward step
Weigths on authorities are the sum of hubs who link them.
Matteo Dell'Amico, Licia Capra
SOFIA: Social Filtering for Niche Markets
Social Filtering
SOFIA
Experiments
Intent: Personalized PageRank
Competence: HITS
From HITS to SOFIA
HITS: Example (3)
Backward step
Weigths on hubs are the sum of linked authorities.
Matteo Dell'Amico, Licia Capra
SOFIA: Social Filtering for Niche Markets
Social Filtering
SOFIA
Experiments
Intent: Personalized PageRank
Competence: HITS
From HITS to SOFIA
HITS: Example (4)
Normalization
Weigths on hubs get renormalized. Back to the Forward Step.
Matteo Dell'Amico, Licia Capra
SOFIA: Social Filtering for Niche Markets
Social Filtering
SOFIA
Experiments
Intent: Personalized PageRank
Competence: HITS
From HITS to SOFIA
Outline
1
Social Filtering
Competence: Taste Similarity
Intent: Trust Transitivity
The Social Filtering Pattern
2
SOFIA
Intent: Personalized PageRank
Competence: HITS
From HITS to SOFIA
3
Experiments
Datasets
Hidden Judgements
Sybil Attacks
Matteo Dell'Amico, Licia Capra
SOFIA: Social Filtering for Niche Markets
Social Filtering
SOFIA
Experiments
Intent: Personalized PageRank
Competence: HITS
From HITS to SOFIA
Change 1: Tightly Knit Communities
SALSA: Lempel and Moran, 2001
HITS rewards
disproportionately
communities where users and judgements are
highly correlated.
In the graph on the left, the ranking of nodes
in the less dense blue community
Fix: perform a
goes to 0.
random walk on the
judgement graph and compute the
equilibrium distribution.
niche judgements are
rewarded, since their weight is redistributed
Side eect:
to less nodes.
Matteo Dell'Amico, Licia Capra
SOFIA: Social Filtering for Niche Markets
Social Filtering
Intent: Personalized PageRank
Competence: HITS
SOFIA
From HITS to SOFIA
Experiments
Change 2: Subjective Ranking
Problem
The results of HITS are
independent from tastes of the
evaluating node.
It is essential to have
personalized results.
Fix
Same approach as in PageRank: we
from the evaluating node.
To reward shorter paths, we
probability 1
start the random walk
stop at each iteration with
− β.
higher subjectivity and faster convergence.
High β favours longer paths of trust propagation.
Low
β
implies
Matteo Dell'Amico, Licia Capra
SOFIA: Social Filtering for Niche Markets
Social Filtering
Intent: Personalized PageRank
Competence: HITS
SOFIA
From HITS to SOFIA
Experiments
Change 2: Subjective Ranking
Problem
The results of HITS are
independent from tastes of the
evaluating node.
It is essential to have
personalized results.
Fix
Same approach as in PageRank: we
from the evaluating node.
To reward shorter paths, we
probability 1
start the random walk
stop at each iteration with
− β.
higher subjectivity and faster convergence.
High β favours longer paths of trust propagation.
Low
β
implies
Matteo Dell'Amico, Licia Capra
SOFIA: Social Filtering for Niche Markets
Social Filtering
SOFIA
Experiments
Intent: Personalized PageRank
Competence: HITS
From HITS to SOFIA
Change 3: Take Intent into Account
Problem
As said before, we don't want to trust
Culprit for HITS:
backwards step.
dishonest nodes.
The fact that a user expressed a judgement does not insure
they are well intentioned.
Fix
1
2
Compute intent ranking using Personalized PageRank.
Redistribute trust to users proportionally to their intent
ranking.
Matteo Dell'Amico, Licia Capra
SOFIA: Social Filtering for Niche Markets
Social Filtering
SOFIA
Experiments
Intent: Personalized PageRank
Competence: HITS
From HITS to SOFIA
Change 3: Take Intent into Account
Problem
As said before, we don't want to trust
Culprit for HITS:
backwards step.
dishonest nodes.
The fact that a user expressed a judgement does not insure
they are well intentioned.
Fix
1
2
Compute intent ranking using Personalized PageRank.
Redistribute trust to users proportionally to their intent
ranking.
Matteo Dell'Amico, Licia Capra
SOFIA: Social Filtering for Niche Markets
Social Filtering
SOFIA
Experiments
Intent: Personalized PageRank
Competence: HITS
From HITS to SOFIA
SOFIA in Synthesis
SOFIA: SOcial FIltering Algorithm
HITS-like trust propagating algorithm.
3 key modications:
1
Random walk trust propagation as proposed in SALSA
2
The starting point is the evaluating node; the random walk
3
In the backward step, trust is redistributed from judgements to
continues at each step with probability
β.
users according to their intent ranking computed using
Personalized PageRank on the web of trust.
Matteo Dell'Amico, Licia Capra
SOFIA: Social Filtering for Niche Markets
Social Filtering
SOFIA
Experiments
Datasets
Hidden Judgements
Sybil Attacks
Outline
1
Social Filtering
Competence: Taste Similarity
Intent: Trust Transitivity
The Social Filtering Pattern
2
SOFIA
Intent: Personalized PageRank
Competence: HITS
From HITS to SOFIA
3
Experiments
Datasets
Hidden Judgements
Sybil Attacks
Matteo Dell'Amico, Licia Capra
SOFIA: Social Filtering for Niche Markets
Social Filtering
SOFIA
Experiments
Datasets
Hidden Judgements
Sybil Attacks
CiteSeer
http://citeseer.ist.psu.edu
Large dataset of scientic collaborations.
Social network:
co-authorship data.
Authors A and B are connected if they wrote papers together.
Judgements:
citations.
If X cites Y, the implicit judgement is Y is relevant to X's
topic.
Graph data
A highly clustered
subset of the whole graph.
10,000 authors.
182,675 papers.
Matteo Dell'Amico, Licia Capra
SOFIA: Social Filtering for Niche Markets
Social Filtering
SOFIA
Experiments
Datasets
Hidden Judgements
Sybil Attacks
Last.fm
http://last.fm
Social networking website devoted to music.
Social network:
friend lists.
Same as Facebook, MySpace, . . .
Judgements:
most listened artists chart for each user.
Implicit judgement: I like to listen to songs by X.
Graph data
A BFS crawl of 10,000 users.
51,654 dierent artists.
Matteo Dell'Amico, Licia Capra
SOFIA: Social Filtering for Niche Markets
Social Filtering
SOFIA
Experiments
Datasets
Hidden Judgements
Sybil Attacks
Outline
1
Social Filtering
Competence: Taste Similarity
Intent: Trust Transitivity
The Social Filtering Pattern
2
SOFIA
Intent: Personalized PageRank
Competence: HITS
From HITS to SOFIA
3
Experiments
Datasets
Hidden Judgements
Sybil Attacks
Matteo Dell'Amico, Licia Capra
SOFIA: Social Filtering for Niche Markets
Social Filtering
SOFIA
Experiments
Datasets
Hidden Judgements
Sybil Attacks
Hidden Judgements
How to evaluate the
accuracy of SOFIA's ranking on
judgements?
a user would
approve.
We hide a random judgement and execute SOFIA.
If the algorithm performs well, the hidden judgement will
have a high ranking.
We want to rank highly the judgements that
In Citeseer, we try to
guess a missing citation from a
In Last.fm, we try to
nd the missing artist in a chart.
paper.
Matteo Dell'Amico, Licia Capra
SOFIA: Social Filtering for Niche Markets
Social Filtering
Datasets
SOFIA
Hidden Judgements
Experiments
Sybil Attacks
Hidden Judgements - Citeseer
1.0
SOFIA
SOFIA - no intent ranking
Personalized PageRank
0.8
Ratio
0.6
0.4
0.2
0.0 0
10
101
102
103
104
105
Rank
Medians: 4 (SOFIA), 12 (SOFIA - no intent ranking), 30
(Personalized PageRank).
Matteo Dell'Amico, Licia Capra
SOFIA: Social Filtering for Niche Markets
Social Filtering
Datasets
SOFIA
Hidden Judgements
Experiments
Sybil Attacks
Hidden Judgements - Last.fm
1.0
SOFIA - no intent ranking
SOFIA
Personalized PageRank
0.8
Ratio
0.6
0.4
0.2
0.0 0
10
101
102
103
104
105
Rank
Medians: 174 (SOFIA), 157 (SOFIA - no intent ranking), 344
(Personalized PageRank).
Matteo Dell'Amico, Licia Capra
SOFIA: Social Filtering for Niche Markets
Social Filtering
SOFIA
Experiments
Datasets
Hidden Judgements
Sybil Attacks
Outline
1
Social Filtering
Competence: Taste Similarity
Intent: Trust Transitivity
The Social Filtering Pattern
2
SOFIA
Intent: Personalized PageRank
Competence: HITS
From HITS to SOFIA
3
Experiments
Datasets
Hidden Judgements
Sybil Attacks
Matteo Dell'Amico, Licia Capra
SOFIA: Social Filtering for Niche Markets
Social Filtering
SOFIA
Experiments
Datasets
Hidden Judgements
Sybil Attacks
Sybil Attack
We simulated an attack trying to
inate the rating of a
malicious judgement X on a victim
node A.
A coalition of 100 Sybil nodes is created.
All Sybils copy A's judgements, then add a link to X.
before and after the
attack, on the victim node A and on other nodes.
We study how the ranking of X changes
Matteo Dell'Amico, Licia Capra
SOFIA: Social Filtering for Niche Markets
Social Filtering
SOFIA
Experiments
Datasets
Hidden Judgements
Sybil Attacks
Sybil Attack - Last.fm (1)
Attack
Algorithm
edges
Any
no attack
victim
SOFIA - no intent
Pers. PageRank
other
25
50
75
12,914
25,827
38,741
1
1
1
348
1,185
3,132
1
10,730
20,493
33,322
10
4,759
8,757
13,371
100
1,092
2,012
3,101
victim
3,406
11,182
31,765
other
9,599
19,186
33,064
469
1,311
2,815
4,612
8,779
14,718
1
SOFIA
Percentiles
Role
10
100
victim
other
victim
other
Matteo Dell'Amico, Licia Capra
13
74
197
1,040
2,649
5,571
SOFIA: Social Filtering for Niche Markets
Social Filtering
SOFIA
Experiments
Datasets
Hidden Judgements
Sybil Attacks
Sybil Attack - Last.fm (2)
Attack
Algorithm
SOFIA (α
SOFIA (α
Tradeo
edges
= 0.9)
= 0.5)
between
100
100
Percentiles
Role
25
50
75
victim
13
74
197
1,040
2,649
5,571
138
353
697
1,578
3,106
5,128
other
victim
other
accuracy and attack resilience.
Matteo Dell'Amico, Licia Capra
SOFIA: Social Filtering for Niche Markets
Social Filtering
SOFIA
Experiments
Datasets
Hidden Judgements
Sybil Attacks
Conclusions
Social Filtering
Integrating information about social networks and subjective
preferences we obtain recommendations that are:
Accurate (due mainly to preferences)
Attack resilient (thanks to social networks).
Incorporating social network may
increase accuracy.
SOFIA
A particular
implementation of Social Filtering.
Future Work
P2P/mobile
decentralised implementation
Other social ltering algorithms?
Matteo Dell'Amico, Licia Capra
SOFIA: Social Filtering for Niche Markets