0

私の研究に自家製のZFNet(prototxt)を実装しました。定義を20k回繰り返した後、テスト精度は約0.001(すなわち1/1000)、テスト損失は約6.9、トレーニング損失は約6.9であり、ネットが1kクラス間で推測ゲームを続けるように見える。私は完全な定義を徹底的にチェックして、新しいトレーニングを開始するためにいくつかのハイパーパラメータを変更しようとしましたが、役に立たなかったので、同じ結果が画面に表示されました....ILSVRC12でZFNetを学ぶとき、テスト精度が向上しない

誰でも私にいくつかの光?前もって感謝します!


prototxtのハイパーパラメータは、論文[1]から得られます。この論文の図3のように、レイヤーの入力と出力はすべて正しいと思われます。

微調整は、#33で説明したように訓練および試験の両方のための入力の

  • crop -sは、225代わりの224に設定されています。

  • conv3,conv4およびconv5の1ピクセルゼロパディングで、ブロブのサイズを一致させる[1]。

  • [1]のconstantからgaussianまでstd: 0.01で変更されたすべての学習可能レイヤーのフィラータイプ。

  • weight_decay:PR#33の@sergeykによって提案されているように0.0005から0.00025に変更。

[1] Zeiler、M.およびファーガス、R.可視化および畳み込みネットワークの理解、ECCV 2014

と貧しい一部を...、私はhere

+0

フォーマットに感謝します。 @シャイ – stoneyang

答えて

1

Aそれを貼り付けいくつかの提案:gaussからxavier

  1. 変更の初期化。
  2. "ReLU"の代わりに"PReLU"アシフトを使用してください。あなたのネットが一旦収束すると、あなたはそれらを取り除くために微調整することができます。
  3. base_lrを1桁(または2桁)減らしてみてください。
+1

あなたの提案をありがとう。新しい実験を開始するためにパラメータを変更し、フィードバックを追加します。 @Shai – stoneyang

+1

'0.01_'から' 0.001'に 'base_lr'を落とすだけで、'精度 'は約122k回の反復の後に' 0.47'より上に改善されました。私は、700k回の反復の後で最終結果を報告するために戻ってきます。 @Shai – stoneyang

+1

'base_lr'を' 0.001'から '0.005'に、つまり初期設定の' base_lr'のちょうど半分にしました。テスト精度は '' 700k'の繰り返しの後で '' 60.x% ''です。 CaffenetやAlexNetよりも3ポイント高い。あなたの提案の1つは私の日を節約し、残りは一般的な訓練の仕事に役立つかもしれません。 @Shai – stoneyang

関連する問題