疎なグラフ上のダイナミクスの解析とその応用

広島市立大学 情報科学部
三村 和史

2009.10.21 IBIS2009@九州大学

はじめに• これまでに疎なグラフで特徴づけられる様々問題は平衡統計力学に基づく手法でひろく調べられてきた• LDPC 符号, CDMA 通信方式, データ圧縮 など多数
• コンプレストセンシング (Kabashima-Wadayama-Tanaka 2009) なども• ダイナミクスはまだ発展途上のように思われる• 疎なグラフ上のダイナミクスってどんなもの？
• いくつかの例• いくつかの解析方法の概要 をかんたんに紹介

2/61

ネットワークで特徴づけられる問題• おおくの分野でみつけることができる

計算機科学

充足可能性問題, 頂点被覆問題

情報科学

誤り訂正符号, データ圧縮社会科学

輸送問題

生命科学

たんぱく質相互作用ネットワークなど

3/61

シミュレーションと解析• シミュレーションによるアプローチ• ここのグラフを詳細に評価できる• 様々な量を評価しやすい• 解析的によるアプローチ• グラフの詳細によらない議論ができる• 次数分布の影響など評価しやすい• 得意なところがちがっている4/61

概要• 特に，つぎの問題を例にしてご紹介• 最小頂点被覆問題• 誤り訂正符号

5/61

頂点被覆
• G = (V, E) : グラフ• V : ノードの集合• E : エッジの集合
頂点被覆



集合 VC ⊂ V が頂点被覆⇔ すべての (i, j) ∈ E について i ∈ VC または j ∈ VC を満たす


: vertex cover6/61

頂点被覆についての問題

頂点被覆の決定問題



与えられたグラフ G = (V, E) の頂点被覆 VC ⊂ V のなかで与えられたノード数 k の頂点被覆はあるか？

• NP 完全 (Garey-Johnson 1979)7/61

頂点被覆についての問題（つづき）
最小頂点被覆問題



与えられたグラフ G = (V, E) の頂点被覆 VC ⊂ V のなかでもっともノード数 |VC | の小さい値をもとめる• NP 困難• 「博物館にひつような警備員の数」: vertex cover

8/61最小頂点被覆問題の解析• これまでのおもな解析（|VC |/|V | の評価）
• 下界 (Gazmuri 1984)• 上界 (Harant 1998)• 典型的な値 (Weigt-Hartmann 2000)

9/61

例 : 最小頂点被覆問題の近似解法• かんたんな近似解法が知られている (Yannakakis-Gravril 1980?)
近似解法



• エッジがなくなるまで次を繰り返す• グラフからエッジをひとつ任意に選ぶ• その両端のノードと，それに接続するエッジをすべて取り除く• 取り除かれたノードの集合が頂点被覆

• 取り除かれたノードのどれかに，すべてのエッジは必ずつながっている

10/61

例 : 最小頂点被覆問題の近似解法（つづき）• 下のグラフで簡単な近似解法を実行してみる

11/61

例 : 最小頂点被覆問題の近似解法（つづき）• エッジをひとつ任意に選ぶ

12/61

例 : 最小頂点被覆問題の近似解法（つづき）• その両端のノードと，それに接続するエッジをすべて取り除く

13/61

例 : 最小頂点被覆問題の近似解法（つづき）• エッジがのこっているので，またエッジをひとつ任意に選ぶ

14/61

例 : 最小頂点被覆問題の近似解法（つづき）• その両端のノードと，それに接続するエッジをすべて取り除く

15/61

例 : 最小頂点被覆問題の近似解法（つづき）• まだのこっているので，またエッジをひとつ任意に選ぶ

16/61

例 : 最小頂点被覆問題の近似解法（つづき）• その両端のノードと，それに接続するエッジをすべて取り除く• すべてのエッジがなくなったのでおわり

17/61例 : 最小頂点被覆問題の近似解法（つづき）• 取り除かれたノードの集合が頂点被覆: vertex cover

18/61

例 : 最小頂点被覆問題の近似解法（つづき）• 近似解法の性能はよくない: vertex cover• (近似度) = (近似解の頂点数の最大値)/(最適解の頂点数) = 2• ランダムに選んだエッジの両端のどちらかは必ず頂点被覆にはいるから

19/61

たんぱく質相互作用ネットワーク• たんぱく質の解離，会合についての反応の時間発展をしらべる (Coolen-Rabello 2009)20/61

相互作用を表すネットワーク• 他のノードに割り当てられた値を重み付きでうけとる

xi
y ij
y ilxj

y ik

xl

xk

21/61

かんたんな誤り訂正符号• LDPC 符号をはじめとして多くの符号が疎グラフを使って記述される• ここでは，かんたんのためもっとも単純なものを考えてみる（ネットワークのかたちの依存性を考えるきっかけとして）• 情報源系列 : x1 , · · · , xN ∈ {±1}
• 符号語 : x1 , · · · , xN と，いくつかの i, j について計算した yij = xi xj ∈ {±1}xi
• 通信路 : 2 元対称通信路y ij• 受信語 : x̂1 , · · · , x̂N と ŷij
y ilxjy ikxlxk

22/61

例 : かんたんな誤り訂正符号• 復号（BP の近似）
y14 = x1 x4
y16 = x1 x6

x̂1 = ŷ14 x̂4−→

y18 = x1 x8..
.

x̂1 = ŷ16 x̂6

多数決できめるx̂1 = ŷ18 x̂8..
.

^xi
y^ ij

• 推定値をノード，パリティをエッジに^yilx^ j

y^ ik

^xl

^x
k

23/61

例 : かんたんな誤り訂正符号（つづき）• 符号語（もとの情報とパリティ）をもとめる+1+1+1-1-1+1+1-1

original message24/61

例 : かんたんな誤り訂正符号（つづき）• 符号語をもとめる（パリティを計算）+1+1+1-1+1-1-1+1+1-1+1-1codeword

25/61

例 : かんたんな誤り訂正符号（つづき）• ノイズがのった受信後（赤いところが反転）-1+1+1-1+1-1-1+1+1+1+1-1

received message• この受信後をつかって情報源系列を推定する

26/61

例 : かんたんな誤り訂正符号（つづき）• まず，他のノードの情報を足し合わせる

311-1
1-1-1-3+1-127/61

例 : かんたんな誤り訂正符号（つづき）• それが正なら 1，負なら-1 に更新する+1+1+1-1+1-1+1-1-1+1-1estimate (1)• まちがっている部分がある
28/61

例 : かんたんな誤り訂正符号（つづき）• また，他のノードの情報を足し合わせる（もう一度おなじことをする）

1

13-3-1

1+11-1+1-1

29/61

例 : かんたんな誤り訂正符号（つづき）• それが正なら 1，負なら-1 に更新する+1+1+1-1+1-1+1+1-1+1-1

estimate (2)• 情報源系列が推定できた（これ以上繰り返しても変化しないのでおわり）

30/61

モデル
• 簡単のため，まずさいしょに次のようなモデルを考える• 各エッジに，ラベルが与えられている• 各ノードに，しきい値素子が配置されている• 各ノードは，周囲のノードの値を重み付き（重み=ラベル）でうけとる• 各ノードは，一斉に状態をかえる

31/61

ダイナミクス状態更新• ほかのノードの状態を重み付きでうけとる : hi (σ) =

cij Jij σj + θij

• 現在の状態 σ  から次の状態 σ = (σi ) に変化する確率 : ρ(σi |σ  ) = ρ(σi |hi (σ  ))• cij ∈ {0, 1} : エッジの有無（あり=1, なし=0）（cij = cji なら無向グラフ）• Jij ∈ R : ノード j からノード i へのエッジについているラベル• σi ∈ {±1} : ノードの値• θi : グラフのエッジを経由せずにうけとる値

ji

J ij
θi
hi

32/61

ダイナミクス（つづき）• 決定論的に状態をかえる
ρ(σi |σ  ) = δσi , sgn [hi (σ )]• 確率的に状態をかえる（Glauber ダイナミクス）
exp[βσi hi (σ  )]ρ(σi |σ ) =2 cosh[βhi (σ  )]• β : 状態変化のランダムさ• β が有限ならエルゴード的（β を大きくすると決定論的なものに近づく）

33/61

ダイナミクスの評価• p0 (σ) : 初期分布
• pt (σ) : t 時刻後の分布• ρ(σ; σ ) =ρ(σi |σ  ) : 状態が σ  → σ と変化する確率i


分布の変化



ダイナミクスをしらべるには，分布の変化をしらべるとよい

pt+1 (σ) =ρ(σ; σ  )pt (σ  )σ• エルゴード的なら平衡分布がひとつある

34/61

なぜダイナミクス？
• 十分に時間がたったあとの性質は定常分布からわかる• ただし，定常分布があるとき
ダイナミクスを扱うことの長所• 定常分布がなくても解析できる
• 定常分布があるときでも，どのようにして定常にいたったかを調べられる

• 情報処理のシステムを調べるうえでも大切35/61

解析の方針• 分布の変化（再掲）pt+1 (σ) =ρ(σ; σ  )pt (σ  )σ• このとおりに計算すると指数的な計算コストがかかる• すべてのノードを個別に扱っていることと• 与えられたグラフの形をそのまま扱っていることが困難の原因• 解析的な評価については• 平均的な振舞をするノードを考えて，その挙動をしらべるのは簡単なはず• グラフに関して平均した分布をしらべるのは簡単なはず（パラメータ依存性がなくなるので）

36/61

手法
• おもな解析の方法は手法

特徴変数の数経路積分法

厳密解

時刻に関して指数的空洞法

近似解

時刻に関して指数的動的レプリカ法

近似解

数個程度（任意）

DRT 的空洞法

近似解

数個程度（任意）• 解析のアイデア自体は，グラフが密でも疎でも同じ

37/61

密なグラフの解析と，疎なグラフの解析のちがい• グラフに関する確率分布がちがうだけ

O(N1 )

ノード数程度O(N0 )

ほんの少し• エッジの少なさの影響• 密なグラフ : エッジが多いと統計的な性質は簡単になる• 疎なグラフ : エッジがすくないと扱いが難しくなる（扱いはかえって難しい）
38/61

経路積分法の概要• ノードの値が σ(0) → σ(1) → · · · → σ(tm ) と変化する確率を評価する方法(Martin-Siggia-Rose 1973, de Dominics 1978, Semerjian-Cugliandolo 2003,
Hatchett-Wemmenhove-PérezCastillo-Nikoletopoulos-Skantzos-Coolen 2004)

経路確率



P[σ(0), · · · , σ(tm )] = p(σ(0))
tmρ(σ(t); σ(t − 1))

t=1



39/61

経路積分法の概要（つづき）• 経路確率の特性関数（生成汎関数）を評価する
Z[ψ] =σ(0)···



 

P[σ(0), · · · , σ(tm )] exp −i
ψi (t)σi (t)tσ(tm )i

• いろいろな（経路確率に関する）期待値がもとめられる∂Z[ψ]ψ→0 ∂ψi (t)E[σi (t)] = i lim∂ 2 Z[ψ]E[σi (t)σj (t )] = − lim
ψ→0 ∂ψi (t)∂ψj (t )• 自己平均性を仮定する（ノード数が大きいとき Z[ψ] = Z[ψ]）• [· · · ] : グラフに関する期待値

40/61

経路積分法の概要（つづき）• （疎グラフ上での解析ではふつう）解析の結果は• 関数方程式であらわされる• 平均的な挙動をするひとつのノード σ(t) の経路の確率であらわされる• σ(0) → σ(1) → · · · → σ(tm ) の確率• σ(t) が 2 値のとき 2tm とおりの値を計算する必要がある

41/61

空洞法の概要• cavity グラフ上でノードの値が σ(0) → σ(1) → · · · → σ(tm ) と変化する確率を評価する方法 (Neri-Bollé 2009)• G(i) : グラフ G の cavity グラフ（ノード i と，そのエッジをすべて取ったグラフ）

i

G

G(i)

42/61

空洞法の概要（つづき）
cavity グラフ上での遷移確率

(i)ζj (t) = Jji σi (t) とおいて(i)p0···tm (σ 0···tm |θ0···tm −1 ) = p0···tm (σ 0···t |θ0···tm −1 + ζ (i),0···t−1 )
tm×ρ[σi (t)|hi (t − 1)] p0 (σi (0))
t=1ζ j(i)• p0···tm : G での分布(i)i• p0···tm : G(i) での分布（cavity 分布）• σ 0···tm = (σ(0), · · · , σ(tm )) （他も同様）(i)• ζj (t) : ノード i の隣のノード j への影響

GG(i)

43/61

空洞法の概要（つづき）
Bethe 近似

(i)

0···tm 1···tm −1(i),1···tm −1m,···,σ|θ+ζ)p∂i ,0···tm (σj0···tj|∂i |1
 (i)pj,0···tm (σj0···tm |θ1···tm −1 + ζ (i),1···tm −1 )
=j∈∂i




(i)

• pS,0···tm : ノード i ∈ S についての cavity 分布の周辺分布• pS,0···tm : ノード i ∈ S についての周辺分布• ∂i : ノード i の周辺のノードの集合• ノード i について周辺分布をもとめる

ii

G(i)

~= G(i)44/61

空洞法の概要（つづき）• 分けられた部分のうちのひとつにもういちど周辺化の操作をするとcavity 分布についての閉じた方程式がえられる

ji• 周辺分布と cavity 分布をグラフについて平均をとる

45/61

空洞法の概要（つづき）• （疎グラフ上での解析ではふつう）
経路積分法による解析と同じように，空洞法による解析の結果も• 関数方程式であらわされる• 平均的な挙動をするひとつのノード σ(t) の経路の確率であらわされる• 周辺分布の計算をしたので

46/61

動的レプリカ法の概要• ダイナミクスから，任意の巨視的な量を取り出すための近似理論(Coolen-Sherrington 1994, Hatchett-PérezCastillo-Coolen-Skantzos 2005)• Ω(σ) = (Ω1 (σ), · · · , Ω (σ)) : 任意の巨視的な量（Ωμ (σ) = O(N 0 ) とする）

巨視的な量の確率分布
Pt (Ω) =δ[Ω − Ω(σ)]pt (σ)σ• この確率分布 Pt (Ω) から巨視的な量の期待値を取り出す

47/61

動的レプリカ法の概要（つづき）• 巨視的な量の確率分布のダイナミクスは
Pt+1 (Ω) =pt+1 (σ)δ[Ω − Ω(σ)]
σ=

σ


=
=


ρ(σ; σ  )pt (σ  ) δ[Ω − Ω(σ)]

σdΩ

σ
ρ(σ; σ  )pt (σ  )δ[Ω − Ω(σ  )] δ[Ω − Ω(σ)]σdΩ ρt (Ω; Ω )Pt (Ω )• 巨視的な量が Ω → Ω となる遷移確率 : σ  )pt (σ  )δ[Ω − Ω(σ)]δ[Ω − Ω(σ  )]σσ  ρ(σ;ρt (Ω; Ω ) =σ  pt (σ )δ[Ω − Ω(σ )]とおいた• ノードの状態の分布 pt (σ) がはいっているのでこのままでは解けたとはいえない
48/61

動的レプリカ法の概要（つづき）
動的レプリカ法の仮定

• 巨視的な量は自己平均性をもつと仮定（ノード数が大きいとき巨視的な量は決定論的に変化する）

ρt (σ; σ  ) = δ[Ω − F (Ω (t))]
Pt (Ω ) = δ[Ω − Ω (t)]• 等重率を仮定（ノードの状態の分布 pt (σ) は Ω(σ) のみに依存する）

pt (σ)  pt (Ω(σ))
• これがダイナミクスを記述する変数をへらす工夫（べき → 数個）
49/61

動的レプリカ法の概要（つづき）• これらの仮定をすると
Ωμ (t + 1) =dΩPt+1 (Ω)Ωμ
=dΩdΩ ρt (Ω; Ω )Pt (Ω ) Ωμ σ σ  ρ(σ; σ )pt (σ )δ[Ω (t) − Ω(σ )]Ωμ (σ) （自己平均性の仮定）=

 pt (σ )δ[Ω (t) − Ω(σ )]  σσ σ  ρ(σ; σ )δ[Ω (t) − Ω(σ )]Ωμ (σ) （等重率の仮定）=σ  δ[Ω (t) − Ω(σ )]• 巨視的な量についての閉じた方程式が得られる

50/61

動的レプリカ法の概要（つづき）• グラフに関する期待値 [· · · ] をとって
Ωμ (t + 1) σ σ  ρ(σ; σ )δ[Ω (t) − Ω(σ )]Ωμ (σ)=
 (t) − Ω(σ  )]δ[Ωσn−1 = limρ(σ; σ  )Ωμ (σ)δ[Ω (t) − Ω(σ  )]δ[Ω (t) − Ω(σ  )]n→0= limn→0

σ

σ

σ 



σ 1 ,··· ,σ n σρ(σ; σ 1 )Ωμ (σ)

nδ[Ω (t) − Ω(σ α )] （レプリカ法）

α=1• 近似のよさは巨視的な量 Ω の選び方に依存する

51/61

かんたんな誤り訂正符号 : 経路積分法による解析• 任意の次数分布のグラフでさきほどの反復の様子をしらべる (Mimura-Coolen 2009)• 復号のしかた : x̂i (t + 1) = sgnNJij x̂j (t)

j=i
N




11
• ビット誤り率 : Pb (t) =xi x̂(t)
1−2
N i=1
• x1 , · · · , xN ∈ {±1} : 情報源系列• yij = xi xj ∈ {±1} : パリティ
• Jij ∈ {±1} : ノイズを含むパリティ• x̂1 (t), · · · , x̂N (t) : t 回反復後の推定値• p(k) : パリティをつくるグラフの次数分布52/61

かんたんな誤り訂正符号 : 経路積分法による解析の結果• t 回反復後のビット誤り率 Pb (t) は„11−Pb (t) =2V (x) =∞X«

Xx(t)V (x)x∈{−1,1}tm +1p(k)fiX···

X

x1

k=0× p0 [x(0)]U (x1 |n1 x) · · · U (xk |nk x)

xk

tm−1Y

»

δ x(t + 1) − ft=0



U (x|x ) =∞
X
k
k=1

cp(k)

× p0 [x(0)]

fiXx1

tm−1Y

„Xk«–flnl xl (t){nl }l=1···»X

U (x1 |n1 x) · · · U (xk−1 |nk−1 x)xk−1„«–flk−1Xδ x(t + 1) − f x (t) +nl xl (t)t=0l=1{nl }• ただし p0 [x(0)] = 1+x(0)m(0), m(0) = 1 − 2p0253/61

かんたんな誤り訂正符号 : 結果2• f (x) = sgn (x), p(k) = δk,3 , R  3+2= 0.4, N = 10, 000 (averaged over 20 runs)

0.4

p =0.30
0BER Pb(t)0.3theorysimulation

0.20.1p =0.06
00012345678t54/61

たんぱく質相互作用ネット : 経路積分法による解析• 反応を表す Michaelis-Menten の式を差分化してとく (Coolen-Rabello 2009)（詳細は省略）d α   αβ−αβ+ α βxi =[kij xij − kijxi xj ] + θiα − γiα xi
dtjβ αβ+dβαβ−xij = cij[kij xαx−kxij ]i jij
dtα,β55/61

最小頂点被覆問題 : 動的レプリカ法による解析• シミュレーテッド・アニーリングで問題をといたときの解の変化をしらべる(Mozeika-Coolen 2008)• 以下のコスト関数 H(σ) を最小にするような σ をさがす
（カバーされていないエッジの数＋頂点被覆の要素数が少ないのを好む条件）

H(σ) =

cij δσi ,−1 δσj ,−1 − λi<jδσi ,−1i• G = (V, E) : グラフ（V = {σ1 , · · · , σN }）• U ⊂ V : 頂点被覆の候補• σi : ノード i が U に入っていれば 1，そうでなければ -1• cij : エッジの有無（あり=1，なし=0）• exp[−βH(σ)] が定常分布になるように状態遷移 ρ(σ; σ  ) をきめる
56/61

最小頂点被覆問題 : 結果
• Poisson グラフ（平均次数 c = 1）, J = 1, −λ/2 = −0.99• T = 2(t ∈ [0, 10]), T = 1(t ∈ [10, 20]), T = 0.5(t ∈ [20, 30]), T = 0(t ∈ [30, 40])
1.0

0.16

0.8
0.12

0.6
0.08
0.4

0.04
0.2

0.0

0.00
010203040500102030405057/61

最小頂点被覆問題 : 結果（つづき）• Poisson グラフ（平均次数 c = 3）, J = 1, −λ/2 = −0.99• T = 2(t ∈ [0, 10]), T = 1(t ∈ [10, 20]), T = 0.5(t ∈ [20, 30]), T = 0(t ∈ [30, 40])
1.0

0.16

0.9
0.8
0.12
0.7
0.6
0.5

0.08

0.4
0.3
0.04
0.2
0.1
0.0

0.00
01020

30

4050600102030405060

58/61

最小頂点被覆問題 : 結果（つづき）• 縦軸 : 頂点被覆のノード数/全ノード数, 横軸 : 平均次数（Poisson グラフ）
• 点 : ダイナミクスから得た結果, 実線 : レプリカ法の結果
0.6

cover

0.50.40.3

uncover

0.2

0.1(RS)(RSB)

0.001234• 利用するアルゴリズムに基づいた評価ができる
59/61

その他
• ネットワーク（次数分布）に構造をいれる研究もすすめられている(Bianconi-Coolen-PérezVicente 2008,
Annibale-Coolen-Fernandes-Fraternali-Kleinjung 2009) arXiv• ネットワークの構造の議論のしやすさはグラフに関する平均のとりかたに依存• 空洞法にもとづく手法では扱うのは困難• 経路積分法 : 厳密解，ネットワークの構造を議論しやすい• 空洞法 : 近似解，十分に疎なら経路積分法と一致する（すくなくとも Poisson グラフにおいて（一般の場合は確認中））• 動的レプリカ法 : 近似解，ネットワークの構造を議論しやすい• DRT 的空洞法 : 近似解，空洞法から任意の数個のパラメータをとりだせる

60/61

まとめ
• 疎グラフ上のダイナミクスの解析方法について簡単に紹介• 解析手法が発展中の状況（でそろいつつある？）• 「はじめどき」

61/61