私は過適合を制御するアプローチとしての正則化について学習しました。このアイデアを、バックプロパゲーションとマルチレイヤーパーセプトロン(MLP)の単純な実装に組み込んで、組み合わせます。
現在、過剰適合を回避するために、私は交差検証を行い、これまでのところ、検証セットで最高のスコアのネットワークを維持しています。これは問題なく機能しますが、正則化を追加すると、正則化アルゴリズムとパラメーターを正しく選択することで、ネットワークがより体系的に非適合モデルに収束するというメリットがあります。
(Coursera MLコースからの)更新期間について私が持っている式は、たとえば各ウェイトのバッチ更新として記述され、エラー伝播からトレーニングセット全体に適用されるすべてのデルタを合計した後lambda * current_weight
、結合の前に調整が追加されますバッチの最後でデルタが差し引かれlambda
ます。ここで、は正則化パラメーターです。
私のバックプロパゲーションの実装では、アイテムごとの重みの更新を使用しています。直感的には問題ないように見えますが、バッチアプローチをそのままコピーすることはできません。アイテムあたりのより小さな正則化用語も同様に機能しますか?
たとえばlambda * current_weight / N
、Nがトレーニングセットのサイズである場合-一見すると、これは妥当に見えます。でも、この件については何も見つかりませんでした。正規化がアイテムごとの更新ではうまく機能しないためか、別の名前や変更された式の下にさえあるためでしょうか。