next up previous
次へ: Weight Decay 上へ: 汎化性 戻る: VC次元

Optimal Brain Surgeon

汎化性を確保するためには、課題の複雑さと利用可能なサンプルの数にマッチ するようにネットワークの大きさを決めることが重要である。そこで、学習結 果に応じてネットワークの大きさを変化させる方法もいくつか提案されている。

小さなネットワークからはじめて、徐々にネットワークを大きくするような方 法としては、例えば、Fahlman らの Cascade Correlation[35]、 the Group Method of Data Handinig (GMDH) に基づくもの [36,37,38]などがある。

一方、大きなネットワークから不要な(冗長な)結合荷重を徐々に取り除いて、 問題のサイズにマッチしたネットワークを構成する方法は、Pruning と呼ばれ、 いくつかの方法が提案されている。そのための最も直観的な方法は、結合荷重 の絶対値が小さい結合荷重を削除する方法である。しかし、結合荷重の絶対値 が小さいからといって必ずしもネットワークの評価基準(2乗誤差)への貢献が 小さいとは限らない。Cun らは、それを改善するために Hessian 行列の対角 要素に基づいて結合荷重の貢献度を見積り、貢献度の小さい結合荷重を削除す る Optimal Brain Damage (OBD) と呼ばれる方法を提案している[39]。 さらに、Hassibi らは、以下のような Hessian 行列の全ての要素を考慮に入 れて貢献度を見積もる方法を提案している[40]。

学習が収束した後のネットワークの結合荷重を $\mbox{\boldmath$\theta$}$ とし、それを $\delta\mbox{\boldmath$\theta$}$ だけ変化させた時、2乗誤差がどれだけ増加するか考 えてみよう。この時、学習は収束しているので Taylor 展開の1次の項は $0$ となり、2次以上の項のみが残り、2乗誤差の増加量は、高次の項を無視する と、

\begin{displaymath}
\delta \varepsilon^2_{emp} = \varepsilon^2_{emp}(\mbox{\bol...
...lta\mbox{\boldmath$\theta$}^T H \delta\mbox{\boldmath$\theta$}
\end{displaymath} (97)

のように近似できる。ただし、 $H = \frac{\partial^2
\varepsilon^2_{emp}}{\partial \mbox{\boldmath$\theta$}^2}$ は、Hessian 行列である。

今、一つの結合荷重 $\theta_q$$0$、つまり、

\begin{displaymath}
\mbox{\boldmath$e$}_q^T \delta\mbox{\boldmath$\theta$} + \theta_q = 0
\end{displaymath} (98)

とした時、2乗誤差の増加量を最小とする結合荷重の変化量 $\delta\mbox{\boldmath$\theta$}$ を求めてみよう。ここで、 $\mbox{\boldmath$e$}_q$ は、$q$ 番目要素のみ $1$ で残りがすべて $0$ のベクトルである。この問題は Lagrange 乗数を $\lambda$ として、
\begin{displaymath}
Q = \frac{1}{2} \delta\mbox{\boldmath$\theta$}^T H \delta\m...
...{\boldmath$e$}_q^T \delta\mbox{\boldmath$\theta$} + \theta_q)
\end{displaymath} (99)

を最小とすることと等価になり、その解は、
\begin{displaymath}
\delta\mbox{\boldmath$\theta$} = - \frac{\theta_q}{[H^{-1}]_{qq}}H^{-1}\mbox{\boldmath$e$}_q
\end{displaymath} (100)

となる。ただし、 $[H^{-1}]_{qq}=\mbox{\boldmath$e$}_q^TH^{-1}\mbox{\boldmath$e$}_q$ は、 $H^{-1}$$q$$q$ 列の要素を表す。また、その時の2乗誤差の増加量は、
\begin{displaymath}
Q_q = \frac{1}{2} \frac{\theta_q^2}{[H^{-1}]_{qq}}
\end{displaymath} (101)

となる。これは、結合荷重 $\theta_q$$0$ とした時、それ以外の結合荷 重をうまく調整して達成できる2乗誤差の増加量の最小値である。従って、こ の値が小さくなるような、つまり、その結合荷重を削除しても2乗誤差の増加 の少ない結合荷重を削除すればよいことになる。

この方法では、Hessian 行列の逆行列を計算する必要があるが、Hessian 行列 を4.1.5節で示したフィッシャーの情報行列で代用して、計算を簡単 化することも可能である。

こうした方法以外には、線形回帰分析の変数選択法や主成分分析を用いて中間 層の不要なユニットを取り除いて小さなネットワークを構成する方法 [22]なども提案されている。



平成14年7月19日