(1)epoch
:1個epoch等於使用訓練集中的全部樣本訓練一次。
(2)iteration
:表示1次迭代,每次迭代更新1次網絡結構的參數,1個iteration等於使用batchsize個樣本訓練一次;
(3)batch_size
:批大小,即1次迭代所使用的樣本量。在深度學習中,一般採用SGD訓練,即每次訓練在訓練集中取batchsize個樣本訓練;
在深度學習領域中,常用隨機梯度下降算法(Stochastic Gradient Descent, SGD
)訓練深層結構,它有一個好處就是並不需要遍歷全部的樣本,當數據量非常大時十分有效。此時,可根據實際問題來定義epoch。舉個栗子,定義10000次迭代爲1個epoch,若每次迭代的batch_size設爲256,那麼1個epoch相當於過了2560000個訓練樣本。再舉個栗子,訓練集有1000個樣本,batchsize=10,那麼訓練完整個樣本集需要100次iteration,1次epoch。