27
FAST-PPR: Personalized PageRank Estimation for Large Graphs Peter Lofgren (Stanford) Joint work with Siddhartha Banerjee (Stanford), Ashish Goel (Stanford), and C. Seshadhri (Sandia)

Computing Personalized PageRank...Previous Algorithm: Local Update 8 [Anderson, et al 2007] Main Result 9 Analogy: Bidirectional Search 10 Bidirectional PageRank Algorithm 11 Reverse

  • Upload
    others

  • View
    4

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Computing Personalized PageRank...Previous Algorithm: Local Update 8 [Anderson, et al 2007] Main Result 9 Analogy: Bidirectional Search 10 Bidirectional PageRank Algorithm 11 Reverse

FAST-PPR: Personalized PageRank Estimation for Large Graphs

Peter Lofgren (Stanford)

Joint work with Siddhartha Banerjee (Stanford),

Ashish Goel (Stanford), and C. Seshadhri (Sandia)

Page 2: Computing Personalized PageRank...Previous Algorithm: Local Update 8 [Anderson, et al 2007] Main Result 9 Analogy: Bidirectional Search 10 Bidirectional PageRank Algorithm 11 Reverse

Motivation: Personalized Search

2

Page 3: Computing Personalized PageRank...Previous Algorithm: Local Update 8 [Anderson, et al 2007] Main Result 9 Analogy: Bidirectional Search 10 Bidirectional PageRank Algorithm 11 Reverse

Motivation: Personalized Search

3

Re-ranked by PPR

Page 4: Computing Personalized PageRank...Previous Algorithm: Local Update 8 [Anderson, et al 2007] Main Result 9 Analogy: Bidirectional Search 10 Bidirectional PageRank Algorithm 11 Reverse

Result Preview

4

2 sec

6 min1.2 hour

Fast-PPR Monte-Carlo

Local-Update

Page 5: Computing Personalized PageRank...Previous Algorithm: Local Update 8 [Anderson, et al 2007] Main Result 9 Analogy: Bidirectional Search 10 Bidirectional PageRank Algorithm 11 Reverse

Personalized PageRank

5

Page 6: Computing Personalized PageRank...Previous Algorithm: Local Update 8 [Anderson, et al 2007] Main Result 9 Analogy: Bidirectional Search 10 Bidirectional PageRank Algorithm 11 Reverse

Goal

6

Page 7: Computing Personalized PageRank...Previous Algorithm: Local Update 8 [Anderson, et al 2007] Main Result 9 Analogy: Bidirectional Search 10 Bidirectional PageRank Algorithm 11 Reverse

Previous Algorithm: Monte-Carlo

7

Previous Algorithm: Monte-Carlo[Avrachenkov, et al 2007]

Page 8: Computing Personalized PageRank...Previous Algorithm: Local Update 8 [Anderson, et al 2007] Main Result 9 Analogy: Bidirectional Search 10 Bidirectional PageRank Algorithm 11 Reverse

Previous Algorithm: Local Update

8

[Anderson, et al 2007]

Page 9: Computing Personalized PageRank...Previous Algorithm: Local Update 8 [Anderson, et al 2007] Main Result 9 Analogy: Bidirectional Search 10 Bidirectional PageRank Algorithm 11 Reverse

Main Result

9

Page 10: Computing Personalized PageRank...Previous Algorithm: Local Update 8 [Anderson, et al 2007] Main Result 9 Analogy: Bidirectional Search 10 Bidirectional PageRank Algorithm 11 Reverse

Analogy: Bidirectional Search

10

Page 11: Computing Personalized PageRank...Previous Algorithm: Local Update 8 [Anderson, et al 2007] Main Result 9 Analogy: Bidirectional Search 10 Bidirectional PageRank Algorithm 11 Reverse

Bidirectional PageRank Algorithm

11

Reverse Work(Frontier Discovery)

Forward Work(Random Walks)

u

Page 12: Computing Personalized PageRank...Previous Algorithm: Local Update 8 [Anderson, et al 2007] Main Result 9 Analogy: Bidirectional Search 10 Bidirectional PageRank Algorithm 11 Reverse

Main Idea

12

Page 13: Computing Personalized PageRank...Previous Algorithm: Local Update 8 [Anderson, et al 2007] Main Result 9 Analogy: Bidirectional Search 10 Bidirectional PageRank Algorithm 11 Reverse

Experimental Setup

13

Page 14: Computing Personalized PageRank...Previous Algorithm: Local Update 8 [Anderson, et al 2007] Main Result 9 Analogy: Bidirectional Search 10 Bidirectional PageRank Algorithm 11 Reverse

Empirical Running Time

14

Log Scale

Page 15: Computing Personalized PageRank...Previous Algorithm: Local Update 8 [Anderson, et al 2007] Main Result 9 Analogy: Bidirectional Search 10 Bidirectional PageRank Algorithm 11 Reverse

Summary

15

Page 16: Computing Personalized PageRank...Previous Algorithm: Local Update 8 [Anderson, et al 2007] Main Result 9 Analogy: Bidirectional Search 10 Bidirectional PageRank Algorithm 11 Reverse

Thank You

• Paper available on Arxiv

• Code available at cs.stanford.edu/~plofgren

16

Page 17: Computing Personalized PageRank...Previous Algorithm: Local Update 8 [Anderson, et al 2007] Main Result 9 Analogy: Bidirectional Search 10 Bidirectional PageRank Algorithm 11 Reverse

17

Page 18: Computing Personalized PageRank...Previous Algorithm: Local Update 8 [Anderson, et al 2007] Main Result 9 Analogy: Bidirectional Search 10 Bidirectional PageRank Algorithm 11 Reverse

Frontier is Important

18

FrontierAidedSignificanceThresholding

Page 19: Computing Personalized PageRank...Previous Algorithm: Local Update 8 [Anderson, et al 2007] Main Result 9 Analogy: Bidirectional Search 10 Bidirectional PageRank Algorithm 11 Reverse

Algorithm (Simple Version)

19

Page 20: Computing Personalized PageRank...Previous Algorithm: Local Update 8 [Anderson, et al 2007] Main Result 9 Analogy: Bidirectional Search 10 Bidirectional PageRank Algorithm 11 Reverse

Algorithm (Simple Version)

20

Page 21: Computing Personalized PageRank...Previous Algorithm: Local Update 8 [Anderson, et al 2007] Main Result 9 Analogy: Bidirectional Search 10 Bidirectional PageRank Algorithm 11 Reverse

Average Running Time

21

Reverse Work (Local Update)

Forward Work (Monte-Carlo)

Page 22: Computing Personalized PageRank...Previous Algorithm: Local Update 8 [Anderson, et al 2007] Main Result 9 Analogy: Bidirectional Search 10 Bidirectional PageRank Algorithm 11 Reverse

Correctness

22

Page 23: Computing Personalized PageRank...Previous Algorithm: Local Update 8 [Anderson, et al 2007] Main Result 9 Analogy: Bidirectional Search 10 Bidirectional PageRank Algorithm 11 Reverse

Algorithm (Theoretical Version)

23

Page 24: Computing Personalized PageRank...Previous Algorithm: Local Update 8 [Anderson, et al 2007] Main Result 9 Analogy: Bidirectional Search 10 Bidirectional PageRank Algorithm 11 Reverse

24

Algorithm (Theoretical Version)

Page 25: Computing Personalized PageRank...Previous Algorithm: Local Update 8 [Anderson, et al 2007] Main Result 9 Analogy: Bidirectional Search 10 Bidirectional PageRank Algorithm 11 Reverse

v1

Local Update Algorithm

25

Uu Uv2

Uv3

Ut

Page 26: Computing Personalized PageRank...Previous Algorithm: Local Update 8 [Anderson, et al 2007] Main Result 9 Analogy: Bidirectional Search 10 Bidirectional PageRank Algorithm 11 Reverse

Local Update Algorithm

26

Page 27: Computing Personalized PageRank...Previous Algorithm: Local Update 8 [Anderson, et al 2007] Main Result 9 Analogy: Bidirectional Search 10 Bidirectional PageRank Algorithm 11 Reverse

Local Update Algorithm

27