验证时Batch Size要设置成1?

验证模型要将Batch Size设置为1?

之前在讲Fasrer-RCNN的时候,我们并没有限制输入网络图片的高宽,只是限制它在某一个输入范围之内。在训练的时候,往往需要将多张图片组成一个batch输入网络进行训练,对于不同尺寸的图片,我们一般是无法组成一个batch的。如果要将多张图片组成一个batch,这多张图片必须保证它们的shapes是一致的。那对于常用的RGB图片,只需要将某张图片的高宽想办法变成一致就可以了,最简单的方式就是执行一个padding的操作。比如说这里有两张图片,我们就去计算一下这两张图片的最大高度,以及最大宽度,然后我们分别将这两张图片padding到刚刚统计到的最大高度和最大宽度中去,这样就能保证每张图片的shapes是一致的。接下来就将它们组成一个batch输入网络。

在验证的时候我们同样可以采用相同的策略去做,但是需要考虑Padding对预测结果可能会产生影响。一般情况,我们对图片进行padding,或多或少会对预测结果产生影响,而影响的大小会根据不同的任务,不同的网络,不同的数据集,甚至网络收敛的程度都有关系。对于鲁棒性较好的网络,可能对它进行padding,影响不是很大,可能也就0.1个点、0.2个点,但是这0.1个点和0.2个点要去对齐原论文的精度都会产生一定的影响。这里呢我们试讲batch_size设置为2的情况,那如果我们将batch_size设置为3,我们会发现对每张图片的padding情况又会发生一定的情况。

 当padding发生变化之后,得到的最终预测结果又会产生不同的影响。所以说将batch_size设置为不同的值,得到的结果都会有一些差异。那么方便对齐原论文的结果,最简单的方式就是将batch_size设置为1。

总结

若输入模型数据shape固定,验证时对Batch Size无限制;

若输入模型数据shape不固定,验证时将Batch Size设置为1。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值