trsing’s diary

勉強、読んだ本、仕事で調べたこととかのメモ。

PRML 5.5~5.5.3

5.5 ニューラルネットワーク正則化

この節でやること

ニューラルネットワークの複雑さを制御する方法について。

理由

過学習を避けるため。

詳細

入出力ニュニットの数はデータ集合の次元で定まる。 隠れユニットの数Mは調整可能な自由パラメータで、Mによりパラメータ(重みとバイアス)の数を制御する。適合不足と過学習のバランスを最適にして汎化性能を最良にしたい。

汎化性能を最良にする方法
  • Mを選ぶアプローチ。図5.10に示すようなグラフをプロットした上で、検証用集合に対して誤差を最小とする解を選ぶ
  • ニューラルネットワークモデルの複雑さを制御するアプローチ。 比較的大きなMを選んでおいて正則化項を誤差関数に追加する。最も単純な正則化項は2次式(荷重減衰)

5.5.1 無矛盾なガウス事前分布

正則化項は無矛盾性を持つべきである

理由

入力あるいは目標変数を線形変換しても、本質的には等価である。しかし、正則化項が無矛盾でないなら等価であるはずの線形変換に対して重みの評価が変わり、異なる解を選んでしまうかもしれないため。

無矛盾:入力変数、目標変数を線形変換したデータで訓練する場合、変換分だけ重みが異なる等価なネットワークが得られること

詳細

以下、2層の重みと線形出力ユニットを持つ多層パーセプトロンについて話を進める。

入力データの線形変換(5.115)に対して、重みとバイアスを(5.116)、(5.117)と変換すれば変形前後で等価なネットワークになる。

出力変数の線形変換(5.118)に対して、重みとバイアスを(5.119)、(5.120)と変換すれば変形前後で等価なネットワークになる。

荷重減衰(5.112)ではこの性質を持たない。例えば出力変数の線形変換の場合(バイアスは除く)、 $$ \lambda \hat{w}^{T} \hat{w}= \lambda (\frac{1}{a^{2}} \sum w_{ji}^{2}+\sum w_{kj}^{2}) $$ となるため\lambdaを変更しても変換前と等価にできない。

線形変換のもとで不変な正則化項は(5.121)となる(ただし、バイアス項は和から除く)。この場合
\lambda_{1}\rightarrow a^{2}\lambda,\,\,
\lambda_{2}\rightarrow c^{-2}\lambda
とすれば変換前後で等価になる。

変則事前分布、エビデンスについては「2.4.3無情報事前分布」、「3.4ベイズモデル比較」を参照。

バイパスパラメータが制約されていないと不都合なため、バイアスにも固有の超パラメータを持つ別の事前分布(一般的に(5.123))を導入する。ただし、移動への不変性((5.115),(5.118)の+b,d?)は失われる。

(5.115)、(5.116)、(5.117)について

x_{i}\rightarrow ax_{i}+bとなった場合、同じになる\hat{w}_{ji}
$$ \sum w_{ji}x_{i}+w_{j0}=\sum \hat{w}_{ji}(ax_{i}+b)+\hat{w}_{j0}\\ \sum w_{ji}x_{i}=a\sum \hat{w}_{ji}x_{i},\,\, w_{j0}=b\sum \hat{w}_{ji}+\hat{w}_{j0}\\ \hat{w}_{ji}=\frac{1}{a}w_{ji},\,\, \hat{w}_{j0}=w_{j0}-\frac{b}{a\sum}w_{ji} $$

(5.118)、(5.119)、(5.120)について

y_{k}\rightarrow cy_{k}+dとなった場合、同じになる\hat{w}_{kj}
$$ c(\sum w_{kj}z_{z}+\hat{w}_{k0})+d=\sum \hat{w}_{kj}z_{j}+\hat{w}_{k0}\\ \sum \hat{w}_{kj}z_{j}=c\sum w_{kj}z_{j}\\ \hat{w}_{kj}=c w_{kj},\,\, \hat{w}_{k0}=cw_{k0}+d $$

5.5.2 早期終了

早期終了の手順によりネットワークの有効な複雑さを制御する

早期終了の意味

最適化アルゴリズムの多くでは、訓練誤差は反復回数の非増加関数。一方、検証用データに対する誤差は、最初は減少するがネットワークが過学習を始めると増加する。つまり、訓練誤差を最小にしても良い汎化性能とならない。良い汎化性能を持つメットワークを得るため、検証用誤差が最小になったところで訓練を終了したい。

上記のネットワークの挙動を有効自由度で説明

訓練の反復回数が少ないと有効自由度も小さい。 反復回数を増やしていくにつれてモデルの複雑さが増加し、有効自由度も大きくなる。そのため、訓練誤差が最小値になる前に訓練を止めることは複雑さを制限する方法になる。

二次誤差関数の場合の説明

図5.13を参照。 荷重減衰がない場合、重みベクトルは原点を初期値とし、勾配に沿って\tilde{w}を通り誤差関数の最小値w_{ML}に収束する。 荷重減衰がある場合、距離w^{T}wの重みにより道中で止まる(図3.15参照)。したがって、 \tilde{w}の近くの点で終了することは、荷重減衰がある場合と似たようなもの。

有効パラメータの数は訓練にしたがって増えていく(勾配の低いものも有効な大きさになっていく)

5.5.3 不変性

パターン認識において、入力が多少の変換を受けても変化しない(不変)であることが求められる。 変換の例としては画像内での位置、サイズ、輝度など。

さまざまな変換の影響を受けた十分多くの訓練パターンが利用可能ならば(少なくとも近似的には)不変性を学習できる。 しかし、訓練パターンが限られていたり必要な不変性がいくつもある場合には実用的ではない。 そのため別のアプローチが必要となる。これには大きく分けて4つある。

アプローチ1:実装が比較的用意で、複雑な不変性の場合にも利用できる。しかし、計算量が増大するというデメリットがある。

アプローチ2:データ集合はそのままに、正則化項の追加で誤差関数を変化させる(接線伝播法、5.5.4節で扱う)。また、5.5.5節でアプローチ1との関係を扱う。

アプローチ3:訓練集合に含まれる変換の範囲を超えて、正しく外挿することができる。 しかし、都合の良い特徴を見つけることは困難な場合もある。

アプローチ4:5.5.6節で扱う。