從粗到細(xì)
實(shí)踐中,一般先進(jìn)行初步范圍搜索逮京,然后根據(jù)好結(jié)果出現(xiàn)的地方卿堂,再縮小范圍進(jìn)行更精細(xì)的搜索。
- 先參考相關(guān)論文懒棉,以論文中給出的參數(shù)作為初始參數(shù)草描。
- 如果找不到參考,那么只能自己嘗試了策严∷肽剑可以先從比較重要,對(duì)實(shí)驗(yàn)結(jié)果影響比較大的參數(shù)開(kāi)始妻导,同時(shí)固定其他參數(shù)逛绵,得到一個(gè)差不多的結(jié)果以后,在這個(gè)結(jié)果的基礎(chǔ)上倔韭,再調(diào)其他參數(shù)暑脆。例如學(xué)習(xí)率一般就比正則值,學(xué)習(xí)率設(shè)置的不合適狐肢,不僅結(jié)果可能變差添吗,模型甚至?xí)o(wú)法收斂。
- 如果實(shí)在找不到一組參數(shù)份名,可以讓模型收斂碟联。那么就需要檢查妓美,是不是其他地方出了問(wèn)題,例如模型實(shí)現(xiàn)鲤孵,數(shù)據(jù)等等壶栋。
提高速度
調(diào)參只是為了尋找合適的參數(shù),而不是產(chǎn)出最終模型普监。一般在小數(shù)據(jù)集上合適的參數(shù)贵试,在大數(shù)據(jù)集上效果也不會(huì)太差。因此可以嘗試對(duì)數(shù)據(jù)進(jìn)行精簡(jiǎn)凯正,以提高速度毙玻,在有限的時(shí)間內(nèi)可以嘗試更多參數(shù)。
- 對(duì)訓(xùn)練數(shù)據(jù)進(jìn)行采樣廊散。例如原來(lái)100W條數(shù)據(jù)桑滩,先采樣成1W,進(jìn)行實(shí)驗(yàn)看看允睹。
- 減少訓(xùn)練類別运准。例如手寫(xiě)數(shù)字識(shí)別任務(wù),原來(lái)是10個(gè)類別缭受,那么我們可以先在2個(gè)類別上訓(xùn)練胁澳,看看結(jié)果如何。
超參數(shù)范圍
可以在對(duì)數(shù)尺度上進(jìn)行超參數(shù)搜索米者。比較典型的是學(xué)習(xí)率和正則化項(xiàng)韭畸,我們可以從諸如0.001 0.01 0.1 1 10,以10為階數(shù)進(jìn)行嘗試塘雳。因?yàn)樗麄儗?duì)訓(xùn)練的影響是相乘的效果陆盘。
經(jīng)驗(yàn)參數(shù)
-
learning rate: 1 0.1 0.01 0.001, 一般從1開(kāi)始嘗試普筹。很少見(jiàn)learning rate大于10的败明。學(xué)習(xí)率一般要隨著訓(xùn)練進(jìn)行衰減。衰減系數(shù)一般是0.5太防。 衰減時(shí)機(jī)妻顶,可以是驗(yàn)證集準(zhǔn)確率不再上升時(shí),或固定訓(xùn)練多少個(gè)周期以后蜒车。
不過(guò)更建議使用自適應(yīng)梯度的辦法讳嘱,例如adam,adadelta,rmsprop等,這些一般使用相關(guān)論文提供的默認(rèn)值即可酿愧,可以避免再費(fèi)勁調(diào)節(jié)學(xué)習(xí)率沥潭。
網(wǎng)絡(luò)層數(shù): 先從1層開(kāi)始。
每層結(jié)點(diǎn)數(shù): 16 32 128嬉挡,超過(guò)1000的情況比較少見(jiàn)钝鸽。超過(guò)1W的從來(lái)沒(méi)有見(jiàn)過(guò)汇恤。
batch size: 128上下開(kāi)始。batch size值增加拔恰,的確能提高訓(xùn)練速度因谎。但是有可能收斂結(jié)果變差。如果顯存大小允許颜懊,可以考慮從一個(gè)比較大的值開(kāi)始嘗試财岔。因?yàn)閎atch size太大,一般不會(huì)對(duì)結(jié)果有太大的影響河爹,而batch size太小的話匠璧,結(jié)果有可能很差。
clip c(梯度裁剪): 限制最大梯度,其實(shí)是value = sqrt(w12+w22….),如果value超過(guò)了閾值昌抠,就算一個(gè)衰減系系數(shù),讓value的值等于閾值: 5,10,15
dropout: 0.5
-
正負(fù)樣本比例: 這個(gè)是非常忽視患朱,但是在很多分類問(wèn)題上,又非常重要的參數(shù)炊苫。往往習(xí)慣使用訓(xùn)練數(shù)據(jù)中默認(rèn)的正負(fù)類別比例裁厅,當(dāng)訓(xùn)練數(shù)據(jù)非常不平衡的時(shí)候,模型很有可能會(huì)偏向數(shù)目較大的類別侨艾,從而影響最終訓(xùn)練結(jié)果执虹。除了嘗試訓(xùn)練數(shù)據(jù)默認(rèn)的正負(fù)類別比例之外,可以對(duì)數(shù)目較小的樣本做過(guò)采樣唠梨,例如進(jìn)行復(fù)制袋励。提高他們的比例,看看效果如何当叭,這個(gè)對(duì)多分類問(wèn)題同樣適用茬故。
在使用mini-batch方法進(jìn)行訓(xùn)練的時(shí)候,盡量讓一個(gè)batch內(nèi)蚁鳖,各類別的比例平衡磺芭。
自動(dòng)調(diào)參
人工一直盯著實(shí)驗(yàn),畢竟太累醉箕。自動(dòng)調(diào)參當(dāng)前也有不少研究钾腺。
- Gird Search. 這個(gè)是最常見(jiàn)的。具體說(shuō)讥裤,就是每種參數(shù)確定好幾個(gè)要嘗試的值放棒,然后像一個(gè)網(wǎng)格一樣,把所有參數(shù)值的組合遍歷一下己英。優(yōu)點(diǎn)是實(shí)現(xiàn)簡(jiǎn)單暴力间螟,如果能全部遍歷的話,結(jié)果比較可靠。缺點(diǎn)是太費(fèi)時(shí)間了厢破,特別像神經(jīng)網(wǎng)絡(luò)邮府,一般嘗試不了太多的參數(shù)組合。
總結(jié)
- 合理性檢查溉奕,確定模型褂傀,數(shù)據(jù)和其他地方?jīng)]有問(wèn)題。
- 訓(xùn)練時(shí)跟蹤損失函數(shù)值加勤,訓(xùn)練集和驗(yàn)證集準(zhǔn)確率仙辟。
- 使用Random Search來(lái)搜索最優(yōu)超參數(shù),分階段從粗(較大超參數(shù)范圍訓(xùn)練較少周期)到細(xì)(較小超參數(shù)范圍訓(xùn)練較長(zhǎng)周期)進(jìn)行搜索鳄梅。