判別分析

判別分析は、既知のクラスに属する多変量データに基づき、新たな観測をいずれのクラスに分類するかを決定する統計的手法である。特に多変量正規分布を仮定し、クラス間の分布差を利用して識別関数を構成する点に特徴がある。

設定

$K$ 個のクラス $\mathcal{C}_1, \dots, \mathcal{C}_K$ を考え、確率ベクトル $\boldsymbol{X} \in \mathbb{R}^p$ がクラス $\mathcal{C}_k$ に属するとき

\[ \boldsymbol{X} \mid \mathcal{C}_k \sim \mathcal{N}_p(\boldsymbol{\mu}_k, \Sigma_k) \]

に従うと仮定する。また事前確率を $\pi_k = \mathbb{P}(\mathcal{C}_k)$ とする。ベイズの定理により、事後確率は

\[ \mathbb{P}(\mathcal{C}_k \mid \boldsymbol{x}) = \frac{\pi_k f_k(\boldsymbol{x})}{\sum_{j=1}^K \pi_j f_j(\boldsymbol{x})} \]

で与えられる。ただし $f_k$ はクラス $\mathcal{C}_k$ の確率密度関数である。

判別関数

対数事後確率を用いて判別関数

\[ \delta_k(\boldsymbol{x}) = \log \pi_k + \log f_k(\boldsymbol{x}) \]

を定義し、$\delta_k(\boldsymbol{x})$ を最大にするクラスに $\boldsymbol{x}$ を分類する。

多変量正規分布の密度を代入すると

\[ \delta_k(\boldsymbol{x}) = -\frac{1}{2}\log|\Sigma_k| -\frac{1}{2}(\boldsymbol{x} - \boldsymbol{\mu}_k)^\top \Sigma_k^{-1}(\boldsymbol{x} - \boldsymbol{\mu}_k) + \log \pi_k + \text{const} \]

となる。

線形判別分析(LDA)

共通共分散行列の仮定

すべてのクラスで共分散行列が等しいと仮定する:

\[ \Sigma_1 = \cdots = \Sigma_K = \Sigma \]

このとき判別関数は

\[ \delta_k(\boldsymbol{x}) = \boldsymbol{x}^\top \Sigma^{-1} \boldsymbol{\mu}_k - \frac{1}{2}\boldsymbol{\mu}_k^\top \Sigma^{-1}\boldsymbol{\mu}_k + \log \pi_k \]

となり、$\boldsymbol{x}$ に関して線形であるため線形判別分析と呼ばれる。

2クラスの場合

$K=2$ のとき、判別は

\[ \delta(\boldsymbol{x}) = (\boldsymbol{\mu}_1 - \boldsymbol{\mu}_2)^\top \Sigma^{-1} \boldsymbol{x} - \frac{1}{2} \left( \boldsymbol{\mu}_1^\top \Sigma^{-1}\boldsymbol{\mu}_1 - \boldsymbol{\mu}_2^\top \Sigma^{-1}\boldsymbol{\mu}_2 \right) + \log \frac{\pi_1}{\pi_2} \]

の符号によって決まる。判別境界は超平面となる。

二次判別分析(QDA)

クラスごとに異なる共分散行列 $\Sigma_k$ を許すと、判別関数は二次形式を含み、

\[ \delta_k(\boldsymbol{x}) = -\frac{1}{2}(\boldsymbol{x} - \boldsymbol{\mu}_k)^\top \Sigma_k^{-1}(\boldsymbol{x} - \boldsymbol{\mu}_k) - \frac{1}{2}\log|\Sigma_k| + \log \pi_k \]

となる。したがって判別境界は一般に二次曲面となる。

フィッシャーの線形判別

2クラス問題において、射影方向 $\boldsymbol{w}$ を用いて $\boldsymbol{X}$ を1次元に写像し、クラス分離を最大化する方法である。クラス内分散とクラス間分散をそれぞれ

\[ S_W = \Sigma_1 + \Sigma_2, \quad S_B = (\boldsymbol{\mu}_1 - \boldsymbol{\mu}_2)(\boldsymbol{\mu}_1 - \boldsymbol{\mu}_2)^\top \]

とすると、目的関数は

\[ \max_{\boldsymbol{w} \neq \boldsymbol{0}} \frac{\boldsymbol{w}^\top S_B \boldsymbol{w}}{\boldsymbol{w}^\top S_W \boldsymbol{w}} \]

であり、最適解は一般化固有値問題

\[ S_B \boldsymbol{w} = \lambda S_W \boldsymbol{w} \]

により与えられる。2クラスの場合、

\[ \boldsymbol{w} \propto S_W^{-1}(\boldsymbol{\mu}_1 - \boldsymbol{\mu}_2) \]

が成り立つ。

標本判別分析

パラメータの推定

各クラス $\mathcal{C}_k$ に属する標本 $\{\boldsymbol{x}_i^{(k)}\}_{i=1}^{n_k}$ に対し、標本平均と標本共分散行列を

\[ \hat{\boldsymbol{\mu}}_k = \frac{1}{n_k}\sum_{i=1}^{n_k} \boldsymbol{x}_i^{(k)}, \quad \hat{\Sigma}_k = \frac{1}{n_k-1}\sum_{i=1}^{n_k} (\boldsymbol{x}_i^{(k)} - \hat{\boldsymbol{\mu}}_k) (\boldsymbol{x}_i^{(k)} - \hat{\boldsymbol{\mu}}_k)^\top \]

とする。LDAではプールド共分散行列

\[ \hat{\Sigma} = \frac{1}{n-K}\sum_{k=1}^K (n_k - 1)\hat{\Sigma}_k \]

を用いる。

判別規則

推定量を用いた判別関数 $\hat{\delta}_k(\boldsymbol{x})$ を構成し、最大のものを与えるクラスに分類する。

正則化と高次元問題

$p$ が大きく $n$ が小さい場合、共分散行列の推定は不安定または特異となる。この問題に対処するため、縮小推定

\[ \hat{\Sigma}_\lambda = (1-\lambda)\hat{\Sigma} + \lambda I \]

が用いられる。

Mathematics is the language with which God has written the universe.





















クラスター分析 機械学習 統計的学習理論の基本構造 VC次元 経験リスク最小化と構造的リスク最小化