1. 程式人生 > >深度學習中的 epoch iteration batch-size

深度學習中的 epoch iteration batch-size

(1)iteration:表示1次迭代(也叫training step),每次迭代更新1次網路結構的引數;

(2)batch-size:1次迭代所使用的樣本量;

(3)epoch:1個epoch表示過了1遍訓練集中的所有樣本。

值得注意的是,在深度學習領域中,常用帶mini-batch的隨機梯度下降演算法(Stochastic Gradient Descent, SGD)訓練深層結構,它有一個好處就是並不需要遍歷全部的樣本,當資料量非常大時十分有效。此時,可根據實際問題來定義epoch,例如定義10000次迭代為1個epoch,若每次迭代的batch-size設為256,那麼1個epoch相當於過了2560000個訓練樣本。

 

比如你有1000個數據,這個資料集可能太大了,全部跑一次再調參很慢,於是可以分成100個為一個數據集,這樣有10份。batch_size=100這100個數據組成的資料集叫batch每跑完一個batch都要更新引數,這個過程叫一個iterationepoch指的就是跑完這10個batch(10個iteration)的這個過程

(1)batchsize:批大小。在深度學習中,一般採用SGD訓練,即每次訓練在訓練集中取batchsize個樣本訓練;

(2)iteration:1個iteration等於使用batchsize個樣本訓練一次;

(3)epoch:1個epoch等於使用訓練集中的全部樣本訓練一次;

舉個例子,訓練集有1000個樣本,batchsize=10,那麼:

訓練完整個樣本集需要:

100次iteration,1次epoch。
--------------------- 
作者:小鹹魚_ 
來源:CSDN 
原文:https://blog.csdn.net/sinat_30071459/article/details/50721565 
版權宣告:本文為博主原創文章,轉載請附上博文連結!