4

バックプロパゲーションANNのオンライン実装では、停止基準をどのように決定しますか?

私がこれを行ってきた方法(これは間違いだと思います)は、各出力ノードのエラーを平均してから、このエラーを各エポックで平均することです。

これは間違った方法ですか?オンライン実装を停止する標準的な方法はありますか?

4

1 に答える 1

6

トレーニングセットとは別の検証セットのエラー(たとえば、二乗平均平方根エラー)を常に考慮する必要があります。トレーニングが長すぎると、ニューラルネットワークが過剰適合し始めます。これは、トレーニングセットのエラーが最小になるか、0になることを意味しますが、一般的なデータのエラーはさらに悪化します。

最高の一般化パフォーマンスをもたらすモデルパラメーターを作成するには、検証セットのエラーが新しい最小値になるたびに、モデルパラメーターをコピーして保存する必要があります。パフォーマンスに問題がある場合は、Nステップごとにのみこのチェックを実行できます。

オンライン学習のセットアップでは、単一のトレーニングサンプルまたは少数のトレーニングサンプルのミニバッチを使用してトレーニングします。合計データをカバーするすべてのサンプル/ミニバッチの連続トレーニングは、1つのトレーニングエポックと見なすことができます。

いわゆる早期打ち切り基準を定義するいくつかの可能性があります。たとえば、完全なエポックごとに、検証セットでこれまでで最高のRMSエラーを検討できます。Mエポックに新しい最適値がない場合は、すぐに停止します。問題の複雑さに応じて、十分に高いMを選択する必要があります。かなり小さいMから始めることもでき、新しい最適値を取得するたびに、Mをそれに到達するために必要なエポック数に設定します。迅速に収束することがより重要であるか、可能な限り徹底することがより重要であるかによって異なります。

学習アルゴリズムは山登り法であるため、検証エラーやトレーニングエラーの両方が一時的に大きくなる状況が常に発生します。これは、パフォーマンスが低下するエラーサーフェス上の領域をトラバースしますが、新しい、より適切な最適値に到達するにはパスする必要があることを意味します。後続の2つのステップ間で検証またはトレーニングのエラーが悪化するとすぐに停止すると、最適ではないソリューションになります。

于 2013-03-25T22:05:20.260 に答える