Skip to content

第9章:関係性のネットワーク —— グラフィカルモデルとスパース推定

これまでの章では、ベクトルとしてのデータをいかにスパースに表現するか、あるいはいかに足し算で分解するかを学んできました。 本章では、多数の変数(例えば多くのセンサーや遺伝子など)が互いに「(どのように影響し合っているか)」というネットワーク(グラフィカルモデル)をデータから推定する数理を解き明かします。多次元ガウス分布の最尤推定から出発し、ADMMと固有値分解を駆使して変数間の「(真の関係性)」をスパースに浮き彫りにする強力な手法について学びます。

1. 多次元ガウス分布とグラフィカルモデル

次元のベクトルデータ が、平均がゼロで共分散行列が である多次元ガウス分布(正規分布)に従って生成されると仮定します。 このときの確率密度関数 は、次のように書かれます。

ここで は共分散行列 の行列式()を表します。 この式のウラには強力な性質が隠れています。共分散行列の逆行列である を「(精度行列)」と呼びます。この精度行列 成分が「0」であることは、他のすべての変数を条件付けたときに「(変数 と変数 が独立である(直接的な関係がない))」ことを意味します。 つまり、データから精度行列 を推定し、そのゼロの場所を見つけることができれば、変数間の直接的な関係性のネットワーク(グラフィカルモデル)を描き出すことができるのです。

2. 最尤推定とグラム行列

手元に 個の独立なデータ があるとします。これらが得られる同時確率は、各確率の積 となります。 この対数(対数尤度)をとって、精度行列 を用いて書き直した目的関数を最大化します。

ここで「(トレース(跡)の巡回不変性)」 を利用し、データから計算される標本共分散行列(グラム行列) を導入すると、最大化すべき目的関数は次のようにスッキリとまとまります。

行列の微分公式 を用いて微分してゼロと置くと、最尤推定解は単に 、つまり標本共分散行列の逆行列になります。

3. スパース化の導入(Graphical Lasso)

しかし、変数の数 がデータの数 よりも大きい場合()、行列 はランク落ちを起こして逆行列を持ちません。また、最尤推定では精度行列の成分が完全にゼロになることは滅多になく、すべての変数が少しずつ繋がった解釈困難なネットワークになってしまいます。 そこで、第4章で学んだLASSOの考え方を応用し、精度行列 の非対角成分を強制的にゼロにする「(L1正則化)」を目的関数に追加します。

この問題を解く手法を一般に「Graphical Lasso(グラフィカルラッソ)」と呼びます。

4. ADMMによる行列最適化

ここには「」という滑らかな関数と、「」という微分不可能な関数が混ざっています。そこで第5章で学んだADMM(交互方向乗数法)の出番です。 新しい行列変数 を導入し、 という制約を課した上で、双対変数(乗数行列) とペナルティパラメータ を用いて拡張ラグランジュ関数を作ります。

これを平方完成の形で整理し、ADMMの3つの更新ステップに分解します。

ステップ1: の更新(固有値分解)

に関する部分を取り出すと次のようになります。

これを で微分してゼロと置くと、行列の2次方程式のような形が現れます。

右辺の定数行列を対称行列として固有値分解し とすると、 も同じ固有ベクトル行列 を持つことがわかります()。 これを代入すると、各固有値 についての単純な2次方程式 に帰着し、解の公式から固有値の更新式が美しく求まります。

ステップ2: の更新(近接写像)

に関する部分は、おなじみのL1正則化と二乗誤差の和になります。

これは行列の各成分に対して、第4章で導出した「(軟判定しきい値関数(Soft-thresholding))」を適用するだけで一瞬で計算できます。ここで多くの成分が完全にゼロへと弾き飛ばされます。

ステップ3:乗数 の更新

最後に、双対変数 を残差に基づいて更新します。

この3つのステップを繰り返すことで、固有値分解の解析的な美しさと、軟判定しきい値関数による強力なスパース化が組み合わさり、背後に潜む「(真の関係性のネットワーク)」が見事に抽出されるのです。

Released under the MIT License.