2. ⾃⼰紹介
l 名前:秋葉 拓哉
l Twitter, GitHub:@iwiwi
l 経歴:東⼤今井研 (博⼠) → NII (特任助教) → PFN (リサーチャー, 7/1 ⼊社!)
l 今年の戦歴:KDDʼ16, IJCAIʼ16, VLDBʼ16×2, CIKMʼ16×2
仕事内容
l これまで:⼤規模グラフのデータマイニング
l PFN:深層学習関係
今⽇は両⽅関係ありそうな論⽂を選んでみました
2
3. 論⽂概要
グラフを CNN に突っ込む
がほぼ全て!
課題
l でも、突っ込み⽅が難しい
l 似た構造が似た突っ込まれ⽅をされてほしい
アルゴリズム概要
l 頂点を決まった個数選んで、その近傍を取り出す
l ラベリングによる特徴付けを使って順序を付ける
3
18. ステップ 2:各頂点について近い頂点を k 個選択
ステップ 1 で選んだ各頂点 v について:
1. N = v から距離 1 の頂点としてみて、|N| ≧ k なら終了
2. N = v から距離 2 の頂点としてみて、 |N| ≧ k なら終了
3. (繰り返し)
このタイミングでは選んだ頂点数は
k より少し多いかも
18
19. ステップ 3:k 個の頂点に順番を付ける
頂点 v とその近傍集合 N について:
1. まず v からの距離で昇順ソート
2. 同じ距離のものは WL ラベルでソート
3. N が k 個より多ければ top-k だけにする
19
20. ステップ 4:ならべてテンソルを作る
l 縦に w 個の頂点(ステップ 1)を並べる
l 横に k 個の頂点(ステップ 2&3)を並べる
l 各頂点の持つ属性が a 次元のベクトルとする
サイズ (w, k, a) のテンソルの完成!
これを CNN に⼊れる!
(実際には 2D のほうが便利なので wk×a の⾏列にしているようだ)
20
32. 関連研究
l Halting in Random Walk Kernels (NIPSʼ15)
– Random Walk Kernel が理論的に微妙という話
– 阪⼤の杉⼭さん
l DeepWalk: Online Learning of Social Representations (KDDʼ14)
l node2vec: Scalable Feature Learning for Networks (KDDʼ16)
– ソーシャルグラフのような⼤きなグラフが 1 つある状況
– 各頂点の構造的な⽴ち位置を表すベクトルを出⼒する
32
33. 関連研究
l Efficient Top-k Shortest-path Distance Queries on Large Networks
by Pruned Landmark Labeling (AAAIʼ15)
– 秋葉、林くん、則さん、岩⽥さん、吉⽥さんの研究(宣伝)
– グラフ上の 2 点間の関係を表現するベクトルを計算
– SVM に突っ込んでグラフの構造を予測
33
35. まとめ
グラフを CNN に突っ込む
課題
l 似た構造が似た突っ込まれ⽅になるようにテンソルにする
アルゴリズム
l 既存の特徴付け (Weisfeiler-Lehman) で順序を付けて並べる
実験結果
l ⾼精度かつ⾼速
35
36. 個⼈的な感想
l 前処理が多く、Weisfeiler-Lehman ラベリングにかなり頼っている
– 特徴の抽出はできるだけ NN に移譲したいが、グラフはやはり難しい……
– とはいえこれまでのカーネルよりは NN に移譲できているということか
l ラベリングの影響がどの程度なのかかなり気になる
– 著者いわく媒介中⼼性を使ってもほぼ同様だったらしい
– そもそもランダム置換と⽐較してほしい
l とはいえ悪くない精度は出ているし、NN の枠組みの中でグラフも
他のデータと統合的に扱えるようになるのはとても良い
36