Part 2: Graph Mining Tools - SVD and ranking

Slides:



Advertisements
Similar presentations
CMU SCS PageRank Brin, Page description: C. Faloutsos, CMU.
Advertisements

Eigen Decomposition and Singular Value Decomposition
Eigen Decomposition and Singular Value Decomposition
Dimensionality Reduction. High-dimensional == many features Find concepts/topics/genres: – Documents: Features: Thousands of words, millions of word pairs.
CMU SCS : Multimedia Databases and Data Mining Lecture #20: SVD - part III (more case studies) C. Faloutsos.
CMU SCS : Multimedia Databases and Data Mining Lecture #19: SVD - part II (case studies) C. Faloutsos.
Chapter 28 – Part II Matrix Operations. Gaussian elimination Gaussian elimination LU factorization LU factorization Gaussian elimination with partial.
Matrices, Digraphs, Markov Chains & Their Use by Google Leslie Hogben Iowa State University and American Institute of Mathematics Leslie Hogben Iowa State.
Dimensionality Reduction PCA -- SVD
15-826: Multimedia Databases and Data Mining
10/11/2001Random walks and spectral segmentation1 CSE 291 Fall 2001 Marina Meila and Jianbo Shi: Learning Segmentation by Random Walks/A Random Walks View.
DATA MINING LECTURE 12 Link Analysis Ranking Random walks.
1cs542g-term High Dimensional Data  So far we’ve considered scalar data values f i (or interpolated/approximated each component of vector values.
CMU SCS C. Faloutsos (CMU)#1 Large Graph Algorithms Christos Faloutsos CMU McGlohon, Mary Prakash, Aditya Tong, Hanghang Tsourakakis, Babis Akoglu, Leman.
1 Algorithms for Large Data Sets Ziv Bar-Yossef Lecture 3 March 23, 2005
CMU SCS Mining Billion-node Graphs Christos Faloutsos CMU.
10-603/15-826A: Multimedia Databases and Data Mining SVD - part II (more case studies) C. Faloutsos.
Text Databases. Outline Spatial Databases Temporal Databases Spatio-temporal Databases Data Mining Multimedia Databases Text databases Image and video.
Multimedia Databases SVD II. Optimality of SVD Def: The Frobenius norm of a n x m matrix M is (reminder) The rank of a matrix M is the number of independent.
Introduction to Information Retrieval Introduction to Information Retrieval Hinrich Schütze and Christina Lioma Lecture 21: Link Analysis.
1 Algorithms for Large Data Sets Ziv Bar-Yossef Lecture 4 March 30, 2005
1 Algorithms for Large Data Sets Ziv Bar-Yossef Lecture 3 April 2, 2006
Multimedia Databases SVD II. SVD - Detailed outline Motivation Definition - properties Interpretation Complexity Case studies SVD properties More case.
Singular Value Decomposition
The Terms that You Have to Know! Basis, Linear independent, Orthogonal Column space, Row space, Rank Linear combination Linear transformation Inner product.
1 Algorithms for Large Data Sets Ziv Bar-Yossef Lecture 6 May 7, 2006
10-603/15-826A: Multimedia Databases and Data Mining SVD - part I (definitions) C. Faloutsos.
Multimedia Databases LSI and SVD. Text - Detailed outline text problem full text scanning inversion signature files clustering information filtering and.
Singular Value Decomposition and Data Management
E.G.M. PetrakisDimensionality Reduction1  Given N vectors in n dims, find the k most important axes to project them  k is user defined (k < n)  Applications:
SVD(Singular Value Decomposition) and Its Applications
CMU SCS : Multimedia Databases and Data Mining Lecture #20: SVD - part III (more case studies) C. Faloutsos.
Linear Algebra Review 1 CS479/679 Pattern Recognition Dr. George Bebis.
Carnegie Mellon Powerful Tools for Data Mining Fractals, power laws, SVD C. Faloutsos Carnegie Mellon University.
CpSc 881: Information Retrieval. 2 Recall: Term-document matrix This matrix is the basis for computing the similarity between documents and queries. Today:
CMU SCS KDD '09Faloutsos, Miller, Tsourakakis P5-1 Large Graph Mining: Power Tools and a Practitioner’s guide Task 5: Graphs over time & tensors Faloutsos,
Ranking Link-based Ranking (2° generation) Reading 21.
1 1 COMP5331: Knowledge Discovery and Data Mining Acknowledgement: Slides modified based on the slides provided by Lawrence Page, Sergey Brin, Rajeev Motwani.
EIGENSYSTEMS, SVD, PCA Big Data Seminar, Dedi Gadot, December 14 th, 2014.
CMU SCS : Multimedia Databases and Data Mining Lecture #18: SVD - part I (definitions) C. Faloutsos.
CS 540 Database Management Systems Web Data Management some slides are due to Kevin Chang 1.
CSCE822 Data Mining and Warehousing
Large Graph Mining: Power Tools and a Practitioner’s guide
CS479/679 Pattern Recognition Dr. George Bebis
Quality of a search engine
HITS Hypertext-Induced Topic Selection
Search Engines and Link Analysis on the Web
Eigen Decomposition Based on the slides by Mani Thomas and book by Gilbert Strang. Modified and extended by Longin Jan Latecki.
Jure Leskovec and Christos Faloutsos Machine Learning Department
Link-Based Ranking Seminar Social Media Mining University UC3M
Lecture: Face Recognition and Feature Reduction
15-826: Multimedia Databases and Data Mining
LSI, SVD and Data Management
Singular Value Decomposition
Part 1: Graph Mining – patterns
Lecture 22 SVD, Eigenvector, and Web Search
Prof. Paolo Ferragina, Algoritmi per "Information Retrieval"
Eigen Decomposition Based on the slides by Mani Thomas and book by Gilbert Strang. Modified and extended by Longin Jan Latecki.
SVD: Physical Interpretation and Applications
Eigen Decomposition Based on the slides by Mani Thomas and book by Gilbert Strang. Modified and extended by Longin Jan Latecki.
Prof. Paolo Ferragina, Algoritmi per "Information Retrieval"
Roadmap Introduction – Motivation Part#1: Graphs
Graph and Tensor Mining for fun and profit
Recitation: SVD and dimensionality reduction
Eigen Decomposition Based on the slides by Mani Thomas and book by Gilbert Strang. Modified and extended by Longin Jan Latecki.
Next Generation Data Mining Tools: SVD and Fractals
Eigen Decomposition Based on the slides by Mani Thomas and book by Gilbert Strang. Modified and extended by Longin Jan Latecki.
Junghoo “John” Cho UCLA
Lecture 22 SVD, Eigenvector, and Web Search
Lecture 22 SVD, Eigenvector, and Web Search
Presentation transcript:

Part 2: Graph Mining Tools - SVD and ranking (C) C. Faloutsos, 2017 Part 2: Graph Mining Tools - SVD and ranking Christos Faloutsos CMU

Outline Introduction – Motivation Node importance (HITS, PageRank) (C) C. Faloutsos, 2017 Outline Introduction – Motivation Node importance (HITS, PageRank) SVD definitions and properties HITS PageRank Conclusions Tepper, CMU, April 4 (C) C. Faloutsos, 2017

Node importance - Motivation: Given a graph (eg., web pages containing the desirable query word) Q: Which node is the most important? Tepper, CMU, April 4 (C) C. Faloutsos, 2017

Node importance - Motivation: Given a graph (eg., web pages containing the desirable query word) Q: Which node is the most important? A1: HITS (SVD = Singular Value Decomposition) A2: eigenvector (PageRank) Tepper, CMU, April 4 (C) C. Faloutsos, 2017

Node importance - motivation SVD and eigenvector analysis: very closely related Tepper, CMU, April 4 (C) C. Faloutsos, 2017

SVD - Detailed outline Motivation Definition - properties Interpretation Complexity Case studies Tepper, CMU, April 4 (C) C. Faloutsos, 2017

SVD - Motivation problem #1: text - LSI: find ‘concepts’ problem #2: compression / dim. reduction Tepper, CMU, April 4 (C) C. Faloutsos, 2017

SVD - Motivation problem #1: text - LSI: find ‘concepts’ Tepper, CMU, April 4 (C) C. Faloutsos, 2017

SVD - Motivation Customer-product, for recommendation system: lettuce tomatos chicken bread beef vegetarians meat eaters Tepper, CMU, April 4 (C) C. Faloutsos, 2017

SVD - Motivation details problem #2: compress / reduce dimensionality Tepper, CMU, April 4 (C) C. Faloutsos, 2017

Problem - specs details ~10**6 rows; ~10**3 columns; no updates; random access to any cell(s) ; small error: OK Tepper, CMU, April 4 (C) C. Faloutsos, 2017

details SVD - Motivation Tepper, CMU, April 4 (C) C. Faloutsos, 2017

details SVD - Motivation Tepper, CMU, April 4 (C) C. Faloutsos, 2017

SVD - Detailed outline Motivation Definition - properties Interpretation Complexity Case studies Additional properties Tepper, CMU, April 4 (C) C. Faloutsos, 2017

SVD - Definition (reminder: matrix multiplication x = 3 x 2 2 x 1 Tepper, CMU, April 4 (C) C. Faloutsos, 2017

SVD - Definition (reminder: matrix multiplication x = 3 x 2 2 x 1 Tepper, CMU, April 4 (C) C. Faloutsos, 2017

SVD - Definition (reminder: matrix multiplication x = 3 x 2 2 x 1 Tepper, CMU, April 4 (C) C. Faloutsos, 2017

SVD - Definition (reminder: matrix multiplication x = 3 x 2 2 x 1 Tepper, CMU, April 4 (C) C. Faloutsos, 2017

SVD - Definition (reminder: matrix multiplication x = Tepper, CMU, April 4 (C) C. Faloutsos, 2017

A[n x m] = U[n x r] L [ r x r] (V[m x r])T SVD - Definition A[n x m] = U[n x r] L [ r x r] (V[m x r])T A: n x m matrix (eg., n documents, m terms) U: n x r matrix (n documents, r concepts) L: r x r diagonal matrix (strength of each ‘concept’) (r : rank of the matrix) V: m x r matrix (m terms, r concepts) Tepper, CMU, April 4 (C) C. Faloutsos, 2017

SVD - Definition A = U L VT - example: Tepper, CMU, April 4 (C) C. Faloutsos, 2017

SVD - Properties THEOREM [Press+92]: always possible to decompose matrix A into A = U L VT , where U, L, V: unique (*) U, V: column orthonormal (ie., columns are unit vectors, orthogonal to each other) UT U = I; VT V = I (I: identity matrix) L: singular are positive, and sorted in decreasing order Tepper, CMU, April 4 (C) C. Faloutsos, 2017

SVD - Example A = U L VT - example: CS x x = MD retrieval inf. lung brain data CS x x = MD Tepper, CMU, April 4 (C) C. Faloutsos, 2017

SVD - Example A = U L VT - example: CS-concept MD-concept CS x x = MD retrieval CS-concept inf. lung MD-concept brain data CS x x = MD Tepper, CMU, April 4 (C) C. Faloutsos, 2017

SVD - Example A = U L VT - example: doc-to-concept similarity matrix retrieval CS-concept inf. lung MD-concept brain data CS x x = MD Tepper, CMU, April 4 (C) C. Faloutsos, 2017

‘strength’ of CS-concept SVD - Example A = U L VT - example: retrieval ‘strength’ of CS-concept inf. lung brain data CS x x = MD Tepper, CMU, April 4 (C) C. Faloutsos, 2017

SVD - Example A = U L VT - example: term-to-concept similarity matrix retrieval inf. lung brain data CS-concept CS x x = MD Tepper, CMU, April 4 (C) C. Faloutsos, 2017

SVD - Example A = U L VT - example: term-to-concept similarity matrix retrieval inf. lung brain data CS-concept CS x x = MD Tepper, CMU, April 4 (C) C. Faloutsos, 2017

SVD - Detailed outline Motivation Definition - properties Interpretation Complexity Case studies Additional properties Tepper, CMU, April 4 (C) C. Faloutsos, 2017

SVD - Interpretation #1 ‘documents’, ‘terms’ and ‘concepts’: U: document-to-concept similarity matrix V: term-to-concept sim. matrix L: its diagonal elements: ‘strength’ of each concept Tepper, CMU, April 4 (C) C. Faloutsos, 2017

SVD – Interpretation #1 ‘documents’, ‘terms’ and ‘concepts’: (C) C. Faloutsos, 2017 Faloutsos, Tong SVD – Interpretation #1 ‘documents’, ‘terms’ and ‘concepts’: Q: if A is the document-to-term matrix, what is AT A? A: Q: A AT ? Tepper, CMU, April 4 (C) C. Faloutsos, 2017 31

SVD – Interpretation #1 ‘documents’, ‘terms’ and ‘concepts’: Faloutsos, Tong (C) C. Faloutsos, 2017 SVD – Interpretation #1 ‘documents’, ‘terms’ and ‘concepts’: Q: if A is the document-to-term matrix, what is AT A? A: term-to-term ([m x m]) similarity matrix Q: A AT ? A: document-to-document ([n x n]) similarity matrix Tepper, CMU, April 4 (C) C. Faloutsos, 2017 -32 32

Copyright: Faloutsos, Tong (2009) (C) C. Faloutsos, 2017 SVD properties V are the eigenvectors of the covariance matrix ATA U are the eigenvectors of the Gram (inner-product) matrix AAT Further reading: 1. Ian T. Jolliffe, Principal Component Analysis (2nd ed), Springer, 2002. 2. Gilbert Strang, Linear Algebra and Its Applications (4th ed), Brooks Cole, 2005. Tepper, CMU, April 4 Copyright: Faloutsos, Tong (2009) (C) C. Faloutsos, 2017 2-33 33

SVD - Interpretation #2 details best axis to project on: (‘best’ = min sum of squares of projection errors) Tepper, CMU, April 4 (C) C. Faloutsos, 2017

details SVD - Motivation Tepper, CMU, April 4 (C) C. Faloutsos, 2017

SVD - interpretation #2 details SVD: gives best axis to project first singular vector v1 minimum RMS error Tepper, CMU, April 4 (C) C. Faloutsos, 2017

SVD - Interpretation #2 details Tepper, CMU, April 4 (C) C. Faloutsos, 2017

SVD - Interpretation #2 details A = U L VT - example: x = v1 Tepper, CMU, April 4 (C) C. Faloutsos, 2017

variance (‘spread’) on the v1 axis details SVD - Interpretation #2 A = U L VT - example: variance (‘spread’) on the v1 axis x x = Tepper, CMU, April 4 (C) C. Faloutsos, 2017

SVD - Interpretation #2 details A = U L VT - example: U L gives the coordinates of the points in the projection axis x x = Tepper, CMU, April 4 (C) C. Faloutsos, 2017

SVD - Interpretation #2 details More details Q: how exactly is dim. reduction done? = x Tepper, CMU, April 4 (C) C. Faloutsos, 2017

SVD - Interpretation #2 details More details Q: how exactly is dim. reduction done? A: set the smallest singular values to zero: x x = Tepper, CMU, April 4 (C) C. Faloutsos, 2017

SVD - Interpretation #2 details x x ~ Tepper, CMU, April 4 (C) C. Faloutsos, 2017

SVD - Interpretation #2 details x x ~ Tepper, CMU, April 4 (C) C. Faloutsos, 2017

SVD - Interpretation #2 details x x ~ Tepper, CMU, April 4 (C) C. Faloutsos, 2017

SVD - Interpretation #2 details ~ Tepper, CMU, April 4 (C) C. Faloutsos, 2017

SVD - Interpretation #2 details Exactly equivalent: ‘spectral decomposition’ of the matrix: x x = Tepper, CMU, April 4 (C) C. Faloutsos, 2017

SVD - Interpretation #2 details Exactly equivalent: ‘spectral decomposition’ of the matrix: l1 x x = u1 u2 l2 v1 v2 Tepper, CMU, April 4 (C) C. Faloutsos, 2017

SVD - Interpretation #2 details Exactly equivalent: ‘spectral decomposition’ of the matrix: m = u1 l1 vT1 + u2 l2 vT2 +... n Tepper, CMU, April 4 (C) C. Faloutsos, 2017

SVD - Interpretation #2 details Exactly equivalent: ‘spectral decomposition’ of the matrix: m r terms = u1 l1 vT1 + u2 l2 vT2 +... n n x 1 1 x m Tepper, CMU, April 4 (C) C. Faloutsos, 2017

SVD - Interpretation #2 details approximation / dim. reduction: by keeping the first few terms (Q: how many?) m = u1 l1 vT1 + u2 l2 vT2 +... n assume: l1 >= l2 >= ... Tepper, CMU, April 4 (C) C. Faloutsos, 2017

SVD - Interpretation #2 details A (heuristic - [Fukunaga]): keep 80-90% of ‘energy’ (= sum of squares of li ’s) m = u1 l1 vT1 + u2 l2 vT2 +... n assume: l1 >= l2 >= ... Tepper, CMU, April 4 (C) C. Faloutsos, 2017

SVD - Detailed outline Motivation Definition - properties Interpretation #1: documents/terms/concepts #2: dim. reduction #3: picking non-zero, rectangular ‘blobs’ Complexity Case studies Additional properties Tepper, CMU, April 4 (C) C. Faloutsos, 2017

SVD - Interpretation #3 finds non-zero ‘blobs’ in a data matrix x x = Tepper, CMU, April 4 (C) C. Faloutsos, 2017

SVD - Interpretation #3 finds non-zero ‘blobs’ in a data matrix x x = Tepper, CMU, April 4 (C) C. Faloutsos, 2017

SVD - Interpretation #3 finds non-zero ‘blobs’ in a data matrix = ‘communities’ (bi-partite cores, here) Row 1 Row 4 Col 1 Col 3 Col 4 Row 5 Row 7 Tepper, CMU, April 4 (C) C. Faloutsos, 2017

SVD - Detailed outline Motivation Definition - properties Interpretation Complexity Case studies Additional properties Tepper, CMU, April 4 (C) C. Faloutsos, 2017

SVD - Complexity O( n * m * m) or O( n * n * m) (whichever is less) less work, if we just want singular values or if we want first k singular vectors or if the matrix is sparse [Berry] Implemented: in any linear algebra package (LINPACK, matlab, Splus, mathematica ...) Tepper, CMU, April 4 (C) C. Faloutsos, 2017

SVD - conclusions so far SVD: A= U L VT : unique (*) U: document-to-concept similarities V: term-to-concept similarities L: strength of each concept dim. reduction: keep the first few strongest singular values (80-90% of ‘energy’) SVD: picks up linear correlations SVD: picks up non-zero ‘blobs’ Tepper, CMU, April 4 (C) C. Faloutsos, 2017

SVD - detailed outline ... SVD properties case studies Conclusions eigenSpokes – visualization Kleinberg’s algorithm Google’s algorithm Conclusions Tepper, CMU, April 4 (C) C. Faloutsos, 2017

(C) C. Faloutsos, 2017 EigenSpokes B. Aditya Prakash, Mukund Seshadri, Ashwin Sridharan, Sridhar Machiraju and Christos Faloutsos: EigenSpokes: Surprising Patterns and Scalable Community Chipping in Large Graphs, PAKDD 2010, Hyderabad, India, 21-24 June 2010. Tepper, CMU, April 4 (C) C. Faloutsos, 2017

EigenSpokes Given a big graph (1M x 1M) Say something about it A = U \Sigma U^T Tepper, CMU, April 4 (C) C. Faloutsos, 2017

EigenSpokes Eigenvectors of adjacency matrix related to singular vectors (symmetric, undirected graph) A = U \Sigma U^T Tepper, CMU, April 4 (C) C. Faloutsos, 2017

EigenSpokes Eigenvectors of adjacency matrix details EigenSpokes Eigenvectors of adjacency matrix related to singular vectors (symmetric, undirected graph) A = U \Sigma U^T \vec{u}_1 \vec{u}_i N N Tepper, CMU, April 4 (C) C. Faloutsos, 2017

EigenSpokes EE plot: Scatter plot of scores of u1 vs u2 (C) C. Faloutsos, 2017 EigenSpokes 2nd Principal component EE plot: Scatter plot of scores of u1 vs u2 One would expect Many points @ origin A few scattered ~randomly u2 u1 1st Principal component Tepper, CMU, April 4 (C) C. Faloutsos, 2017

EigenSpokes EE plot: Scatter plot of scores of u1 vs u2 (C) C. Faloutsos, 2017 EigenSpokes EE plot: Scatter plot of scores of u1 vs u2 One would expect Many points @ origin A few scattered ~randomly u1 u2 90o Tepper, CMU, April 4 (C) C. Faloutsos, 2017

EigenSpokes - pervasiveness Present in mobile social graph across time and space Patent citation graph Tepper, CMU, April 4 (C) C. Faloutsos, 2017

EigenSpokes - explanation Near-cliques, or near-bipartite-cores, loosely connected Tepper, CMU, April 4 (C) C. Faloutsos, 2017

EigenSpokes - explanation Near-cliques, or near-bipartite-cores, loosely connected Tepper, CMU, April 4 (C) C. Faloutsos, 2017

EigenSpokes - explanation Near-cliques, or near-bipartite-cores, loosely connected So what? Extract nodes with high scores high connectivity Good “communities” spy plot of top 20 nodes Tepper, CMU, April 4 (C) C. Faloutsos, 2017

Bipartite Communities! patents from same inventor(s) cut-and-paste bibliography! magnified bipartite community Tepper, CMU, April 4 (C) C. Faloutsos, 2017

SVD - detailed outline ... SVD properties case studies Conclusions Kleinberg’s algorithm Google’s algorithm Conclusions Tepper, CMU, April 4 (C) C. Faloutsos, 2017

Kleinberg’s algo (HITS) Kleinberg, Jon (1998). Authoritative sources in a hyperlinked environment. Proc. 9th ACM-SIAM Symposium on Discrete Algorithms. Tepper, CMU, April 4 (C) C. Faloutsos, 2017

Recall: problem dfn Given a graph (eg., web pages containing the desirable query word) Q: Which node is the most important? Tepper, CMU, April 4 (C) C. Faloutsos, 2017

Kleinberg’s algorithm Problem dfn: given the web and a query find the most ‘authoritative’ web pages for this query Step 0: find all pages containing the query terms Step 1: expand by one move forward and backward Tepper, CMU, April 4 (C) C. Faloutsos, 2017

Kleinberg’s algorithm Step 1: expand by one move forward and backward Tepper, CMU, April 4 (C) C. Faloutsos, 2017

Kleinberg’s algorithm on the resulting graph, give high score (= ‘authorities’) to nodes that many important nodes point to give high importance score (‘hubs’) to nodes that point to good ‘authorities’) hubs authorities Tepper, CMU, April 4 (C) C. Faloutsos, 2017

Kleinberg’s algorithm observations recursive definition! each node (say, ‘i’-th node) has both an authoritativeness score ai and a hubness score hi Tepper, CMU, April 4 (C) C. Faloutsos, 2017

Kleinberg’s algorithm Let E be the set of edges and A be the adjacency matrix: the (i,j) is 1 if the edge from i to j exists Let h and a be [n x 1] vectors with the ‘hubness’ and ‘authoritativiness’ scores. Then: Tepper, CMU, April 4 (C) C. Faloutsos, 2017

Kleinberg’s algorithm Then: ai = hk + hl + hm that is ai = Sum (hj) over all j that (j,i) edge exists or a = AT h k i l m Tepper, CMU, April 4 (C) C. Faloutsos, 2017

Kleinberg’s algorithm symmetrically, for the ‘hubness’: hi = an + ap + aq that is hi = Sum (qj) over all j that (i,j) edge exists or h = A a i n p q Tepper, CMU, April 4 (C) C. Faloutsos, 2017

Kleinberg’s algorithm In conclusion, we want vectors h and a such that: h = A a a = AT h Recall properties: C(2): A [n x m] v1 [m x 1] = l1 u1 [n x 1] C(3): u1T A = l1 v1T = Converges, after a few iterations, to first left- and right- singular vectors Tepper, CMU, April 4 (C) C. Faloutsos, 2017

Kleinberg’s algorithm In short, the solutions to h = A a a = AT h are the left- and right- singular-vectors of the adjacency matrix A. Starting from random a’ and iterating, we’ll eventually converge (Q: to which of all the singular-vectors? why?) Tepper, CMU, April 4 (C) C. Faloutsos, 2017

Kleinberg’s algorithm (Q: to which of all the singular-vectors? why?) A: to the ones of the strongest singular-value, because of property : (AT A ) k v’ ~ (constant) v1 Tepper, CMU, April 4 (C) C. Faloutsos, 2017

Kleinberg’s algorithm - results Eg., for the query ‘java’: 0.328 www.gamelan.com 0.251 java.sun.com 0.190 www.digitalfocus.com (“the java developer”) Tepper, CMU, April 4 (C) C. Faloutsos, 2017

Kleinberg’s algorithm - discussion ‘authority’ score can be used to find ‘similar pages’ (how?) Tepper, CMU, April 4 (C) C. Faloutsos, 2017

SVD - detailed outline ... Complexity SVD properties Case studies Kleinberg’s algorithm (HITS) Google’s algorithm Conclusions Tepper, CMU, April 4 (C) C. Faloutsos, 2017

PageRank (google) Brin, Sergey and Lawrence Page (1998). Anatomy of a Large-Scale Hypertextual Web Search Engine. 7th Intl World Wide Web Conf. Larry Page Sergey Brin Tepper, CMU, April 4 (C) C. Faloutsos, 2017

(C) C. Faloutsos, 2017 Problem: PageRank Given a directed graph, find its most interesting/central node A node is important, if it is connected with important nodes (recursive, but OK!) Tepper, CMU, April 4 (C) C. Faloutsos, 2017

Problem: PageRank - solution (C) C. Faloutsos, 2017 Problem: PageRank - solution Given a directed graph, find its most interesting/central node Proposed solution: Random walk; spot most ‘popular’ node (-> steady state prob. (ssp)) A node has high ssp, if it is connected with high ssp nodes (recursive, but OK!) Tepper, CMU, April 4 (C) C. Faloutsos, 2017

(Simplified) PageRank algorithm Let A be the adjacency matrix; let B be the transition matrix: transpose, column-normalized - then From B To 1 2 3 4 5 = Tepper, CMU, April 4 (C) C. Faloutsos, 2017

(Simplified) PageRank algorithm B p = p B p = p 1 2 3 4 5 = Tepper, CMU, April 4 (C) C. Faloutsos, 2017

Definitions A Adjacency matrix (from-to) D Degree matrix = (diag ( d1, d2, …, dn) ) B Transition matrix: to-from, column normalized B = AT D-1 Tepper, CMU, April 4 (C) C. Faloutsos, 2017

(Simplified) PageRank algorithm (C) C. Faloutsos, 2017 (Simplified) PageRank algorithm B p = 1 * p thus, p is the eigenvector that corresponds to the highest eigenvalue (=1, since the matrix is column-normalized) Why does such a p exist? p exists if B is nxn, nonnegative, irreducible [Perron–Frobenius theorem] Tepper, CMU, April 4 (C) C. Faloutsos, 2017

(Simplified) PageRank algorithm (C) C. Faloutsos, 2017 (Simplified) PageRank algorithm In short: imagine a particle randomly moving along the edges compute its steady-state probabilities (ssp) Full version of algo: with occasional random jumps Why? To make the matrix irreducible Tepper, CMU, April 4 (C) C. Faloutsos, 2017

Full Algorithm With probability 1-c, fly-out to a random node (C) C. Faloutsos, 2017 Full Algorithm With probability 1-c, fly-out to a random node Then, we have p = c B p + (1-c)/n 1 => p = (1-c)/n [I - c B] -1 1 Tepper, CMU, April 4 (C) C. Faloutsos, 2017

Alternative notation M Modified transition matrix M = c B + (1-c)/n 1 1T Then p = M p That is: the steady state probabilities = PageRank scores form the first eigenvector of the ‘modified transition matrix’ Tepper, CMU, April 4 (C) C. Faloutsos, 2017

Parenthesis: intuition behind eigenvectors Tepper, CMU, April 4 (C) C. Faloutsos, 2017

Formal definition If A is a (n x n) square matrix (l , x) is an eigenvalue/eigenvector pair of A if A x = l x CLOSELY related to singular values: Tepper, CMU, April 4 (C) C. Faloutsos, 2017

Property #1: Eigen- vs singular-values if B[n x m] = U[n x r] L [ r x r] (V[m x r])T then A = (BTB) is symmetric and C(4): BT B vi = li2 vi ie, v1 , v2 , ...: eigenvectors of A = (BTB) Tepper, CMU, April 4 (C) C. Faloutsos, 2017

Property #2 If A[nxn] is a real, symmetric matrix Then it has n real eigenvalues (if A is not symmetric, some eigenvalues may be complex) Tepper, CMU, April 4 (C) C. Faloutsos, 2017

Intuition A as vector transformation x’ A x x’ = x 1 3 2 1 Tepper, CMU, April 4 (C) C. Faloutsos, 2017

Intuition By defn., eigenvectors remain parallel to themselves (‘fixed points’) l1 v1 A v1 3.62 * = Tepper, CMU, April 4 (C) C. Faloutsos, 2017

Convergence Usually, fast: Tepper, CMU, April 4 (C) C. Faloutsos, 2017

Convergence Usually, fast: Tepper, CMU, April 4 (C) C. Faloutsos, 2017

Convergence Usually, fast: depends on ratio l2 l1 l1 : l2 Tepper, CMU, April 4 (C) C. Faloutsos, 2017

Kleinberg/google - conclusions SVD helps in graph analysis: hub/authority scores: strongest left- and right- singular-vectors of the adjacency matrix random walk on a graph: steady state probabilities are given by the strongest eigenvector of the (modified) transition matrix Tepper, CMU, April 4 (C) C. Faloutsos, 2017

Conclusions SVD: a valuable tool given a document-term matrix, it finds ‘concepts’ (LSI) ... and can find fixed-points or steady-state probabilities (google/ Kleinberg/ Markov Chains) … and can find blocks (‘eigenSpokes’) … and help visualize the graph Tepper, CMU, April 4 (C) C. Faloutsos, 2017

Conclusions cont’d (We didn’t discuss/elaborate, but, SVD ... can reduce dimensionality (KL) ... and can solve optimally over- and under-constraint linear systems (least squares / query feedbacks) Tepper, CMU, April 4 (C) C. Faloutsos, 2017

PART2 END Tepper, CMU, April 4 (C) C. Faloutsos, 2017

Overall Conclusions Real graphs exhibit surprising patterns (power laws, shrinking diameter etc) SVD: a powerful tool (HITS, PageRank, eigenSpokes, dim. reduction) Tepper, CMU, April 4 (C) C. Faloutsos, 2017

Our goal: Open source system for mining huge graphs: (C) C. Faloutsos, 2017 11/18/2018 Our goal: Open source system for mining huge graphs: PEGASUS project (PEta GrAph mining System) www.cs.cmu.edu/~pegasus code and papers Tepper, CMU, April 4 (C) C. Faloutsos, 2017

(C) C. Faloutsos, 2017 References D. Chakrabarti, C. Faloutsos: Graph Mining – Laws, Tools and Case Studies, Morgan Claypool 2012 http://www.morganclaypool.com/doi/abs/10.2200/S00449ED1V01Y201209DMK006 Tepper, CMU, April 4 (C) C. Faloutsos, 2017

Project info Thanks to: NSF IIS-0705359, IIS-0534205, (C) C. Faloutsos, 2017 11/18/2018 Project info www.cs.cmu.edu/~pegasus http://www.morganclaypool.com/doi/abs/10.2200/S00449ED1V01Y201209DMK006 Chau, Polo McGlohon, Mary Tsourakakis, Babis Akoglu, Leman Prakash, Aditya Tong, Hanghang Kang, U Thanks to: NSF IIS-0705359, IIS-0534205, CTA-INARC; Yahoo (M45), LLNL, IBM, SPRINT, INTEL, HP Tepper, CMU, April 4 (C) C. Faloutsos, 2017

References Berry, Michael: http://www.cs.utk.edu/~lsi/ (C) C. Faloutsos, 2017 References Berry, Michael: http://www.cs.utk.edu/~lsi/ Brin, S. and L. Page (1998). Anatomy of a Large-Scale Hypertextual Web Search Engine. 7th Intl World Wide Web Conf. Tepper, CMU, April 4 (C) C. Faloutsos, 2017

References Christos Faloutsos, Searching Multimedia Databases by Content, Springer, 1996. (App. D) Fukunaga, K. (1990). Introduction to Statistical Pattern Recognition, Academic Press. I.T. Jolliffe Principal Component Analysis Springer, 2002 (2nd ed.) Tepper, CMU, April 4 (C) C. Faloutsos, 2017

References cont’d Kleinberg, J. (1998). Authoritative sources in a hyperlinked environment. Proc. 9th ACM-SIAM Symposium on Discrete Algorithms. Press, W. H., S. A. Teukolsky, et al. (1992). Numerical Recipes in C, Cambridge University Press. www.nr.com Tepper, CMU, April 4 (C) C. Faloutsos, 2017