超參數(shù),一般是在搭建神經(jīng)網(wǎng)絡(luò)前挤渐,聲明的參數(shù),超參數(shù)不能直接從所搭建模型的訓(xùn)練過(guò)程中學(xué)習(xí)豆赏,需要預(yù)先定義挣菲。一般包括LR,BATCH(或稱(chēng)之為BATCH SIZE),EPOCH,ITERATIONS(或稱(chēng)之為BATCH NUMBER)
LR 學(xué)習(xí)率掷邦,指的是神經(jīng)網(wǎng)絡(luò)在反向傳播所用到的學(xué)習(xí)率白胀,學(xué)習(xí)率設(shè)置過(guò)大,會(huì)導(dǎo)致loss震蕩抚岗,學(xué)習(xí)難以收斂或杠;設(shè)置過(guò)小,那么訓(xùn)練的過(guò)程將大大增加宣蔚。學(xué)習(xí)率的調(diào)整是非常困難的向抢,有的優(yōu)化器(比如自己寫(xiě)的)具有自動(dòng)調(diào)節(jié)學(xué)習(xí)率的功能,但是一般初始學(xué)習(xí)率還是需要通過(guò)超參數(shù)聲明的胚委。
BATCH(BATCH SIZE)指的是每次送入模型訓(xùn)練的一批數(shù)據(jù)的樣本數(shù)挟鸠。比如有100個(gè)數(shù)據(jù),每次從100個(gè)數(shù)據(jù)中亩冬,隨機(jī)抽取10個(gè)數(shù)據(jù)進(jìn)行訓(xùn)練艘希。BATCH的大小影響模型的優(yōu)化程度和速度。同時(shí)其直接影響到GPU內(nèi)存的使用情況硅急,假如你GPU內(nèi)存不大覆享,該數(shù)值最好設(shè)置小一點(diǎn)。良好的BATCH使得單個(gè)epoch的迭代次數(shù)減少了营袜,參數(shù)的調(diào)整也慢了撒顿,假如要達(dá)到相同的識(shí)別精度,需要更多的epoch荚板。
EPOCH:一個(gè)epoch指代所有的數(shù)據(jù)送入網(wǎng)絡(luò)中完成一次前向計(jì)算及反向傳播的過(guò)程凤壁。EPOCH指的是有多少個(gè)epoch吩屹。當(dāng)計(jì)算量很大時(shí),將一個(gè)epoch分為多個(gè)batch拧抖。隨著epoch數(shù)量的增加祟峦,神經(jīng)網(wǎng)絡(luò)中權(quán)重更新迭代的次數(shù)增多,曲線(xiàn)從最開(kāi)始的欠擬合狀態(tài)徙鱼,慢慢進(jìn)入優(yōu)化擬合狀態(tài),最終進(jìn)入過(guò)擬合针姿。epoch大小與數(shù)據(jù)集的多樣化程度有關(guān)袱吆,多樣化程度越強(qiáng),epoch應(yīng)該越大距淫。
Iterations:完成一次epoch所需的batch個(gè)數(shù)绞绒。也叫batch numbers。