Weisfeiler-Lehman Graph Kernels

 

阿部健信

"Weisfeiler-Lehman Graph Kernels" JMLR 12 (2011) 2539-2561

のまとめです。

論文内容

  • Abstract
  • Introduction
  • The Weisfeiler-Lehman Test of Isomorphism
  • The General Weisfeiler-Lehman Kernels
  • Experiments
  • Conclusions

論文内容

  • Abstract
  • Introduction
  • The Weisfeiler-Lehman Test of Isomorphism
  • The General Weisfeiler-Lehman Kernels
  • Experiments
  • Conclusions

Abstract

  • ノードにラベルのついた巨大グラフについて、高速に計算できるカーネルを提案。
  • Weisfeiler-Lehman testを用いる。
  • Weisfeiler-Lehmanのグラフ列に基づきカーネルが定義でき、辺の数とグラフ列の数に対して線形時間で実行できる。
  • 実験においては、いくつかのグラフ分類問題において、最先端のグラフカーネルを正確性および実行時間において上回った。

 

 

 

 

論文内容

  • Abstract
  • Introduction
  • The Weisfeiler-Lehman Test of Isomorphism
  • The General Weisfeiler-Lehman Kernels
  • Experiments
  • Conclusions

定義確認

  • ノードにラベルのついた無向グラフを考える。
  • グラフ \(G = (V, E, l)\)
  • \(V\) : 頂点  (\(|V| = n\))
  • \(E\) : 辺  (\(|E| = m\))
  • \(l: V \to \Sigma\)  (\(\Sigma\)はアルファベット)
  • \(\mathcal{N}(v) = \{v' \| (v, v') \in E \}\)
  • (\(m > n\)を暗黙的に仮定している?)

研究の目的

  • グラフの類似性判定は重要

ex. 化学物質の構造をグラフで表す。

→似た構造を持つ物質は同じ性質を持つ可能性が高いと考えられる。

グラフの類似性判定

  • 同型判定 (同じサイズのグラフ)

NPであるが、NP困難であるかどうかもPであるかどうかもわかっていない。

  • 部分グラフ同型判定 (違うサイズのグラフ)

NP困難であることが証明されている。

  • 同型を用いた判定は、計算量が起きすぎることに加えて、自由度が少なく使いづらい。

その他の手法

  • グラフ編集距離

パラメーター化するのが難しい、NP困難の問題を含む

  • optimal assignment kernels

一般的には半正定値でない

  • the skew spectrum, the graphlet spectrum

ラベル付きのグラフに適用するのが難しい

グラフカーネル

  • 直感的には、2つの入力の類似性を数値化する関数。
  • 数学的には、再生核ヒルベルト空間の内積に対応する。

論文内容

  • Abstract
  • Introduction
  • The Weisfeiler-Lehman Test of Isomorphism
  • The General Weisfeiler-Lehman Kernels
  • Experiments
  • Conclusions

Weisfeiler-Lehman Test of Isomorphism

  • ラベル付き無向グラフG, G'の同型判定。
  • 次のアルゴリズムに従って、ノードのラベルを更新していく。
  • G, G'の頂点ラベルの集合が異なるもしくは、回数がn回に達するまでイテレーション。
  • ラベルの集合が異なった場合は同型でない、全て同じ場合はほぼ全ての場合について同型である。

アルゴリズム

http://www.jmlr.org/papers/volume12/shervashidze11a/shervashidze11a.pdf

実行例

http://www.jmlr.org/papers/volume12/shervashidze11a/shervashidze11a.pdf

計算量

  • step 1 : \(O(m)\)
  • step 2 : \(O(m)\)
    • 任意のイテレーションにおいて、multisetの種類はn以下。
    • その要素数のバケツを用意して、全てのmultisetの要素をどの点に属するかを記録しながらバケツに格納する。
    • 最後にバケツを昇順に、属する点に戻しながら読んでいけばよい。

計算量

  • step 3 : \(O(m)\)
    • radix sort
  • step 4 : \(O(m)\)
  • 以上より、\(h\)回のイテレーションについて、計算量は

$$ O(hm) $$

論文内容

  • Abstract
  • Introduction
  • The Weisfeiler-Lehman Test of Isomorphism
  • The General Weisfeiler-Lehman Kernels
  • Experiments
  • Conclusions

概要

  • Weisfeiler-Lehman Testのアルゴリズムを用いて、グラフ列および、それを用いたkernelフレームワークが定義できる。
  • 様々なbase kernelをそれに適用することで、様々なカーネルを定義できる。
  • 今回はbase kernelとして以下の3つを扱う。
    • subtree
    • edge
    • shortest path

Weisfeiler-Lehman sequence

  • Weisfeiler-Lehman graph : \(G_{i} = (V, E, l_{i})\)
  • the sequence of Weisfeiler-Lehman graphs :

$$ {G_{0}, G_{1}, ..., G_{h}} $$

Weisfeiler-Lehman kernel

  • \(k^{(h)}_{WL}(G, G') = k(G_{0}, G'_{0}) + k(G_{1}, G'_{1}) + ... + k(G_{h}, G'_{h})\)
  • \(k\)が半正定値のカーネルであるとき、\(k^{(h)}_{WL}\)も半正定値になる。

Weisfeiler-Lehman Subtree Kernel

  •  

 $$ \phi^{(h)}_{WLsubtree}(G) = (c_{0}(G, \sigma_{01}), ..., c_{0}(G, \sigma_{0|\Sigma_{0}|}), ..., c_{h}(G, \sigma_{h|\Sigma_{h}|})) $$

 

  • \(k(G, G') = \sum_{v \in V} \sum_{v' \in V'} \delta(l(v), l(v'))\)

     とすると、

 $$ (k^{(h)}_{WL}(G, G') = k^{(h)}_{WLsubtree}(G, G') $$

 

k^{(h)}_{WLsubtree}(G, G') = <\phi^{(h)}_{WLsubtree}(G), \phi^{(h)}_{WLsubtree}(G')>
kWLsubtree(h)(G,G)=&lt;ϕWLsubtree(h)(G),ϕWLsubtree(h)(G)&gt;k^{(h)}_{WLsubtree}(G, G&#x27;) = &lt;\phi^{(h)}_{WLsubtree}(G), \phi^{(h)}_{WLsubtree}(G&#x27;)&gt;

Weisfeiler-Lehman Subtree Kernel

  • 2つのグラフについての計算量は、\(O(hm)\)
  • \(N\)個のグラフの全てのペアは、\(O(Nhm + N^2hn)\)で計算できる。
    • \(O(Nhm)\)で\(N\)個の\(\phi^{(h)}_{WLsubtree}\)が計算できる。
    • \(O(N^2hn)\)で\({}_N C_2\)通りの内積が計算できる。

Weisfeiler-Lehman Edge Kernel

  • base kernelを以下のように定義する。

$$ (k_E = <\phi_E(G), \phi_E(G')> $$

\(\phi_E(G)\)は、\(G\)において\((a, b)\)からなる辺の出現回数を順番に並べたベクトル。\(((a, b) \in \Sigma)\)

  • 以下のようにも定義できる。

$$ k_E =\sum_{e \in E} \sum_{e' \in E'} \delta(a, a') \delta(b, b') $$

Weisfeiler-Lehman Edge Kernel

  • \(N\)個のグラフの全てのペアの計算量は、

$$ O(N^2 m^2 h) $$

Weisfeiler-Lehman Shortest Path Kernel

  • base kernelを以下のように定義する。

$$ (k_{SP}(G, G') = <\phi_{SP}(G), \phi_{SP}(G')> $$

\(\phi_{SP}\)は、\(G\)において\((a, b, p)\)の出現回数を順に並べたベクトル。\(((a, b) \in \Sigma, p \in \mathbb{N}_0\): shortest path length)

Weisfeiler-Lehman Shortest Path Kernel

  • \(N\)個のグラフの全てのペアの計算量は、

    $$ O(N^2n^4h) $$

    • 全てのノード間のshortest pathは\(O(n^3)\)で計算できる。

論文内容

  • Abstract
  • Introduction
  • The Weisfeiler-Lehman Test of Isomorphism
  • The General Weisfeiler-Lehman Kernels
  • Experiments
  • Conclusions

結論

  • いくつかのデータセットに対して、最新の手法と同等の正確性を見せ、計算時間では上回った。
  • bioinformaticsにおける巨大グラフのカーネルの応用に対して活路を見出したと言える。
  • ノードのラベルが連続であったり高次元である際のグラフカーネルを考えることが、今後の課題である。

終わりです。