4.3 線形判別分析(Linear Discriminant Analysis)

メールがスパムかどうか、写真に写っているのが猫か犬か、患者が病気かどうか...。これらはすべて「分類」の問題です。

前章では、分類を回帰で解こうとしましたが、3種類以上では「マスキング問題」が起きました。この章では、より洗練されたアプローチ「線形判別分析(LDA)」を学びます。LDAは「各グループのデータがどのように散らばっているか」をモデル化することで、新しいデータがどのグループに属するか、より正確に判断できるようにします。

分類をベイズの視点で考える

まず、分類とは何かを改めて考えてみましょう。

例えば、病院で検査を受けたとします。検査結果から「この患者は病気か、健康か」を判断したい。これが分類です。

直感的に、私たちはこう考えます:「この検査結果は、病気の人によく見られるパターンなのか、健康な人によく見られるパターンなのか?」

これを数学的に表現するのがベイズの定理です。難しそうに聞こえますが、考え方はシンプルです。

ベイズの定理は次のことを言っています:

「データを見た後のグループの確率」は、3つの要素で決まる

  1. そのグループの中で、このデータが出る確率はどれくらいか? - 例:病気の人の中で、この検査値が出る確率
  2. そもそもそのグループはどれくらい多いか? - 例:全体の中で病気の人は何%か
  3. 他のグループと比べてどうか? - 健康な人の場合と比較

これを数式で書くと:

$$\Pr(G=k|X=x) = \frac{f_k(x) \cdot \pi_k}{\sum_{\ell=1}^{K} f_\ell(x) \cdot \pi_\ell}$$

ここで:

ポイントは、各グループのデータ分布 $f_k(x)$ を知れば、分類問題を解けるということです。

ベイズ的分類の直感 - 新しいデータ点が各クラスから「引力」を受け、最も強い引力のクラスに分類される様子

前章の回帰アプローチは、この分布を直接モデル化せず、間接的にラベルを予測しようとしていました。LDAは発想を変え、分布を明示的にモデル化します。

$$\Pr(\text{グループ}k|\text{データ}x) = \frac{\text{グループ}k\text{でのデータの出やすさ} \times \text{グループ}k\text{の割合}}{\text{全グループについての合計}}$$

ガウス分布でデータの散らばりをモデル化

各グループのデータ分布 $f_k(x)$ をモデル化したい。でも、どんな形を仮定すればいいでしょうか?

ここでLDAはガウス分布(正規分布)を使います。

1次元のガウス分布はおなじみの釣鐘型曲線です。平均値の周りにデータが集まり、離れるほど少なくなる。身長、体重、テストの点数など、多くの自然現象がこの形に従います。

これを2次元以上に拡張したのが多変量ガウス分布です。2次元なら、データは楕円形の「雲」のように分布します。

この分布は2つのパラメータで完全に決まります:

  1. 平均ベクトル $\mu_k$: 雲の「中心点」。データが最も集まる場所。
  2. 共分散行列 $\Sigma_k$: 雲の「形」と「向き」。

共分散行列について少し補足しましょう。2つの変数がどう関係しているかを表す数値です:

2つのクラスのガウス分布 - 共分散行列の違いにより楕円の形と向きが異なる

ガウス分布の密度関数を書くと:

$$f_k(x) = \frac{1}{(2\pi)^{p/2}|\Sigma_k|^{1/2}} \exp\left(-\frac{1}{2}(x-\mu_k)^T \Sigma_k^{-1}(x-\mu_k)\right)$$

複雑に見えますが、本質は「中心 $\mu_k$ から離れるほど密度が低くなる」ということ。

ただし、単純な距離ではなく、マハラノビス距離という特別な距離を使います。これはデータの広がり方を考慮した「真の距離」です。例えば、横に長い楕円なら、横方向に少し離れても「まだ近い」と判断します。

なぜガウス分布を仮定するのでしょうか?多くの実データが近似的にこの形に従うからです。完璧ではなくても、非常に良い「最初の近似」になります。

$$\text{密度} \propto \exp\left(-\frac{1}{2} \times \text{(中心からのマハラノビス距離)}^2\right)$$

共通の共分散 - LDAの核心

ガウス分布を仮定しただけでは、まだ計算が複雑です。

各グループが異なる形の楕円(異なる共分散行列)を持つ場合、グループ間の境界は曲線になります。これを二次判別分析(QDA)と呼びます。

LDAはさらに一歩進んで、大胆な仮定を置きます:全グループが同じ形・同じ向きの楕円を持つ

つまり、雲の形と向きは同じで、位置(中心)だけが異なる、という仮定です。

$$\Sigma_1 = \Sigma_2 = \cdots = \Sigma_K = \Sigma$$

この仮定の威力を見てみましょう。

2つのグループを比較するとき、「どちらに属する確率が高いか」を対数オッズで表すと:

$$\log \frac{\Pr(G=k|X=x)}{\Pr(G=\ell|X=x)} = \underbrace{x^T\Sigma^{-1}(\mu_k - \mu_\ell)}_{\text{xに関して線形!}} + \underbrace{(\text{定数項})}_{\text{xに依存しない}}$$

注目してください。$x$(データ)に関して線形になっています!

「線形」とは、$x$が1次式(かけ算と足し算だけ)で現れること。これは、決定境界が直線(高次元では平面)になることを意味します。

QDA(異なる共分散、曲線境界)とLDA(共通共分散、直線境界)の比較

QDA(異なる共分散)なら$x$の2乗の項が出てきて、境界は曲線になります。しかし、共通の共分散を仮定すると、その2乗の項がキャンセルして消えてしまうのです。

これがLDAの「Linear」の由来です。

$$\text{共通の共分散} \Rightarrow \text{決定境界が直線(超平面)}$$

判別関数 - 最も「近い」グループに分類する

共通の共分散という仮定から、各グループの判別関数を導出できます。

判別関数 $\delta_k(x)$ は、データ $x$ がグループ $k$ に属する「スコア」です。最もスコアが高いグループに分類します:

$$G(x) = \arg\max_k \delta_k(x)$$

LDAの判別関数は:

$$\delta_k(x) = x^T \Sigma^{-1} \mu_k - \frac{1}{2}\mu_k^T \Sigma^{-1} \mu_k + \log \pi_k$$

この式の意味を理解しましょう。3つの部分に分けて考えます:

第1項 $x^T \Sigma^{-1} \mu_k$: データ $x$ とグループ中心 $\mu_k$ の「類似度」。$x$$\mu_k$ に近いほど大きくなります。ただし、単純な類似度ではなく、データの広がり方(共分散)を考慮した類似度です。

第2項 $-\frac{1}{2}\mu_k^T \Sigma^{-1} \mu_k$: グループ中心の位置による補正。原点から遠いグループを不利にしないための調整です。

第3項 $\log \pi_k$: グループの出現率(事前確率)の効果。多いグループは分類されやすくなります。

判別関数による分類 - テストポイントから各クラス中心までのマハラノビス距離を測り、最も近いクラスに分類

第1項と第2項を合わせると、本質的には「$x$ からグループ中心 $\mu_k$ までのマハラノビス距離」を測っています。

つまり、LDAは最も「近い」中心を持つグループに分類するのです。ただし、事前確率も考慮します。

$$\delta_k(x) = \underbrace{x^T \Sigma^{-1} \mu_k}_{\text{類似度}} - \underbrace{\frac{1}{2}\mu_k^T \Sigma^{-1} \mu_k}_{\text{位置補正}} + \underbrace{\log \pi_k}_{\text{事前確率}}$$

決定境界 - 空間を直線で分割する

判別関数から、決定境界の形が理解できます。

2つのグループ $k$$\ell$ の決定境界は、「どちらのスコアも同じになる点」の集合です:

$$\delta_k(x) = \delta_\ell(x)$$

この等式を解くと、超平面(2次元なら直線、3次元なら平面)の方程式が得られます。

直感的に理解するため、簡単な場合を考えましょう。

もしデータの広がりが全方向で同じ(共分散が単位行列)なら、決定境界は2つの中心を結ぶ線の垂直二等分線になります。中間点で直角に切る、最もシンプルな境界です。

しかし、データが一方向に長く伸びている場合、境界は「傾き」ます。長く伸びた方向では、少し離れても「まだ近い」と判断されるからです。

3クラスの決定境界が空間を凸領域に分割する様子

$K$グループがある場合、$\frac{K(K-1)}{2}$ 本の境界線が引かれます(各ペアに1本)。これらの直線が整合的に組み合わさり、空間を$K$個の領域に分割します。

各領域は凸領域(へこみのない形)になります。つまり、あるグループに分類される点の集合は、常に「まとまった塊」になります。

$$\delta_k(x) = \delta_\ell(x) \Rightarrow \text{直線(超平面)}$$

Fisherの視点 - 最適な方向を探す

ここで、LDAとは別の角度から同じ問題を考えた研究者を紹介しましょう。

R.A. Fisherは1930年代に、確率モデルを使わない直接的なアプローチを提案しました。

Fisherの問いはシンプルです:「データをある方向に射影したとき、グループが最もよく分離する方向はどれか?」

例えば、2つのグループがあるとき、ある直線上に「影」を落とすように射影します。すると、影(射影後の点)が重なってしまう方向と、きれいに分かれる方向があります。

Fisherは、この「分かれ具合」を最大化する方向を探しました。

数式で表すと:

$$\max_a \frac{a^T B a}{a^T W a}$$

ここで:

Fisherの基準 - 射影方向を変えると分離度が変わる。最適方向では2クラスがきれいに分離

この比をFisher基準と呼びます。分子が大きく、分母が小さいほど良い。つまり、「グループ同士は離れていて、各グループ内はまとまっている」方向を探すのです。

驚くべきことに、この最適化問題を解くと、LDAとまったく同じ判別方向が得られます!

確率論的なアプローチ(ベイズ + ガウス分布)と、純粋に幾何学的なアプローチ(分離を最大化)が、同じ答えに到達する。これは深い数学的つながりを示しています。

$$\text{Fisher基準} = \frac{\text{グループ間のばらつき}}{\text{グループ内のばらつき}} \rightarrow \text{最大化}$$

実際のデータからパラメータを推定する

理論は分かりました。では、実際のデータからどうパラメータを求めるのでしょうか?

訓練データが与えられたとき、各パラメータは直感的な方法で推定します:

1. 事前確率の推定

$$\hat{\pi}_k = \frac{N_k}{N}$$

グループ$k$のサンプル数 $N_k$ を全サンプル数 $N$ で割るだけ。訓練データでの割合をそのまま使います。

2. グループ平均の推定

$$\hat{\mu}_k = \frac{1}{N_k} \sum_{i: g_i=k} x_i$$

グループ$k$に属するサンプルの平均。これがグループの「中心」になります。

3. 共通共分散行列の推定

$$\hat{\Sigma} = \frac{1}{N-K} \sum_{k=1}^{K} \sum_{i: g_i=k} (x_i - \hat{\mu}_k)(x_i - \hat{\mu}_k)^T$$

これはプール化された共分散行列と呼ばれます。各グループのばらつきを「プール(まとめる)」して、共通の広がり方を推定します。

訓練データから平均と共分散を推定する過程 - 各クラスの楕円がマージされて共通の形に

分母が $N-K$ なのは、統計学でよく使う「自由度の補正」です。$K$個の平均を推定したので、自由度が$K$だけ減っています。

この推定が完了すれば、新しいデータに対して判別関数を計算し、分類できます。

$$\hat{\pi}_k = \frac{N_k}{N}, \quad \hat{\mu}_k = \text{(グループ}k\text{の平均)}, \quad \hat{\Sigma} = \text{(プール化された共分散)}$$

次元削減 - 重要な方向だけを使う

高次元のデータを扱うとき、LDAには嬉しい性質があります。

$K$個のグループがあるとき、すべてのグループ中心は、最大で$K-1$次元の「部分空間」に存在します。

なぜでしょうか?$K$個の点から、1つを基準にすると、残り$K-1$個への方向ベクトルがあります。これらのベクトルが張る空間は最大$K-1$次元。つまり、分類に必要な情報は$K-1$次元に圧縮できるのです。

Fisherの枠組みで、この最適な方向を順番に見つけられます:

$$Z_\ell = v_\ell^T X, \quad \ell = 1, 2, \ldots, K-1$$

これらを正準変量(Canonical Variates)と呼びます。

正準変量への射影は、2つの大きなメリットがあります:

1. 可視化:10次元のデータがあっても、2つか3つの正準変量に射影すれば、グループ構造を視覚的に確認できます。

2. 推定の安定性:高次元では推定誤差が大きくなりがちですが、重要な方向だけに絞ることで、より信頼性の高い分類が可能になります。

3D空間の3クラスデータを2D平面に射影 - 次元削減しても分離構造が保たれる
$$\text{高次元データ} \xrightarrow{\text{正準変量}} \text{低次元表現(最大}K-1\text{次元)}$$

正則化 - LDAとQDAの間を探る

LDAは「共通の共分散」を仮定し、QDAは「グループごとに異なる共分散」を許します。どちらを使うべきでしょうか?

これはバイアス-バリアンスのトレードオフです:

過学習とは、訓練データに適合しすぎて、新しいデータに対応できなくなること。複雑なモデルほど起きやすいです。

正則化判別分析(RDA)は、この2つの間を連続的に補間します:

$$\hat{\Sigma}_k(\alpha) = \alpha \hat{\Sigma}_k + (1-\alpha) \hat{\Sigma}$$

ここで $\alpha$ は0から1の値:

αパラメータによる決定境界の連続的変化 - 直線から曲線へ

$\alpha$交差検証で選びます。データを一部取り分けてテストし、最も良い予測性能を示す $\alpha$ を採用します。

こうして、データに応じた最適なバランスを見つけられます。

$$\alpha = 0 \text{ (LDA)} \leftarrow \hat{\Sigma}_k(\alpha) \rightarrow \alpha = 1 \text{ (QDA)}$$

LDAとロジスティック回帰の比較

LDAとロジスティック回帰は、どちらも線形決定境界を生成します。しかし、アプローチが異なります。

LDA(生成モデル

ロジスティック回帰(判別モデル

興味深いことに、両者は同じ形式の対数オッズを生成します:

$$\log \frac{\Pr(G=k|X=x)}{\Pr(G=K|X=x)} = \beta_{k0} + \beta_k^T x$$
LDA(分布モデル)とロジスティック回帰(直接境界モデル)のアプローチの違いを対比

では、どちらを使うべきでしょうか?

実践では、両方を試して交差検証で比較することが多いです。

$$\text{LDA: 分布をモデル化} \quad \text{vs} \quad \text{ロジスティック: 境界を直接モデル化}$$

まとめ - LDAの全体像

線形判別分析(LDA)は、分類問題に対する優雅で強力なアプローチです。

核心のアイデア

  1. 各グループのデータ分布をガウス分布でモデル化
  2. 全グループで共通の共分散行列を仮定
  3. ベイズの定理で確率を計算し、最も確率が高いグループに分類

この仮定から導かれること

実践的なポイント

LDAの全体像 - 訓練データから分布を学習し、決定境界を引き、新しいデータを分類する完全な流れ

LDAは1930年代にFisherが導入して以来、統計学と機械学習の基礎となってきました。シンプルながら強力で、多くの実問題で良好な性能を発揮します。

次章では、ロジスティック回帰を詳しく見ていきます。

$$G(x) = \arg\max_k \left[ x^T \Sigma^{-1} \mu_k - \frac{1}{2}\mu_k^T \Sigma^{-1} \mu_k + \log \pi_k \right]$$