勉強会 新井担当分

26
WWW2014勉強会 Social networks 1 新井 淳也 NTT 1

Upload: junya-arai

Post on 16-Apr-2017

80 views

Category:

Technology


0 download

TRANSCRIPT

WWW2014勉強会Social networks 1

新井 淳也

NTT

1

1. High Quality, Scalable and Parallel Community Detectionfor Large Real Graphs• 並列処理に適したグラフクラスタリング (コミュニティ検出) アルゴリズム

2. Dynamic and Historical Shortest-Path Distance Queries on Large Evolving Networks by Pruned Landmark Labeling • 変化するグラフ上における最短経路クエリと最短距離の時間変化に対するクエリの高速化

2

1. High Quality, Scalable and Parallel Community Detectionfor Large Real Graphs• 並列処理に適したグラフクラスタリング (コミュニティ検出) アルゴリズム

2. Dynamic and Historical Shortest-Path Distance Queries on Large Evolving Networks by Pruned Landmark Labeling • 変化するグラフ上における最短経路クエリと最短距離の時間変化に対するクエリの高速化

3

High Quality, Scalable andParallel Community Detection

for Large Real GraphsA. Prat-Pérez (カタルーニャ工科大),

D. Dominguez-Sal, J. Larriba-Pey

• グラフクラスタリングアルゴリズムの提案

• 目的関数として Weighted Community Clustering (WCC) [Prat-Pérez+ CIKM’12] を使用• クラスタ中にある「三角形」の数を基準とする

• 並列処理と WCC の近似計算により高速化

• スライド中の図表は著者の発表スライドから引用• https://www.dama.upc.edu/publications/WWW2014.pdf

4

グラフクラスタリング(コミュニティ検出)

•コミュニティ: 密に接続された頂点のグループ

•応用:• レコメンド

• タンパク質分析

• グラフ可視化

5

目的関数: WCC(Weighted Community Clustering)

•𝑊𝐶𝐶 𝑣, 𝑆 =𝑡(𝑣,𝑆)

𝑡(𝑣,𝑉)∙

𝑣𝑡(𝑣,𝑉)

𝑆∖𝑣 +𝑣𝑡(𝑣,𝑉∖𝑆)

• 𝑡 𝑣, 𝑆 =頂点 𝑥 と頂点集合 𝑆 が作る三角形の数

• 𝑣𝑡(𝑣, 𝑆)= 𝑣 と三角形を形成する 𝑆 内の頂点数

6

𝑣 が 𝑆 の中で多くの三角形を作るとき大きな値になる

提案手法: SCD(Scalable Community Detection)

• 2ステップから成るグラフの分割

1. 初期分割の作成

2. 分割の改善

•WCCの近似計算

7

並列化ポイント (2)

並列化ポイント (1)

提案手法: SCD(Scalable Community Detection)

• 2ステップから成るグラフの分割

1.初期分割の作成

2. 分割の改善

•WCCの近似計算

8

並列化ポイント (2)

並列化ポイント (1)

分割ステップ1

初期分割の作成

• クラスター係数が大きい頂点から順に隣接頂点でコミュニティを形成する

9

分割ステップ1

初期分割の作成

• クラスター係数が大きい頂点から順に隣接頂点でコミュニティを形成する

10

並列化ポイント (1):

クラスター係数を各頂点について並列に計算

分割ステップ1

初期分割の作成

• クラスター係数が大きい頂点から順に隣接頂点でコミュニティを形成する

11

クラスター係数が最大の頂点コミュニティ1

分割ステップ1

初期分割の作成

12

残りの頂点の中でクラスター係数が最大

• クラスター係数が大きい頂点から順に隣接頂点でコミュニティを形成する

コミュニティ1

コミュニティ2

分割ステップ1

初期分割の作成

13

初期分割として3つのコミュニティができた

• クラスター係数が大きい頂点から順に隣接頂点でコミュニティを形成する

コミュニティ1

コミュニティ2

コミュニティ3

提案手法: SCD(Scalable Community Detection)

• 2ステップから成るグラフの分割

1. 初期分割の作成

2.分割の改善

•WCCの近似計算

14

並列化ポイント (2)

並列化ポイント (1)

分割ステップ2

分割の改善• 各頂点について、隣接コミュニティへ移動した場合のWCC を計算し、改善するなら移動• 収束するまで繰り返す

15

コミュニティ1へ移動した場合の WCC を計算改善するので移動

コミュニティ1

分割ステップ2

分割の改善• 各頂点について、隣接コミュニティへ移動した場合のWCC を計算し、改善するなら移動• 収束するまで繰り返す

16

並列化ポイント (2):

頂点毎に並列処理

分割ステップ2

分割の改善• 各頂点について、隣接コミュニティへ移動した場合のWCC を計算し、改善するなら移動• 収束するまで繰り返す

17

最終的にこれで収束

提案手法: SCD(Scalable Community Detection)

• 2ステップから成るグラフの分割

1. 初期分割の作成

2. 分割の改善

•WCCの近似計算

18

並列化ポイント (2)

並列化ポイント (1)

WCCの近似計算

• グラフとコミュニティの性質を表すいくつかのパラメータから近似的に 𝑊𝐶𝐶(𝑣, 𝐶) を求める

• 定数時間の計算(頂点数やエッジ数に非依存)

• 詳細は割愛

19

評価• クラスタリング結果と ground truth の合致度を調査

• 指標: F1Score, NMI

• 既存のグラフクラスタリングアルゴリズムと比較• Walktrap, Infomap, Louvain, Bigclam, Oslom

• 並列度の実験以外は全て1スレッド実行

• Xeon 2.4GHz 4コア / 32GB RAM

20

21

良い

良い 精度

SCD は一番右

1.8B edges4.3hr

多エッジ高並列化率

エッジ数に線形

良い

1. High Quality, Scalable and Parallel Community Detectionfor Large Real Graphs• 並列処理に適したグラフクラスタリング (コミュニティ検出) アルゴリズム

2. Dynamic and Historical Shortest-Path Distance Queries on Large Evolving Networks by Pruned Landmark Labeling • 変化するグラフ上における最短経路クエリと最短距離の時間変化に対するクエリの高速処理手法

22

Dynamic and Historical Shortest-Path Distance Queries on Large Evolving Networks by Pruned

Landmark Labeling 秋葉 拓哉 (東京大), 岩田 陽一, 吉田 悠一

• 最短経路クエリの高速処理アルゴリズムを提案• 前処理として構築したインデックスを利用し高速に応答

• 時間経過で頂点とエッジが増加するグラフに対してインクリメンタルにインデックスを更新• [Akiba+ SIGMOD’13] [秋葉+ DEIM’14] の拡張

• Historical query にも対応• ある時点での頂点間距離 / 頂点間距離の時間変化

23

以降、著者 (秋葉さん) が作成したスライドの抜粋

http://www-imai.is.s.u-tokyo.ac.jp/~takiba/slide/dpll_www14.pdf

24

※本スライド公開にあたり削除オリジナルのスライドを参照してください

25