深度學習當中的三個概念:Epoch, Batch, Iteration
名詞解釋:
Epoch(時期):
當一個完整的資料集通過了神經網路一次並且返回了一次,這個過程稱為一次>epoch。(也就是說,所有訓練樣本在神經網路中都 進行了一次正向傳播 和一次反向傳播 )
再通俗一點,一個Epoch就是將所有訓練樣本訓練一次的過程。
然而,當一個Epoch的樣本(也就是所有的訓練樣本)數量可能太過龐大(對於計算機而言),就需要把它分成多個小塊,也就是就是分成多個Batch 來進行訓練。**
Batch(批 / 一批樣本):
將整個訓練樣本分成若干個Batch。
Batch_Size(批大小):
每批樣本的大小。
Iteration(一次迭代):
訓練一個Batch就是一次Iteration(這個概念跟程式語言中的迭代器相似)。
問:為什麼要使用多於一個epoch?
在神經網路中傳遞完整的資料集一次是不夠的,而且我們需要將完整的資料集在同樣的神經網路中傳遞多次。但請記住,我們使用的是有限的資料集,並且我們使用一個迭代過程即梯度下降來優化學習過程。如下圖所示。因此僅僅更新一次或者說使用一個epoch是不夠的。
隨著epoch數量增加,神經網路中的權重的更新次數也在增加,曲線從欠擬合變得過擬合。
那麼,問題來了,幾個epoch才是合適的呢?
不幸的是,這個問題並沒有正確的答案。對於不同的資料集,答案是不一樣的。但是資料的多樣性會影響合適的epoch的數量。比如,只有黑色的貓的資料集,以及有各種顏色的貓的資料集。
實際上,梯度下降的幾種方式的根本區別就在於上面公式中的 Batch_Size 不同。
相關文章
- 神經網路訓練的三個基本概念Epoch, Batch, Iteration神經網路BAT
- batch、epoch、iteration的區別BAT
- 關於深度學習上的一些術語: Epoch, Batch Size, Iteration深度學習BAT
- 神經網路 深度學習 專業術語解釋(Step, Batch Size, Iteration,Epoch)神經網路深度學習BAT
- 神經網路常見引數解釋:epoch、batch、batch size、step、iteration神經網路BAT
- 深度學習中 Batch Normalization深度學習BATORM
- 深度學習中的epochs,batch_size,iterations詳解---對這三個概念說的比較清楚深度學習BAT
- 深度學習概念深度學習
- 【深度學習筆記】Batch Normalization (BN)深度學習筆記BATORM
- 深度學習(二十九)Batch Normalization 學習筆記深度學習BATORM筆記
- 人人都能用的深度學習:當前三大自動化深度學習平臺簡介深度學習
- [譯] 深度學習能力的三個等級深度學習
- 深度學習入門必須理解這25個概念深度學習
- 卷積操作的概念及其在深度學習中的應用卷積深度學習
- 機器學習和深度學習概念入門機器學習深度學習
- 深度學習基本概念簡介深度學習
- 深度學習中的Dropout深度學習
- 深度學習中tensorflow框架的學習深度學習框架
- 深度學習——學習目錄——學習中……深度學習
- 深度學習中的Normalization模型深度學習ORM模型
- 【乾貨】機器學習和深度學習概念入門機器學習深度學習
- “深度學習三巨頭”來了倆,Hinton、LeCun預言深度學習的未來深度學習LeCun
- 當深度學習遇見自動文字摘要深度學習
- 當知識圖譜“遇見”深度學習深度學習
- 學習Java的30個基本概念Java
- 學習筆記:深度學習中的正則化筆記深度學習
- batch normalization學習理解筆記BATORM筆記
- 小樣本的類人概念學習與大資料的深度強化學習大資料強化學習
- C#中的深度學習(三):理解神經網路結構C#深度學習神經網路
- 用三張圖理解深度學習的工作原理深度學習
- 深度學習(三)之LSTM寫詩深度學習
- 學習J2SE過程中的30個基本概念
- 【深度學習】深度解讀:深度學習在IoT大資料和流分析中的應用深度學習大資料
- 深度學習在OC中的應用深度學習
- 深度學習中的優化方法(二)深度學習優化
- 深度學習中的優化方法(一)深度學習優化
- 淺談深度學習中的機率深度學習
- 深度學習並非萬能:你需要避免這三個坑深度學習