Using Adaptive Methods for Updating/Downdating PageRank Gene H. Golub Stanford University SCCM Joint Work With Sep Kamvar, Taher Haveliwala.

Slides:



Advertisements
Similar presentations
Numerical Solution of Linear Equations
Advertisements

Fast Fourier Transform for speeding up the multiplication of polynomials an Algorithm Visualization Alexandru Cioaca.
Chapter 9 Approximating Eigenvalues
Chapter 28 – Part II Matrix Operations. Gaussian elimination Gaussian elimination LU factorization LU factorization Gaussian elimination with partial.
CS345 Data Mining Link Analysis Algorithms Page Rank Anand Rajaraman, Jeffrey D. Ullman.
Link Analysis: PageRank
Hawkes Learning Systems: College Algebra
Google’s PageRank By Zack Kenz. Outline Intro to web searching Review of Linear Algebra Weather example Basics of PageRank Solving the Google Matrix Calculating.
Solving Linear Systems (Numerical Recipes, Chap 2)
Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display. Parallel Programming in C with MPI and OpenMP Michael J. Quinn.
Modern iterative methods For basic iterative methods, converge linearly Modern iterative methods, converge faster –Krylov subspace method Steepest descent.
Experiments with MATLAB Experiments with MATLAB Google PageRank Roger Jang ( 張智星 ) CSIE Dept, National Taiwan University, Taiwan
1cs542g-term Notes  In assignment 1, problem 2: smoothness = number of times differentiable.
1cs542g-term High Dimensional Data  So far we’ve considered scalar data values f i (or interpolated/approximated each component of vector values.
1cs542g-term Notes  Assignment 1 due tonight ( me by tomorrow morning)
Eigenvalues and eigenvectors
Eigenvalues and Eigenvectors
Mar Numerical approach for large-scale Eigenvalue problems 1 Definition Why do we study it ? Is the Behavior system based or nodal based? What are.
Some useful linear algebra. Linearly independent vectors span(V): span of vector space V is all linear combinations of vectors v i, i.e.
Page Rank.  Intuition: solve the recursive equation: “a page is important if important pages link to it.”  Maximailly: importance = the principal eigenvector.
Ch 7.3: Systems of Linear Equations, Linear Independence, Eigenvalues
Presented By: Wang Hao March 8 th, 2011 The PageRank Citation Ranking: Bringing Order to the Web Lawrence Page, Sergey Brin, Rajeev Motwani, Terry Winograd.
An introduction to iterative projection methods Eigenvalue problems Luiza Bondar the 23 rd of November th Seminar.
CS345 Data Mining Link Analysis Algorithms Page Rank Anand Rajaraman, Jeffrey D. Ullman.
Ordinary least squares regression (OLS)
Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display. Parallel Programming in C with MPI and OpenMP Michael J. Quinn.
Finding Eigenvalues and Eigenvectors What is really important?
1cs542g-term Notes  Extra class next week (Oct 12, not this Friday)  To submit your assignment: me the URL of a page containing (links to)
Matrices CS485/685 Computer Vision Dr. George Bebis.
MATH 685/ CSI 700/ OR 682 Lecture Notes Lecture 6. Eigenvalue problems.
Dominant Eigenvalues & The Power Method
“ The Initiative's focus is to dramatically advance the means to collect,store,and organize information in digital forms,and make it available for searching,retrieval,and.

Presented By: - Chandrika B N
Boyce/DiPrima 9th ed, Ch 7.3: Systems of Linear Equations, Linear Independence, Eigenvalues Elementary Differential Equations and Boundary Value Problems,
The PageRank Citation Ranking: Bringing Order to the Web Presented by Aishwarya Rengamannan Instructor: Dr. Gautam Das.
Linear Algebra Review 1 CS479/679 Pattern Recognition Dr. George Bebis.
Google’s Billion Dollar Eigenvector Gerald Kruse, PhD. John ‘54 and Irene ‘58 Dale Professor of MA, CS and I T Interim Assistant Provost Juniata.
Eigenvalue Problems Solving linear systems Ax = b is one part of numerical linear algebra, and involves manipulating the rows of a matrix. The second main.
Linear Algebra/Eigenvalues and eigenvectors. One mathematical tool, which has applications not only for Linear Algebra but for differential equations,
Exploiting Web Matrix Permutations to Speedup PageRank Computation Presented by: Aries Chan, Cody Lawson, and Michael Dwyer.
Algorithms for a large sparse nonlinear eigenvalue problem Yusaku Yamamoto Dept. of Computational Science & Engineering Nagoya University.
Random Walks and Semi-Supervised Learning Longin Jan Latecki Based on : Xiaojin Zhu. Semi-Supervised Learning with Graphs. PhD thesis. CMU-LTI ,
AN ORTHOGONAL PROJECTION
Matrices CHAPTER 8.1 ~ 8.8. Ch _2 Contents  8.1 Matrix Algebra 8.1 Matrix Algebra  8.2 Systems of Linear Algebra Equations 8.2 Systems of Linear.
Chapter 3 Solution of Algebraic Equations 1 ChE 401: Computational Techniques for Chemical Engineers Fall 2009/2010 DRAFT SLIDES.
Computing Eigen Information for Small Matrices The eigen equation can be rearranged as follows: Ax = x  Ax = I n x  Ax - I n x = 0  (A - I n )x = 0.
PageRank. s1s1 p 12 p 21 s2s2 s3s3 p 31 s4s4 p 41 p 34 p 42 p 13 x 1 = p 21 p 34 p 41 + p 34 p 42 p 21 + p 21 p 31 p 41 + p 31 p 42 p 21 / Σ x 2 = p 31.
Vector Norms and the related Matrix Norms. Properties of a Vector Norm: Euclidean Vector Norm: Riemannian metric:
Linear algebra: matrix Eigen-value Problems Eng. Hassan S. Migdadi Part 1.
A Note on Rectangular Quotients By Achiya Dax Hydrological Service Jerusalem, Israel
Algorithms 2005 Ramesh Hariharan. Algebraic Methods.
Linear Systems – Iterative methods
Instructor: Mircea Nicolescu Lecture 8 CS 485 / 685 Computer Vision.
Link Analysis Algorithms Page Rank Slides from Stanford CS345, slightly modified.
Matrices CHAPTER 8.9 ~ Ch _2 Contents  8.9 Power of Matrices 8.9 Power of Matrices  8.10 Orthogonal Matrices 8.10 Orthogonal Matrices 
PageRank Google : its search listings always seemed deliver the “good stuff” up front. 1 2 Part of the magic behind it is its PageRank Algorithm PageRank™
Extrapolation to Speed-up Query- dependent Link Analysis Ranking Algorithms Muhammad Ali Norozi Department of Computer Science Norwegian University of.
ALGEBRAIC EIGEN VALUE PROBLEMS
Web Mining Link Analysis Algorithms Page Rank. Ranking web pages  Web pages are not equally “important” v  Inlinks.
MA2213 Lecture 12 REVIEW. 1.1 on page Compute Compute quadratic Taylor polynomials for 12. Compute where g is the function in problems 11 and 12.
Motivation Modern search engines for the World Wide Web use methods that require solving huge problems. Our aim: to develop multiscale techniques that.
Review of Linear Algebra
CHE 391 T. F. Edgar Spring 2012.
Link Counts GOOGLE Page Rank engine needs speedup
Iterative Aggregation Disaggregation
CSCE569 Parallel Computing
CS485/685 Computer Vision Dr. George Bebis
Numerical Analysis Lecture 16.
Maths for Signals and Systems Linear Algebra in Engineering Lectures 13 – 14, Tuesday 8th November 2016 DR TANIA STATHAKI READER (ASSOCIATE PROFFESOR)
Presentation transcript:

Using Adaptive Methods for Updating/Downdating PageRank Gene H. Golub Stanford University SCCM Joint Work With Sep Kamvar, Taher Haveliwala

2 Motivation Problem: Compute PageRank after the Web has changed slightly Motivation: “Freshness” Note: Since the web is growing, PageRank Computations don’t get faster as computers do.

3 Outline Power Method: Definition of PageRank Computation of PageRank Convergence Properties Outline of Our Approach Empirical Results

4 Link Counts Linked by 2 Important Pages Linked by 2 Unimportant pages Martin’s Home Page Gene’s Home Page Yahoo! Iain Duff’s Home PageGeorge W. Bush Donald Rumsfeld

5 Definition of PageRank The importance of a page is given by the importance of the pages that link to it. importance of page i pages j that link to page i number of outlinks from page j importance of page j

6 Definition of PageRank 1/ DuffYahoo!SCCM Martin Gene 0.25

7 PageRank Diagram Initialize all nodes to rank 0.333

8 PageRank Diagram Propagate ranks across links (multiplying by link weights)

9 PageRank Diagram

10 PageRank Diagram

11 PageRank Diagram

12 PageRank Diagram After a while…

13 Matrix Notation =

14 Matrix Notation = Find x that satisfies:

15 Eigenvalue Distribution The matrix P T has several eigenvalues on the unit circle. This will make power method-like algorithms less effective.

16 PageRank doesn’t actually use P T. Instead, it uses A=cP T + (1-c)E T. E is a rank 1 matrix, and in general, c=0.85. This ensures a unique solution and fast convergence. For matrix A, 2 =c. 1 1 From “The Second Eigenvalue of the Google Matrix” ( Rank-1 Correction

17 Outline Definition of PageRank Computation of PageRank Convergence Properties Outline of Our Approach Empirical Results u1u1 u2u2 u3u3 u4u4 u5u5 u1u1 u2u2 u3u3 u4u4 u5u Repeat:

18 Power Method Initialize: Repeat until convergence:

19 Power Method u11u11 u22u22 u33u33 u44u44 u55u55 Express x (0) in terms of eigenvectors of A

20 Power Method u11u11 u 2  2 2 u 3  3 3 u 4  4 4 u 5  5 5

21 Power Method u11u11 u 2  u 3  u 4  u 5  5 5 2

22 Power Method u11u11 u 2  2 2 k u 3  3 3 k u 4  4 4 k u 5  5 5 k

23 Power Method u11u11 u2u2 u3u3 u4u4 u5u5

24 Why does it work? Imagine our n x n matrix A has n distinct eigenvectors u i. u11u11 u22u22 u33u33 u44u44 u55u55 Then, you can write any n-dimensional vector as a linear combination of the eigenvectors of A.

25 Why does it work? From the last slide: To get the first iterate, multiply x (0) by A. First eigenvalue is 1. Therefore: All less than 1

26 Power Method u11u11 u22u22 u33u33 u44u44 u55u55 u11u11 u 2  2 2 u 3  3 3 u 4  4 4 u 5  5 5 u11u11 u 2  u 3  u 4  u 5  5 5 2

27 Outline Definition of PageRank Computation of PageRank Convergence Properties Outline of Our Approach Empirical Results u1u1 u2u2 u3u3 u4u4 u5u5 u1u1 u2u2 u3u3 u4u4 u5u Repeat:

28 The smaller 2, the faster the convergence of the Power Method. Convergence u11u11 u 2  2 2 k u 3  3 3 k u 4  4 4 k u 5  5 5 k

29 Quadratic Extrapolation (Joint work with Kamvar and Haveliwala) u1u1 u2u2 u3u3 u4u4 u5u5 Estimate components of current iterate in the directions of second two eigenvectors, and eliminate them.

30 Facts that work in our favor For traditional problems: A is smaller, often dense. 2 often close to , making the power method slow. In our problem, A is huge and sparse More importantly, 2 is small 1. 1 (“The Second Eigenvalue of the Google Matrix” dbpubs.stanford.edu/pub/ )

31 How do we do this? Assume x (k) can be written as a linear combination of the first three eigenvectors (u 1, u 2, u 3 ) of A. Compute approximation to {u 2,u 3 }, and subtract it from x (k) to get x (k) ’

32 Sequence Extrapolation A classical and important field in numerical analysis: techniques for accelerating the convergence of slowly convergent infinite series and integrals.

33 Example: Aitken Δ 2 - Process Suppose A=A n +aλ n +r n where r n =bμ n +o(min{1,|μ| n }), a, b, λ, μ all nonzero, |λ|>|μ|. It can be shown that S n = (A n A n+2 –A n+1 2 )/(A n -2A n+1 +A n+2 ) satisfies (as n goes to infinity) | S n -A|  O( (|μ|/|λ|) n = o(1). |A n -A| ….

34 In other words… Assuming a certain pattern for the series is helpful in accelerating convergence. We can apply this component-wise in order to get a better estimate of the eigenvector.

35 Another approach Assume the x (k) can be represented by three eigenvectors of A:

36 Linear Combination We take some linear combination of these 3 iterates.

37 Rearranging Terms We can rearrange the terms to get: Goal: Find  1,  2,  3 so that coefficients of u 2 and u 3 are 0, and coefficient of u 1 is 1.

38 Rearranging Terms We can rearrange the terms to get: Goal: Find  1,  2,  3 so that coefficients of u 2 and u 3 are 0, and coefficient of u 1 is 1.

39 Results Quadratic Extrapolation speeds up convergence. Extrapolation was only used 5 times.

40 Estimating the coefficients Procedure 1: Set ß 1 =1 and solve the least squares problem. Procedure 2: Use the SVD for computing the coefficient of the characteristic polynomial.

41 Results Extrapolation dramatically speeds up convergence, for high values of c (c=.99)

42 Take-home message Quadratic Extrapolation estimates the components of current iterate in the direction of the second and third eigenvector, and subtracts them off. Achieves significant speedup, and ideas are useful for further speedup algorithms.

43 Summary of this part We make an assumption about the current iterate. Solve for dominant eigenvector as a linear combination of the next three iterates. We use a few iterations of the Power Method to “clean it up”.

Power Method: Outline Definition of PageRank Computation of PageRank Convergence Properties Outline of Our Approach Empirical Results

45 Most Pages Converge Quickly

46 Most Pages Converge Quickly

47 Basic Idea When a the PageRank of a page has converged, stop recomputing it.

48 Adaptive PageRank Algorithm

49 Updates Use the previous vector as a start vector. Speedup not that great. Why? The old pages converge quickly, but the new pages still take long to converge. But, if you use Adaptive PageRank, you save the computation on the old pages.

Repeat: Outline Definition of PageRank Computation of PageRank Convergence Properties Outline of Our Approach Empirical Results

51 Empirical Results 3 Update Algorithms on Stanford Web (n=700,000)

52 Take-home message Simply not recomputing PageRank of pages that have converged after an update speeds up PageRank by a factor of 2.

53 An Arnoldi/SVD approach (joint work with C. Greif) Perform Arnoldi (of degree k<<n) on A. Compute the SVD of the (k+1)-by-k unreduced Hessenberg matrix, after subtracting the augmented identity matrix from it first. Compute the linear combinations of the columns of the Arnoldi vectors Q with the null vector of H. Use resulting vector as the new guess for the Arnoldi procedure. Repeat until satisfied.

54 Advantages We *do* take advantage of knowing the largest eigenvalue. (As opposed to most general purpose eigensolve-packages.) Computing the corresponding eigenvector does not rely on prohibitive inversions or decompositions. (Matrix is BBBBBIIIIIGGGG!!) Orthogonalizing ‘feels right’ from a numerical linear algebra point of view. Smooth convergence behavior. Overhead is minimal.