※上記の広告は60日以上更新のないWIKIに表示されています。更新することで広告が下部へ移動します。

第四章 線形モデルによるクラス識別問題

  • クラス識別問題は、入力ベクトルを離散クラス(各クラスは通常、互いに素)に分類することを目的とする。この場合、入力空間は複数の決定領域(decision region)に分割され、それらの間の境界は決定境界(decision boundary)あるいは決定平面(decision surface)と呼ばれる。決定境界が入力ベクトル{\bf x}の線形関数からなる超平面によって形成される場合、線形分割可能(linearly separable)という。
  • クラス識別問題のため、線形回帰モデルを一般化(一般化線形モデル)を考える。
   y({\bf x}) = f({\bf w}^{\rm T}{\bf x} + w_0)
 fは活性化関数(activation function)と呼ばれる(この逆関数を統計学では連結関数link function)という)。

4.1節 識別関数

  • 2クラスの線形識別関数
   y({\bf x}) = {\bf w}^{\rm T}{\bf x} + w_0
{\bf w}を重みベクトル(weight vector)といい、w_0をバイアスという(バイアスの負数を閾値(threshold)と呼ぶこともある)。{\bf w}^{\rm T}は決定平面上の任意のベクトルに対して垂直であるから、{\bf w}^{\rm T}は決定平面の方向を定めるベクトル。また、w_0は決定平面の位置を決める働きをする。点{\bf x}と決定平面との間の垂直距離r
   r = \frac{y({\bf x})}{\|{\bf w}\|}
  • {\rm K}個の複数クラスの判別については、ある一つのクラスと他のクラスの一つとを判別する{\rm K}-1個の(一対多クラス判別器(one-versus-the-rest classifier))、あるいは{\rm K}({\rm K}-1)/2個の(one-versus-one classfier)2クラス識別関数を利用することが考えられるが、帰属先クラスが二義的な領域が生じてしまう。これは{\rm K}個の線形関数から成る
   y_k({\bf x}) = {\bf w}^{\rm T}_k{\bf x} + w_{k0}
を考え、すべてのj\neq kについてy_k({\bf x}) > y_j({\bf x})ならば点{\bf x}C_kに識別すると、C_kおよびC_j間の(D-1)次元決定平面は
   ({\bf w}_k - {\bf w}_j)^{\rm T}{\bf x} + (w_{k0} - w_{j0}) = 0
で定められる。このような決定領域は常に単接続(一つの境界について一つの他領域としか接していない)かつ凸。
  • 以下、線形識別関数のパラメータを決定する3つの方法、最小二乗法(least square)、フィッシャーの線形判別法(Fisher's linear descriminant)、パーセプトロン・アルゴリズム(perceptron algorithm)を概観。

最小二乗法

  • 最小二乗による場合、それが入力ベクトルに対する目的変数の条件付確率{\mathbb E}\left[{\bf t}|{\bf x}\right]を近似することが出来るが、あまりよい結果は期待できない。
  • 各クラスC_kが線形モデル
   y_k({\bf x}) = {\bf w}_k^{\rm T}{\bf x} + w_{k0}
で表されるとすると、新たな入力{\bf x}は出力y_k = \tilde{{\bf w}}_k^{\rm T}\tilde{{\bf x}}が最大になるクラスに識別されることになる。\widetilde{{\bf W}}を列ベクトル\tilde{{\bf w}}_k = \left(w_{k0},{\bf w}_k^{\rm T}\right)^{\rm T}からなる行列、\tilde{{\bf x}} = \left(1,{\bf x}^{\rm T}\right)^{\rm T}とすれば、上式のセットは
   y({\bf x}) = \widetilde{{\bf W}}^{\rm T}\tilde{{\bf x}}
とまとめることが出来る。ここで以下の二乗和誤差関数を最小化することでパラメータ行列\tilde{{\bf W}}を決定する。
   E_D(\widetilde{{\bf W}}) = \frac{1}{2}{\rm Tr}\left\{\left(\widetilde{{\bf X}}\widetilde{{\bf W}} - {\rm T}\right)^{\rm T}\left(\widetilde{{\bf X}}\widetilde{{\bf W}} - {\rm T}\right)\right\}
これを\widetilde{{\bf W}}について微分して0と等置すると
   \widetilde{{\bf W}} = \left(\widetilde{{\bf X}}^{\rm T}\widetilde{{\bf X}}\right)^{-1}\widetilde{{\bf X}}^{\rm T}{\rm T} = \widetilde{{\bf X}}^{\dagger}{\rm T}
ここで\widetilde{{\bf X}}^{\dagger}\widetilde{{\bf X}}のムーア・ペンローズ型一般逆行列。ここから識別関数
   y({\bf x}) = \widetilde{{\bf W}}^{\rm T}\tilde{{\bf x}} = {\rm T}^{\rm T}\left(\widetilde{{\bf X}}^{\dagger}\right)^{\rm T}\tilde{{\bf x}}
が導かれる。
  • 複数の目的変数についての最小二乗解の持つ興味深い性質のひとつとして、学習データの目的変数ベクトルのすべてが或る線形制約
   {\bf a}^{\rm T}{\bf t}_n + b = 0
を満たすなら、モデルの予測はすべての入力{\bf x}に対して同一の制約
   {\bf a}^{\rm T}{\bf y}({\bf x}) + b = 0
を満たすことが挙げられる。
  • 最小二乗法には識別関数のパラメータについて閉形式の厳密解を与える利点がある。その一方で異常値に影響されやすく、また頑健性に欠けるという欠点がある。これらの欠点は、非正規分布データに対して正規分布に従う条件付確率を仮定して最尤推定した場合と同様のミスマッチに起因する。

フィッシャーの線形判別法

  • 線形判別モデルは次元の削減と見なすことができる。D次元の入力ベクトル{\bf x}の1次元上への射影を
   y = {\bf w}^{\rm T}{\bf x}
によって求め、y \geq -w_0ならクラスC_1に、そうでなければクラスC_2に分類する識別器が得られる。一般に、1次元への射影によって情報の多くが失われ、D次元において適切に分割された決定領域でも1次元上では重複してしまう。しかし、重みベクトル{\bf w}を適切に調整することで、クラス識別を最大化する射影を選択することが可能になる。
  • 2次元の場合を例にとり、N_1個のデータ点がクラスC_1に、他のN_2個がクラスC_2に属するものとし、それぞれのクラス内平均を{\bf m}_1{\bf m}_2とする。これら2つの平均の間の距離が最大になるとき射影は元の次元におけるクラス分割を最もよく温存していると考えることができるから、
   m_2 - m_1 = {\bf w}^{\rm T}({\bf m}_2 - {\bf m}_1)
を最大化する{\bf w}を選ぶ。ただし{\bf w}の通常のノルムは1に等しいものとする。ラグランジュ未定乗数法により、
   {\bf w} \propto \left({\bf m}_2 - {\bf m}_1\right)
が得られる。クラス間のオーバーラップを最小にするため、射影の各クラス内分散を最小化するように{\bf w}を決定しようというのがフィッシャーの提案。
  • 変換後のクラス内データの分散は
   s_k^2 = \sum_{n \in C_k}\left(y_n - m_k\right)^2\hspace{2em}\left(y_n = {\bf w}^{\rm T}{\bf x}_n\right)
いま簡単に、2クラス全体のクラス内分散を
   s_1^2 + s_2^2
で定義すると、フィッシャーの基準はクラス間分散のクラス内分散に対する比
   J({\bf w}) = \frac{\left(m_2 - m_1\right)^2}{s_1^2 + s_2^2} = \frac{{\bf w}^{\rm T}{\rm S}_B{\bf w}}{{\bf w}^{\rm T}{\rm S}_W{\bf w}}
として表される。ただし{\rm S}_Bはクラス間分散で
   {\rm S}_B = \left({\bf m}_2 - {\bf m}_1\right)\left({\bf m}_2 - {\bf m}_1\right)^{\rm T}
{\rm S}_Wはクラス内分散で
   {\rm S}_W = \sum_{n \in C_1}\left({\bf x}_n - {\bf m}_1\right)\left({\bf x}_n - {\bf m}_1\right)^{\rm T} + \sum_{n \in C_2}\left({\bf x}_n - {\bf m}_2\right)\left({\bf x}_n - {\bf m}_2\right)^{\rm T}
これを最大化する{\bf w}を求めると、フィッシャーの線形判別関数(Fisher's linear discriminant)
   {\bf w} \propto {\rm S}_W^{-1}\left({\bf m}_2 - {\bf m}_1\right)
が得られる。これは、最適な1次元上への射影の方向を表している。もしクラス内分散が等方的なら、{\rm S}_Wは単位行列のスカラー倍となり、従って{\bf w}はクラス平均間の差に比例する。
  • 2クラスの場合、最小二乗法とフィッシャーの線形判別法の結果は一致する。

パーセプトロン・アルゴリズム

  • パーセプトロン・アルゴリズムにおいては、入力ベクトル{\bf x}はまず固定された非線形変換\phi({\bf x})によって変換された後に一般化線形モデル
   y({\bf x}) = f\left({\bf w}^{\rm T}\phi({\bf x})\right)
ここで活性化関数f
   f(a) = \{ \begin{array}{cc}+1,\hspace{2em}a\geq0\\-1,\hspace{2em}a<0\\ \end{array}
パーセプトロン基準(perceptron criterion)は
   E_p({\bf w}) = - \sum_{n\in {\cal M}}{\bf w}^{\rm T}\phi_n({\bf x})t_n
{\cal M}は誤分類されたパターンの集合を表す。ここでこの誤差関数に対して確率的勾配アルゴリズムを適用すると、重みベクトルの変化は
   {\bf w}^{(\tau+1)} = {\bf w}^{(\tau)} - \eta\nabla E_p({\bf w}) = {\bf w}^{(\tau)} + \eta\phi_n t_n
ただし\etaは学習レートパラメータ、\tauはステップ番号。学習パターンを一つずつ評価し、パターンを正しく分類した場合には重みベクトルはそのままで維持し、誤分類した場合には、{\cal C}_1の場合は重みベクトルにパターンベクトルを加え、{\cal C}_2の場合には重みベクトルからパターンベクトルを差し引く。そしてこの結果はパーセプトロン収束定理(perceptron convergence theorem)によって、線形的に分離可能な場合には有限ステップ内で厳密解に収束することが保証されている。ただし実際には収束までに要するステップ数は相当なものになる可能性があるうえに、それが収束するまではそれが線形分離可能なケースなのかどうかを知ることが出来ない。また、複数の解が存在する場合、結果がどの解に到達するかはパラーメータの初期値に依存し、また、データが線形分離不可能ならばパーセプトロン・アルゴリズムは収束しない。パーセプトロン・アルゴリズムの有する最も重大な限界は(ここで論ずる他の二つの手法と同様に)固定的基底関数の線形結合に基づいている点にある。

確率的生成モデル(Probabilistic Generative Models)

  • 生成モデルによる場合は、クラス条件付き密度p({\bf x}|{\cal C}_k)および事前確率p({\cal C}_k)を求め、これらからベイズの定理によって事後確率p({\cal C}_k|{\bf x})を求めることになる。
  • 2クラスの場合は、クラス{\cal C}_1の事後確率は
   p({\cal C}_1|{\bf x}) = \frac{p({\bf x}|{\cal C}_1)p({\cal C}_1)}{p({\bf x}|{\cal C}_1)p({\cal C}_1) + p({\bf x}|{\cal C}_2)p({\cal C}_2)} = \frac{1}{1 + \exp\left(-a\right)} = \sigma(a)
ただし、
   a = \ln\frac{p({\bf x}|{\cal C}_1)p({\cal C}_1)}{p({\bf x}|{\cal C}_2)p({\cal C}_2)}  
   \sigma(a) = \frac{1}{1 + \exp\left(-a\right)} (ロジスティック・シグモイド関数)
ロジスティック・シグモイド関数は以下のような対称性を有する。
   \sigma(-a) = 1 - \sigma(a) 
ロジスティック・シグモイド関数の逆関数は
   a = \ln\frac{\sigma}{1 - \sigma}
でロジット関数(logit function)という。これは2クラスの確率の比率\ln\left[p({\cal C}_1|{\bf x})/p({\cal C}_2|{\bf x})\right]の対数を表すため、対数オッズ(log odds)とも呼ばれる。
  • いまa({\bf x}){\bf x}の線形関数だと仮定すると、事後確率は一般線形モデルに支配される。k > 2クラスの場合
   p({\cal C}_k|{\bf x}) = \frac{p({\bf x}|{\cal C}_k)p({\cal C}_k)}{\sum_{j}p({\bf x}|{\cal C}_j)p({\cal C}_j)} = \frac{\exp\left(a_k)\right)}{\sum_{j}\exp\left(a_j)\right)}\hspace{3em}\left(a_k = \ln\left(p({\bf x}|{\cal C}_k)p({\cal C}_k)\right)\right)
これは正規化指数関数(normalized exponential)と呼ばれ、ロジスティック・シグモイド関数の多クラスへの拡張と見ることができる。正規化指数関数はソフトマックス関数softmax functionとも呼ばれる。

入力値が連続の場合

  • クラス条件付き確率分布が正規分布に従い、すべてのクラスが同一の共分散行列を持つものと仮定すると、クラスC_kの密度は
   a_k({\bf x}) = {\bf w}_k^T{\bf x} + w_{k0}\hspace{3em}\left({\bf w}_k = {\bf \Sigma}^{-1}{\bf \mu}_k,\hspace{1em}w_{k0} = -\frac{1}{2}{\bf \mu}_k^T{\bf \Sigma}^{-1}{\bf \mu}_k + \lnp({\cal C}_k)\right)
同一共分散行列の仮定の下では決定境界は線形となり、同一でない場合は二次関数となる。
  • 2クラスの場合の尤度関数は
   p\left({\bf t},{\bf X}|\pi,{\bf \mu}_1,{\bf \mu}_2,{\bf \Sigma}\right) = \prod_{n=1}^{N}\left[\pi{\cal N}\left({\bf x}_n|{\bf \mu}_1,{\bf \Sigma}\right)\right]^{t_n}\left[\left(1 - \pi\right){\cal N}\left({\bf x}_n|{\bf \mu}_2,{\bf \Sigma}\right)\right]^{1 - t_n}
  • まず、\piについてこれを最大化する。尤度関数のうち、\piに依存する項は、
   \sum_{n=1}^{N}\left\{t_n\ln\pi + \left(1 - t_n\right)\ln\left(1 - \pi\right)\right\}
これを\piについて微分して0と等置すると、
   \pi = \frac{1}{N}\sum_{n=1}^{N}t_n = \frac{N_1}{N} = \frac{N_1}{N_1 + N_2}
ただしN_iはクラス{\cal C}_iに帰属する学習データ点の総数。つまり総学習データ点に対するクラス毎データ点総数の割合。
  • 次に{\bf \mu}_1について最大化する。{\bf \mu}_1に依存する項のみを集めると、
   \sum_{n=1}^{N}t_n\ln{\cal N}\left({\bf x}_n|{\bf \mu}_1,\Sigma\right) = -\frac{1}{2}\sum_{n=1}^{N}t_n\left({\bf x}_n - {\bf \mu}_1\right)\Sigma^{-1}\left({\bf x}_n - {\bf \mu}_1\right) + {\rm const}
これを{\bf \mu}_1について微分して0と等置すると、
   {\bf \mu}_1 = \frac{1}{N_1}\sum_{n=1}^{N}t_n{\bf x}_n
となるが、これはクラス{\cal C}_1に分類されるべきすべての入力ベクトルの平均。同様に
   {\bf \mu}_2 = \frac{1}{N_2}\sum_{n=1}^{N}(1 - t_n){\bf x}_n
  • 同様に共分散行列\Sigmaについての最尤解は
   -\frac{N}{2}\ln|{\bf \Sigma}| - \frac{N}{2}{\rm Tr}\left\{{\bf \Sigma}^{-1}{\rm S}\right\}
ただし
   {\rm S} = \frac{N_1}{N}{\rm S}_1 + \frac{N_2}{N}{\rm S}_2
   {\rm S}_1 = \frac{1}{N_1}\sum_{n\in {\cal C}_1}\left({\bf x}_n - {\bf \mu}_1\right)\left({\bf x}_n - {\bf \mu}_1\right)^T
   {\rm S}_2 = \frac{1}{N_2}\sum_{n\in {\cal C}_2}\left({\bf x}_n - {\bf \mu}_2\right)\left({\bf x}_n - {\bf \mu}_2\right)^T
これらの結果は多クラスの場合に容易に拡張できるが、この手法には異常値に対する頑健性はない。

特徴値が離散な場合

  • 入力がD個の特徴で構成され、それらがx_i \in \left\{0,1\right\}であるとき、単純ベイズ(naive Bayes)仮定の下、すなわち特徴の値は
条件付独立であると仮定すれば、クラス条件付き確率は
   p({\bf x}|{\cal C}_k) = \prod_{i=1}^{D}\mu_{k_i}^{x_i}\left(1 - \mu_{k_i}\right)^{1 - x_i}
となり、{\bf x}の線形関数
   a_k({\bf x}) = \sum_{i=1}^{D}\left\{x_i\ln\mu_{k_i} + (a - x_i)\ln(a - \mu_{k_i})\right\} + \ln p({\cal C}_k)
を得る。
  • 以上より、正規分布に従うあるいは離散的入力については、事後クラス別確率分布は、ロジスティック・シグモイド関数(2クラスの場合)あるいはソフトマックス関数(2クラス以上の場合)を用いた一般化線形モデルによって与えられることが分かる。これらは、クラス条件付確率p({\bf x}|{\cal C}_k)が指数関数族に属するというより一般的な仮定から得られる一般的結果の特別の場合。

確率的判別モデル(Probabilistic Discriminative Models)

  • 判別モデルは、条件付事後確率p({\cal C}_k|{\bf x})によって定義された尤度関数を最大化することで直接にパラメータを決定する。生成モデルと比較して、このような判別学習(discriminative training)の利点は、決定すべきパラメータの数が一般に少なくて済む点にある(例えば平均なら生成モデルパラメータ数/クラス数)。
  • 2クラスのロジスティック回帰モデル(logistic regression model)
   p({\cal C}_1|\phi) = y(\phi) = \sigma({\bf w}^{\rm T}\phi)
このパラメータを決定するために最尤法を利用する。まず、ロジスティック・シグモイド関数の導関数
   \frac{{\rm d}\sigma}{{\rm d}a} = \sigma(a -\sigma)
と表すことができる。データセット\left\{\phi_n,t_n\right\}、目的変数はt_n \in \left\{0,1\right\}\phi_n = \phi({\bf x}_n)とすると尤度関数は
   p({\bf t}|{\bf w}) = \prod_{n=1}^{N}y_n^{t_n}\left\{1 -y_n\right\}^{1-t_n}\hspace{2em}\left({\bf t} = \left(t_1,...,t_N)^{\rm T},\hspace{1em}y_n = p({\cal C}_1|\phi_n\right)\right)
となる。この尤度関数についてその負の対数をとると以下のクロスエントロピー(cross entropy)誤差関数が得られる。
   E({\bf w}) = -\ln p({\bf t}|{\bf w}) = -\sum_{n=1}^{N}\left\{t_n\ln y_n + (1 - t_n)\ln(1 - y_n)\right\}\hspace{2em}\left(y_n = \sigma(a_n) = \sigma({\bf w}^{\rm T}\phi_n)\right)
{\bf w}に関して傾きを取ると、
   \nabla E({\bf w}) = \sum_{n=1}^{N}\left(y_n - t_n\right)\phi_n\hspace{2em}(4.91)
  • このような最尤法は線形分離可能な学習データについて過学習を起こしうることに注意すべきで、これはモデルのパラメータ数よりも学習データ数が多い場合にも当てはまる。これを回避するには、事前確率を含めてMAP解を求める、あるいは同じことだが、正則化項を誤差関数に追加することが必要。
  • 線形回帰モデル(第三章)の場合には、ノイズが正規分布に従うという仮定の下で閉形式解が得られたが、ロジスティック回帰モデルにおいてはロジステッィク・シグモイド関数が線形ではないため、もはや閉形式解の存在は保証されない。しかしながら誤差関数は凸関数なので、唯一の最小値を持つ。
  • ニュートン-ラフソンの反復最適化法(Newton-Raphson iterative optimization scheme)は、対数尤度関数に対して局地的二次式近似を利用する。
  • ニュートン-ラフソン更新は
   {\bf w}^{({\rm new})} = {\bf w}^{({\rm old})} - {\rm H}^{-1}\nabla E({\bf w})\hspace{2em}(4.92)
としてE({\bf w})を最小化する。{\rm H}E({\bf w})のヘッセ行列。これをクロスエントロピー誤差関数に適用すると(4.91)より、
   \nablaE({\bf w}) = \sum_{n=1}^{N}\left(y_n - t_n\right)\phi_n = {\bf \Phi}^{\rm T}\left({\bf y} - {\bf t}\right)
   {\rm H} = \nabla\nabla E({\bf w}) = \sum_{n=1}^{N}y_n\left(1 - y_n\right){\bf \phi}_n{\bf \phi}_n^{\rm T} = {\bf \Phi}^{\rm T}{\rm R}{\bf \Phi}\hspace{2em}\left({\rm R}_{nn} = y_n\left(1 - y_n\right)\right)
ここでは既にヘッセ行列は重み行列{\rm R}を通じて{\bf w}に依存しているが、これは誤差関数がもはや二次形式ではないことに対応している。{\rm H}は正定値であり、誤差関数は凸関数であるから唯一の最小値を持つ。(4.92)に代入すると、
   {\bf w}^{({\rm new})} = {\bf w}^{({\rm old})} - \left({\bf \Phi}^{\rm T}{\rm R}{\bf \Phi}\right)^{-1}{\bf \Phi}^{\rm T}\left({\bf y} - {\bf t}\right) = \left({\bf \Phi}^{\rm T}{\rm R}{\bf \Phi}\right)^{-1}\left\{{\bf \Phi}^{\rm T}{\rm R}{\bf \Phi}{\bf w}^{({\rm old})} - {\bf \Phi}^{\rm T}\left({\bf y} - {\bf t}\right)\right\} = \left({\bf \Phi}^{\rm T}{\rm R}{\bf \Phi}\right)^{-1}{\bf \Phi}^{\rm T}{\rm R}{\bf z}\hspace{1em}\left({\bf z} = {\bf \Phi}{\bf w}^{({\rm old})} - {\rm R}^{-1}\left({\bf y} - {\bf t}\right)\right)
これは重み付き最小二乗問題の正規方程式の集合の形をとっている。重み行列{\rm R}{\bf w}に依存しているため、更新ごとに新たな{\bf w}を使って新たな重み行列{\rm R}を計算しつつ、正規方程式を反復して適用する必要がある。このため、この手法は反復再重み付け最小二乗法(iterative reweighted least squares, IRLS)と呼ばれる。IRLSはa = {\bf w}^{\rm T}\phiによる空間における線形化された問題の解と解釈できる。ここで対角行列{\rm R}の要素は分散を表し、{\bf z}の要素は、その時点での{\bf w}^{({\rm old})}においてこの空間におけるロジスティック・シグモイド関数の局地的な近似によって得られる、a = {\bf w}^{\rm T}\phiによる空間における有効な目的変数とみなすことができる。

プロビット回帰(probit regression)

  • ノイズあり閾値モデルにおいては、入力{\bf \phi}_nについてa_n = {\bf w}^{\rm T}{\bf \phi}_nを評価し、a_n \geq\thetaなら1を、それ以外の場合には0を目標変数として出力する。
  • 例えばp(\theta)が平均0、分散1の正規分布に従うとすると、活性化関数は
   {\bf \Phi}(a) = \int_{-\infty}^{a}{\cal N}\left(\theta|0,1\right){\rm d}\theta
となり、これはプロビット関数(probit function)の逆関数。これはシグモイドと同様のS字状の形状を持つ。また、
   {\rm erf}(a) = \frac{2}{\sqrt{\pi}}\int_{0}^{a}\exp\left(-\theta^2\right){\rm d}\theta
はerf関数と呼ばれプロビット関数と以下のような関係がある。
   {\bf \Phi}(a) = \frac{1}{2}\left\{1 + {\rm erf}\left(\frac{a}{\sqrt{2}}\right)\right\}
  • ロジステック・シグモイド関数の場合と比較すると、プロビット活性化関数を用いた場合の短所として、異常値により影響されやすいという点が挙げられるが、学習データの誤分類確率\epsilonを導入することで解決しうる。\epsilonは予め設定することもパラメータとしてデータを用いて推定することも可能。

標準連結関数(canonical link function)

  • 目標変数が一般的な指数分布族に属する条件付確率分布に従うとき、対応する活性化関数の逆関数は標準連結関数と呼ばれる。

ラプラス近似(the laplace approximation)

  • ラプラス近似はある確率分布をそのモードが一致するように正規分布で近似することを目的とする。
  • 実際例では分布は複峰的であることが多く、その場合にはモードごとに異なるラプラス近似を考慮する。中央極限定理によりデータが多くなるに従って分布は正規分布に近づくから、ラプラス定理はデータ点が比較的多い場合に有用。短所は現実の変数に直接にしか適用できないこと、分布の大域的特徴を捉えることが出来ないこと。
  • BIC(Bayesian Information Criterion)はAIC同様の情報基準だが、AICよりもモデルの複雑さに対して大きなペナルティを課す。
   \ln p({\cal D}|{\bf \theta}_{MAP}) - \frac{1}{2}M\ln N
AICおよびBICはヘッセ行列が最大階数を持たない場合にはミスリーディングな結果をもたらす可能性がある。

ベイズロジスティック回帰(Bayesian Logistic Regression)

  • ベイズ的手法によるロジスティック回帰においては解が存在しない。殊に事後分布を得るためには事前分布と尤度関数(それ自身、各データ点に対応するロジスティックシグモイド関数の積)との積を正規化しなければならず、予測分布の同様に厳密解を得られない。従ってラプラス近似を利用することになるが、これは対数事後分布の二階偏微係数をすなわちヘッセ行列を求めることに等しい。
  • いま事前分布を
   p({\bf w}) = {\cal N}\left({\bf w}|{\bf m}_0,{\bf S}_0\right)
とすれば事後分布は
   p\left({\bf w}|{\bf t}\right) \propto p({\bf w})p\left({\bf t}|{\bf w}\right)
となる。ここで対数事後分布\ln p\left({\bf w}|{\bf t}\right)の二階偏微係数の負数を{\bf S}^{-1}_Nとすると事後分布は以下のように近似される。
   q({\bf w}) = {\cal N}\left({\bf w}|{\bf w}_{MAP}, {\bf S}_N\right)
予測分布を得るにはこれを周辺化する(詳細略)。