データの「かたち」を知りたい。そのための手法として、カーネル密度推定はN個のデータ点すべてを使う。 しかし、もし10,000点のデータが「3つのグループ」から来ているなら、10,000個のカーネルは必要ない。3つのガウス分布で十分かもしれない。
これが混合モデルの発想だ。そして驚くことに、この手法は密度推定にとどまらない—— クラスラベルを一切使わない教師なし学習が、ロジスティック回帰と同等の分類精度を達成することがある。
このセクションで学ぶこと:
データの「かたち」を知りたいとき、一つの方法はカーネル密度推定だ。
簡単に言えば:N個のデータ点がある場合、各点の周りに小さなガウス関数(釣り鐘型の曲線)を置いて、 それをすべて足し合わせる。すべての点が少しずつ「周囲に広がる」ように見せることで、 データ全体の形(分布)を推定する。
これは機能する。しかし問題がある。
N個のデータ点 = N個のコンポーネント。 データが10,000点あれば、10,000個のガウス関数が必要になる。
ここで問いかけてみよう:もしデータの真の構造が「3つのグループ」から来ているなら? 10,000個のコンポーネントは必要ない。3つのガウス分布で十分かもしれない。
これが混合モデルの発想だ。

混合モデルの数式はシンプルだ:
各記号の意味を一つずつ確認しよう:
N個のデータ点の代わりに、M個(M ≪ N)のガウス分布でデータの全体形状を捉える。より少ない記述で、より本質的な構造を表現できる。
混合モデルのパラメータ($\alpha_m$、$\mu_m$、$\Sigma_m$)はどうやって求めるのか?
直接最大化は難しい。各データ点が「どのコンポーネントから来たのか」が不明なためだ。 この「どこから来たか」という情報が隠れている——これが潜在変数(hidden variable)だ。
そこで登場するのがEMアルゴリズム(Expectation-Maximization)だ。 アイデアはシンプルで美しい:

E-stepで計算する責任度(responsibility)の数式:
これを分解して読もう:
これはまさにベイズの定理そのものだ。事前確率(混合比$\alpha_m$ )× 尤度 ÷ 正規化定数 = 事後確率。
そして重要な点に気づいてほしい:EMアルゴリズムはクラスラベルを一切使わない。 これは完全な教師なし学習だ。 ラベルなしで、データの隠れた構造(どの点がどのコンポーネントから来たか)を自動的に発見する。
混合モデルとカーネル密度推定。 これら2つは実は同じものの連続体上の両端だ。 少しずつ変化させると、一方が他方になる。
混合モデルの共分散行列を単純化していくと何が起きるか、一緒に見ていこう。
ステップ1:$\Sigma_m = \sigma_m^2 I$ (球形ガウス分布)に制限すると、 混合モデルは「各コンポーネントを中心とした球形カーネルの和」という構造になる。
ステップ2:さらに極端に、すべてのコンポーネントで同じ分散$\sigma_m = \sigma$ とし、コンポーネント数を$M \to \infty$ に増やし、重みを均等($\alpha_m = 1/N$ )にして、 各データ点を中心($\mu_m = x_m$)に設定すると……
するとどうなるか?混合モデルはまさにカーネル密度推定そのものになる:

これは美しい結果だ。2つの手法を比較してみよう:
| 混合モデル | カーネル密度推定 | |
|---|---|---|
| コンポーネント数 | M(M ≪ N) | N(全データ点) |
| パラメータ数 | 有限・固定 | データ数に依存 |
| 計算効率 | 高い(推定後はM個の計算) | 予測時に全データが必要 |
| 柔軟性の制御 | コンポーネント数Mで調整 | バンド幅λで調整 |
混合モデルは「パラメトリックなコンパクト表現」、 カーネル密度推定は「ノンパラメトリックな全量表現」。 2つの手法は対立するのではなく、同じ連続体の上に立っている。 用途(計算効率重視か、柔軟性重視か)によって使い分ける。
混合モデルは密度推定だけではない。分類にも使える。 そして面白いことに、そのアプローチは直感的なものだ。
アイデアはシンプルだ。3ステップで考えよう:
数式で書けば:
各記号を確認しよう:

重要な注意を確認しておこう: 各混合密度 $f_\ell(x)$ の学習はクラスラベルを使わない(教師なし学習)。 しかし、ベイズの定理を適用する際にラベル情報(各クラスのデータ)は使う。 つまり「教師なし学習で密度を学び、ベイズ則で分類する」という2段階の構造だ。
この手法の強みは柔軟なクラス境界だ。 ロジスティック回帰では直線しか引けない。 しかし混合モデルを使えば、各クラスが複雑な形の分布を持つ場合でも、 曲線的な境界を自然に表現できる。 GIFで見た通り、決定境界は直線ではなく曲線になっている。
理論だけでは実感が湧かない。実際のデータで確かめてみよう。
心臓病研究データセット:年齢(Age)という1つの特徴量で、 心臓病の有無(CHD)を予測する。 シンプルな1次元問題だが、混合モデルの力が如実に現れる例だ。
モデルの設定:各クラス(CHDあり・なし)に対して、M=2のガウス混合モデルを学習する。

推定されたパラメータ(心臓病ありクラス)を見てみよう:
これを読み解くと面白い構造が見える:
このモデルの混同行列を確認しよう:
| CHD予測なし | CHD予測あり | |
|---|---|---|
| CHDなし(実際) | 232 | 70 |
| CHDあり(実際) | 76 | 84 |
驚くべき結果:このモデルのエラー率は32%。 これは線形ロジスティック回帰と全く同じエラー率だ。
注目してほしいのは:このモデルは各クラスの混合密度を独立に学習している(ラベルなし)。 クラスラベルは「どちらのクラスのデータか」という分け方にしか使っていない。教師なし学習でここまでできる——これが教師なし学習の隠れた力だ。
このセクションで学んだことを整理しよう。混合モデルには三つの側面がある。

ガウス混合モデルは、カーネル密度推定の「コンパクト版」だ。 全データ点にカーネルを置く代わりに、M個のガウス分布でデータの形を表現する。 M個のパラメータ($\alpha_m, \mu_m, \Sigma_m$)で十分。
EMアルゴリズムはラベルなしで学習できる。 各データ点が「どのコンポーネントから来たか」という「隠れた構造」を自動的に発見する。 E-stepで帰属を推定し、M-stepでパラメータを更新する、エレガントな反復法だ。
クラスごとに混合密度を学習し、ベイズ則を適用するだけで分類が可能になる。 そして驚くことに、教師なし学習でも教師あり学習(ロジスティック回帰)と同等の性能を達成できることがある。
理論的な美しさを式で表現するとこうなる:
左辺は「有限個のコンポーネントを持つ混合モデル」、右辺は「カーネル密度推定」だ。 M を増やし続けると、混合モデルはカーネル密度推定に収束する。 2つの手法は対立しているのではなく、同じ連続体の上に立っている。
混合モデルはパラメトリックな構造(有限個のコンポーネント)と ノンパラメトリックな柔軟性(カーネル法)の橋渡しをしている。
次章(7章)では「モデルの複雑さをどう選ぶか」という根本的な問いに向き合う。 混合コンポーネント数Mの選択もその一例だ。 単純すぎるモデル(小さなM)と複雑すぎるモデル(大きなM)の間のバランスを、 どう理論的に決めるか——これがバイアス・バリアンスのトレードオフの核心だ。