http://cs224w.stanford.edu 10/31/2012 Jure Leskovec, Stanford - - PowerPoint PPT Presentation
http://cs224w.stanford.edu 10/31/2012 Jure Leskovec, Stanford - - PowerPoint PPT Presentation
CS224W: Social and Information Network Analysis Jure Leskovec, Stanford University http://cs224w.stanford.edu 10/31/2012 Jure Leskovec, Stanford CS224W: Social and Information Network Analysis, http://cs224w.stanford.edu 2 [Mitzenmacher, 03]
10/31/2012 Jure Leskovec, Stanford CS224W: Social and Information Network Analysis, http://cs224w.stanford.edu 2
We will analyze the following model:
๏ก Nodes arrive in order 1,2,3, โฆ , ๐ ๏ก When node ๐ is created it makes a
single out-link to an earlier node ๐ chosen:
- 1) With prob. ๐, ๐ links to ๐ chosen uniformly at
random (from among all earlier nodes)
- 2) With prob. 1 โ ๐, node ๐ chooses node ๐
uniformly at random and links to a node i points to.
10/31/2012 Jure Leskovec, Stanford CS224W: Social and Information Network Analysis, http://cs224w.stanford.edu 3
[Mitzenmacher, โ03]
Node i
p โ + = 1 1 1 ฮฑ
CLAIM: the model generates networks with power-law degree distribution with exponent:
๏ก Plan: Analyze ๐๐(๐): continuous deterministic
in-degree of node ๐ at time ๐ข > ๐
๏ก Initial condition:
- ๐๐(๐ข) = 0, when ๐ข = ๐ (node i just arrived)
๏ก Expected change of ๐๐(๐) over time:
- With prob. ๐ node ๐ข + 1 links randomly:
- Links to our node ๐ with prob. 1/๐ข
- With prob. 1 โ ๐ node ๐ข + 1 links preferentially:
- Links to our node ๐ with prob.
๐๐(๐ข) ๐ข
๐๐ ๐ + ๐ โ ๐๐ ๐ = ๐ช ๐ ๐ + ๐ โ ๐ ๐๐(๐) ๐
๏ก How does ๐๐(๐) change as ๐โโ?
10/31/2012 Jure Leskovec, Stanford CS224W: Social and Information Network Analysis, http://cs224w.stanford.edu 4
Node i
๏ก Expected change of ๐๐ ๐ :
- ๐๐(๐ + ๐) โ ๐๐(๐) = ๐
๐ ๐ + ๐ โ ๐ ๐๐(๐) ๐
- d๐๐(๐ข)
d๐ข
= ๐
1 ๐ข + 1 โ ๐ ๐๐(๐ข) ๐ข
=
๐+๐๐๐(๐ข) ๐ข
- 1
๐+๐๐๐(๐ข) d๐๐(๐ข) = 1 ๐ข d๐ข
- โซ
1 ๐+๐๐๐(๐ข) d๐๐(๐ข) = โซ 1 ๐ข d๐ข
- 1
๐ ln ๐ + ๐๐๐ ๐ข
= ln ๐ข + ๐
- ๐ + ๐๐๐ ๐ข = ๐ต ๐ข๐ โ ๐๐ ๐ =
๐ ๐ ๐ฉ๐๐ โ ๐
10/31/2012 Jure Leskovec, Stanford CS224W: Social and Information Network Analysis, http://cs224w.stanford.edu 5
๐ = (1 โ ๐) integrate Let ๐ต = ๐๐ and exponentiate Divide by ๐ + ๐ ๐๐(๐ข)
A=?
What is the value of constant A?
๏ก We know: ๐๐ ๐ = 0 ๏ก So: ๐๐ ๐ = 1
๐ ๐ต๐๐ โ ๐ = 0
๏ก โ ๐ฉ = ๐
๐๐
๏ก And so โ ๐๐ ๐ = ๐
๐ ๐ ๐ ๐
โ ๐
10/31/2012 Jure Leskovec, Stanford CS224W: Social and Information Network Analysis, http://cs224w.stanford.edu 6
๐๐ ๐ = ๐ ๐ ๐ฉ๐๐ โ ๐
Note: Old nodes (small ๐ values) have higher in-degrees ๐๐(๐ข)
๏ก What is ๐ฎ(๐) the fraction of nodes that has
degree at least ๐ at time ๐?
- How many nodes i have degree > ๐?
- ๐๐ ๐ข =
๐ ๐ ๐ข ๐ ๐
โ 1 > ๐
- Solve for ๐ and obtain: ๐ฃ < ๐ฎ
๐ ๐ ๐ โ ๐ โ๐
๐
๏ก There are ๐ nodes total at time ๐ so the
faction ๐ฎ(๐) is:
10/31/2012 Jure Leskovec, Stanford CS224W: Social and Information Network Analysis, http://cs224w.stanford.edu 7
q
k p q k F
1
1 ) (
โ
๏ฃบ ๏ฃป ๏ฃน ๏ฃฏ ๏ฃฐ ๏ฃฎ + =
Note: F(k) is a CCDF
- f the degree
distribution
๏ก What is the fraction of nodes with
degree exactly ๐?
- Take the derivative of โ๐บ(๐) w.r.t ๐
- ๐บ(๐) is CCDF, so โ๐บ๐บ(๐) is the PDF
10/31/2012 Jure Leskovec, Stanford CS224W: Social and Information Network Analysis, http://cs224w.stanford.edu 8
p k p q p k F
q
โ + = โ ๏ฃบ ๏ฃป ๏ฃน ๏ฃฏ ๏ฃฐ ๏ฃฎ + =
โ โ
1 1 1 1 1 ) ( '
1 1
ฮฑ
q.e.d.
q
k p q k F
1
1 ) (
โ
๏ฃบ ๏ฃป ๏ฃน ๏ฃฏ ๏ฃฐ ๏ฃฎ + =
๏ก Pref. attachment gives power-law degrees ๏ก Intuitively a reasonable process ๏ก Can tune ๐ to get the observed exponent
- On the web, ๐[๐๐๐๐ โ๐๐ ๐๐๐๐๐๐ ๐] ~ ๐โ2.1
- 2.1 = 1 + 1/(1 โ ๐) โ ๐ ~ ๐. ๐
10/31/2012 Jure Leskovec, Stanford CS224W: Social and Information Network Analysis, http://cs224w.stanford.edu 9
๏ก Two changes from the Gnp
- (1) Growth
- (2) Preferential attachment
๏ก Do we need both? Yes!
- Add growth to Gnp (i.e., ๐ = 1):
- ๐ฆ๐ = degree of node ๐ at the end
- ๐
๐(๐ฃ) = 1 if ๐ฃ links to ๐, else 0
- ๐
๐ = ๐ ๐(๐ + 1) + ๐ ๐(๐ + 2) + โฏ + ๐ ๐(๐)
- ๐น[๐
๐(๐ฃ)] = ๐[๐ฃ ๐๐๐๐๐ ๐ข๐ ๐] = 1/(๐ฃ โ 1)
- ๐น ๐
๐ = โ 1 ๐ฃโ1 ๐ ๐+1
= 1
๐ + 1 ๐+1 + โฏ + 1 ๐โ1 = ๐ผ๐โ1 โ ๐ผ ๐
- ๐น[๐
๐] = log
(๐ โ 1) โ log (๐) = log ((๐ โ 1)/๐) NOT ๐
๐ ๐ฝ
10/31/2012 Jure Leskovec, Stanford CS224W: Social and Information Network Analysis, http://cs224w.stanford.edu 10
Hnโฆnth harmonic number: ๐ผ๐ = 1 ๐ โ log (๐)
๐ ๐=1
๏ก Preferential attachment is not so good at
predicting network structure
- Age-degree correlation
- Solution: Node fitness (virtual degree)
- Links among high degree nodes
- On the web nodes sometime avoid linking to each other
๏ก Further questions:
- What is a reasonable model for how people
sample through web-pages and link to them?
- Short random walks
- Effect of search engines โ reaching pages based on
number of links to them
10/31/2012 Jure Leskovec, Stanford CS224W: Social and Information Network Analysis, http://cs224w.stanford.edu 11
๐๐ ๐ = ๐ ๐ ๐ ๐
๐
โ ๐
3 3 3 2 2 log
log log log ) 1 log( log log
> = < < = ๏ฃด ๏ฃด ๏ฃด ๏ฃด ๏ฃด ๏ฃณ ๏ฃด ๏ฃด ๏ฃด ๏ฃด ๏ฃด ๏ฃฒ ๏ฃฑ =
โ
ฮฑ ฮฑ ฮฑ ฮฑ
ฮฑ
n const h
n n n
Size of the biggest hub is of order O(N). Most nodes can be connected within two steps, thus the average path length will be independent of the network size. The average path length increases slower than
- logarithmically. In Gnp all nodes have comparable degree,
thus most paths will have comparable length. In a scale- free network vast majority of the path go through the few high degree hubs, reducing the distances between nodes. Some models produce ๐ฝ = 3. This was first derived by Bollobas et al. for the network diameter in the context of a dynamical model, but it holds for the average path length as well.
The second moment of the distribution is finite, thus in
many ways the network behaves as a random network. Hence the average path length follows the result that we derived for the random network model earlier.
Degree exponent
- Avg. path
length Ultra small world Small world
10/31/2012 Jure Leskovec, Stanford CS224W: Social and Information Network Analysis, http://cs224w.stanford.edu 12
๐ฝ = 1 Second moment ๐2 diverges ๐2 finite Average ๐ diverges ๐ finite Ultra small world behavior Small world Behaves like a random network The scale-free behavior is relevant Regime full of anomaliesโฆ
web web internet actor collaboration metabolic citation
๐ฝ = 2 ๐ฝ = 3
10/31/2012 Jure Leskovec, Stanford CS224W: Social and Information Network Analysis, http://cs224w.stanford.edu 13
๏ก How does network
connectivity change as nodes get removed?
[Albert et al. 00; Palmer et al. 01]
๏ก Nodes can be removed:
- Random failure:
- Remove nodes uniformly at random
- Targeted attack:
- Remove nodes in order of decreasing degree
๏ก This is important for robustness of the internet
as well as epidemiology
10/31/2012 Jure Leskovec, Stanford CS224W: Social and Information Network Analysis, http://cs224w.stanford.edu 17
๏ก Real networks are resilient to random failures ๏ก Gnp has better resilience to targeted attacks
- Need to remove all pages of degree >5 to disconnect the Web
- But this is a very small fraction of all web pages
10/31/2012 Jure Leskovec, Stanford CS224W: Social and Information Network Analysis, http://cs224w.stanford.edu 18
Fraction of removed nodes Mean path length Fraction of removed nodes Random failures Targeted attack Gnp network AS network Random failures Targeted attack
๏ก There is no universal degree exponent
characterizing all networks
๏ก We need growth and the preferential attachment
for the emergence of scale-free property
- The mechanism is domain dependent
- Many processes give rise to scale-free networks
๏ก Modeling real networks:
- Identify microscopic processes that occur in the network
- Measure their frequency from real data
- Develop dynamical models that capture these processes
- If the model is correct, it should predict the observations
10/31/2012 Jure Leskovec, Stanford CS224W: Social and Information Network Analysis, http://cs224w.stanford.edu 19
๏ก Copying mechanism (directed network)
- Select a node and an edge of this node
- Attach to the endpoint of this edge
๏ก Walking on a network (directed network)
- The new node connects to a node, then to every
- first, second, โฆ neighbor of this node
๏ก Attaching to edges
- Select an edge and attach to both endpoints of this edge
๏ก Node duplication
- Duplicate a node with all its edges
- Randomly prune edges of new node
10/31/2012 Jure Leskovec, Stanford CS224W: Social and Information Network Analysis, http://cs224w.stanford.edu 20
๏ก Preferential attachment is a model
- f a growing network
๏ก Can we find a more realistic model? ๏ก What governs network growth & evolution?
- P1) Node arrival process:
- When nodes enter the network
- P2) Edge initiation process:
- Each node decides when to initiate an edge
- P3) Edge destination process:
- The node determines destination of the edge
[Leskovec, Backstrom, Kumar, Tomkins, 2008]
10/31/2012 Jure Leskovec, Stanford CS224W: Social and Information Network Analysis, http://cs224w.stanford.edu 22
๏ก 4 online social networks with
exact edge arrival sequence
- For every edge (u,v) we know exact
time of the creation tuv
๏ก Directly observe mechanisms leading
to global network properties
10/31/2012 Jure Leskovec, Stanford CS224W: Social and Information Network Analysis, http://cs224w.stanford.edu 23
(F) (D) (A) (L)
and so on for millionsโฆ
[Leskovec et al., KDD โ08]
10/31/2012 Jure Leskovec, Stanford CS224W: Social and Information Network Analysis, http://cs224w.stanford.edu 24
(F) (D) (A) (L)
Flickr: Exponential Delicious: Linear Answers: Sub-linear LinkedIn: Quadratic
๏ก How long do nodes live?
- Node life-time is the time between the 1st
and the last edge of a node
๏ก How do nodes โwake upโ to create links?
10/31/2012 Jure Leskovec, Stanford CS224W: Social and Information Network Analysis, http://cs224w.stanford.edu 25
time 1st edge
- f node i
Last edge
- f node i
Lifetime of a node time 1st edge
- f node i
Last edge
- f node i
Node i creates edges
๏ก Lifetime a:
Time between nodeโs first and last edge
Node lifetime is exponentially distributed: ๐๐ ๐ = ๐๐โ๐๐
10/31/2012 Jure Leskovec, Stanford CS224W: Social and Information Network Analysis, http://cs224w.stanford.edu 26
๏ก How do nodes โwake upโ to create edges?
- Edge gap ๐บ๐ ๐ : time between ๐th and ๐ + 1st
edge of node ๐:
- Let ๐ข๐ ๐ be the creation time of ๐-th edge of node ๐
- ๐๐ ๐ฃ = ๐ข๐+1 ๐ฃ โ ๐ข๐ ๐ฃ
- ๐บ๐ is a distribution (histogram) of ๐บ๐ ๐ over all nodes ๐ฃ
10/31/2012 Jure Leskovec, Stanford CS224W: Social and Information Network Analysis, http://cs224w.stanford.edu 27
time 1st edge
- f node i
Last edge
- f node i
๐1 ๐ ๐2 ๐ ๐3 ๐ Node u ๐1 ๐ฃ Node v ๐1 ๐ค Node w ๐1 ๐ฅ
ฮฒ ฮฑ
ฮด ฮด
โ โ
โ e pg
1 1)
(
Edge gap ๐บ๐: inter-arrival time between ๐th and ๐ + 1st edge
For every d we make a separate histogram
10/31/2012 Jure Leskovec, Stanford CS224W: Social and Information Network Analysis, http://cs224w.stanford.edu 28
Edge gap, ๐1 Edge gap probability P(๐1)
๏ก How do ๐ท and ๐ธ change as a function of ๐?
10/31/2012 Jure Leskovec, Stanford CS224W: Social and Information Network Analysis, http://cs224w.stanford.edu 29
d de
p
d d g ฮฒ ฮฑ
ฮด ฮด
โ โ
โ ) (
To each plot of ๐บ๐ fit:
๐ท is constant! ๐ธ linearly increases!
10/31/2012 Jure Leskovec, Stanford CS224W: Social and Information Network Analysis, http://cs224w.stanford.edu 30
๏ก ๐ท const., ๐ธ linear in ๐. What does this mean? ๏ก Gaps get smaller with ๐!
Degree ๐ = 1 ๐ = 3 ๐ = 2 Log ๐บ๐ Log ๐๐(๐บ๐)
d d d g
e p
โ โ โ
โ
ฮฒ ฮฑ
ฮด ฮด ) (
ฮฑ
ฮด
โ
โ
d
๏ก Source node i wakes up and creates an edge ๏ก How does i select a target node j?
- What is the degree of the target j?
- Does preferential attachment really hold?
- How many hops away is the target j?
- Are edges attaching locally?
10/31/2012 Jure Leskovec, Stanford CS224W: Social and Information Network Analysis, http://cs224w.stanford.edu 31
2 3 4
๏ก Are edges more likely to connect to higher
degree nodes? YES!
10/31/2012 Jure Leskovec, Stanford CS224W: Social and Information Network Analysis, http://cs224w.stanford.edu 32
ฯ
k k pe โ ) (
Gnp PA Flickr
Network ฯ Gnp PA 1 Flickr 1 Delicious 1 Answers 0.9 LinkedIn 0.6
[Leskovec et al., KDD โ08]
u w v
๏ก Just before the edge (u,w) is placed how
many hops are between u and w?
10/31/2012 Jure Leskovec, Stanford CS224W: Social and Information Network Analysis, http://cs224w.stanford.edu 33
Network % ฮ Flickr 66% Delicious 28% Answers 23% LinkedIn 50% Fraction of triad closing edges
Real edges are local! Most of them close triangles!
Gnp PA Flickr
[Leskovec et al., KDD โ08]
๏ก Focus only on triad-closing edges ๏ก New triad-closing edge (u,w) appears next ๏ก Model this as 2 independent choices:
- 1. u choses neighbor v
- 2. v choses neighbor w
and connect u to w
- E.g.: Under Random-Random:
- ๐ ๐ฃ, ๐ฅ =
1 5 โ 1 2 + 1 5 โ 1 = 3 10
๏ก Under a particular pair of โstrategiesโ:
Likelihood of the graph = โ ๐ ๐ฃ, ๐ฅ
๐ฃ,๐ฅ โ๐น
10/31/2012 Jure Leskovec, Stanford CS224W: Social and Information Network Analysis, http://cs224w.stanford.edu 34
u w v vโ
[Leskovec et al., KDD โ08]
๏ก Improvement in log-likelihood over baseline:
- Baseline: Pick a random node 2 hops away
10/31/2012 Jure Leskovec, Stanford CS224W: Social and Information Network Analysis, http://cs224w.stanford.edu 35
Strategy to select v (1st node) Select w (2nd node)
Strategies to pick a neighbor:
- random: uniformly at random
- deg: proportional to its degree
- com: prop. to the number of common friends
- last: prop. to time since last activity
- comlast: prop. to com*last
u w v
[Leskovec et al., KDD โ08]
๏ก The model of network evolution
Jure Leskovec, Stanford CS224W: Social and Information Network Analysis, http://cs224w.stanford.edu
Process Model P1) Node arrival
- Node arrival function is given
P2) Edge initiation
- Node lifetime is exponential
- Edge gaps get smaller as the
degree increases P3) Edge destination Pick edge destination using random-random
10/31/2012 36
[Leskovec et al., KDD โ08]
๏ก Theorem: Exponential node lifetimes and
power-law with exponential cutoff edge gaps lead to power-law degree distributions
๏ก Comments:
- The proof is based on a combination of
exponentials (see HW3)
- Interesting as temporal behavior predicts a
structural network property
10/31/2012 Jure Leskovec, Stanford CS224W: Social and Information Network Analysis, http://cs224w.stanford.edu 37
[Leskovec et al., KDD โ08]
๏ก Given the model one can take an existing
network continue its evolution
๏ก Compare true and predicted (based on the
theorem) degree exponent:
10/31/2012 Jure Leskovec, Stanford CS224W: Social and Information Network Analysis, http://cs224w.stanford.edu 38
๏ก How do networks evolve at the macro level?
- What are global phenomena of network growth?
๏ก Questions:
- What is the relation between the number of nodes
n(t) and number of edges e(t) over time t?
- How does diameter change as the network grows?
- How does degree distribution evolve as the
network grows?
10/31/2012 Jure Leskovec, Stanford CS224W: Social and Information Network Analysis, http://cs224w.stanford.edu 39
๏ก N(t) โฆ nodes at time t ๏ก E(t) โฆ edges at time t ๏ก Suppose that
N(t+1) = 2 * N(t)
๏ก Q: what is
E(t+1) =2 * E(t)
๏ก A: over-doubled!
- But obeying the Densification Power Law
10/31/2012 Jure Leskovec, Stanford CS224W: Social and Information Network Analysis, http://cs224w.stanford.edu
[Leskovec et al., KDD 05]
40
๏ก Networks are denser over time ๏ก Densification Power Law:
a โฆ densification exponent (1 โค a โค 2)
๏ก What is the relation between
the number of nodes and the edges over time?
๏ก First guess: constant average
degree over time
Internet Citations a=1.2 a=1.6
N(t) E(t) N(t) E(t)
41 10/31/2012 Jure Leskovec, Stanford CS224W: Social and Information Network Analysis, http://cs224w.stanford.edu
[Leskovec et al., KDD 05]
๏ก Densification Power Law
- the number of edges grows faster than the
number of nodes โ average degree is increasing
a โฆ densification exponent: 1 โค a โค 2:
- a=1: linear growth โ constant out-degree
(traditionally assumed)
- a=2: quadratic growth โ clique
10/31/2012 Jure Leskovec, Stanford CS224W: Social and Information Network Analysis, http://cs224w.stanford.edu 42
- r
equivalently
[Leskovec et al. KDD 05]
๏ก Prior models and intuition say
that the network diameter slowly grows (like log N, log log N)
time diameter diameter size of the graph Internet Citations
๏ก Diameter shrinks over time
- as the network grows the
distances between the nodes slowly decrease
43 10/31/2012 Jure Leskovec, Stanford CS224W: Social and Information Network Analysis, http://cs224w.stanford.edu
[Leskovec et al. KDD 05]
10/31/2012 Jure Leskovec, Stanford CS224W: Social and Information Network Analysis, http://cs224w.stanford.edu
diameter size of the graph
Erdos-Renyi random graph
Densification exponent a =1.3
Densifying random graph has increasing diameterโ There is more to shrinking diameter than just densification Is shrinking diameter just a consequence of densification?
[Leskovec et al. TKDD 07]
44
Is it the degree sequence? Compare diameter of a:
- True network (red)
- Random network with
the same degree distribution (blue)
10/31/2012 Jure Leskovec, Stanford CS224W: Social and Information Network Analysis, http://cs224w.stanford.edu 45
size of the graph diameter Citations
Densification + degree sequence give shrinking diameter
๏ก How does degree distribution evolve to allow
for densification?
๏ก Option 1) Degree exponent ๐ฝ๐ข is constant:
- Fact 1: For 1 < ๐ฝ๐ข < 2 constant, then: ๐ = ๐/๐ท
10/31/2012 Jure Leskovec, Stanford CS224W: Social and Information Network Analysis, http://cs224w.stanford.edu
Email network [Leskovec et al. TKDD 07]
46
A consequence of what we learned in last class: โ Power-laws with exponents <2 have infinite expectations. โ So, by maintaining constant degree exponent ๐ฝ the average degree grows.
๏ก How does degree distribution evolve to allow
for densification?
๏ก Option 2) ๐ฝ๐ข evolves with graph size ๐:
- Fact 2: For ๐ฝ๐ข =
4๐๐ข
๐โ1โ1
2๐๐ข
๐โ1โ1
10/31/2012 Jure Leskovec, Stanford CS224W: Social and Information Network Analysis, http://cs224w.stanford.edu 47
Citation network [Leskovec et al. TKDD 07] Remember, expected degree is: ๐น ๐ฆ = ๐ฝ โ 1 ๐ฝ โ 2 ๐ฆ๐ So ๐ฝ has to decay as as function of graph size for the avg. degree to go up
๏ก Want to model graphs that density and have
shrinking diameters
๏ก Intuition:
- How do we meet friends at a party?
- How do we identify references when writing
papers?
10/31/2012 48
[Leskovec et al. TKDD 07]
v w
Jure Leskovec, Stanford CS224W: Social and Information Network Analysis, http://cs224w.stanford.edu
๏ก The Forest Fire model has 2 parameters:
- p โฆ forward burning probability
- r โฆ backward burning probability
๏ก The model:
- Each turn a new node v arrives
- Uniformly at random chooses an โambassadorโ w
- Flip 2 geometric coins to determine the number of
in- and out-links of w to follow
- โFireโ spreads recursively until it dies
- New node v links to all burned nodes
Jure Leskovec, Stanford CS224W: Social and Information Network Analysis, http://cs224w.stanford.edu 49 10/31/2012
[Leskovec et al. TKDD 07] Geometric distribution:
๏ก Forest Fire generates graphs that densify
and have shrinking diameter
10/31/2012 Jure Leskovec, Stanford CS224W: Social and Information Network Analysis, http://cs224w.stanford.edu 50
densification diameter 1.32 N(t) E(t) N(t) diameter
๏ก Forest Fire also generates graphs with
power-law degree distribution
Jure Leskovec, Stanford CS224W: Social and Information Network Analysis, http://cs224w.stanford.edu 51
in-degree
- ut-degree
log count vs. log in-degree log count vs. log out-degree
10/31/2012
๏ก Fix backward
probability r and vary forward burning prob. p
๏ก Notice a sharp
transition between sparse and clique-like graphs
๏ก Sweet spot is
very narrow
Sparse graph Clique-like graph Increasing diameter Decreasing diameter Constant diameter
Jure Leskovec, Stanford CS224W: Social and Information Network Analysis, http://cs224w.stanford.edu 52 10/31/2012