無向グラフィカルモデル — 変数の「関係網」を可視化する
友人関係のネットワークを思い浮かべてください。AさんとBさんが知り合いかどうか、 Bさんの状況を知っていれば、Aさんを観察しなくても間接的にBさんの友人たちについて推測できます。 多変量データの分析でも同じ問題が起きます。「どの変数がどの変数に直接関係しているのか」を知りたいのに、 間接的な相関が邪魔をするのです。 グラフィカルモデルはこの問題を解決します。グラフの構造が「直接の依存関係」だけを浮き彫りにします。
グラフィカルモデルとは何か — 「直接の関係」だけを見る
11個のタンパク質があります。それぞれは細胞内でお互いに影響し合っているのですが、 「どのタンパク質がどのタンパク質に直接関係しているか」を知りたいとします。
単純に相関を計算すると問題が起きます。A→B→Cという経路でAとCが間接的に相関していても、 「AとCが直接関連している」と誤解してしまうのです。

グラフィカルモデルの核心は、この問いに答えることです:「他のすべての変数を知った上でも、まだ関連しているか?」
これを「条件付き独立性」と呼びます。 Bを知った上でAとCが無関係なら、AとCの間に直接的な関係はない、と判断します。
グラフで表すと:
- ノード(点) = 確率変数(タンパク質、ピクセル、単語など)
- エッジ(辺) = 直接的な依存関係
- エッジなし = 条件付き独立(他の全変数を制御した状態での無関係)
この「エッジなし = 条件付き独立」という対応が、グラフィカルモデルの直感的な美しさです。
無向グラフ(Undirected Graph)は有向グラフと異なり、「A→B」ではなく「A-B」という双方向の関連性を表します。 原因と結果ではなく、「相互のつながり」を示すモデルです。 別名「マルコフ確率場(Markov random fields)」とも呼ばれます。
条件付き独立性 — グラフの「読み方」
グラフィカルモデルの真価は、グラフの「形」から独立性を読み取れることにあります。
まず最もシンプルなケースを考えましょう。ペアワイズ・マルコフ独立性(pairwise Markov independence)とは: エッジで結ばれていない2つの変数XとYは、残りすべての変数を条件付けたとき、独立です。
しかし、独立性はもっと豊かな構造を持ちます。 「2つの変数だけでなく、グループとグループの独立性も読み取れる」のです。
3ノードのパス X - Z - Y を例に考えてみましょう。 下のアニメーションで、ZノードにXからの信号が流れ、Yに届く様子を見てください。 次に、Zを「知っている状態」にすると、何が起きるでしょうか?

- ZなしでXとYを観測すると、XとYは相関している(ZがXにもYにも影響するため)
- しかしZを「与えた条件」にすると、XとYの情報の流れがZで遮断される
- 結果:Zが既知なら、$X \perp Y$(独立)
これをもっと一般化したのが「分離(separation)」の概念です。 頂点集合Cが2つのグループAとBの間のすべてのパスを遮断するとき、CはAとBを「分離する」といいます。 その場合:
友人関係の例で考えると:AさんとBさんが「共通の友人Cさん経由でしか繋がっていない」場合、 Cさんの状況を知っていれば、AさんとBさんの状況は独立になります。
重要な定理:正の分布に対して、「エッジなし=条件付き独立」という弱い条件(ペアワイズ独立性)と、 「分離=条件付き独立」という強い条件(グローバル独立性)は等価です。
クリーク分解 — 「仲良しグループ」への分解
グラフの独立性構造を理解したところで、次の疑問が生まれます: 「グラフィカルモデルの確率分布は、どのような数式で表されるのか?」
答えは「クリーク(Clique)」への分解です。
クリークとは、グラフの中でお互いが全員エッジで結ばれているノードの最大グループのことです。 3人が全員友達の「三角形」を想像してください。

Hammersley-Cliffordの定理(グラフィカルモデルの基礎定理)によると、 マルコフグラフ上の分布は次のように表現できます:
ここで:
- $Z$ は全確率が1になるための正規化定数(分配関数)
- $\psi_C(x_C)$ はクリークC上のポテンシャル関数 (非負の値、グループ内の「相性の良さ」)
直感的な意味:グラフを「仲良しグループ」(クリーク)に分解し、 各グループの「相性の良さ」(ポテンシャル)を掛け合わせた値が確率を決めます。 グループ内の変数が「好む」配置では高いポテンシャル(高い確率)、 「嫌う」配置では低いポテンシャル(低い確率)になります。
ガウスグラフィカルモデル — 精密度行列の魔法
多変数のデータが多変量ガウス分布に従う場合、グラフィカルモデルは特に美しい形になります。 ガウス分布は最も扱いやすい連続分布であり、多くの自然現象に当てはまります。
変数の共分散行列を $\Sigma$ とすると、 その逆行列 $\Theta = \Sigma^{-1}$ が 「精密度行列(Precision Matrix)」です。
驚くべき事実:精密度行列の成分がゼロ = 条件付き独立
つまり、精密度行列のゼロ・非ゼロのパターンが、グラフのエッジ構造と完全に一致します!

なぜそうなるのか?
ガウス分布では、変数 $X_j$ を他のすべての変数$X_{-j}$ で「線形回帰」したとき、 係数は精密度行列の要素と直接関係しています:
この式の意味:$\Theta_{jk} = 0$ は 「$X_k$ の回帰係数がゼロ」、 つまり「$X_k$ は他の変数を制御しても$X_j$ の予測に寄与しない」= 「条件付き独立」を意味します。
グラフ構造の推定は、「どの精密度行列の要素がゼロか」を見つけることに帰着します。
Graphical Lasso — 「関係」を自動で発見する
ここまでは「グラフが与えられた場合」の話でした。実際のデータでは、グラフ構造は未知です。 「どのノード間にエッジがあるか」を自動的に発見するにはどうすればよいでしょうか?
p個の変数があると、候補となるエッジは $\binom{p}{2}$ 個 (p=100なら4,950個!)。総当りで試す手法は現実的ではありません。
Graphical Lasso(グラフィカル・ラッソ)は、 この問題を精密度行列 $\Theta$ のスパース推定として解きます:
各項の意味:
- $\log \det \Theta$: 精密度行列の行列式の対数。モデルの「情報の豊かさ」を表し、大きいほど良い
- $\operatorname{tr}(S\Theta)$($S$ はサンプル共分散行列): モデルとデータの「食い違い」を測る。小さいほどデータによく合っている
- $\lambda \|\Theta\|_1$: L1ペナルティ。多くの要素を正確にゼロに押しつける (第3章のLassoと同じ原理)

λの役割:
- $\lambda$ を大きくする → 多くの要素がゼロ → エッジが少ない疎なグラフ
- $\lambda$ を小さくする → 少ない要素がゼロ → エッジが多い密なグラフ
適切な $\lambda$ は交差検証で決定します。
計算効率の高さ:この最適化はp個の「修正回帰」問題として効率的に解けます。 1000変数のデータでも1分以内に解けます。
離散変数のグラフィカルモデル — イジングモデル
ここまでは連続値(身長、温度、タンパク質の発現量など)の変数を扱ってきました。 では「あり/なし」「0/1」の二値変数の場合はどうなるでしょうか?
物理学の「イジングモデル(Ising model)」が登場します。 元々は磁石のスピン(上向き/下向き)を記述するモデルですが、 機械学習では画像処理、テキスト分類、社会ネットワーク分析など幅広く活用されます。

p個の二値変数 $X_j \in \{0, 1\}$ について、 イジングモデルは次のように分布を定義します:
各項の意味:
- $\theta_{jk}$:ノードjとkの相互作用の強さ(エッジパラメータ)
- 正の $\theta_{jk}$:jとkは同じ値をとりやすい(磁気的整合)
- 負の $\theta_{jk}$:jとkは逆の値をとりやすい(磁気的反発)
- $\theta_j$:各ノードのバイアス(そのノードが1をとりやすいか0をとりやすいかの傾向)
離散モデルの難しさ:連続変数と異なり、正規化定数(分配関数)$Z$ の計算が困難です。$2^p$ 通りの状態を全部計算する必要があります (p=100では約 $10^{30}$ 通り!)。
実用的な解決策は「擬似尤度(Pseudo-likelihood)」という近似手法です。 各変数を一つずつ、他の変数を固定した条件付き確率として個別に推定します。 完全な尤度の代わりに使うことで、計算を大幅に削減できます。
制限付きボルツマンマシン — 隠れ層という「翻訳者」
イジングモデルでは変数間の相互作用を直接表現しましたが、 データが非常に複雑なとき(例:画像の全ピクセル間の相互作用)、 直接的な表現は困難です。
「隠れ変数(hidden variable)」を導入すれば、この問題を解決できます。 観測できる変数(可視層)の複雑な依存関係を、 観測できない「中間的な特徴」(隠れ層)を通じて表現するのです。

制限付きボルツマンマシン(RBM:Restricted Boltzmann Machine)の構造:
- 可視層 V:観測できる変数(例:28×28画像の784ピクセル)
- 隠れ層 H:観測できない潜在的な特徴量(例:500ユニット)
- 制約(Restriction):同じ層内にエッジがない
各項の意味:
- $W_{jk}$:可視ユニットjと隠れユニットkの間の重み(接続の強さ)
- $b_j$:可視ユニットjのバイアス
- $c_k$:隠れユニットkのバイアス
「制限」がもたらす計算効率:同じ層内に接続がないため、 条件付き確率が積の形に因数分解されます:
これにより、可視層→隠れ層→可視層と交互にサンプリングする 「Gibbs サンプリング(交互サンプリング法)」が高速に実行できます。
実用例:784ピクセルの手書き数字データ(MNIST)に対して、 500の隠れユニットを持つRBMを学習すると、テスト誤り率1.9%を達成します。
RBMは現代のディープラーニングの先駆けとなった手法であり、 「データから自動的に特徴を学ぶ」という概念を確立しました。
まとめ — グラフで「つながり」を読む
無向グラフィカルモデルは、高次元データの「関係構造」を見える化する強力なツールです。

学んだ主要なポイントを振り返りましょう:
- ノード = 確率変数
- エッジ = 直接的な依存関係
- エッジなし = 条件付き独立(他の全変数を制御した状態での独立)
ガウスグラフィカルモデル:
- 精密度行列 $\Theta = \Sigma^{-1}$ のゼロパターンがグラフ構造と完全に対応
- Graphical Lassoで効率的にスパース構造を学習(L1正則化の応用)
離散グラフィカルモデル(イジングモデル):
- 二値変数の相互作用を指数型分布で表現
- 分配関数の計算が困難なため、擬似尤度で近似推定
- 隠れ層を導入することで複雑な依存関係を効率的に学習
- 同層内の独立性という「制限」が計算効率を生む
- ディープラーニングの先駆けとなった手法
グラフィカルモデルの真の強みは「解釈可能性」にあります。 複雑な多変量分布を視覚的なグラフとして表現することで、 「どの変数がどの変数に直接影響しているか」を一目で理解できます。 ゲノムネットワーク、金融リスク管理、画像認識、自然言語処理など、 多くの現実世界の問題で活躍する理由がここにあります。