Neural-Networks

對於更深的神經網絡架構,最優超參數仍然是最優的嗎?

  • December 4, 2019

我使用交叉驗證和貝葉斯優化找到了一組最佳超參數(例如梯度下降的學習率)。在搜索最佳超參數時,我的神經網絡架構保持不變(相同的層數、相同的節點數等)。

我選擇了具有 2 個隱藏層的相對較小的架構,以便模型能夠更快地訓練和評估。

現在我已經找到了最優的超參數,我想知道如果我增加隱藏層和每層節點的數量,超參數仍然是最優的嗎?其他一切都將保持不變(相同的訓練數據和驗證數據)。

現在讓網絡更深更寬的原因是,這將作為最終模型,我將允許訓練更多的 epoch 以獲得盡可能高的準確度;我不介意現在訓練 1 個模型是否需要幾天時間,而在優化超參數時,我需要在幾個小時內訓練一個模型。

不幸的是,它不是那樣工作的。超參數以難以預測的方式協作。例如,說明這一點有點極端。

您沒有隱藏層,換句話說,您正在擬合邏輯回歸。邏輯回歸通常不會真正過擬合。因此,您使用了相對較大的學習率和大量的 epoch,並發現效果很好,至少不會比其他超參數配置差。然後增加層數。你得到一個複雜的模型,現在突然容易過度擬合。然後大的學習率和之前運行良好的許多 epoch 不再是最優的。

小事,我會說隱藏節點的數量,或者更一般地說,神經網絡的整個架構,也是超參數的一部分。所以我讀到的問題更像是,如果我增加網絡的複雜性,相同的學習率是否會是最佳的。

引用自:https://stats.stackexchange.com/questions/439274

comments powered by Disqus