我已经训练了50个时期的图像分类器CNN,并且在验证数据上准确率达到了65%,准确度达到64%。
我的问题是,在单个样本(一个图像)上使用model.predict
时,网络就像没有经过训练一样。
我为model.predict提供了数千张图片,一次一张,平均分类准确率仅为46%。
我尝试使用model.save_model
并分别保存json模型和权重,但没有区别。
我唯一想到的原因是我的模型中的BatchNorm图层会影响数据的一致性。
我的模型包含六个CNN层,三个最大池和一个最终完全连接层,每层之间有一个BatchNormalisation层(总共七个)。我在训练期间使用了128的批量大小,但当然预测样本的批量大小是1.我对BatchNorm知之甚少,但我想知道是否在训练和测试中发生了某种规范化数据但不是预测?