batch_size的作用

batch_size

模型训练过程:

模型初始化 --> 数据样本输入模型 --> 模型输出 --> 模型调整
epoches: 总体样本训练的循环次数
batch_size: 是在一个epoch下分批次进行训练,每次训练的样本量大小(每进行batch_size样本输入输出后,进行模型参数修正)

BP神经网络为例:

假设 样本数量500,输入维度是10,输出维度是2 ;
epoches = 100 训练100次 ;
batch_size = 1
for i in epoches:
      for 1 in 500: //进行500次模型调整
            1个样本输入,进行模型调整(2维输出,均方误差和进行梯度下降)
batch_size = 5
for i in epoches:
      for 5 in 500: //进行100次模型调整
            5个样本输入,进行模型调整(5*2维输出,均方误差和进行梯度下降)

结论

  • batch_size越小,模型调整越频繁,但震荡严重,难以收敛,耗时较长
  • batch_size越大,模型调整较少,收敛较快,但容易造成局部收敛,且内存一次性消耗较大
  • 合适的batch_size,可以有效提高模型精度、全局收敛。
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容