深度学习中batch_size、epoch和iteration的含义
iteration:1個(gè)iteration等于使用batchsize個(gè)樣本訓(xùn)練一次;
epoch:1個(gè)epoch等于使用訓(xùn)練集中的全部樣本訓(xùn)練一次,通俗的講epoch的值就是整個(gè)數(shù)據(jù)集被輪幾次。
比如:
我這邊的數(shù)據(jù)量是4670,batch設(shè)置為6,那么一輪的iteration就是4670//6+1=779
而epoch是這樣:
參考文章1:深度學(xué)習(xí)中的batch、epoch、iteration的含義
參考文章2:深度學(xué)習(xí)中的epochs,batch_size,iterations理解
20210822:復(fù)習(xí)一下
mnist 數(shù)據(jù)集有張圖片作為訓(xùn)練數(shù)據(jù),張圖片作為測(cè)試數(shù)據(jù)。 假設(shè)現(xiàn)在選擇 Batch_Size = 對(duì)模型進(jìn)行訓(xùn)練。迭代次。每個(gè) Epoch 要訓(xùn)練的圖片數(shù)量:(訓(xùn)練集上的所有圖像) 訓(xùn)練集具有的 Batch 個(gè)數(shù): 每個(gè) Epoch 需要完成的 Batch 個(gè)數(shù): 每個(gè) Epoch 具有的 Iteration 個(gè)數(shù):(完成一個(gè)Batch訓(xùn)練,相當(dāng)于參數(shù)迭代一次) 每個(gè) Epoch 中發(fā)生模型權(quán)重更新的次數(shù): 訓(xùn)練 10 個(gè)Epoch后,模型權(quán)重更新的次數(shù): 不同Epoch的訓(xùn)練,其實(shí)用的是同一個(gè)訓(xùn)練集的數(shù)據(jù)。 第1個(gè)Epoch和第10個(gè)Epoch雖然用的都是訓(xùn)練集的圖片,但是對(duì)模型的權(quán)重更新值卻是完全不同的。 因?yàn)椴煌珽poch的模型處于代價(jià)函數(shù)空間上的不同位置,模型的訓(xùn)練代越靠后,越接近谷底,其代價(jià)越小。 總共完成30000次迭代,相當(dāng)于完成了個(gè)Epoch參考文章:深度學(xué)習(xí) | 三個(gè)概念:Epoch, Batch, Iteration
我的理解:
比如我訓(xùn)練集有100個(gè)數(shù)據(jù)樣本,我batch_size是20,我采用SGD隨機(jī)梯度下降,從中隨機(jī)抽20個(gè)樣本計(jì)算平均損失,然后用梯度下降法更新一次參數(shù),就相當(dāng)于做了一次iteration。然后我做5次iteration就相當(dāng)于做了一次epoch
不知道這樣理解對(duì)不對(duì),日后再回查下!
總結(jié)
以上是生活随笔為你收集整理的深度学习中batch_size、epoch和iteration的含义的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 深度学习中的batch理解(batch
- 下一篇: PyTorch 《动手学深度学习》学习笔