PRML上巻_4章 線形識別モデル(Linear Discriminant Model) 読解メモ #4

f:id:lib-arts:20181230162207p:plain

#3では3章の線形回帰モデルについて取り扱いました。

#4では4章の読解メモをまとめていければと思います。(7~8割の理解を目標においた読解にあたってのメモなので、要旨を掴みたい方向けです)
4章の線形識別モデルはクラス分類などにつながる考え方です。
以下目次になります。

1. 4章の内容に関して概要
2. 詳細
2.1 識別関数、判別関数(4.1)
2.2 確率的生成モデル(4.2)
2.3 確率的識別モデル(4.3)
2.4 ラプラス近似(4.4)
2.5 ベイズロジスティック回帰(4.5)
3. まとめ&所感


1. 4章の内容に関して概要

分類の目的は、ある入力ベクトルxをK個の離散クラスCkの1つに割り当てること

とされています。具体的には、画像の分類(犬か猫か鳥かの3クラス分類を想定します)を考えた際にC1に犬、C2に猫、C3に鳥を割り当てて、C1〜C3のどれに分類されるかを解く問題に相当します。冒頭の導入部では言葉の整理を色々としてくれているので、以下強調されている用語をベースにそれぞれについて取りまとめます。

◆ 用語整理
決定領域(decision region)
-> 入力をCkのどれに対応づけるかを決定する領域のこと

決定境界(decision boundary)
-> 決定領域の境界、決定面(decision surface)とも言う

線形分離可能(linearly separable)
-> 線形決定面によって、正しくクラスに分離できるデータの集合のこと

識別関数(discriminant function)
-> 入力ベクトルxから直接クラスを推定する関数

活性化関数(activation function)
-> パラメータwを用いた線形モデルを変換する非線形関数。近年では5章で説明されているニューラルネットワークの中間層の値の制御に用いる際に言及されることが多い。

連結関数(link function)
-> 活性化関数の逆関数のこと。GLM(Generalized Linear Model)の文脈で言及されることが多い。

上記で大体の用語は整理できたと思うので、実際に内容に入っていければと思います。


2. 詳細

4章の構成としては、4.1で識別関数を利用した識別、4.2では確率的生成モデルを用いた識別、4.3ではGLM系統のアプローチ、4.5では4.3.2で説明されるロジスティック回帰のベイズ的な取り扱い、4.4では4.5を計算する上での近似的なアプローチであるラプラス近似について説明されています。


2.1 識別関数、判別関数(4.1)

4.1節では識別関数について説明されています。4章では決定面が超平面となる線形識別(linear discriminant)のみに注目すると言及されており、スコープを絞る上で参考にすると良いです。

4.1.1では2クラス分類ということで大本となるシンプルなモデルについてまとめられています。

y(x) = wx + w0

分類にあたっては、上記の式で表されるy(x)の値がy(x)≧0であれば入力ベクトルxをクラスC1に、y(x)<0であればクラスC2に割り当てるような仕組みをベースにしていると考えると良いです。

4.1.2では、4.1.1の内容をベースに多クラスに話を拡張します。クラス数をKとおいた際に4.1.1ではK=2、4.1.2ではK>2と考えると良いです。K>2を実現するにあたっては一見単純のようにも思われますが、1対他分類器(one-versus-the-rest classifier)のようなある特定のクラスCkに入るか入らないかという2クラス分類器をK-1個用意すると考えると図4.2のように曖昧な領域が生じてしまうなど望ましくない挙動になってしまうので、設計に注意が必要です。この問題の解決策としては下記のようにK個の線形関数で構成される単独のKクラス分類問題を考えることで回避できるとされています。

yk(x) = wk x + w0

このK個のyの最大値を元にクラス分類を行うことができます。ちなみにこの考え方は5章で取り扱われているニューラルネットワークを用いたクラス分類でも用いられています(AlexNet、VGGNet、ResNetなどのDeepLearningを用いた画像分類でも同様です)。

4.1.3では分類において最小二乗法を使用する是非についてまとめられています。分類においても最小二乗法を使って解析解を求めることができるのですが、外れ値に対する頑健性がないということも言及されています。また、最小二乗法は条件付き確率分布にガウス分布を仮定した場合の最尤法であり、2値目的変数ベクトルは明らかにガウス分布からかけ離れているので最小二乗法が使えないのは当たり前だとされています。したがって適切な確率モデルを採用すれば最小二乗法よりも良い特性を持つ分類法を得られるだろうとも言及されています。

4.1.4ではフィッシャーの線形判別についてまとめられています。

フィッシャーの線形判別基準は(4.25)のように

J(w) = クラス内分散/クラス間分散

を用いて定義します。ここでwは線形識別モデルのパラメータにあたります。このJ(w)はδJ(w)/δw=0を満たす際に最大となるので、この時の関係は(4.29)のようになります。ここで(4.29)より(4.30)を導出できます。(4.30)の解釈としては、Swを用いてデータの次元を1次元に削減する際の射影方向の選択を行っており、平均もその軸上に射影した上で判別基準の閾値のy0を置くことでクラス分類にあたっての識別モデルを作成することができます。フィッシャーの線形判別はこのような形で分類を行います。

4.1.5は2クラス分類においてフィッシャーの判別基準が最小二乗法の特殊な場合であるということについて説明されています。具体的にはクラスC1とC2に対応する目的変数の取り方を変えることで最小二乗法からフィッシャーの線形判別の式を導けるということが示されています。4.1.6は多クラス分類問題に対しフィッシャーの判別基準を拡張しています。4.1.7では、線形識別モデルの別の例としてパーセプトロンアルゴリズムについてまとめられています。


2.2 確率的生成モデル(4.2)

4.1節では分類問題を識別関数を構築する問題として捉えていましたが、4.2節では分類を確率的な視点から捉えます。この二つの違いは1.5.4節でも識別的アプローチと生成てきアプローチの違いとしてまとめられています。
生成的アプローチでは、モデル化されたクラスの条件付き確率密度p(x|Ck)とクラスの事前確率p(Ck)からベイズの定理を用いて事後確率p(Ck|x)の計算を行います。

p(C1|x) = p(x|C1)p(C1)/(p(x|C1)p(C1)+p(x|C2)p(C2))
            = 1/(1+exp(-a)) = σ(a)

※ ここでa = ln(p(x|C1)p(C1)/p(x|C2)p(C2))である。

具体的な式としては上記のように書けるのですが、上記におけるσ(a)はσ(a)=1/(1+exp(-a))で表すことのできるロジスティックシグモイド関数(logistic sigmoid function)になります。ロジスティックシグモイド関数正規分布の累積分布関数であるプロビット回帰と類似の曲線かつ解析的に扱いやすいのでその逆関数のロジット関数(logit function)と共に応用の幅が広いです。具体的には2値変数の予測にあたってはアウトプットを確率的に取り扱える方が望ましいので、ロジット関数をリンク関数に用いたロジスティック回帰などが有名な応用例としてあります。
また、K>2に拡張した関数を正規化指数関数(normalized exponential function)として知られているのですが、こちらはソフトマックス関数(softmax function)とも呼ばれており、近年ではニューラルネットワークやDeepLearningの出力層に導入し、1hot-Vectorの形式で表される正解データとスケールを合わせるのに使用するケースが多いです。

4.2.1では議論を連続変数に展開するにあたって、クラスの情報をベースにした条件付き確率密度をガウス分布であると仮定して話を進めています。4.2.2では2クラス分類問題に対して4.1.1と同様に各クラスの条件付確率密度にガウス分布を仮定し、最尤法を用いることでπ=N1/(N1+N2)を導出しています。4.2.2ではこのようにp(x|Ck)に関するパラメトリックな関数系を決めればクラスの事前確率のp(Ck)とともにパラメータの値を最尤法を用いて決めることができるということについて解説されています。

4.2.3では4.2.1の入力値に連続値を想定していたのに対応して、離散値を仮定しています。{0,1}の2つの値を取り得る特徴量D個を仮定した場合の一般的な分布は2^D個の要素の表に相当するのですが、これでは表の要素数が指数関数的に増加してしまうのでナイーブベイズを仮定することで(4.81)ではベルヌーイ分布のような式でクラスの条件付き確率を表現しています。この仮定上では特徴値がクラスCkに対して条件付き独立であるとして扱われています。

4.2.4ではクラスの条件付き確率密度p(x|Ck)が指数型分布族のメンバーであるという仮定によって得られる一般的な結果の特殊な場合であることについて解説されています。


2.3 確率的識別モデル(4.3)

4.3節では4.2節とは別のアプローチとして一般化線形モデル(GLM; Generalized Linear Model)の関数形式を仮定した上で、最尤法を用いてパラメータを直接決定する方法について解説されています。

4.3.1では基底関数ベクトルφ(x)について議論がされています。4.3.2ではGLMの具体例の一つであるロジスティック回帰について、4.3.3ではニュートン-ラフソン法をベースにしたGLMの近似解法である反復重み付け最小二乗法(IRLS; iterative reweighted least squares)に関してまとまっています。4.3.4ではロジスティック回帰の多クラスへの拡張、4.3.5ではプロビット回帰について言及されています。4.3.6ではGLMや正準連結関数(canonical link function)についてまとまっています。

 

2.4 ラプラス近似(4.4)
4.4節では4.5節でロジスティック回帰のベイズ的な取り扱いについて議論するにあたって取り扱いが難しいため近似を導入する必要があるということから、ラプラス近似について説明されています。

 

2.5 ベイズロジスティック回帰(4.5)
4.5節ではベイズロジスティック回帰問題へのラプラス近似の適用に関して説明されています。


3. まとめ&所感

ロジスティックシグモイド関数からソフトマックス関数への拡張の流れはあまりしっかりまとめてある文献が少ないのでわかりやすくて良い内容だったと思います。
全体的にボリュームが多いので、初見の際はあまり細部まで読まず論旨を抑える目的で十分なのではと思いました。