原因: BN需要多个数据进行计算平均值等,只有一个数据输入时会产生该错误
解决办法:
1、考虑是否是训练时最后一个batch刚好只有一个数据,可修改batch size 或者设置DataLoader中drop_last设置为True丢弃最后一个batch的数据
2、考虑验证集测试时是否设置model.eval() ,该函数可以保证测试时不计算新的bn层参数

Logo

鸿蒙生态一站式服务平台。

更多推荐