由于BatchNorm层需要大于一个图像输入,当最后一个批数据恰好只剩一个图像就会报此错误,解决方案:

if num_of_imgs > 1:
‘’‘continue training’‘’
认为设置长度小于2丢掉就好了

补充:

2.BN带来的好处。

(1) 减轻了对参数初始化的依赖,这是利于调参的朋友们的。

(2) 训练更快,可以使用更高的学习率。

(3) BN一定程度上增加了泛化能力,dropout等技术可以去掉。

3.BN的缺陷

从上面可以看出,batch normalization依赖于batch的大小,当batch值很小时,计算的均值和方差不稳定。

Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐