“val_acc”根本没有变化

时间:2017-09-14 20:24:37

标签: python image-processing deep-learning keras classification

我在Python上使用Keras创建了一个用于图像分类的CNN。我有一个相当小的数据集(约3000张图片),主要目标是简单的二进制分类。

问题是在培训期间“acc”增长,而“val_acc”从一开始就没有改变并保持+ - 0.6。

我搜索了互联网,几乎所有人都说主要的麻烦是我的数据集很小,即网络过度拟合。 但我试图让它变得尽可能简单(现在它是2个Conv层,Flatten和1个隐藏的FC层),我添加了批量规范化,没有任何帮助!

也许有些东西我不明白,这就是为什么它不起作用?我这样做的时间越长,我就越困惑“acc”和“val_acc”之间的区别是什么?我将非常感谢任何帮助!

P.S。我尝试使用Keras blog tutorial中关于“Cats vs. Dogs”分类的代码,但这没有帮助,问题保持不变:(

1 个答案:

答案 0 :(得分:0)

我想在很多情况下val_acc根本不会改变,

就我而言,我下载了ResNet 50,并将某些层更改为trainable = False。导致acc上升时,常数val_acc为0.5。

修复是在更改图层的可训练属性后运行model.compile(...)。