在深度神經(jīng)網(wǎng)絡中,超參數(shù)的調(diào)整是一項必備技能,通過觀察在訓練過程中的監(jiān)測指標如損失loss和準確率來判斷當前模型處于什么樣的訓練狀態(tài),及時調(diào)整超參數(shù)以更科學地訓練模型能夠提高資源利用率。下面將分別介紹并總結(jié)不同超參數(shù)的調(diào)整規(guī)則。
(1)學習率
學習率(learning rate或作lr)是指在優(yōu)化算法中更新網(wǎng)絡權重的幅度大小。學習率可以是恒定的、逐漸降低的,基于動量的或者是自適應的。不同的優(yōu)化算法決定不同的學習率。當學習率過大則可能導致模型不收斂,損失loss不斷上下震蕩;學習率過小則導致模型收斂速度偏慢,需要更長的時間訓練。通常lr取值為[0.01,0.001,0.0001]
(2)批次大小batch_size
批次大小是每一次訓練神經(jīng)網(wǎng)絡送入模型的樣本數(shù),在卷積神經(jīng)網(wǎng)絡中,大批次通??墒咕W(wǎng)絡更快收斂,但由于內(nèi)存資源的限制,批次過大可能會導致內(nèi)存不夠用或程序內(nèi)核崩潰。bath_size通常取值為[16,32,64,128]
(3)優(yōu)化器optimizer
目前Adam是快速收斂且常被使用的優(yōu)化器。隨機梯度下降(SGD)雖然收斂偏慢,但是加入動量Momentum可加快收斂,同時帶動量的隨機梯度下降算法有更好的最優(yōu)解,即模型收斂后會有更高的準確性。通常若追求速度則用Adam更多。
(4)迭代次數(shù)
迭代次數(shù)是指整個訓練集輸入到神經(jīng)網(wǎng)絡進行訓練的次數(shù),當測試錯誤率和訓練錯誤率相差較小時,可認為當前迭代次數(shù)合適;當測試錯誤率先變小后變大時則說明迭代次數(shù)過大了,需要減小迭代次數(shù),否則容易出現(xiàn)過擬合。
(5)激活函數(shù)
在神經(jīng)網(wǎng)絡中,激活函數(shù)不是真的去激活什么,而是用激活函數(shù)給神經(jīng)網(wǎng)絡加入一些非線性因素,使得網(wǎng)絡可以更好地解決較為復雜的問題。比如有些問題是線性可分的,而現(xiàn)實場景中更多問題不是線性可分的,若不使用激活函數(shù)則難以擬合非線性問題,測試時會有低準確率。所以激活函數(shù)主要是非線性的,如sigmoid、tanh、relu。sigmoid函數(shù)通常用于二分類,但要防止梯度消失,故適合淺層神經(jīng)網(wǎng)絡且需要配備較小的初始化權重,tanh函數(shù)具有中心對稱性,適合于有對稱性的二分類。在深度學習中,relu是使用最多的激活函數(shù),簡單又避免了梯度消失。
-
神經(jīng)網(wǎng)絡
+關注
關注
42文章
4838瀏覽量
107804
發(fā)布評論請先 登錄
面向嵌入式部署的神經(jīng)網(wǎng)絡優(yōu)化:模型壓縮深度解析
神經(jīng)網(wǎng)絡的初步認識
自動駕駛中常提的卷積神經(jīng)網(wǎng)絡是個啥?
CNN卷積神經(jīng)網(wǎng)絡設計原理及在MCU200T上仿真測試
NMSIS神經(jīng)網(wǎng)絡庫使用介紹
構建CNN網(wǎng)絡模型并優(yōu)化的一般化建議
在Ubuntu20.04系統(tǒng)中訓練神經(jīng)網(wǎng)絡模型的一些經(jīng)驗
CICC2033神經(jīng)網(wǎng)絡部署相關操作
液態(tài)神經(jīng)網(wǎng)絡(LNN):時間連續(xù)性與動態(tài)適應性的神經(jīng)網(wǎng)絡
神經(jīng)網(wǎng)絡的并行計算與加速技術
如何在機器視覺中部署深度學習神經(jīng)網(wǎng)絡
無刷電機小波神經(jīng)網(wǎng)絡轉(zhuǎn)子位置檢測方法的研究
神經(jīng)網(wǎng)絡專家系統(tǒng)在電機故障診斷中的應用
神經(jīng)網(wǎng)絡RAS在異步電機轉(zhuǎn)速估計中的仿真研究
基于FPGA搭建神經(jīng)網(wǎng)絡的步驟解析
深度神經(jīng)網(wǎng)絡不同超參數(shù)調(diào)整規(guī)則總結(jié)
評論