ゼロから学ぶDeepLearning 第六章 過学習編

画像

正則化

過学習を抑えるために必要。
DeepLearningは、汎用性をもたせるのが第一なので。

過重減衰

Weight Decayという。

DeepLearningのDNNモデルでは、重みパラメータが大きくなりすぎると訓練データに過学習しすぎて、他のデータでの精度が悪くなってしまう。

よって、損失関数に重さの2乗ノルムを追加することで、重みが大きくなりすぎると、損失関数(Error)が大きくなり悪いですよ!!ということを示すようにする。

微分すると${\pi}W$なので、それを逆伝播の際にすべての重みに足し込めばいい。

Dropout

学習の際にいくつかのニューロンをある確率で消失させていく。

これまでの研究でモデルを複数作ってそれらの平均を取ると精度が上がるというデータが出ている。
よって、ニューロンを削除しながら学習(実際に削除するわけではなく、np.randomでmaskを取るだけだが)することで、複数のモデルがあるかのように見せて汎用性を出す。

ハイパーパラメータ

ハイパーパラメータは、人が指定しなくてはいけないパラメータのことを指す。
これをうまく設定しないと、学習の精度が悪かったり時間がかかってしまう。

ハイパーパラメータを正しく設定するには、10のべき乗で設定して、いろんなパターン試してよいのを使う。
ただし、エポックは小さく設定して早めに切り捨てよう