深度学习中Batch、Iteration、Epoch的概念与区别
生活随笔
收集整理的這篇文章主要介紹了
深度学习中Batch、Iteration、Epoch的概念与区别
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
在神經網絡訓練中,一般采用小批量梯度下降的方式。 Batch Epoch Iteration 就是其中的重要的概念。我們要理解懂得它們都是什么以及它們之間的區別。
1、Batch
每次迭代時使用的一批樣本就叫做一個Batch,樣本的數量稱為Batch Size。Batch大小是一個超參數,用于定義在更新內部模型參數之前要處理的樣本數。深度學習每一次參數的更新的Loss Function并不是由一個樣本得到的,而是由一個Batch的數據加權得到。
2、 Iteration
使用Batch Size個樣本訓練一次的過程叫做一個Iteration。
3、 Epoch
一個epoch就是使用訓練集中的全部樣本訓練一次。通俗的講,Epoch的值就是整個訓練數據集被反復使用幾次。
Epoch數是一個超參數,它定義了學習算法在整個訓練數據集中的工作次數。一個Epoch意味著訓練數據集中的每個樣本都有機會更新內部模型參數。Epoch由一個或多個Batch組成。
舉例:
我們有10000個樣本,batch_size=100,
意思就是我們總共有10個batch,每次使用這100個樣本數量訓練一次的過程,就是一個Iteration。
然后我們把這10000個樣本都訓練完了,就叫做一個Epoch。
總結
以上是生活随笔為你收集整理的深度学习中Batch、Iteration、Epoch的概念与区别的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 基于matlab的频率响应分析,基于MA
- 下一篇: Ubuntu18.04 安装Python