NLP-epoch和batch

本文探讨了在自然语言处理(NLP)中,epoch和batch的概念。epoch是指完整遍历一次数据集,而batch是指每次训练时处理的数据子集大小。batch_size的选择影响模型的训练过程,过大可能导致更快收敛但易陷入局部最优,过小则可能造成训练不稳定性。通过generator实现的batch样本生成器有助于理解这些概念。

epoch和batch到底是个什么鬼?


背景说明

先上个简单的代码记录一下我此刻懵懵的状态:
这里写图片描述

问个问题:
从图中可以看到我现在正在看一个关于CNN文本分类的代码,github上有很多。该代码是data_helper.py 文件中的一个函数,该函数是一个batch样本生成器,这里面就涉及到了神经网络里经常用到的batch_size和epoch,它们的含义究竟是什么呢?
一句话回答:
我有1000个数据,batch_size设置为500,那么我需要2次iterations,完成1次epoch。(来源


batch

1.定义

Batch:批处理,顾名思义就是对某对象进行批量的处理。——百度百科

训练神经网络时,在数据集很大的情况下,不能一次性载入全部的数据进行训练,电脑会支撑不住,其次全样本训练对于非凸损失函数会出现局部最优,所以要将大的数据集分割进行分批处理。
batch_size就是每批处理的样本的个数。

备注:</

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值