4

我正在使用CNN進行迴歸任務。我使用Tensorflow,優化器是Adam。網絡似乎完全收斂,直到損失突然增加並伴隨驗證錯誤的一點。這裏有標籤的損失的情節和分離的權重器(Optimizer是對他們的總和運行) label loss weight loss損失突然增加與亞當優化器在Tensorflow

我用L2損失重正規化,也爲標籤。我在訓練數據上應用一些隨機性。我目前正在嘗試使用RSMProp來查看行爲是否改變,但至少需要8h才能重現錯誤。

我想了解這是如何發生的。希望您能夠幫助我。

+0

降低學習率? –

+0

一般來說,對於亞當來說,訓練時不需要降低學習率。學習速度太高會導致網絡收斂於更糟的損失值?在RMSProp運行後,我可以嘗試降低初始費率,但這意味着需要更多時間才能發生這種情況,我認爲... –

+0

等等,第一個情節是什麼?這是訓練損失的權利?但它正在下降?那麼問題在哪裏?你可以解釋嗎?如果你說的是綜合損失,然後以重量正則化爲主(這就是我的解釋),也許玩一些阿爾法這是設置兩個損失組件的規模。 – sascha

回答

4

我在過去幾個月的經驗如下: 亞當非常容易使用,因爲您不必非常使用初始學習速度,而且它幾乎總能正常工作。然而,在融合時,Adam並不是真正適應解決方案,而是在更高的迭代週期中搖擺。雖然SGD給出了幾乎完美的形狀損失圖,並且在更高的迭代中似乎收斂得更好。 但是,更改小部分設置需要調整SGD參數,否則最終會出現NaN ......對於體系結構和常規方法的實驗,我贊成Adam,但是如果您希望獲得所選擇的一種體系結構的最佳版本,則應該使用SGD並至少比較解決方案。

我還注意到一個很好的初始SGD設置(學習速度,體重衰減等)收斂速度與使用Adam一樣快,在我的設置leas。 希望這可以幫助你們中的一些人!

編輯:請注意,在我最初的問題中的效果是不是即使與亞當。看起來像我有一個錯誤,但我真的不記得那裏的問題。