meta data analysis

124
Ranking on Large-Scale Graphs with Rich Metadata Bin Gao, Taifeng Wang, and Tie-Yan Liu Microsoft Research Asia WWW 2011 Tutorial 1

Upload: rob-sentse-bsc

Post on 10-May-2015

171 views

Category:

Documents


3 download

TRANSCRIPT

Page 1: Meta data analysis

Ranking on Large-Scale Graphs with Rich Metadata

Bin Gao, Taifeng Wang, and Tie-Yan Liu

Microsoft Research Asia

WWW 2011 Tutorial 1

Page 2: Meta data analysis

Presenters

WWW 2011 Tutorial 2

Bin Gao Researcher, MSR Asia

http://research.microsoft.com/en-us/people/bingao/

Taifeng Wang Researcher, MSR Asia

http://research.microsoft.com/en-us/people/taifengw/

Tie-Yan Liu Lead Researcher, MSR Asia

http://research.microsoft.com/users/tyliu/

Page 3: Meta data analysis

Graph

3 WWW 2011 Tutorial

Everything in the world is connected. There is graph where there is connection.

Page 4: Meta data analysis

Large-scale Graph

Social graphs

โ€ข Messenger, Facebook, Twitter, Entity Cube, etc.

Endorsement graphs

โ€ข Web link graph, Paper citation graph, etc.

Location graphs

โ€ข Map, Power grid, Telephone network, etc.

Co-occurrence graphs

โ€ข Term-document bipartite, Click-through bipartite, etc.

WWW 2011 Tutorial 4

Page 5: Meta data analysis

How Large Are These Graphs?

โ€ข Web Link Graph โ€“ Tens of billions of nodes indexed and Over one trillion

nodes discovered by major search engines

โ€ข Facebook โ€“ About 600 million nodes (14-Jan-2011)

โ€ข China Telephone Networks โ€“ 1.1 billion nodes (0.8 billion mobile + 0.3 billion land line)

(22-Jul-2010)

โ€ข Click-through Bipartite โ€“ Several billion queries and tens of billion URLs (recent

research papers)

5 WWW 2011 Tutorial

Page 6: Meta data analysis

Properties of Real Large-scale graphs

โ€ข Large-scale, of course

โ€ข Very sparse

โ€ข Rich information on nodes and edges

โ€ข External knowledge on the graphs

6 WWW 2011 Tutorial

Page 7: Meta data analysis

Rich Information on Node & Edge

โ€ข Web Link graph โ€“ Node: page length, creation time, etc. โ€“ Edge: number of links, inter/intra-site link, etc.

โ€ข Facebook โ€“ Node: age, gender, interests, etc. โ€“ Edge: creation time, communication frequency, etc.

โ€ข China Telephone Networks โ€“ Node: service category, customer profile, etc. โ€“ Edge: communication frequency, bandwidth, types of calls, etc.

โ€ข Click-through Bipartite โ€“ Node: query frequency, language, page length, page

importance, dwell time, etc. โ€“ Edge: click frequency, time of click, etc.

7 WWW 2011 Tutorial

Page 8: Meta data analysis

External Knowledge

โ€ข Point-wise

โ€“ Entity A is popular.

โ€“ Entity B is a spam.

โ€ข Pair-wise

โ€“ Entity A is more important than entity B.

โ€ข List-wise

โ€“ We have A > B > C, according to the user feedback on these entities.

* Here entity can be website, people, phone subscriber, query, etc.

8 WWW 2011 Tutorial

Page 9: Meta data analysis

Ranking on Large-scale Graph

โ€ข Problem definition

โ€“ Given a large-scale directed graph and its rich metadata, calculate the ranking of the nodes in the graph according to their importance, popularity, or preference.

โ€ข Application

โ€“ Webpage ranking

โ€“ Paper ranking

โ€“ Entity ranking in social networks

9 WWW 2011 Tutorial

Page 10: Meta data analysis

Example: Web Page Ranking

โ€ข Factors to consider

โ€“ The quality of the web page

โ€“ The visit frequency by users

โ€“ Userโ€™s dwell time

โ€“ The mutual endorsement between pages

โ€“ โ€ฆ

WWW 2011 Tutorial 10

Page 11: Meta data analysis

Example: Paper Ranking

โ€ข Factors to consider

โ€“ Citation

โ€“ Authors

โ€“ Publication venue

โ€“ Awards

โ€“ Publication date

โ€“ โ€ฆ

WWW 2011 Tutorial 11

Page 12: Meta data analysis

Example: Social Entity Ranking

โ€ข Factors to consider

โ€“ Account creation time

โ€“ Account activity

โ€“ Friends related information

โ€“ Liked or followed by others

โ€“ โ€ฆ โ€ฆ

WWW 2011 Tutorial 12

Page 13: Meta data analysis

Key Questions to Answer

1. How to perform graph ranking based on graph structure?

2. How to leverage node and edge features for better graph ranking?

3. How to incorporate external knowledge in graph ranking?

4. How to implement large-scale graph ranking algorithms?

13 WWW 2011 Tutorial

Page 14: Meta data analysis

Scope of the Tutorial

โ€ข Node ranking on graphs

โ€“ But not ranking of a number of graphs

โ€“ But not retrieval and ranking problems for subgraphs

โ€ข Mainly based on papers at WWW, SIGIR, KDD, ICML

โ€“ Papers at other conferences and journals might not be well covered

โ€“ Not necessarily a comprehensive review of the literature

โ€“ Your are welcome to contribute by sharing and discussing with us and our audience

14 WWW 2011 Tutorial

Page 15: Meta data analysis

Background Knowledge Required

โ€ข Information Retrieval

โ€ข Machine Learning

โ€ข Linear Algebra

โ€ข Probability Theory

โ€ข Optimization

15

We assume that you are familiar with these fields, and we will not give comprehensive introduction to them in this tutorial.

WWW 2011 Tutorial

Page 16: Meta data analysis

Notations

โ€ข Graph ๐บ(๐‘‰, ๐ธ, ๐‘‹, ๐‘Œ) ๐‘‰ = ๐‘ฃ๐‘– : node set, ๐‘‰ = ๐‘›

๐ธ = ๐‘’๐‘–๐‘— : edge set, ๐ธ = ๐‘š

๐‘‹ = ๐‘ฅ๐‘–๐‘— : edge features, ๐‘ฅ๐‘–๐‘— = ๐‘™, ๐‘ฅ๐‘–๐‘— = (๐‘ฅ๐‘–๐‘—1, ๐‘ฅ๐‘–๐‘—2, โ€ฆ , ๐‘ฅ๐‘–๐‘—๐‘™)๐‘‡

๐‘Œ = ๐‘ฆ๐‘– : node features, ๐‘ฆ๐‘– = ๐‘•, ๐‘ฆ๐‘– = (๐‘ฆ๐‘–1, ๐‘ฆ๐‘–2, โ€ฆ , ๐‘ฆ๐‘–โ„Ž)๐‘‡

โ€ข Matrices ๐‘€: adjacency matrix or link matrix

๐‘ƒ: transition probability matrix

โ€ข Rank score vectors ๐‘Ž: authority score vector

๐‘•: hub score vector

๐œ‹: general rank score vector

16 WWW 2011 Tutorial

Page 17: Meta data analysis

Outline

I. Overview

II. Graph Ranking by Link Analysis

III. Graph Ranking with Node and Edge Features

IV. Graph Ranking with Supervision

V. Implementation for Graph Ranking

VI. Summary

17 WWW 2011 Tutorial

Page 18: Meta data analysis

Link Analysis for Ranking

โ€ข Only consider link structure, no metadata involved.

โ€ข A link from page ๐‘ฃ๐‘– to page ๐‘ฃ๐‘— may indicate:

โ€“ ๐‘ฃ๐‘– is related to ๐‘ฃ๐‘—

โ€“ ๐‘ฃ๐‘– is recommending, citing, voting for, or endorsing ๐‘ฃ๐‘—

18 WWW 2011 Tutorial

๐บ(๐‘‰, ๐ธ)

Page 19: Meta data analysis

Famous Link Analysis Algorithms

โ€ข HITS [Kleinberg, 1997]

โ€ข PageRank [Page et al, 1998]

19 WWW 2011 Tutorial

Page 20: Meta data analysis

HITS โ€“ Hypertext Induced Topic Selection

โ€ข For each vertex ๐‘ฃ๐‘– in a subgraph of interest

โ€“ ๐‘Ž(๐‘ฃ๐‘–) - the authority of ๐‘ฃ๐‘–

โ€“ ๐‘•(๐‘ฃ๐‘–) - the hub of ๐‘ฃ๐‘–

โ€ข Authority โ€“ A site is very authoritative if it receives many citations.

Citation from important sites weights more than citations from less-important sites.

โ€ข Hub โ€“ Hub shows the importance of a site. A good hub is a site

that links to many authoritative sites.

20 WWW 2011 Tutorial

Kleinberg. Authoritative sources in a hyperlinked environment. IBM Research Report RJ 10076, 1997.

Page 21: Meta data analysis

Authority and Hub

21

๐‘ฃ1

๐‘ฃ2

๐‘ฃ3

๐‘ฃ4

๐‘ฃ5

๐‘ฃ6

๐‘ฃ7

๐‘ฃ8

๐‘Ž ๐‘ฃ1 = ๐‘• ๐‘ฃ2 + ๐‘• ๐‘ฃ3 + ๐‘•(๐‘ฃ4) ๐‘• ๐‘ฃ1 = ๐‘Ž ๐‘ฃ5 + ๐‘Ž ๐‘ฃ6 + ๐‘Ž(๐‘ฃ7) +๐‘Ž(๐‘ฃ8)

WWW 2011 Tutorial

Page 22: Meta data analysis

Convergence of HITS

โ€ข Recursive dependency

โ€ข Iterative algorithm

โ€ข Using linear algebra, it is easy to prove that ๐‘Ž(๐‘ฃ๐‘–) and ๐‘•(๐‘ฃ๐‘–) converge.

22

๐‘Ž ๐‘ฃ๐‘– = ๐‘• ๐‘ฃ๐‘—๐‘ฃ๐‘—โˆˆ๐‘–๐‘›๐‘™๐‘–๐‘›๐‘˜,๐‘ฃ๐‘–-

๐‘• ๐‘ฃ๐‘– = ๐‘Ž ๐‘ฃ๐‘—๐‘ฃ๐‘—โˆˆ๐‘œ๐‘ข๐‘ก๐‘™๐‘–๐‘›๐‘˜,๐‘ฃ๐‘–-

WWW 2011 Tutorial

๐‘Ž(๐‘˜:1) ๐‘ฃ๐‘– = ๐‘•(๐‘˜) ๐‘ฃ๐‘—๐‘ฃ๐‘—โˆˆ๐‘–๐‘›๐‘™๐‘–๐‘›๐‘˜,๐‘ฃ๐‘–-

๐‘•(๐‘˜:1) ๐‘ฃ๐‘– = ๐‘Ž(๐‘˜:1) ๐‘ฃ๐‘—๐‘ฃ๐‘—โˆˆ๐‘œ๐‘ข๐‘ก๐‘™๐‘–๐‘›๐‘˜,๐‘ฃ๐‘–-

๐‘Ž(๐‘˜:1) ๐‘ฃ๐‘– โŸต๐‘Ž(๐‘˜:1) ๐‘ฃ๐‘–

๐‘Ž(๐‘˜:1) ๐‘ฃ๐‘—๐‘—

๐‘•(๐‘˜:1) ๐‘ฃ๐‘– โŸต๐‘•(๐‘˜:1) ๐‘ฃ๐‘–

๐‘•(๐‘˜:1) ๐‘ฃ๐‘—๐‘—

Page 23: Meta data analysis

Convergence of HITS

โ€ข The authority and hub values calculated by HITS is the left and right singular vectors of the adjacency matrix of the base subgraph.

23

where ๐‘Ž = ๐‘Ž ๐‘ฃ1 , ๐‘Ž ๐‘ฃ2 , โ€ฆ , ๐‘Ž ๐‘ฃ๐‘›๐‘‡

, ๐‘• = ๐‘• ๐‘ฃ1 , ๐‘• ๐‘ฃ2 , โ€ฆ , ๐‘• ๐‘ฃ๐‘›๐‘‡

๐‘Ž = ๐‘€๐‘‡๐‘€๐‘Ž ๐‘• = ๐‘€๐‘€๐‘‡๐‘•

๐‘Ž = ๐‘€๐‘‡๐‘• ๐‘• = ๐‘€๐‘Ž

WWW 2011 Tutorial

Page 24: Meta data analysis

An Example

โ€ข Start with a root set ๐‘… = ๐‘ฃ1, ๐‘ฃ2, ๐‘ฃ3, ๐‘ฃ4 by nodes relevant to the topic.

โ€ข Generate a new set ๐‘† (base subgraph) by expanding ๐‘… to include all the children and a fixed number of parents of nodes in ๐‘….

24

๐‘ฃ1

๐‘ฃ2

๐‘ฃ3

๐‘ฃ4

๐‘ฃ5

๐‘ฃ6

๐‘ฃ7

๐‘ฃ8

๐‘ฃ9

๐‘ฃ10

๐‘ฃ11

๐‘ฃ12

๐‘…

๐‘†

WWW 2011 Tutorial

Page 25: Meta data analysis

HITS of the Example

25 WWW 2011 Tutorial

0

0.05

0.1

0.15

0.2

0.25

0.3

0.35

0.4

1 2 3 4 5 6 7 8 9 10 11 12

Authority

Hub

Page 26: Meta data analysis

PageRank

โ€ข An interesting name! โ€“ The rank of a page or the rank defined by Mr.

Page?

โ€ข The page rank is proportional to its parentsโ€™ rank, but inversely proportional to its parentsโ€™ out-degrees.

26

๐œ‹(๐‘ฃ๐‘–) = ๐œ‹(๐‘ฃ๐‘—)

|๐‘œ๐‘ข๐‘ก๐‘™๐‘–๐‘›๐‘˜,๐‘ฃ๐‘—-|๐‘ฃ๐‘—โˆˆ๐‘–๐‘›๐‘™๐‘–๐‘›๐‘˜,๐‘ฃ๐‘–-

30 80

30 60

20

20

20

20

30

50

WWW 2011 Tutorial

Page et al. The PageRank citation ranking: bringing order to the Web. Stanford Digital Library Technologies Project, 1998 .

๐‘ฃ1

๐‘ฃ2

๐‘ฃ3

๐‘ฃ4

Page 27: Meta data analysis

Markov Chain Explanation

โ€ข PageRank as a Random Surfer Model

โ€“ Description of a random walk through the Web graph

โ€“ Interpreted as a transition matrix with asymptotic probability that a surfer is currently browsing that page

โ€“ Discrete-time Markov model

27 WWW 2011 Tutorial

Page 28: Meta data analysis

An Example

28

๐‘ฃ1 ๐‘ฃ2

๐‘ฃ3

๐‘ฃ4

๐‘ฃ8

๐‘ฃ6 ๐‘ฃ7

๐‘ฃ5

Node Outlinks

๐‘ฃ1 ๐‘ฃ2, ๐‘ฃ3, ๐‘ฃ6

๐‘ฃ2 ๐‘ฃ4, ๐‘ฃ5

๐‘ฃ3 ๐‘ฃ4, ๐‘ฃ6

๐‘ฃ4 ๐‘ฃ6

๐‘ฃ5 ๐‘ฃ1, ๐‘ฃ4, ๐‘ฃ7, ๐‘ฃ8

๐‘ฃ6 ๐‘ฃ4

๐‘ฃ7 ๐‘ฃ3

๐‘ฃ8 ๐‘ฃ4, ๐‘ฃ7

WWW 2011 Tutorial

Page 29: Meta data analysis

Matrix Representation

29

Adjacent Matrix

๐‘€ =

0 1 1 0 0 1 0 00 0 0 1 1 0 0 00 0 0 1 0 1 0 00 0 0 0 0 1 0 01 0 0 1 0 0 1 10 0 0 1 0 0 0 00 0 1 0 0 0 0 0 0 0 0 1 0 0 1 0

๐‘ฃ1 ๐‘ฃ2

๐‘ฃ3

๐‘ฃ4

๐‘ฃ8

๐‘ฃ6 ๐‘ฃ7

๐‘ฃ5

WWW 2011 Tutorial

Page 30: Meta data analysis

Matrix Representation

30

โ€ข Transition Probability Matrix ๐‘ƒ = ๐‘๐‘–๐‘—

๐‘๐‘–๐‘— =

๐‘€(๐‘–, ๐‘—)

๐‘€(๐‘–, ๐‘˜)๐‘ฃ๐‘˜โˆˆ๐‘œ๐‘ข๐‘ก๐‘™๐‘–๐‘›๐‘˜,๐‘ฃ๐‘–-

, ๐‘œ๐‘ข๐‘ก๐‘™๐‘–๐‘›๐‘˜,๐‘ฃ๐‘–- โ‰  0

๐‘€(๐‘–, ๐‘—) = 0, ๐‘œ๐‘ก๐‘•๐‘’๐‘Ÿ๐‘ค๐‘–๐‘ ๐‘’

๐‘ƒ =

0 1/30 0

1/3 00 1/2

0 0 0 0

0 1/20 0

0 1/31/2 0

0 0 0 0

0 1/20 1

0 0 0 0

1/4 0 0 0

0 1/40 1

0 0 0 0

1 00 1/2

0 0 0 0

1/4 1/40 0

0 0 0 0

0 0 1/2 0

WWW 2011 Tutorial

Page 31: Meta data analysis

PageRank of the Example

31

๐‘ฃ1 ๐‘ฃ2

๐‘ฃ3

๐‘ฃ4

๐‘ฃ8

๐‘ฃ6 ๐‘ฃ7

๐‘ฃ5

ID PR Inlink Outlink

1 0.0250 ๐‘ฃ5 ๐‘ฃ2, ๐‘ฃ3, ๐‘ฃ6

2 0.0259 ๐‘ฃ1 ๐‘ฃ4, ๐‘ฃ5

3 0.0562 ๐‘ฃ1, ๐‘ฃ7 ๐‘ฃ4, ๐‘ฃ6

4 0.4068 ๐‘ฃ2, ๐‘ฃ3, ๐‘ฃ5, ๐‘ฃ6, ๐‘ฃ8 ๐‘ฃ6

5 0.0298 ๐‘ฃ2 ๐‘ฃ1, ๐‘ฃ4, ๐‘ฃ7, ๐‘ฃ8

6 0.3955 ๐‘ฃ1, ๐‘ฃ3, ๐‘ฃ4 ๐‘ฃ4

7 0.0357 ๐‘ฃ5, ๐‘ฃ8 ๐‘ฃ3

8 0.0251 ๐‘ฃ5 ๐‘ฃ4, ๐‘ฃ7

WWW 2011 Tutorial

Page 32: Meta data analysis

Rank Sink

โ€ข Many Web pages have no inlinks/outlinks

โ€ข It results in dangling edges in the graph

โ€“ No inlink

โ€“ No outlink

32

๐‘ฃ1 ๐‘ฃ2

๐‘ฃ3 ๐‘ฃ4

๐‘ฃ1 ๐‘ฃ2

๐‘ฃ3 ๐‘ฃ4

WWW 2011 Tutorial

Page 33: Meta data analysis

Modification โ€“ Transition Matrix

โ€ข Surfer will restart browsing by picking a new Web page at random

๐‘ƒ โ† ๐‘ƒ + ๐ธ

๐‘ƒ: stochastic matrix

33

๐ธ๐‘–๐‘— = 0, ๐‘–๐‘“ ๐‘œ๐‘ข๐‘ก๐‘™๐‘–๐‘›๐‘˜ ๐‘ฃ๐‘– > 01

๐‘›, ๐‘œ๐‘ก๐‘•๐‘’๐‘Ÿ๐‘ค๐‘–๐‘ ๐‘’

WWW 2011 Tutorial

Page 34: Meta data analysis

Remark: ๐œ‹ = ๐‘ƒ๐‘‡๐œ‹ for simplicity

Further Modification โ€“ Damping Factor

34

Stationary Distribution

Teleport Vector

Transition Matrix

๐œ‹ = ๐›ผ๐‘ƒ๐‘‡๐œ‹ + 1 โˆ’ ๐›ผ1

๐‘›๐‘’ , ๐‘’ = 1,1, โ€ฆ , 1 ๐‘‡

Damping Factor

WWW 2011 Tutorial

Page 35: Meta data analysis

Other Link Analysis Algorithms

35

โ€ข Following the success of PageRank and HITS, a lot of new algorithms were proposed.

โ€“ Block-level PageRank

โ€“ HostRank

โ€“ โ€ฆโ€ฆ

WWW 2011 Tutorial

Page 36: Meta data analysis

Block-Level PageRank

โ€ข Web page can be divided into different vision-based segmentation (block)

36 WWW 2011 Tutorial

Page 37: Meta data analysis

Block-level PageRank

โ€ข Block-to-page matrix ๐‘Š โ€“ ๐‘ ๐‘–: number of pages the block links to

โ€ข Page-to-block matrix ๐‘ˆ

37

๐‘ˆ๐‘–๐‘— = ๐‘“๐‘ฃ๐‘–(๐‘๐‘—), ๐‘๐‘— โˆˆ ๐‘ฃ๐‘–0, ๐‘๐‘— โˆ‰ ๐‘ฃ๐‘–

๐‘“๐‘ฃ๐‘– ๐‘๐‘— = ฮฒ๐‘†๐‘–๐‘ง๐‘’ ๐‘œ๐‘“ ๐‘๐‘™๐‘œ๐‘๐‘˜ ๐‘๐‘— ๐‘–๐‘› ๐‘๐‘Ž๐‘”๐‘’ ๐‘ฃ๐‘–

๐ท๐‘–๐‘ ๐‘ก๐‘Ž๐‘›๐‘๐‘’ ๐‘“๐‘Ÿ๐‘œ๐‘š ๐‘ก๐‘•๐‘’ ๐‘๐‘’๐‘›๐‘ก๐‘’๐‘Ÿ ๐‘œ๐‘“ ๐‘๐‘— ๐‘ก๐‘œ ๐‘ก๐‘•๐‘’ ๐‘๐‘’๐‘›๐‘ก๐‘’๐‘Ÿ ๐‘œ๐‘“ ๐‘ ๐‘๐‘Ÿ๐‘’๐‘’๐‘›

๐‘Š๐‘–๐‘— =

1

๐‘ ๐‘–, ๐‘–๐‘“ ๐‘ก๐‘•๐‘’๐‘Ÿ๐‘’ ๐‘–๐‘  ๐‘Ž ๐‘™๐‘–๐‘›๐‘˜ ๐‘“๐‘Ÿ๐‘œ๐‘š ๐‘๐‘™๐‘œ๐‘๐‘˜ ๐‘๐‘– ๐‘ก๐‘œ ๐‘๐‘Ž๐‘”๐‘’ ๐‘ฃ๐‘—

0, ๐‘œ๐‘ก๐‘•๐‘’๐‘Ÿ๐‘ค๐‘–๐‘ ๐‘’

WWW 2011 Tutorial Cai et al. Block-level link analysis. SIGIR, 2004.

Page 38: Meta data analysis

Block-level PageRank (cont.)

โ€ข A weight matrix can be defined as ๐‘ˆ๐‘Š

โ€ข A probability transition matrix ๐‘ƒ(๐‘) can be constructed by renormalizing each row of ๐‘ˆ๐‘Š to sum to 1.

โ€ข Block-level PageRank can be computed as

38

๐œ‹ = ๐›ผ(๐‘ƒ(๐‘))๐‘‡๐œ‹ + 1 โˆ’ ๐›ผ1

๐‘›๐‘’

WWW 2011 Tutorial

Page 39: Meta data analysis

HostRank

WWW 2011 Tutorial 39

๐‘ฃ1

๐‘ฃ2

๐‘ฃ3

๐‘ฃ5

๐‘ฃ4

Upper-level Graph

Lower-level Graph

Aggregation

Super Node Super Edge

Xue et al. Exploiting the Hierarchical Structure for Link Analysis. SIGIR, 2004.

โ€ข The Web graph has a hierarchical structure.

Page 40: Meta data analysis

HostRank

โ€ข Construct two-layer hierarchical graph

โ€“ ๐‘† = ๐‘†1, ๐‘†2, โ€ฆ , ๐‘†๐œ… is a partition on the vertex set ๐‘‰of graph ๐บ(๐‘‰, ๐ธ)

โ€“ Upper-layer graph contains ๐œ… vertices called supernodes, one for each element of the partition

โ€“ Lower-layer graph organizes all the pages in one supernode by the node relationship.

40 WWW 2011 Tutorial

Page 41: Meta data analysis

HostRank (cont.)

โ€ข Calculate supernode importance ๐‘†(๐ผ)

โ€ข Calculate page importance ๐œ‹

41

๐‘†(๐ผ) = ๐›ผ(๐‘ƒ(๐ผ))๐‘‡๐‘†(๐ผ) + 1 โˆ’ ๐›ผ1

๐‘›๐‘’

๐‘–๐‘›๐‘‘๐‘’๐‘ฅ(๐‘ฃ๐‘—) = 1, ๐‘–๐‘“ ๐‘ฃ๐‘— ๐‘–๐‘  ๐‘Ž๐‘› ๐‘–๐‘›๐‘‘๐‘’๐‘ฅ ๐‘๐‘Ž๐‘”๐‘’

๐›ฟ, ๐‘œ๐‘ก๐‘•๐‘’๐‘Ÿ๐‘ค๐‘–๐‘ ๐‘’

๐‘™๐‘–๐‘›๐‘˜(๐‘ฃ๐‘—) = ๐›ฝ๐‘‚๐ผ๐ฟ(๐‘ฃ๐‘—)

๐‘‚๐ผ๐ฟ(๐‘ฃ๐‘˜)๐‘ฃ๐‘˜โˆˆ๐‘†๐‘—

+ (1 โˆ’ ๐›ฝ)๐ผ๐ผ๐ฟ(๐‘ฃ๐‘—)

๐ผ๐ผ๐ฟ(๐‘ฃ๐‘˜)๐‘ฃ๐‘˜โˆˆ๐‘†๐‘—

๐‘ค๐‘— = ๐œ‚ ๐‘–๐‘›๐‘‘๐‘’๐‘ฅ(๐‘ฃ๐‘—) + (1 โˆ’ ๐œ‚)๐‘™๐‘–๐‘›๐‘˜(๐‘ฃ๐‘—)

๐‘ค๐‘–๐‘— = ๐›พ๐‘ค๐‘˜

๐‘ฃ๐‘˜โˆˆ*๐‘›๐‘œ๐‘‘๐‘’๐‘  ๐‘“๐‘Ÿ๐‘œ๐‘š ๐‘ฃ๐‘– ๐‘ก๐‘œ ๐‘Ÿ๐‘œ๐‘œ๐‘ก+

๐œ‹๐‘— = ๐‘†(๐ผ)๐‘–๐‘ค๐‘–๐‘—

WWW 2011 Tutorial

๐ผ๐ผ๐ฟ(๐‘ฃ๐‘—): Number of intra-link to ๐‘ฃ๐‘—

๐‘‚๐ผ๐ฟ(๐‘ฃ๐‘—): Number of inter-link to ๐‘ฃ๐‘—

Page 42: Meta data analysis

Summary

โ€ข Link analysis is a key technology in Web search

โ€“ Link analysis algorithms like PageRank have achieved great success and contribute significantly to todayโ€™s search engines.

โ€ข Link analysis technologies also have limitations

โ€“ They only use the structure of the graph, while many other informative factors are ignored, such as user clicks and content information.

42 WWW 2011 Tutorial

Page 43: Meta data analysis

Beyond Link Analysis

โ€ข More metadata besides link structure

โ€“ Information on nodes and edges

โ€“ Supervision information for the ranking order

43 WWW 2011 Tutorial

Page 44: Meta data analysis

Outline

I. Overview

II. Graph Ranking by Link Analysis

III. Graph Ranking with Node and Edge Features

IV. Graph Ranking with Supervision

V. Implementation for Graph Ranking

VI. Summary

44 WWW 2011 Tutorial

Page 45: Meta data analysis

Beyond Link Graph

โ€ข In conventional link analysis, link graph is simply represented by a binary adjacency matrix.

โ€ข In practice, we have rich metadata associated with the nodes and edges, and thus the representation of the graph can be more complex.

45 WWW 2011 Tutorial

Page 46: Meta data analysis

Examples

โ€ข Non-uniform Teleport Vector โ€“ Node metadata: bias to some nodes

โ€ข Weighted Link Graph โ€“ Edge metadata: number of links from one node to

another

โ€ข User Browsing Graph โ€“ Node metadata: user staying time on each node;

frequency of user visits on each node.

โ€“ Edge metadata: number of user transition from one page to another.

46 WWW 2011 Tutorial

Page 47: Meta data analysis

Personalized PageRank

47

Personalized Teleport Vector

๐œ‹ = ๐›ผ๐‘ƒ๐‘‡๐œ‹ + 1 โˆ’ ๐›ผ ๐‘Ÿ

โ€ข Change 1

๐‘›๐‘’ with ๐‘Ÿ

โ€ข Instead of teleporting uniformly to any page, we bias the jump on some pages over others

โ€“ E.g., ๐‘Ÿ๐‘– is 1 for your homepage and 0 otherwise.

โ€“ E.g., ๐‘Ÿ๐‘– prefers the topics you are interested in.

WWW 2011 Tutorial

Haveliwala et al. An analytical comparison of approaches to personalizing PageRank. Stanford University Technical Report, 2003

Page 48: Meta data analysis

Examples

48 WWW 2011 Tutorial

ID ๐œ‹ ๐‘Ÿ

1 0.0250 0.125

2 0.0259 0.125

3 0.0562 0.125

4 0.4068 0.125

5 0.0298 0.125

6 0.3955 0.125

7 0.0357 0.125

8 0.0251 0.125

ID ๐œ‹ ๐‘Ÿ

1 0.1024 0.65

2 0.0365 0.05

3 0.0515 0.05

4 0.3774 0.05

5 0.0230 0.05

6 0.3792 0.05

7 0.0177 0.05

8 0.0124 0.05

ID ๐œ‹ ๐‘Ÿ

1 0.0100 0.05

2 0.0103 0.05

3 0.0225 0.05

4 0.4384 0.05

5 0.0119 0.05

6 0.4825 0.65

7 0.0143 0.05

8 0.0100 0.05

uniform vector bias on ๐‘ฃ1 bias on ๐‘ฃ6

Page 49: Meta data analysis

Personalized PageRank

49 WWW 2011 Tutorial

๐œ‹ = ๐›ผ๐‘ƒ๐‘‡๐œ‹ + 1 โˆ’ ๐›ผ ๐‘Ÿ

๐œ‹ = 1 โˆ’ ๐›ผ (๐ผ โˆ’ ๐›ผ๐‘ƒ๐‘‡);1๐‘Ÿ

Personalized Teleport Vector Fixed Matrix

Page 50: Meta data analysis

Topic-Sensitive PageRank

โ€ข Instead of using one single PageRank value to represent the importance of Web page, calculate a vector of PageRank values, according to 16 topics in ODP.

โ€ข For each value in this vector, when making the PageRank metric primitive, use different transition matrix (only randomly jump to those pages of the given topic).

50 WWW 2011 Tutorial Haveliwala et al. Topic-sensitive PageRank. WWW, 2002 .

Page 51: Meta data analysis

Topic-Sensitive PageRank (cont.)

โ€ข Category biasing

โ€“ ๐‘‡๐‘—: set of pages in category ๐‘๐‘—

โ€“ ๐‘Ÿ(๐‘—): teleport vector

51

๐‘Ÿ๐‘–(๐‘—) =

1

๐‘‡๐‘—, ๐‘– โˆˆ ๐‘‡๐‘—

0, ๐‘– โˆ‰ ๐‘‡๐‘—

๐œ‹(๐‘—)

WWW 2011 Tutorial

Page 52: Meta data analysis

Topic-Sensitive PageRank (cont.)

โ€ข Query-time importance score

โ€“ ๐‘ž: query or query context

52

๐œ‹๐‘– = ๐‘(๐‘๐‘—|๐‘ž)๐œ‹๐‘–(๐‘—)

๐‘—

๐‘ ๐‘๐‘— ๐‘ž =๐‘(๐‘๐‘—)๐‘(๐‘ž|๐‘๐‘—)

๐‘(๐‘ž)

WWW 2011 Tutorial

Page 53: Meta data analysis

Weighted Link Graph

53

๐‘€ =

0 1 1 0 0 1 0 00 0 0 1 1 0 0 00 0 0 1 0 1 0 00 0 0 0 0 1 0 01 0 0 1 0 0 1 10 0 0 1 0 0 0 00 0 1 0 0 0 0 0 0 0 0 1 0 0 1 0

๐‘€ =

0 2 1 0 0 3 0 00 0 0 1 2 0 0 00 0 0 4 0 1 0 00 0 0 0 0 3 0 02 0 0 3 0 0 5 10 0 0 1 0 0 0 00 0 4 0 0 0 0 0 0 0 0 2 0 0 1 0

Adjacent Matrix Weighted Adjacent Matrix

WWW 2011 Tutorial

Page 54: Meta data analysis

Weighted PageRank

54 WWW 2011 Tutorial

ID ๐œ‹ ๐‘Ÿ

1 0.0250 0.125

2 0.0259 0.125

3 0.0562 0.125

4 0.4068 0.125

5 0.0298 0.125

6 0.3955 0.125

7 0.0357 0.125

8 0.0251 0.125

ID ๐œ‹ ๐‘Ÿ

1 0.0239 0.125

2 0.0255 0.125

3 0.0541 0.125

4 0.4142 0.125

5 0.0332 0.125

6 0.3902 0.125

7 0.0376 0.125

8 0.0213 0.125

Un-weighted Weighted

๐‘€ =

0 2 1 0 0 3 0 00 0 0 1 2 0 0 00 0 0 4 0 1 0 00 0 0 0 0 3 0 02 0 0 3 0 0 5 10 0 0 1 0 0 0 00 0 4 0 0 0 0 0 0 0 0 2 0 0 1 0

Page 55: Meta data analysis

User Browsing Graph

55

User Browsing Behaviors

Node feature โ€ข User staying time on nodes

โ€ข High quality pages attract longer reading time โ€ข Spam and junk pages will be closed right after loaded โ€ข Collected from user browsing behaviors

โ€ข Non-uniform teleport vector โ€ข Green traffic

Edge feature โ€ข User transition along edges

WWW 2011 Tutorial

Page 56: Meta data analysis

BrowseRank

โ€ข Computed from User Browsing Graph

โ€ข Random surfer model

โ€“ Start from a page selected from the distribution of โ€œgreen trafficโ€

โ€“ Stay a period of time

โ€“ Jump to next page by weighted adjacent matrix

โ€ข Challenge

โ€“ Discrete-time Markov model does not work here โ€ข Cannot model the non-unit staying time

56 WWW 2011 Tutorial

Liu et al. BrowseRank: Letting Web users vote for page importance. SIGIR, 2008.

Page 57: Meta data analysis

Continuous-time Markov Model

โ€ข Model the real user browsing behavior on the Web as a continuous-time Markov process on the user browsing graph

x1 x2 x3 xฯ„ โ€ฆ

unit time unit time unit time unit time

PageRank

x1 x2 x3 xฯ„ โ€ฆ โ€ฆ

y1 y2 y3 yฯ„

BrowseRank

Discrete-time Markov Process

Continuous-time Markov Process

57 WWW 2011 Tutorial

Page 58: Meta data analysis

Stationary Distribution

โ€ข Calculate the page importance as the stationary probability distribution of such stochastic process

58

PageRank

BrowseRank

๐œ‹ = ๐‘ƒ๐‘‡๐œ‹

๐œ‹ = ๐‘ƒ(๐‘ก)๐‘‡๐œ‹, โˆ€๐‘ก > 0

Hard to compute

WWW 2011 Tutorial

Page 59: Meta data analysis

Decomposition

59

๐œ‹ = ๐‘ƒ(๐‘ก)๐‘‡๐œ‹, โˆ€๐‘ก > 0 ๐‘ƒ(๐‘ก)

Calculating ๐œ‹

๐œ‹๐‘– =๐œ‹ ๐‘– ๐œ†๐‘–

๐œ‹ ๐‘— ๐œ†๐‘— ๐‘›๐‘—=1

Computing the stationary distribution ๐œ‹ = ๐œ‹ ๐‘– , ๐‘– = 1, โ€ฆ , ๐‘› of a discrete-time Markov chain

(called embedded Markov chain)

Estimating staying time distribution

1 โˆ’ ๐‘’;๐œ†๐‘–๐‘ก

WWW 2011 Tutorial

Page 60: Meta data analysis

Staying Time Calculation

60

๐น๐‘‡๐‘–(๐‘ก) = 1 โˆ’ ๐‘’;๐œ†๐‘–๐‘ก

โ€ข ๐‘‡๐‘–: random variable of staying time on ๐‘ฃ๐‘–

โ€ข ๐น๐‘‡๐‘–(๐‘ก): cumulative probability distribution of random variable ๐‘‡๐‘–

๐‘‡ ๐‘– = ๐ธ ๐‘‡๐‘– = ๐‘ก๐น๐‘‡๐‘– ๐‘ก ๐‘‘๐‘ก

โˆž

0

=1

๐œ†๐‘–

WWW 2011 Tutorial

Page 61: Meta data analysis

Discussions on Staying Time

โ€ข Staying time might not only depend on the current page; It also depends on the source page from which users transits to the current page.

61

x1 x2 x3 xฯ„ โ€ฆ โ€ฆ

y1 y2 y3 yฯ„

Mirror Semi-Markov Process

WWW 2011 Tutorial

Page 62: Meta data analysis

From BrowseRank to BrowseRank Plus

62 WWW 2011 Tutorial

๐‘ฃ1

๐‘ฃ2

๐‘ฃ3

๐‘ฃ4

๐‘ฃ1

๐‘ฃ2

๐‘ฃ3

๐‘ฃ4

10 s 2 s 78 s 39 s 101 s 25 s

101 s 25 s

39 s

10 s 2 s 78 s

Page 63: Meta data analysis

BrowseRank Plus

63

โ€ข ๐‘‡๐‘—: random variable of staying time on ๐‘ฃ๐‘—

โ€ข ๐น๐‘‡๐‘—๐‘– (๐‘ก): cumulative probability distribution of random on ๐‘ฃ๐‘—

from ๐‘ฃ๐‘–

โ€ข ๐‘๐‘–๐‘—: contribution probability of ๐‘ฃ๐‘– to ๐‘ฃ๐‘—

๐น๐‘‡๐‘—๐‘– (๐‘ก) = 1 โˆ’ ๐‘’;๐œ†๐‘–๐‘—๐‘ก

๐‘‡ ๐‘— = ๐ธ ๐‘‡๐‘— = ๐‘๐‘–๐‘— ๐‘ก ร— ๐น๐‘‡๐‘—๐‘– (๐‘ก)๐‘‘๐‘ก

โˆž

0๐‘–

= ๐‘๐‘–๐‘—

๐œ†๐‘–๐‘—๐‘–

๐‘๐‘–๐‘— =๐‘๐‘–๐‘—๐œ‹ ๐‘–

๐œ‹ ๐‘—

WWW 2011 Tutorial

Gao et al. A general Markov framework for page importance computation. CIKM, 2009.

Page 64: Meta data analysis

A Unified Model

64

x1 x2 x3 xฯ„ โ€ฆ โ€ฆ

y1 y2 y3 yฯ„

x: Markov chain โ€“ to model the jump of the random surfer y: Random variable dependent on x (can be understood as staying time for simplicity) โ€“ to model page utility.

Markov Skeleton Process Model

WWW 2011 Tutorial

Page 65: Meta data analysis

Algorithms in the Framework

65 WWW 2011 Tutorial

Page 66: Meta data analysis

Algorithms in the Framework

66

Markov Skeleton Process

Mirror Semi-Markov Process Semi-Markov Process

Continuous-Time Markov Process

Discrete-Time Markov Process

PageRank Personalized

PageRank HostRank

BrowseRank BrowseRank

Plus

Block-level PageRank

Topic-Sensitive PageRank

WWW 2011 Tutorial

Weighted PageRank

Page 67: Meta data analysis

Outline

I. Overview

II. Graph Ranking by Link Analysis

III. Graph Ranking with Node and Edge Features

IV. Graph Ranking with Supervision

V. Implementation for Graph Ranking

VI. Summary

67 WWW 2011 Tutorial

Page 68: Meta data analysis

Beyond the Graph

โ€ข In addition to the weights associated with nodes and edges, we sometimes also have supervision on the nodes.

โ€ข Typical supervision

โ€“ Binary labels โ€ข Spam/non-spam, Junk/non-junk, etc.

โ€“ Pairwise preference โ€ข A is preferred to B

โ€“ List of partial order โ€ข A > B > C, according to user visiting frequency.

68 WWW 2011 Tutorial

Page 69: Meta data analysis

Notations

โ€ข Graph ๐บ(๐‘‰, ๐ธ, ๐‘‹, ๐‘Œ) ๐‘‰ = ๐‘ฃ๐‘– : node set, ๐‘‰ = ๐‘›

๐ธ = ๐‘’๐‘–๐‘— : edge set, ๐ธ = ๐‘š

๐‘‹ = ๐‘ฅ๐‘–๐‘— : edge features, ๐‘ฅ๐‘–๐‘— = ๐‘™, ๐‘ฅ๐‘–๐‘— = (๐‘ฅ๐‘–๐‘—1, ๐‘ฅ๐‘–๐‘—2, โ€ฆ , ๐‘ฅ๐‘–๐‘—๐‘™)๐‘‡

๐‘Œ = ๐‘ฆ๐‘– : node features, ๐‘ฆ๐‘– = ๐‘•, ๐‘ฆ๐‘– = (๐‘ฆ๐‘–1, ๐‘ฆ๐‘–2, โ€ฆ , ๐‘ฆ๐‘–โ„Ž)๐‘‡

โ€ข Matrices ๐‘€: adjacency matrix or link matrix

๐‘ƒ: transition probability matrix

โ€ข Rank score vectors ๐‘Ž: authority score vector

๐‘•: hub score vector

๐œ‹: general rank score vector

69 WWW 2011 Tutorial

Page 70: Meta data analysis

Notations for Supervision

โ€ข Supervision ๐ต: ๐‘› -by-๐‘› supervision matrix, each row of ๐ต represents a pairwise

preference ๐‘ฃ๐‘– โ‰ป ๐‘ฃ๐‘— (๐‘› is the number of pairwise constraints)

โ€ข Parameters

๐œ” = (๐œ”1, ๐œ”2, โ€ฆ , ๐œ”๐‘™)๐‘‡: weight of edge features

๐œ™ = (๐œ™1, ๐œ™2, โ€ฆ , ๐œ™โ„Ž)๐‘‡: weight of node features

70

๐ต =

0โ‹ฏ ๐‘– โ‹ฏ ๐‘— โ‹ฏ 0โ‹ฎ

0โ‹ฏ1โ‹ฏ โˆ’ 1 โ‹ฏ0โ‹ฎ ๐‘› ร—๐‘›

WWW 2011 Tutorial

๐‘ฃ๐‘– โ‰ป ๐‘ฃ๐‘— โ†” ๐œ‹๐‘– โ‰ฅ ๐œ‹๐‘— โ†” ๐‘Ž ๐‘Ÿ๐‘œ๐‘ค ๐‘–๐‘› ๐ต๐œ‹ โ‰ฅ 0

๐‘ฃ๐‘– โ‰ป ๐‘ฃ๐‘— โ†” min*1 โˆ’ (๐œ‹๐‘– โˆ’ ๐œ‹๐‘—)+ โ†” minโˆ’๐‘’๐‘‡(๐ต๐œ‹ โˆ’ ๐‘’)

Page 71: Meta data analysis

Supervised Graph Ranking Algorithms

โ€ข LiftHITS

โ€ข Adaptive PageRank

โ€ข NetRank I & II

โ€ข Laplacian Rank

โ€ข Semi-supervised PageRank

71 WWW 2011 Tutorial

Page 72: Meta data analysis

โ€ข Adjust adjacency matrix of HITS using one-step gradient ascent, to satisfy the supervision

โ€ข Methodology

72

LiftHITS

๐‘Ž ๐‘ฃ๐‘– = ๐‘€๐‘—๐‘–๐‘• ๐‘ฃ๐‘—๐‘—

๐‘• ๐‘ฃ๐‘– = ๐‘€๐‘–๐‘—๐‘Ž ๐‘ฃ๐‘—๐‘—

๐‘Ž: = ๐‘€๐‘‡๐‘€๐‘Ž ๐‘Ž: ๐‘ฃ๐‘— = ๐‘€๐‘˜๐‘–๐‘€๐‘˜๐‘—

๐‘˜

๐‘Ž(๐‘ฃ๐‘—)

๐‘–

๐œ•๐‘Ž: ๐‘ฃ๐‘—

๐œ•๐‘€๐‘˜๐‘–= ๐‘€๐‘˜๐‘—๐‘Ž(๐‘ฃ๐‘–)

WWW 2011 Tutorial

Chang et al. Learning to create customized authority lists. ICML, 2000.

Page 73: Meta data analysis

LiftHITS

โ€ข Algorithm (to lift the rank of ๐‘ฃ๐‘—)

1. Apply HITS to compute authorities ๐‘Ž based on ๐‘€

2. Compute gradient โˆ€๐‘˜, ๐‘–, ฮ”๐‘€๐‘˜๐‘– โ‰œ๐œ•๐‘Ž+ ๐‘ฃ๐‘—

๐œ•๐‘€๐‘˜๐‘–= ๐‘€๐‘˜๐‘—๐‘Ž ๐‘ฃ๐‘–

3. Update ๐‘€:๐‘˜๐‘– = ๐‘€๐‘˜๐‘– + ๐›พ

ฮ”๐‘€๐‘˜๐‘–

ฮ”๐‘€๐‘˜๐‘–๐‘–

4. Normalize weights, setting all ๐‘€๐‘˜๐‘– โ‰ฅ 0

5. Re-compute HITS authorities ๐‘Ž using updated ๐‘€:

โ€ข Discussion โ€“ May affect the ranking of neighborhood nodes

โ€“ ๐‘€: will become denser than ๐‘€

73 WWW 2011 Tutorial

Page 74: Meta data analysis

Adaptive PageRank

โ€ข Adjust teleport vector to produce a ranking result

โ€“ To satisfy the supervision

โ€“ To be as close to PageRank as possible

74 WWW 2011 Tutorial Tsoi et al. Adaptive ranking of Web pages. WWW, 2003.

Page 75: Meta data analysis

Adaptive PageRank

โ€ข Methodology

โ€“ Transform PageRank equation

โ€“ Optimize teleport vector ๐‘Ÿ

WWW 2011 Tutorial 75

๐œ‹ = ๐›ผ๐‘ƒ๐‘‡๐œ‹ + 1 โˆ’ ๐›ผ ๐‘Ÿ โ†’ ๐œ‹ = 1 โˆ’ ๐›ผ (๐ผ โˆ’ ๐›ผ๐‘ƒ๐‘‡);1๐‘Ÿ โ‰œ ๐‘„๐‘Ÿ

min๐‘Ÿ

๐‘„๐‘Ÿ โˆ’ ๐‘„๐‘Ÿ 02

s.t. ๐ต๐‘„๐‘Ÿ โ‰ฅ 0, ๐‘Ÿ โ‰ฅ 0

๐‘’๐‘‡๐‘Ÿ = 1, ๐‘Ÿ(0) =1

๐‘›๐‘’

๐‘’ = 1,1, โ€ฆ , 1 ๐‘‡

Page 76: Meta data analysis

Adaptive PageRank

โ€ข Reduce the complexity

โ€“ Compute cluster-level adaptive PageRank

โ€“ Organize nodes into clusters according to some criteria

โ€“ Assign back the scores in node-level

โ€ข Discussion

โ€“ Some supervision will become invalid

76 WWW 2011 Tutorial

๐‘ฃ1 โ‰ป ๐‘ฃ2

๐‘ฃ1 ๐‘ฃ2

Page 77: Meta data analysis

NetRank I

โ€ข Adjust PageRank flow to produce a ranking result

โ€“ To satisfy the supervision

โ€“ To maximize the entropy of the PageRank flow

WWW 2011 Tutorial 77

All PageRank flows between nodes are equal to each other.

The sum of flows in one node equals its inlink number.

Page 78: Meta data analysis

NetRank I

โ€ข Notations โ€“ ๐‘ฃ๐‘‘: dummy node having two-way edges with all ๐‘ฃ๐‘– โˆˆ ๐‘‰

โ€“ ๐‘‰โ€ฒ = ๐‘‰ โˆช ๐‘ฃ๐‘‘

โ€“ ๐บโ€ฒ = ๐‘‰โ€ฒ, ๐ธโ€ฒ

โ€“ ๐‘‰(0): the set of nodes which have at least one outlink

โ€“ ๐œŒ๐‘–๐‘—: PageRank flow from ๐‘ฃ๐‘– to ๐‘ฃ๐‘—

78 WWW 2011 Tutorial

Agarwal et al. Learning to rank networked entities. KDD, 2006.

Page 79: Meta data analysis

Optimization Problem in NetRank I

79

min0โ‰ค๐œŒ๐‘–๐‘—โ‰ค1

๐œŒ๐‘–๐‘— log ๐œŒ๐‘–๐‘—(๐‘–,๐‘—)โˆˆ๐ธโ€ฒ

s.t. ๐œŒ๐‘–๐‘—(๐‘–,๐‘—)โˆˆ๐ธโ€ฒ โˆ’ 1 = 0

โˆ€๐‘ฃ๐‘— โˆˆ ๐‘‰โ€ฒ: โˆ’ ๐œŒ๐‘–๐‘— + ๐œŒ๐‘—๐‘˜(๐‘—,๐‘˜)โˆˆ๐ธโ€ฒ = 0(๐‘–,๐‘—)โˆˆ๐ธโ€ฒ

โˆ€๐‘ฃ๐‘— โˆˆ ๐‘‰ 0 : โˆ’๐›ผ๐œŒ๐‘—๐‘‘ + (1 โˆ’ ๐›ผ) ๐œŒ๐‘—๐‘˜ = 0(๐‘—,๐‘˜)โˆˆ๐ธ

โˆ€๐‘ฃ๐‘– โ‰บ ๐‘ฃ๐‘—: ๐œŒ๐‘˜๐‘–๐‘˜,๐‘– โˆˆ๐ธโ€ฒ โˆ’ ๐œŒ๐‘˜๐‘—(๐‘˜,๐‘—)โˆˆ๐ธโ€ฒ โ‰ค 0

Objective

Total

Balance

Teleport

Preference

WWW 2011 Tutorial

โ€ข Discussion โ€“ Converted to the duel formulation and solved by gradient

method โ€“ Too many variables (edge number)

Page 80: Meta data analysis

NetRank II

โ€ข Adjust the parametric transition matrix to produce a ranking result

โ€“ To satisfy the supervision

โ€“ To be as close to PageRank as possible

WWW 2011 Tutorial 80

Page 81: Meta data analysis

NetRank II

โ€ข Step 1: Build a parametric transition matrix

โ€“ ๐‘ฃ๐‘‘: dummy node having two-way edges with all ๐‘ฃ๐‘– โˆˆ ๐‘‰

โ€“ ๐‘ฅ๐‘–๐‘—๐‘˜: edge features from ๐‘ฃ๐‘– to ๐‘ฃ๐‘—

โ€“ ๐‘“ โˆ™ : edge feature combination function

81

๐‘ƒ ๐‘–, ๐‘— =

0, ๐‘ฃ๐‘– โ‰  ๐‘ฃ๐‘‘ , ๐‘ฃ๐‘— โ‰  ๐‘ฃ๐‘‘ , ๐‘ฃ๐‘– โˆˆ ๐‘™๐‘’๐‘Ž๐‘“(๐‘‰)

๐›ผ๐‘“ ๐œ”, ๐‘ฅ๐‘–๐‘— , ๐‘ฃ๐‘– โ‰  ๐‘ฃ๐‘‘ , ๐‘ฃ๐‘— โ‰  ๐‘ฃ๐‘‘ , ๐‘ฃ๐‘– โˆ‰ ๐‘™๐‘’๐‘Ž๐‘“(๐‘‰)

1, ๐‘ฃ๐‘– โ‰  ๐‘ฃ๐‘‘ , ๐‘ฃ๐‘— = ๐‘ฃ๐‘‘ , ๐‘ฃ๐‘– โˆˆ ๐‘™๐‘’๐‘Ž๐‘“(๐‘‰)

1 โˆ’ ๐›ผ, ๐‘ฃ๐‘–โ‰  ๐‘ฃ๐‘‘ , ๐‘ฃ๐‘— = ๐‘ฃ๐‘‘ , ๐‘ฃ๐‘– โˆ‰ ๐‘™๐‘’๐‘Ž๐‘“(๐‘‰)๐‘Ÿ๐‘— ๐‘ฃ๐‘– = ๐‘ฃ๐‘‘ , ๐‘ฃ๐‘— โ‰  ๐‘ฃ๐‘‘0, ๐‘ฃ๐‘– = ๐‘ฃ๐‘‘ , ๐‘ฃ๐‘— = ๐‘ฃ๐‘‘

WWW 2011 Tutorial

Chakrabarti et al. Learning parameters in entity relationship graphs from ranking preference. PKDD, 2006.

Page 82: Meta data analysis

NetRank II

โ€ข Step 2: Minimize the loss following function calculated from the parametric matrix

โ€“ ๐ป: iteration number for PageRank calculation

โ€ข Discussion

โ€“ NetRank I II, reduce the number of parameters

โ€“ Newton method for computation

โ€“ Need to compute successive matrix multiplication.

82

min 1+ ((๐‘ƒ๐‘‡)๐ป๐œ‹(0))๐‘–โˆ’((๐‘ƒ๐‘‡)๐ป๐œ‹(0))๐‘—

๐‘ฃ๐‘–โ‰บ๐‘ฃ๐‘—

WWW 2011 Tutorial

Page 83: Meta data analysis

Laplacian Rank

โ€ข Adjust the ranking result directly

โ€“ To satisfy the supervision

โ€“ To make connected nodes have similar ranking

WWW 2011 Tutorial 83

Page 84: Meta data analysis

Laplacian Rank

โ€ข Laplacian matrix

โ€“ ฮ : diagonal matrix with ฮ ๐‘–๐‘– = ๐œ‹ 0 ๐‘ฃ๐‘–

โ€“ Optimization with Regularization

โ€ข Discussion

โ€“ Need to compute pseudo matrix inversion

84

๐ฟ = ๐ผ โˆ’ฮ 12๐‘ƒฮ ;

12 + ฮ ;

12๐‘ƒ๐‘‡ฮ 

12

2

WWW 2011 Tutorial Agarwal. Ranking on graph data. ICML, 2006.

min1

2๐œ‹๐‘‡๐ฟ๐œ‹ + ๐œ† ํœ€๐‘–๐‘—

๐‘ฃ๐‘–โ‰บ๐‘ฃ๐‘—

s.t. ๐œ‹๐‘— โˆ’ ๐œ‹๐‘– โ‰ฅ 1 โˆ’ ํœ€๐‘–๐‘— , โˆ€๐‘ฃ๐‘– โ‰บ ๐‘ฃ๐‘—

Page 85: Meta data analysis

Semi-Supervised PageRank

โ€ข Adjust the parametric transition matrix and the parametric teleport vector to produce a ranking result

โ€“ To satisfy the supervision

โ€“ To be as close to PageRank as possible

WWW 2011 Tutorial 85

Page 86: Meta data analysis

Semi-Supervised PageRank

โ€ข Methodology โ€“ Define parametric transition matrix

โ€ข ๐‘๐‘–๐‘— =

๐œ”๐‘˜๐‘ฅ๐‘–๐‘—๐‘˜๐‘˜

๐œ”๐‘˜๐‘ฅ๐‘–๐‘—๐‘˜๐‘˜๐‘—๐‘’๐‘–๐‘— โˆˆ ๐ธ

0, ๐‘œ๐‘ก๐‘•๐‘’๐‘Ÿ๐‘ค๐‘–๐‘ ๐‘’

โ€“ Define parametric teleport vector โ€ข ๐‘Ÿ๐‘– ๐œ™ = ๐œ™๐‘‡๐‘ฆ๐‘–

โ€“ Minimize the sum of a propagation term and a loss term

86 WWW 2011 Tutorial

Gao et al. Semi-supervised ranking on very large graph with rich metadata. Microsoft Research Technical Report, MSR-TR-2011-36, 2011.

Page 87: Meta data analysis

Semi-Supervised PageRank

87

min๐œ”โ‰ฅ0, ๐œ™โ‰ฅ0, ๐œ‹โ‰ฅ0

๐›ฝ1 ๐›ผ๐‘ƒ๐‘‡ ๐œ” ๐œ‹ + 1 โˆ’ ๐›ผ ๐‘Ÿ ๐œ™ โˆ’ ๐œ‹ 2 + ๐›ฝ2 ๐œ‡(๐‘’ โˆ’ ๐ต๐œ‹)

๐œ‹ = ๐›ผ๐‘ƒ๐‘‡(๐œ”)๐œ‹ + 1 โˆ’ ๐›ผ ๐‘Ÿ(๐œ™)

Propagation term: based on PageRank propagation, combining edge features and node features by ๐‘ƒ(๐œ”) and ๐‘Ÿ(๐œ™).

Loss term: compared with supervised information in

pairwise preference fashion.

WWW 2011 Tutorial

Page 88: Meta data analysis

Gradient based Optimization

Denote

Derivatives

Page 89: Meta data analysis

More Details

WWW 2011 Tutorial 89

yx G

X1 X2 X3 X4

1 2 3 4

Y1 Y2 Y3 Y4

1 2 3 4

=

X1Y1

X1 Y2

X1 Y3

X1 Y4

X2 Y1

X2 Y2

X2 Y3

X2 Y4

X3Y1

X3 Y2

X3 Y3

X3 Y4

X4 Y1

X4 Y2

X4 Y3

X4 Y4

1 2 3 4 2 4 6 8 3 6 9 12 4 8 12 16

0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 Graph Edges

Page 90: Meta data analysis

A Unified Framework

โ€ข Define the graph propagation term based on a Markov random walk on the web graph

โ€ข Incorporate edge features into the transition probability of the Markov process, and incorporate node features to its teleport vector

โ€ข Convert the constraints to loss functions using ๐ฟ2 distance between the ranking results given by the parametric model and the supervision

โ€ข Keep the sparsity of the graph when updating the parameters of the model during the optimization process

90 WWW 2011 Tutorial

Page 91: Meta data analysis

A Unified Framework

91

min๐œ”โ‰ฅ0, ๐œ™โ‰ฅ0, ๐œ‹โ‰ฅ0

๐‘…(๐œ‹; ๐‘“ ๐œ”, ๐‘‹ , ๐‘”(๐œ™, ๐‘Œ))

s.t. ๐‘†(๐œ‹; ๐ต, ๐œ‡) โ‰ฅ 0

min๐œ”โ‰ฅ0, ๐œ™โ‰ฅ0, ๐œ‹โ‰ฅ0

๐›ฝ1๐‘… ๐œ‹; ๐‘“ ๐œ”, ๐‘‹ , ๐‘” ๐œ™, ๐‘Œ โˆ’ ๐›ฝ2๐‘†(๐œ‹; ๐ต, ๐œ‡)

Propagation term: based on a certain graph ranking algorithm, combining graph structure and rich metadata.

Loss term: compared with supervision

WWW 2011 Tutorial

Page 92: Meta data analysis

Algorithms in the Framework

92 WWW 2011 Tutorial

Algorithm Link Structure

Edge Feature

Node Feature

Supervision Objective Parameterized Model

Adaptive PageRank Yes No No Pairwise PageRank No

NetRank I Yes No No Pairwise Inlink number No

NetRank II Yes Yes No Pairwise PageRank Yes

Laplacian Rank Yes No No Pairwise Laplacian No

Semi-supervised PageRank Yes Yes Yes Pairwise PageRank Yes

Page 93: Meta data analysis

Outline

I. Overview

II. Graph Ranking by Link Analysis

III. Graph Ranking with Node and Edge Features

IV. Graph Ranking with Supervision

V. Implementation for Graph Ranking

VI. Summary

93 WWW 2011 Tutorial

Page 94: Meta data analysis

Many Algorithms

WWW 2011 Tutorial 94

HITS

Topic-sensitive PageRank

Block-level PageRank

BrowseRank

LiftHITS

Semi-supervised PageRank

Page 95: Meta data analysis

Basic Operations in Algorithms

Algorithms Operation

Almost All Matrix-vector multiplication

NetRank II Matrix-matrix multiplication

Semi-supervised PageRank Graph-based Kronecker product between vectors

Adaptive PageRank, LaplacianRank Matrix (pseudo) inversion

โ€ฆ โ€ฆ

Page 96: Meta data analysis

Graph Propagation

โ€ข For many operations, propagation of values along edges in a graph is their basic computational unit.

96 WWW 2011 Tutorial

Page 97: Meta data analysis

Example: Matrix-Vector Multiplication

97 WWW 2011 Tutorial

Px

A

B C

D

Graph:

2 1 1

2

3 1

A B C D

100 100 100 100

100

200

100

300

100 200

A B C D

300 400 200 100

Propagate elements in x in the graph defined by P Aggregate the propagated values per node.

๐‘ƒ =

0 0 1 21 0 3 00 2 0 00 1 0 0

๐‘ฅ =[ -๐‘‡

๐‘ƒ๐‘ฅ =[ -๐‘‡

Page 98: Meta data analysis

Example: Kronecker Product

WWW 2011 Tutorial 98

m

n

p

q

G =

m n p q

5 6 7 8 x =

m n p q

1 2 3 4 y =

Result = [mp,15] [mq,20] [nm,6] [np,18] [pn,14] [qn,16]

m,1

n,2

n,2

p,3

p,3 q,4

yx G

m n p q

[P,3] [q,4]

[m,1] [p,3]

[n,2] [n,2]

Propagate y along graph G

For each node, multiply x with the received y values

Page 99: Meta data analysis

Large-scale Implementation of Graph Propagation

โ€ข Distributed Computation Models

โ€“ MapReduce Model

โ€“ Bulk Synchronous Parallel(BSP) Model

99 WWW 2011 Tutorial

Page 100: Meta data analysis

MapReduce

100 Dean et al. MapReduce: simplified data processing on large clusters. OSDI, 2004.

WWW 2011 Tutorial

โ€ข Mapper โ€“ Process input data into (key, value) pairs โ€“ Output (key, value) pairs into MapReduce framework

โ€ข MapReduce Framework โ€“ Sort and aggregate (key, value) pairs according to

buckets

โ€ข Reducer โ€“ Receive (key, value) pairs with the same range of keys

from MapReduce infrastructure โ€“ Aggregate the values for the same key โ€“ Output the result

Page 101: Meta data analysis

MapReduce

Mapper

Input Data Mapper

Mapper

MapReduce Framework

(Bucketing,

Sorting, Aggregating)

Reducer

Reducer

[key1, value1] [key2, value1] [key3, value1]

[key1, value2] [key3, value2] [key2, value2]

[key3, value3] [key2, value3] [key1, value3]

[key1, value1]

[key1, value2]

[key1, value3]

[key2, value1]

[key2, value3]

[key2, value2]

[key3, value3]

[key3, value1]

[key3, value2]

[key1, valueโ€™]

[key2, valueโ€™]

[key3, valueโ€™]

Page 102: Meta data analysis

Graph Propagation on MapReduce

102 WWW 2011 Tutorial

โ€ข Graph data is partitioned into sub graphs according to source node; input vector is also partitioned in the same way.

โ€ข One mapper processes one partition of graph data and vector.

โ€ข (Key, value) = (Dest node, Value on source node)

โ€ข Reducer aggregates data according to destination node.

Page 103: Meta data analysis

Discussions

โ€ข Pros: system stability and maturity โ€“ MapReduce has been widely used for web-scale data

processing, e.g., indexing, PageRank computation, etc. โ€“ Simple interface: (Map, Reduce) โ€“ Clear system-level logic and fault tolerance

โ€ข Cons: system performance โ€“ Data locality, graph data and output data are not

guaranteed to be on the same machine, which causes potential network transfer

โ€“ Intensive access to disk, at every stage the system needs to serialize data to disk for the purpose of fault tolerance.

103 WWW 2011 Tutorial

Page 104: Meta data analysis

BSP

SuperStep

SuperStep

SuperStep

104 WWW 2011 Tutorial http://en.wikipedia.org/wiki/Bulk_synchronous_parallel

Not necessarily โ€œmapโ€

Not necessarily โ€œ(key value) pairsโ€

BSP is more general, and MapReduce can be regarded as a special version of BSP

Page 105: Meta data analysis

Graph Propagation on BSP

โ€ข Graph propagation on MapReduce can be easily converted to that on BSP.

โ€ข Since BSP is more flexible, it can potentially ensure locality during the iterative propagation, and thus improve the efficiency of the computation.

105 WWW 2011 Tutorial

Page 106: Meta data analysis

Discussions

โ€ข Pros โ€“ Can support co-location of graph partition and

processing node, so as to avoid unnecessary data transfer

โ€“ Node communication logic provides more flexible message passing

โ€ข Cons โ€“ Flexibility vs. usability

โ€“ Need to implement fault tolerance logic

โ€“ Not as widely used as MapReduce in industry.

106 WWW 2011 Tutorial

Page 107: Meta data analysis

Graph Processing Systems

โ€ข Pegasus

โ€ข Hama

โ€ข Pregel

โ€ข Trinity

โ€ข Graphor

107 WWW 2011 Tutorial

Page 108: Meta data analysis

Pegasus

โ€ข A large-scale graph mining system based on Hadoop

โ€ข Computation model โ€“ MapReduce โ€“ Optimized matrix-vector multiplication by partitioning data

into blocks

โ€ข Supported algorithms โ€“ PageRank โ€“ Random walk with restart โ€“ Graph diameter computing โ€“ Graph components mining

108 WWW 2011 Tutorial

Kang et al. PEAGSUS: a peta-scale graph mining system โ€“ implementation and observations. ICDM, 2009. Kang et al. PEAGSUS: mining peta-scale graphs, knowledge and information systems. DOI: 10.1007/s10115-010-0305-0, 2010.

Page 109: Meta data analysis

Hama

โ€ข Graph processing library in Hadoop

โ€ข Computation model

โ€“ MapReduce to handle matrix computation

โ€“ BSP to handle other graph processing

โ€ข Supported algorithm

โ€“ Large scale matrix multiplication

โ€“ Shortest path finding in graph

โ€“ PageRank

109 WWW 2011 Tutorial

The Apache Hama Project: http://incubator.apache.org/hama/ Seo et al. HAMA: an efficient matrix computation with the MapReduce framework. IEEE CloudCom Workshop, 2010.

Page 110: Meta data analysis

Pregel

โ€ข Googleโ€™s large scale graph processing engine

โ€ข Computation model โ€“ BSP

โ€“ Ram-based system

โ€ข Supported algorithms โ€“ PageRank

โ€“ Single source shortest path

โ€“ Graph component finding

110 WWW 2011 Tutorial Malewicz et al. Pregel: a system for large-scale graph processing. PODC 2009. Malewicz et al. Pregel: a System for large-scale graph processing. SIGMOD, 2010.

Page 111: Meta data analysis

Trinity

โ€ข A graph database and computation platform by Microsoft Research

โ€ข Computation model

โ€“ BSP, with asynchronous mode for message passing

โ€“ Ram-based system

โ€ข Supported algorithms

โ€“ PageRank

โ€“ Breadth first search

111 WWW 2011 Tutorial Trinity - a graph data base and computation platform. http://research.microsoft.com/en-us/projects/trinity/

Page 112: Meta data analysis

โ€ข A graph computation engine by Microsoft Research

โ€ข Computation model

โ€“ MapReduce

โ€“ Additional logic to keep graph locality inspired by BSP

โ€ข Supported algorithms

โ€“ PageRank

โ€“ Matrix-vector multiplication

โ€“ Graph-based Kronecker product of vectors

WWW 2011 Tutorial 112 Graphor - a billion scale web graph processing platform http://research.microsoft.com/en-us/projects/graphor/

Page 113: Meta data analysis

System Model Fault tolerance Supported algorithms

Pegasus MapReduce MapReduce PageRank, graph components finding, etc.

Hama MapReduce / BSP MapReduce PagRank, matrix vector multiplication, etc.

Pregel BSP Self designed PageRank, shortest path, graph components finding, etc.

Trinity BSP + None PagRank, breadth frist search on graph, etc.

Graphor MapReduce + BSP MapReduce Pagerank, multiplication of matrix and vector, graph based vector kronecker product, etc.

Comparison

113 WWW 2011 Tutorial

Page 114: Meta data analysis

Outline

I. Overview

II. Graph Ranking by Link Analysis

III. Graph Ranking with Node and Edge Features

IV. Graph Ranking with Supervision

V. Implementation for Graph Ranking

VI. Summary

114 WWW 2011 Tutorial

Page 115: Meta data analysis

Summary

โ€ข Link analysis is a classical graph ranking method

โ€ข Rich information in nodes and edges can help graph ranking

โ€ข External knowledge on ranking orders can make graph ranking more consistent with human intuition

โ€ข Many systems have been developed for large-scale graph ranking

115 WWW 2011 Tutorial

Page 116: Meta data analysis

Answers to Question #1

โ€ข How to perform graph ranking based on graph structure?

โ€“ Link analysis

โ€“ Hierarchical structure in graph

โ€“ Random surfer model / Markov chain

116 WWW 2011 Tutorial

Page 117: Meta data analysis

Answers to Question #2

โ€ข How to leverage node and edge features for better graph ranking?

โ€“ Node weight

โ€“ Edge weight

โ€“ Continuous-time Markov process / Mirror semi-Markov process / Markov skeleton process

117 WWW 2011 Tutorial

Page 118: Meta data analysis

Answers to Question #3

โ€ข How to incorporate external knowledge in graph ranking?

โ€“ Different optimization objectives

โ€“ Supervised learning framework

โ€“ Large-scale optimization

118 WWW 2011 Tutorial

Page 119: Meta data analysis

Answers to Questions #4

โ€ข How to implement large-scale graph ranking algorithms?

โ€“ MapReduce and BSP

โ€“ Several systems

โ€“ Select the proper platform for your application!

119 WWW 2011 Tutorial

Page 120: Meta data analysis

Future Directions

โ€ข Theoretical study

โ€“ Various Markov processes for graph ranking

โ€“ Learning theory for graph ranking (non-i.i.d.)

โ€ข Novel algorithms

โ€“ Ranking on a time series of graphs

โ€“ Ranking on heterogeneous graphs

โ€ข Implementation

โ€“ Tradeoff of efficiency, flexibility, and reliability

โ€“ Dealing with more complex graph operations

120 WWW 2011 Tutorial

Page 121: Meta data analysis

References

Agarwal et al. Learning to rank networked entities. KDD, 2006.

Agarwal. Ranking on graph data. ICML, 2006.

Cai et al. Block-level link analysis. SIGIR, 2004.

Chakrabarti et al. Learning parameters in entity relationship graphs from ranking preference. PKDD, 2006.

Chang et al. Learning to create customized authority lists. ICML, 2000.

Gao et al. A general Markov framework for page importance computation. CIKM, 2009.

Gao et al. Semi-supervised ranking on very large graph with rich metadata. Microsoft Research Technical Report, MSR-TR-2011-36, 2011.

Haveliwala et al. An analytical comparison of approaches to personalizing PageRank. Stanford University Technical Report, 2003

Kang et al. PEAGSUS: a peta-scale graph mining system โ€“ implementation and observations. ICDM, 2009.

WWW 2011 Tutorial 121

Page 122: Meta data analysis

References

Kang et al. PEAGSUS: mining peta-scale graphs, knowledge and information systems. DOI: 10.1007/s10115-010-0305-0, 2010.

Kleinberg. Authoritative sources in a hyperlinked environment. IBM Research Report RJ 10076, 1997.

Liu et al. BrowseRank: Letting Web users vote for page importance. SIGIR, 2008.

Malewicz et al. Pregel: a system for large-scale graph processing. PODC 2009.

Malewicz et al. Pregel: a System for large-scale graph processing. SIGMOD, 2010.

Page et al. The PageRank citation ranking: bringing order to the Web. Stanford Digital Library Technologies Project, 1998 .

Seo et al. HAMA: an efficient matrix computation with the MapReduce framework. IEEE CloudCom Workshop, 2010.

Tsoi et al. Adaptive ranking of Web pages. WWW, 2003.

Xue et al. Exploiting the Hierarchical Structure for Link Analysis. SIGIR, 2004.

WWW 2011 Tutorial 122

Page 123: Meta data analysis

Acknowledgement

โ€ข Wei-Ying Ma (Microsoft Research Asia)

โ€ข Hang Li (Microsoft Research Asia)

โ€ข Haixun Wang (Microsoft Research Asia)

โ€ข Tao Qin (Microsoft Research Asia)

โ€ข Zhi-Ming Ma (Chinese Academy of Sciences)

โ€ข Yuting Liu (Beijing Jiaotong University)

โ€ข Ying Zhang (Nankai University)

โ€ข Wei Wei (Huazhong University of Science and Technology)

โ€ข Wenkui Ding (Tsinghua University)

โ€ข Changhao Jiang (Tsinghua University)

โ€ข Chenyan Xiong (Chinese Academy of Sciences)

โ€ข Di He (Peking University)

123 WWW 2011 Tutorial

Page 124: Meta data analysis

Thank You!

124

[email protected]

[email protected]

[email protected]

WWW 2011 Tutorial

This talk is Copyright 2011. Authors retain all rights, including copyrights and distribution rights. No

publication or further distribution in full or in part permitted without explicit written permission.