Top Banner
枝刈り探索による大規模グラフ上の 高速な影響力推定・影響最大化アルゴリズム 大坂直人 東京大学 1 2017/2/9 基盤(S)離散構造処理系プロジェクトセミナー@北海道大学
56

枝刈り探索による大規模グラフ上の 高速な影響力推定・影響 …...Coin-flip tech. [Kempe-Kleinberg-Tardos. KDD'03] Inf 𝑆≜ 1 𝑟 1≤ ≤𝑟 R𝐺 𝑖

Jan 20, 2021

Download

Documents

dariahiddleston
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: 枝刈り探索による大規模グラフ上の 高速な影響力推定・影響 …...Coin-flip tech. [Kempe-Kleinberg-Tardos. KDD'03] Inf 𝑆≜ 1 𝑟 1≤ ≤𝑟 R𝐺 𝑖

枝刈り探索による大規模グラフ上の高速な影響力推定・影響最大化アルゴリズム

大坂直人

東京大学

1

2017/2/9 基盤(S)離散構造処理系プロジェクトセミナー@北海道大学

Page 2: 枝刈り探索による大規模グラフ上の 高速な影響力推定・影響 …...Coin-flip tech. [Kempe-Kleinberg-Tardos. KDD'03] Inf 𝑆≜ 1 𝑟 1≤ ≤𝑟 R𝐺 𝑖

自己紹介

▶名前:大坂直人

▶所属:東京大学大学院情報理工学系研究科コンピュータ科学専攻博士2年 (本郷)

▶研究の興味:アルゴリズム全般、理論+実験

▶趣味:きつね、読書

2宮城蔵王キツネ村にて

Page 3: 枝刈り探索による大規模グラフ上の 高速な影響力推定・影響 …...Coin-flip tech. [Kempe-Kleinberg-Tardos. KDD'03] Inf 𝑆≜ 1 𝑟 1≤ ≤𝑟 R𝐺 𝑖

昨今の拡散の研究の背景 (2000s~)

オンラインネットワーク上の拡散現象の威力

▶ explicit/implicitに相互影響、速くて、大きい

3

Social Networking Service Eメールサービス

有名なHotmailの例 (1996)

今、データもある、計算資源もある

拡散の過程や人々の活動を理解・予測・制御したい!

“Get a free e-mail

account with Hotmail”

Page 4: 枝刈り探索による大規模グラフ上の 高速な影響力推定・影響 …...Coin-flip tech. [Kempe-Kleinberg-Tardos. KDD'03] Inf 𝑆≜ 1 𝑟 1≤ ≤𝑟 R𝐺 𝑖

中心的な問題=影響最大化[Kempe-Kleinberg-Tardos. KDD'03]

Informalには …

▶目標:最多人数に情報を伝える集団の特定

▶動機:バイラルマーケティングへの応用

4

試供品

試供品

Page 5: 枝刈り探索による大規模グラフ上の 高速な影響力推定・影響 …...Coin-flip tech. [Kempe-Kleinberg-Tardos. KDD'03] Inf 𝑆≜ 1 𝑟 1≤ ≤𝑟 R𝐺 𝑖

私の研究の主題

大規模?

▶オンラインソーシャルネットワークが対象

▶105~108点=ユーザ、107~1010辺=友達関係

拡散解析?

▶例:影響最大化・頂点の影響力推定

▶最適化・計算する対象の定式化も必須

効率的?

▶Ω(点数2)時間は遅い⇝高級な操作は✘

▶Ω(辺数)空間も厳しいかも⇝ I/O効率的な手法5

大規模グラフの拡散解析の効率的アルゴリズム

Page 6: 枝刈り探索による大規模グラフ上の 高速な影響力推定・影響 …...Coin-flip tech. [Kempe-Kleinberg-Tardos. KDD'03] Inf 𝑆≜ 1 𝑟 1≤ ≤𝑟 R𝐺 𝑖

やってきた/やっていること

6

高速な影響最大化近似手法私、秋葉拓哉、𠮷田悠一、河原林健一

AAAI 2014複数トピックの導入

私、𠮷田悠一

NIPS 2015

時間減衰要素の導入私、山口勇太郎、垣村尚徳、河原林健一

ECML-PKDD 2016

ポートフォリオ最適化によるリスク回避私、𠮷田悠一

WWW 2017

動的グラフ上の実時間索引手法私、秋葉拓哉、𠮷田悠一、河原林健一

VLDB 2016

効率的アルゴリズム より良い拡散モデル

Page 7: 枝刈り探索による大規模グラフ上の 高速な影響力推定・影響 …...Coin-flip tech. [Kempe-Kleinberg-Tardos. KDD'03] Inf 𝑆≜ 1 𝑟 1≤ ≤𝑟 R𝐺 𝑖

高速な影響最大化近似手法私、秋葉拓哉、𠮷田悠一、河原林健一

AAAI 2014

動的グラフ上の実時間索引手法私、秋葉拓哉、𠮷田悠一、河原林健一

VLDB 2016

効率的アルゴリズム

今回話す研究

7

武器:実グラフの構造的性質の活用特徴:精度を落とさず、冗長計算を削減課題:空間使用量は改善せず …辛い!

http://www.cise.ufl.edu/research/sparse/

matrices/SNAP/soc-Epinions1.html

Page 8: 枝刈り探索による大規模グラフ上の 高速な影響力推定・影響 …...Coin-flip tech. [Kempe-Kleinberg-Tardos. KDD'03] Inf 𝑆≜ 1 𝑟 1≤ ≤𝑟 R𝐺 𝑖

影響最大化問題 (formal)[Kempe-Kleinberg-Tardos. KDD'03]

入力:グラフ 𝐺 = (𝑉, 𝐸)、辺確率 𝑝: 𝐸 → (0,1]、整数𝑘

出力:𝐴 ⊆ 𝑉 ( 𝐴 = 𝑘)

目標:max Inf(𝐴)

8

影響拡散 𝐄[𝐴の影響が伝わった頂点数]

独立カスケード [Goldenberg-Libai-Muller. Market. Lett.'01]

成否が確率的・独立に決まる ≒感染症のモデル

a

b

d

fe

ca

b

d

fe

ca

b

d

fe

c

0.6 0.1

0.3

0.4 0.8

0.2 0.5

Page 9: 枝刈り探索による大規模グラフ上の 高速な影響力推定・影響 …...Coin-flip tech. [Kempe-Kleinberg-Tardos. KDD'03] Inf 𝑆≜ 1 𝑟 1≤ ≤𝑟 R𝐺 𝑖

研究①枝刈りシミュレーションを用いた高速な影響最大化手法

9

Page 10: 枝刈り探索による大規模グラフ上の 高速な影響力推定・影響 …...Coin-flip tech. [Kempe-Kleinberg-Tardos. KDD'03] Inf 𝑆≜ 1 𝑟 1≤ ≤𝑟 R𝐺 𝑖

研究①の背景

当時、高速・高精度な手法は無かった10

既存手法の目標は Inf(⋅)の効率的近似計算

カテゴリ 戦略・特徴 代表的手法

シミュレーション拡散過程を素朴に実行高品質・低速

CELF++ [Goyal+. WWW'11]

CELF [Leskovec+. KDD'07]

スナップショットランダムグラフを標本し再利用高品質・低速

StaticGreedy [Cheng+. CIKM'13]

高速化したい!

ヒューリスティクス精度保証無し高速・低品質

IRIE [Jung+. ICDM'12]

SAEDV [Jiang+. AAAI'11]

PMIA [Chen+. KDD'10]

Page 11: 枝刈り探索による大規模グラフ上の 高速な影響力推定・影響 …...Coin-flip tech. [Kempe-Kleinberg-Tardos. KDD'03] Inf 𝑆≜ 1 𝑟 1≤ ≤𝑟 R𝐺 𝑖

研究①の貢献 [大坂-秋葉-𠮷田-河原林. AAAI'14]

主な課題

▶様々な頂点集合について到達可能な頂点数の計算が必要

解決法

▶冗長な幅優先探索を徹底的に削減

▶計算結果に影響無し

実験評価

▶ 7,000万辺を20分で処理

▶愚直な手法の400倍高速11

6

34

5

2

1

2

影響最大化の高速近似手法の提案

Page 12: 枝刈り探索による大規模グラフ上の 高速な影響力推定・影響 …...Coin-flip tech. [Kempe-Kleinberg-Tardos. KDD'03] Inf 𝑆≜ 1 𝑟 1≤ ≤𝑟 R𝐺 𝑖

スナップショット手法の概略

12

最適解の厳密計算NP-困難

貪欲算法が定数近似単調性・劣モジュラ性

目的関数の厳密計算#P-困難

ランダムグラフ上の到達可能頂点数で近似

貪欲算法×幅優先探索𝒌 ⋅ 𝑽 ⋅ 𝑬 時間

一筋縄ではいかない…

我々の新技法

障壁 解決法

Page 13: 枝刈り探索による大規模グラフ上の 高速な影響力推定・影響 …...Coin-flip tech. [Kempe-Kleinberg-Tardos. KDD'03] Inf 𝑆≜ 1 𝑟 1≤ ≤𝑟 R𝐺 𝑖

Inf ⋅ の最大化問題としての性質

▶NP-困難 [Kempe-Kleinberg-Tardos. KDD'03]

Set Coverから帰着

▶ Inf ⋅ は単調・劣モジュラ [Kempe-Kleinberg-Tardos. KDD'03]

𝑓 𝐴 + 𝑥 − 𝑓 𝐴 ≥ 𝑓 𝐵 + 𝑥 − 𝑓 𝐵∀𝐴 ⊆ 𝐵 ⊆ 𝑉, 𝑥 ∈ 𝑉 ∖ 𝐵

▶貪欲算法が 1 − e−1 ≈ 63%-近似[Nemhauser-Wolsey-Fisher. Math. Program.'78]

❝argmax𝑣

Inf 𝐴 + 𝑣 − Inf(𝐴)を選び𝐴に追加❞ × 𝑘回

13

Page 14: 枝刈り探索による大規模グラフ上の 高速な影響力推定・影響 …...Coin-flip tech. [Kempe-Kleinberg-Tardos. KDD'03] Inf 𝑆≜ 1 𝑟 1≤ ≤𝑟 R𝐺 𝑖

Inf ⋅ の計算問題としての性質

▶厳密計算は #P-困難 [Chen-Wang-Wang. KDD'10]

s-t連結部分グラフ数え上げ問題から帰着

※初の厳密計算手法 [Maehara-Suzuki-Ishihata. WWW'17]

▶近似計算

14

𝐺𝑖上で𝑆から到達可能な頂点数

拡散過程ランダムグラフ上の到達可能性

Coin-flip tech. [Kempe-Kleinberg-Tardos. KDD'03]

Inf 𝑆 ≜1

𝑟

1≤𝑖≤𝑟

R𝐺𝑖 𝑆

=

𝑟個のランダムグラフ 𝐺1, … , 𝐺𝑟 を生成辺𝑒を確率𝑝𝑒で残す

経験的には 𝑟 ≈ 100で十分

Page 15: 枝刈り探索による大規模グラフ上の 高速な影響力推定・影響 …...Coin-flip tech. [Kempe-Kleinberg-Tardos. KDD'03] Inf 𝑆≜ 1 𝑟 1≤ ≤𝑟 R𝐺 𝑖

最終的にしたいこと & その難しさ

15

𝐴0 = ∅for 𝑗 = 1 to 𝑘

𝑣𝑗∗ ← argmax

𝑣∈𝑉 1≤𝑖≤𝑟 R𝐺𝑖 𝐴𝑗−1 + 𝑣 − R𝐺𝑖 𝐴𝑗−1

𝐴𝑗 ← 𝐴𝑗−1 + 𝑣𝑗∗

簡単では?

▶最初の反復 (𝐴0 = ∅) を考えてみると…

R𝐺1 𝑣1 ⋯ R𝐺1 𝑣𝑛

⋮ ⋱ ⋮

R𝐺𝑟 𝑣1 ⋯ R𝐺𝑟 𝑣𝑛

𝑟 ⋅ 𝑉 回の幅優先探索(BFS)は遅すぎ

計算対象

各𝑂(|𝐸|)時間

6

34

5

2

1

2

Page 16: 枝刈り探索による大規模グラフ上の 高速な影響力推定・影響 …...Coin-flip tech. [Kempe-Kleinberg-Tardos. KDD'03] Inf 𝑆≜ 1 𝑟 1≤ ≤𝑟 R𝐺 𝑖

提案手法:枝刈りシミュレーション

技法Ⅰ = 枝刈りBFSによる超高速な子孫数え上げ

▶最初の反復に有効

技法Ⅱ = 不要なBFSの検知・回避

▶最初以降の反復に有効

特徴

▶ソーシャルネットワークの構造的性質を活用

▶計算結果に影響無し

▶最悪時間計算量はおそらく改善しない

▶空間計算量 = 𝑂 𝑟( 𝑉 + |𝐸|)※説明は 𝑟 = 1

16

Page 17: 枝刈り探索による大規模グラフ上の 高速な影響力推定・影響 …...Coin-flip tech. [Kempe-Kleinberg-Tardos. KDD'03] Inf 𝑆≜ 1 𝑟 1≤ ≤𝑟 R𝐺 𝑖

技法Ⅰ:枝刈りBFS

計算対象:R𝐺 𝑣1 , R𝐺 𝑣2 , … , R𝐺 𝑣𝑛※簡単のため𝐺はDAG (前処理で強連結成分分解)

17

▶前処理:次数最大のハブℎの子孫・先祖を計算

① 𝑏 ∈ ℎの先祖

▶ℎの子孫を無視してBFS

▶答=(#探索点)+(#ℎの子孫)

② 𝑎 ∉ ℎの先祖

▶そのままBFS

▶答=(#探索点)

𝑏

𝑎ℎ

𝑐

𝑑

𝑒

𝑓

𝑏

𝑎ℎ

𝑐

𝑑

𝑒

𝑓

Page 18: 枝刈り探索による大規模グラフ上の 高速な影響力推定・影響 …...Coin-flip tech. [Kempe-Kleinberg-Tardos. KDD'03] Inf 𝑆≜ 1 𝑟 1≤ ≤𝑟 R𝐺 𝑖

技法Ⅰ:枝刈りBFS

計算対象:R𝐺 𝑣1 , R𝐺 𝑣2 , … , R𝐺 𝑣𝑛※簡単のため𝐺はDAG (前処理で強連結成分分解)

18

▶前処理:次数最大のハブℎの子孫・先祖を計算

① 𝑏 ∈ ℎの先祖

▶ℎの子孫を無視してBFS

▶答=(#探索点)+(#ℎの子孫)

② 𝑎 ∉ ℎの先祖

▶そのままBFS

▶答=(#探索点)

𝑏

𝑎ℎ

𝑐

𝑑

𝑒

𝑓

𝑏

𝑎ℎ

𝑐

𝑑

𝑒

𝑓

Page 19: 枝刈り探索による大規模グラフ上の 高速な影響力推定・影響 …...Coin-flip tech. [Kempe-Kleinberg-Tardos. KDD'03] Inf 𝑆≜ 1 𝑟 1≤ ≤𝑟 R𝐺 𝑖

技法Ⅰ:枝刈りBFS

計算対象:R𝐺 𝑣1 , R𝐺 𝑣2 , … , R𝐺 𝑣𝑛※簡単のため𝐺はDAG (前処理で強連結成分分解)

19

▶前処理:次数最大のハブℎの子孫・先祖を計算

① 𝑏 ∈ ℎの先祖

▶ℎの子孫を無視してBFS

▶答=(#探索点)+(#ℎの子孫)

② 𝑎 ∉ ℎの先祖

▶そのままBFS

▶答=(#探索点)

𝑏

𝑎ℎ

𝑐

𝑑

𝑒

𝑓

𝑏

𝑎ℎ

𝑐

𝑑

𝑒

𝑓

Page 20: 枝刈り探索による大規模グラフ上の 高速な影響力推定・影響 …...Coin-flip tech. [Kempe-Kleinberg-Tardos. KDD'03] Inf 𝑆≜ 1 𝑟 1≤ ≤𝑟 R𝐺 𝑖

技法Ⅰ:Q. 枝刈りBFSは効果的ですか?

▶パスグラフでは計Θ 𝑉 2 時間

▶でも、ソーシャルネットワークなら…

20

複雑ネットワークソーシャル・ウェブ・共著

http://www.cise.ufl.edu/research/sparse

/matrices/SNAP/soc-Epinions1.html

ランダムグラフ DAG

Core

Fringe

ℎ巨大成分 高次数

Page 21: 枝刈り探索による大規模グラフ上の 高速な影響力推定・影響 …...Coin-flip tech. [Kempe-Kleinberg-Tardos. KDD'03] Inf 𝑆≜ 1 𝑟 1≤ ≤𝑟 R𝐺 𝑖

技法Ⅰ:A. 枝刈りBFSは効果的でした!

▶平均探索頂点数:400,000 ⇨ 6

21

探索頂点数の分布

普通のBFS

枝刈り

BFS

データセット:LiveJournal, 𝑉 = 4.8M, 𝐸 = 69M, 𝑝𝑒 = 0.1 ∀𝑒

Page 22: 枝刈り探索による大規模グラフ上の 高速な影響力推定・影響 …...Coin-flip tech. [Kempe-Kleinberg-Tardos. KDD'03] Inf 𝑆≜ 1 𝑟 1≤ ≤𝑟 R𝐺 𝑖

技法Ⅱ:不要なBFSの検出・回避

▶計算対象:R𝐺 {𝑣1∗, 𝑣} − R𝐺 𝑣1

∗ ∀𝑣

▶計算済み:R𝐺 𝑣 ∀𝑣 By 枝刈りBFS

回避条件

(𝑣の子孫) ∩ (𝑣1∗の子孫) = ∅

⇕R𝐺 {𝑣1

∗, 𝑣} − R𝐺 𝑣1∗ = R𝐺 𝑣

検出方法

▶ 𝑣1∗の子孫から逆BFSで線形時間

6/4

4/3

1/0

𝑣1∗

2/2

1/1

3/3

※不可避な頂点は素直にBFS

左: R𝐺 𝑣右: R𝐺 𝑣1

∗, 𝑣 − R𝐺 𝑣1∗

Page 23: 枝刈り探索による大規模グラフ上の 高速な影響力推定・影響 …...Coin-flip tech. [Kempe-Kleinberg-Tardos. KDD'03] Inf 𝑆≜ 1 𝑟 1≤ ≤𝑟 R𝐺 𝑖

実験評価:提案手法の実行時間シードサイズ 𝑘 = 50

23

データセット技法Ⅰ有技法Ⅱ有

技法Ⅰ無技法Ⅱ有

技法Ⅰ有技法Ⅱ無

技法Ⅰ無技法Ⅱ無

DBLP

𝑝𝑒 = 0.0127秒 26秒 149秒 158秒

DBLP

𝑝𝑒 = 0.154秒 3,036秒 306秒 3,275秒

LiveJournal

𝑝𝑒 = 0.01327秒 1,934秒 2,176秒 3,820秒

LiveJournal

𝑝𝑒 = 0.1634秒 272,518秒 2,426秒 272,973秒

データセット 𝑉 𝐸

DBLP 655K 2.0M

LiveJournal 4.8M 69M400倍

Environment: Intel Xeon X5670 (2.93GHz), 48GB, Language: C++

Page 24: 枝刈り探索による大規模グラフ上の 高速な影響力推定・影響 …...Coin-flip tech. [Kempe-Kleinberg-Tardos. KDD'03] Inf 𝑆≜ 1 𝑟 1≤ ≤𝑟 R𝐺 𝑖

実験評価:影響拡散の値の比較シードサイズ 𝑘 = 50

24

▶提案手法が最良

データセット 提案手法StaticGreedy

DU[Cheng+'13]

IRIE[Jung+'12]

PMIA[Chen+'10]

SAEDV[Jiang+'11]

DBLP

𝑝𝑒 = 0.01332 330 323 317 76

DBLP

𝑝𝑒 = 0.1100076 -- 99533 99505 99579

LiveJournal

𝑝𝑒 = 0.0147527 -- 41906 40544 26066

LiveJournal

𝑝𝑒 = 0.11686629 -- 1682436 -- 1682242

データセット 𝑉 𝐸

DBLP 655K 2.0M

LiveJournal 4.8M 69M

Page 25: 枝刈り探索による大規模グラフ上の 高速な影響力推定・影響 …...Coin-flip tech. [Kempe-Kleinberg-Tardos. KDD'03] Inf 𝑆≜ 1 𝑟 1≤ ≤𝑟 R𝐺 𝑖

実験評価:実行時間の比較シードサイズ 𝑘 = 50

25Environment: Intel Xeon X5670 (2.93GHz), 48GB, Language: C++

▶ヒューリスティクスと同等

▶辺確率設定に対して頑健

データセット 提案手法StaticGreedy

DU[Cheng+'13]

IRIE[Jung+'12]

PMIA[Chen+'10]

SAEDV[Jiang+'11]

DBLP

𝑝𝑒 = 0.0127秒 117秒 77秒 4秒 388秒

DBLP

𝑝𝑒 = 0.152秒 OOM 77秒 289秒 388秒

LiveJournal

𝑝𝑒 = 0.01327秒 OOM 1,622秒 500秒 1,275秒

LiveJournal

𝑝𝑒 = 0.1663秒 OOM 1,635秒 OOM 1,294秒

データセット 𝑉 𝐸

DBLP 655K 2.0M

LiveJournal 4.8M 69M

Page 26: 枝刈り探索による大規模グラフ上の 高速な影響力推定・影響 …...Coin-flip tech. [Kempe-Kleinberg-Tardos. KDD'03] Inf 𝑆≜ 1 𝑟 1≤ ≤𝑟 R𝐺 𝑖

その後、数多くの手法が出現

26我々の手法はもはや時代遅れ…?

カテゴリ 戦略・特徴 代表的手法

シミュレーション拡散過程を素朴に実行高品質・低速

CELF++ [Goyal+. WWW'11]

CELF [Leskovec+. KDD'07]

スナップショットランダムグラフを標本し再利用高品質・低速

PMC [我々. AAAI'14]StaticGreedy [Cheng+. CIKM'13]

逆到達可能集合逆シミュレーションの結果を活用 (後述)

高品質・ほぼ線形時間

IMM [Tang+. SIGMOD'15]

TIM+ [Tang+. SIGMOD'14]

RIS [Borgs+. SODA'14]

ヒューリスティクス精度保証無し高速・低品質

EaSyIM [Galhotra+. SIGMOD'16]

IRIE [Jung+. ICDM'12]

SAEDV [Jiang+. AAAI'11]

PMIA [Chen+. KDD'10]

Page 27: 枝刈り探索による大規模グラフ上の 高速な影響力推定・影響 …...Coin-flip tech. [Kempe-Kleinberg-Tardos. KDD'03] Inf 𝑆≜ 1 𝑟 1≤ ≤𝑟 R𝐺 𝑖

Debunking the Myths of Influence Maximization:

An In-Depth Benchmarking Study[Arora-Galhotra-Ranu. SIGMOD'17]

▶徹底的な実験で既存手法の性能を検証

▶我々の手法について …

27

要約

グラフ・辺確率設定に対し速度は安定だが、メモリ消費が莫大

Page 28: 枝刈り探索による大規模グラフ上の 高速な影響力推定・影響 …...Coin-flip tech. [Kempe-Kleinberg-Tardos. KDD'03] Inf 𝑆≜ 1 𝑟 1≤ ≤𝑟 R𝐺 𝑖

研究①のまとめ

▶解決できた点

▶スナップショット手法の効率改善

▶浮上した課題

▶莫大なメモリ使用量 𝑂 𝑟 𝑉 + 𝐸

28

Page 29: 枝刈り探索による大規模グラフ上の 高速な影響力推定・影響 …...Coin-flip tech. [Kempe-Kleinberg-Tardos. KDD'03] Inf 𝑆≜ 1 𝑟 1≤ ≤𝑟 R𝐺 𝑖

研究②成長するグラフにおける影響力推定・影響最大化のための実時間完全動的索引手法

29

Page 30: 枝刈り探索による大規模グラフ上の 高速な影響力推定・影響 …...Coin-flip tech. [Kempe-Kleinberg-Tardos. KDD'03] Inf 𝑆≜ 1 𝑟 1≤ ≤𝑟 R𝐺 𝑖

研究②の背景

現実のソーシャルネットワークは動的・成長する

▶最新の解析結果を追跡したい

▶静的手法の逐次適用⇝線形時間以上

30

Q. 研究①は使えますか?

A. 難しい; ハブ頂点の先祖・子孫の動的更新が大変

友達関係の成立・解消

Page 31: 枝刈り探索による大規模グラフ上の 高速な影響力推定・影響 …...Coin-flip tech. [Kempe-Kleinberg-Tardos. KDD'03] Inf 𝑆≜ 1 𝑟 1≤ ≤𝑟 R𝐺 𝑖

研究②の貢献 [大坂-秋葉-𠮷田-河原林. VLDB'16]

31

成長するグラフ上の影響解析をサポートする完全動的索引手法の提案

b

a

I0

b

a

I1

b

a

I2

影響力最大はa bの影響力は3 bの影響力は2

索引構築数千万辺

索引更新追加+削除

1秒未満

解析クエリ精度保証

Page 32: 枝刈り探索による大規模グラフ上の 高速な影響力推定・影響 …...Coin-flip tech. [Kempe-Kleinberg-Tardos. KDD'03] Inf 𝑆≜ 1 𝑟 1≤ ≤𝑟 R𝐺 𝑖

既存の静的手法との関連

32

カテゴリ 戦略・特徴 代表的手法

シミュレーション拡散過程を素朴に実行高品質・低速

CELF++ [Goyal+. WWW'11]

CELF [Leskovec+. KDD'07]

スナップショットランダムグラフを標本し再利用高品質・低速

PMC [我々. AAAI'14]

StaticGreedy [Cheng+. CIKM'13]

逆到達可能集合逆シミュレーションの結果を活用 (後述)

高品質・ほぼ線形時間

IMM [Tang+. SIGMOD'15]

TIM+ [Tang+. SIGMOD'14]

RIS [Borgs+. SODA'14]

ヒューリスティクス精度保証無し高速・低品質

EaSyIM [Galhotra+. SIGMOD'16]

IRIE [Jung+. ICDM'12]

SAEDV [Jiang+. AAAI'11]

PMIA [Chen+. KDD'10]

この手法の発展

Page 33: 枝刈り探索による大規模グラフ上の 高速な影響力推定・影響 …...Coin-flip tech. [Kempe-Kleinberg-Tardos. KDD'03] Inf 𝑆≜ 1 𝑟 1≤ ≤𝑟 R𝐺 𝑖

Reverse Influence Sampling アルゴリズム[Borgs-Brautbar-Chayes-Lucier. SODA'14]

▶逆到達可能 (Reverse Reachable; RR) 集合

一様無作為に選んだ頂点 に影響しうる頂点集合

33

z=ランダムグラフ上で に到達z

a

b

d

fe

ca

b

d

fe

ca

b

d

fe

ca

bz

ca

za

f

z

Page 34: 枝刈り探索による大規模グラフ上の 高速な影響力推定・影響 …...Coin-flip tech. [Kempe-Kleinberg-Tardos. KDD'03] Inf 𝑆≜ 1 𝑟 1≤ ≤𝑟 R𝐺 𝑖

Reverse Influence Sampling アルゴリズム[Borgs-Brautbar-Chayes-Lucier. SODA'14]

▶逆到達可能 (Reverse Reachable; RR) 集合

一様無作為に選んだ頂点 に影響しうる頂点集合

34

Inf 𝑆 ∝ 𝐄[#𝑆と交わる逆到達可能集合]

探索辺数 = Θ 𝜖−3 𝑉 + 𝐸 log 𝑉[Borgs-Brautbar-Chayes-Lucier. SODA'14]

z=ランダムグラフ上で に到達z

a

be

ca

da

f

ca

be

ca

da

f

c

Page 35: 枝刈り探索による大規模グラフ上の 高速な影響力推定・影響 …...Coin-flip tech. [Kempe-Kleinberg-Tardos. KDD'03] Inf 𝑆≜ 1 𝑟 1≤ ≤𝑟 R𝐺 𝑖

提案手法の概要

①索引構造

▶動的更新しやすい&省メモリ

②解析クエリ手法

▶逆到達可能集合を利用

③索引更新手法

▶正しく&効率的に到達可能性を修正

35

目標:

グラフ変化に応じて逆到達可能集合を更新

Page 36: 枝刈り探索による大規模グラフ上の 高速な影響力推定・影響 …...Coin-flip tech. [Kempe-Kleinberg-Tardos. KDD'03] Inf 𝑆≜ 1 𝑟 1≤ ≤𝑟 R𝐺 𝑖

①索引構造

36

逆到達可能集合 完全情報提案スケッチ

索引更新難情報過少

拡散経路が分からない

索引更新易消費空間大

索引更新易消費空間小

z

d

fez

d

fe

a

z

d

fe

c0.5

0.3

0.10.6

0.2

0.20.9

乱数は振直す

z に届く頂点・辺だけ

Page 37: 枝刈り探索による大規模グラフ上の 高速な影響力推定・影響 …...Coin-flip tech. [Kempe-Kleinberg-Tardos. KDD'03] Inf 𝑆≜ 1 𝑟 1≤ ≤𝑟 R𝐺 𝑖

②解析クエリ手法

▶逆到達可能集合の逆インデックス

1つ目の逆到達可能集合 = 𝑎, 𝑏, 𝑒

2つ目の逆到達可能集合 = 𝑎, 𝑑

3つ目の逆到達可能集合 = 𝑎, 𝑐, 𝑓

4つ目の逆到達可能集合 = 𝑏, 𝑒, 𝑓

5つ目の逆到達可能集合 = 𝑐, 𝑑, 𝑒

37

a b c d e f

1

2

3

4

5

頂点⟷逆到達可能集合相互に表引き可能

Page 38: 枝刈り探索による大規模グラフ上の 高速な影響力推定・影響 …...Coin-flip tech. [Kempe-Kleinberg-Tardos. KDD'03] Inf 𝑆≜ 1 𝑟 1≤ ≤𝑟 R𝐺 𝑖

②解析クエリ手法

38

a b c d e f

1 ✔

2

3 ✔

4 ✔

5 ✔ ✔

{c, e}?

k=2?

貪欲に頂点を選択

4×定数

▶影響最大化:交わるスケッチ数が最大の頂点集合

▶影響力推定:頂点集合と交わるスケッチ数の計算

{a, e}

a b c d e f

1

2

3

4

5

Page 39: 枝刈り探索による大規模グラフ上の 高速な影響力推定・影響 …...Coin-flip tech. [Kempe-Kleinberg-Tardos. KDD'03] Inf 𝑆≜ 1 𝑟 1≤ ≤𝑟 R𝐺 𝑖

③索引更新手法

グラフが変化したら …

各スケッチを独立に更新し、以下を保つ :

❝ 任意の は を通り に到る ❞z

a

b

d

fz

ca

b

d

fz

ca

b

d

fz

cac 削除 db 追加

⇝索引再構築の必要無

39

基本はBFS

5つの操作

辺追加・辺削除・辺確率変更・頂点追加・頂点削除

Page 40: 枝刈り探索による大規模グラフ上の 高速な影響力推定・影響 …...Coin-flip tech. [Kempe-Kleinberg-Tardos. KDD'03] Inf 𝑆≜ 1 𝑟 1≤ ≤𝑟 R𝐺 𝑖

辺削除の例1

40

z

vu

Q.「 に到達可能な頂点」が減る?z

Page 41: 枝刈り探索による大規模グラフ上の 高速な影響力推定・影響 …...Coin-flip tech. [Kempe-Kleinberg-Tardos. KDD'03] Inf 𝑆≜ 1 𝑟 1≤ ≤𝑟 R𝐺 𝑖

辺削除の例1

41

z

vu

Q.「 に到達可能な頂点」が減る?A.減らない

z

Page 42: 枝刈り探索による大規模グラフ上の 高速な影響力推定・影響 …...Coin-flip tech. [Kempe-Kleinberg-Tardos. KDD'03] Inf 𝑆≜ 1 𝑟 1≤ ≤𝑟 R𝐺 𝑖

辺削除の例2

42

uv

z

Q.「 に到達可能な頂点」が減る?z

出近傍無し

Page 43: 枝刈り探索による大規模グラフ上の 高速な影響力推定・影響 …...Coin-flip tech. [Kempe-Kleinberg-Tardos. KDD'03] Inf 𝑆≜ 1 𝑟 1≤ ≤𝑟 R𝐺 𝑖

辺削除の例2

43

uv

z

Q.「 に到達可能な頂点」が減る?A.少し減る

z

Page 44: 枝刈り探索による大規模グラフ上の 高速な影響力推定・影響 …...Coin-flip tech. [Kempe-Kleinberg-Tardos. KDD'03] Inf 𝑆≜ 1 𝑟 1≤ ≤𝑟 R𝐺 𝑖

から逆幅優先探索で良いのでは?を消すため全 を見る⇝全体を走査

辺削除の素朴な更新方法

z\遅い/

zv

u

uv

z

課題Ⅱ

効率的な逆幅優先探索課題Ⅰ

迂回路の検知

44

Page 45: 枝刈り探索による大規模グラフ上の 高速な影響力推定・影響 …...Coin-flip tech. [Kempe-Kleinberg-Tardos. KDD'03] Inf 𝑆≜ 1 𝑟 1≤ ≤𝑟 R𝐺 𝑖

辺削除の高速な反映:到達可能木の導入

45

を根とするスケッチの部分有向木

技法Ⅰ= 迂回路の存在判定技法Ⅱ= 逆幅優先探索の範囲抑制

* 頂点削除もOK

z

z

消費空間≤|スケッチ|

Page 46: 枝刈り探索による大規模グラフ上の 高速な影響力推定・影響 …...Coin-flip tech. [Kempe-Kleinberg-Tardos. KDD'03] Inf 𝑆≜ 1 𝑟 1≤ ≤𝑟 R𝐺 𝑖

辺削除の高速な反映:迂回路の存在判定

46

uv ∉到達可能木 ⇒ から へ迂回路が有る※逆は成立しない

z

z

vu

u

実験では10%が枝刈り

Page 47: 枝刈り探索による大規模グラフ上の 高速な影響力推定・影響 …...Coin-flip tech. [Kempe-Kleinberg-Tardos. KDD'03] Inf 𝑆≜ 1 𝑟 1≤ ≤𝑟 R𝐺 𝑖

辺削除の高速な反映:探索範囲の抑制

を根とする部分木Tuだけ調査 & 木を更新

Tu高々数頂点

uv

z

u

> 100,000 点平均的に

Page 48: 枝刈り探索による大規模グラフ上の 高速な影響力推定・影響 …...Coin-flip tech. [Kempe-Kleinberg-Tardos. KDD'03] Inf 𝑆≜ 1 𝑟 1≤ ≤𝑟 R𝐺 𝑖

辺削除の高速な反映:探索範囲の抑制

を根とする部分木Tuだけ調査 & 木を更新

Tu高々数頂点

u

> 100,000 点平均的に

48

uv

z

Page 49: 枝刈り探索による大規模グラフ上の 高速な影響力推定・影響 …...Coin-flip tech. [Kempe-Kleinberg-Tardos. KDD'03] Inf 𝑆≜ 1 𝑟 1≤ ≤𝑟 R𝐺 𝑖

上手くいくワケ

49

http://www.cise.ufl.edu/research/sparse/

matrices/SNAP/soc-Epinions1.html

Core-fringe 構造

Fringe は木っぽいTu 小さい技法Ⅱが効果的

Core は密迂回路沢山技法Ⅰが効果的

[Leskovec-Lang-Dasgupta-Mahoney. WWW'08]

[Maehara-Akiba-Iwata-Kawarabayashi. PVLDB'14]

Core

Fringe

Page 50: 枝刈り探索による大規模グラフ上の 高速な影響力推定・影響 …...Coin-flip tech. [Kempe-Kleinberg-Tardos. KDD'03] Inf 𝑆≜ 1 𝑟 1≤ ≤𝑟 R𝐺 𝑖

実験評価

▶ 索引構築・索引更新・影響力推定・影響最大化の効率を評価

▶ データ:Koblenz Network Collection

辺の作成時刻付き

▶ 計算機:Intel Xeon E5-2690 2.90GHz CPU + 256GB RAM

▶ コンパイラ:g++v4.6.3 (-O2)

▶ 索引サイズ =32(|𝑉| + |𝐸|) log |𝑉|

50

http://konect.uni-koblenz.de/

Page 51: 枝刈り探索による大規模グラフ上の 高速な影響力推定・影響 …...Coin-flip tech. [Kempe-Kleinberg-Tardos. KDD'03] Inf 𝑆≜ 1 𝑟 1≤ ≤𝑟 R𝐺 𝑖

実験:索引構築

51

実験設定 索引構築

ネットワーク 𝒑 時間 サイズ

Epinions13万点 84万辺

① 89 s 1 GB

② 62 s 1 GB

YouTube322万点 1,875万辺

① 5,000 s 45 GB

② 1,986 s 4 GB

Flickr230万点 3,314万辺

① 5,468 s 31 GB

② 4,254 s 12 GB

▶数時間だが一度きり

①辺uvの確率 = 0.1, 0.01, 0.001から無作為に選択②辺uvの確率 = 入次数(v)-1

完全な情報

サイズ

6 GB

7 GB

250 GB

180 GB

≈ 282 GB

≈ 292 GB

Page 52: 枝刈り探索による大規模グラフ上の 高速な影響力推定・影響 …...Coin-flip tech. [Kempe-Kleinberg-Tardos. KDD'03] Inf 𝑆≜ 1 𝑟 1≤ ≤𝑟 R𝐺 𝑖

実験:グラフ変化による索引更新

52

実験設定 単一辺操作 単一頂点操作

ネットワーク 𝒑 追加 削除 確率変更 追加 削除

Epinions13万点 84万辺

① 4.1 ms 1.0 ms 5.8 ms 0.8 ms 14.8 ms

② 1.0 ms 1.8 ms 1.7 ms 0.7 ms 8.3 ms

YouTube322万点 1,875万辺

① 31.8 ms 0.3 ms 236.2 ms 0.0 ms 92.2 ms

② 0.1 ms 0.0 ms 1.5 ms 0.7 ms 5.7 ms

Flickr230万点 3,314万辺

① 89.6 ms 2.4 ms 125.2 ms 0.0 ms 459.0 ms

② 0.2 ms 0.1 ms 4.8 ms 2.1 ms 53.8 ms

①辺uvの確率 = 0.1, 0.01, 0.001から無作為に選択②辺uvの確率 = 入次数(v)-1

▶ (更新時間) ≪ (構築時間)

▶頂点削除が最遅 ∵多量の辺削除を伴う但し,頻度は少ないと思われる

Page 53: 枝刈り探索による大規模グラフ上の 高速な影響力推定・影響 …...Coin-flip tech. [Kempe-Kleinberg-Tardos. KDD'03] Inf 𝑆≜ 1 𝑟 1≤ ≤𝑟 R𝐺 𝑖

実験:単一頂点の影響力推定の時間

実験設定 本研究 静的手法

ネットワーク 𝒑 索引構築 クエリ MC[Kempe+'03]

RIS[Borgs+'14]

Epinions13万点 84万辺

① 89 s 0.97 μs 6 s 9 s

② 62 s 0.96 μs 0.01 s 9 s

YouTube322万点 1,875万辺

① 5,000 s 1.79 μs > 100 s 519 s

② 1,986 s 1.68 μs 0.02 s 447 s

Flickr230万点 3,314万辺

① 5,468 s 1.83 μs > 100 s 350 s

② 4,254 s 1.74 μs 0.05 s 473 s

53

▶ 100万点/秒の追跡可能▶∵表引きしてるだけ①辺uvの確率 = 0.1, 0.01, 0.001から無作為に選択②辺uvの確率 = 入次数(v)-1

Page 54: 枝刈り探索による大規模グラフ上の 高速な影響力推定・影響 …...Coin-flip tech. [Kempe-Kleinberg-Tardos. KDD'03] Inf 𝑆≜ 1 𝑟 1≤ ≤𝑟 R𝐺 𝑖

①辺uvの確率 = 0.1, 0.01, 0.001から無作為に選択②辺uvの確率 = 入次数(v)-1

実験:影響最大化の時間 (シードサイズ 𝑘 = 100)

54

実験設定 本研究 静的手法

ネットワーク 𝒑 クエリ RIS[Borgs+'14]

IMM[Tang+'15]

PMC[Ohsaka+'14]

IRIE[Jung+'12]

Epinions13万点 84万辺

① 0.5 s 10 s 39 s 11 s 13 s

② 0.4 s 12 s 0.3 s 21 s 13 s

YouTube322万点 1,875万辺

① 23 s 508 s メモリ不足 284 s 250 s

② 1 s 535 s 8 s 922 s 239 s

Flickr230万点 3,314万辺

① 16 s 361 s メモリ不足 173 s 497 s

② 3 s 617 s 6 s 932 s 457 s

▶スケッチが既にある効果 本研究と同精度設定

Page 55: 枝刈り探索による大規模グラフ上の 高速な影響力推定・影響 …...Coin-flip tech. [Kempe-Kleinberg-Tardos. KDD'03] Inf 𝑆≜ 1 𝑟 1≤ ≤𝑟 R𝐺 𝑖

研究②のまとめ

解決した点

▶動的設定で影響解析を効率的に実現

浮上した課題

▶莫大な索引サイズ:数千万辺で10GBオーダー

55

Page 56: 枝刈り探索による大規模グラフ上の 高速な影響力推定・影響 …...Coin-flip tech. [Kempe-Kleinberg-Tardos. KDD'03] Inf 𝑆≜ 1 𝑟 1≤ ≤𝑟 R𝐺 𝑖

滞在中の計画/アイデア

今回扱った基礎的な操作を圧縮したまま出来る?

▶巨大データ×確率的振舞の空間を効率化

▶サンプリングによる近似も重いため

▶超高速な動的・オンライン処理

▶研究②の影響最大化は実はnotオンライン

56