今天研究了一下机器学习,发现里面出现了一个参数叫
batch_size
。那么什么是
batch_size
呢?
batch_size
:表示单次传递给程序用以训练的参数个数。比如我们的训练集有
1000
个数据。这是如果我们设置
batch_size=100
,那么程序首先会用数据集中的前
100
个参数,即第
1-100
个数据来训练模型。当训练完成后更新权重,再使用第
101-200
的个数据训练,直至第十次使用完训练集中的
1000
个数据后停止。
那么为什么要设置
batch_size
呢?
优势:
- 可以减少内存的使用,因为我们每次只取
个数据,因此训练时所使用的内存量会比较小。这对于我们的电脑内存不能满足一次性训练所有数据时十分有效。可以理解为训练数据集的分块训练。100
- 提高训练的速度,因为每次完成训练后我们都会更新我们的权重值使其更趋向于精确值。所以完成训练的速度较快。