Kera的val_acc 99.9%,但对多标签分类的预测很差

时间:2019-05-14 11:19:51

标签: tensorflow keras

已更新,以包含更多信息和上下文。

我之前发现了与此类似的其他问题,但是解决方案似乎对我没有帮助。我有大约1000个字体字母标签,而且我正在使用S型激活来返回每个标签是特定字体的概率。字体是灰度的,每个类在白色背景上都有大约60张不同大小的图像。

我正在使用回调来防止过度拟合,并且它运行了3个纪元,并通过3个纪元迅速达到了99.99%的val_acc和acc,结果在第一个纪元(500步)中是这样的:

= []

在3个时间段结束时:

24576/44371 [===============>..............] - ETA: 4480s - loss: 0.0185 - acc: 0.9982]

生成的模型的模型预测值在最接近的位置上没有,最接近的是看起来完全不同的字体字母的10%匹配。 有什么不对劲,有人可以帮我吗?这是模型代码:

44370/44370 [==============================] - 9634s - loss: 0.0177 - acc: 0.9989 - val_loss: 0.0177 - val_acc: 0.9989

我的配置选项是:

  • 500个培训步骤(也尝试过2000)
  • 0.0005学习率(也尝试0.1)
  • 批次大小32
  • 我尝试过的5到20个时期,但在2点就退出以停止过度拟合(耐心2)

有人有什么建议吗?

1 个答案:

答案 0 :(得分:1)

  

〜1000个字体字母的标签,每个类别中大约有60张图像

那么每个班级只有60张图片吗?

有几点要注意:如果使用ImageDataGenerator,则可以通过旋转,剪切,缩放等方式增加输入量。这会增加网络的输入范围。而且,您可以预留 @override Widget build(BuildContext context) { return new MaterialApp( debugShowCheckedModeBanner: false, title: "Gigforce", theme: ThemeData( primarySwatch: Colors.green, ), 来避免训练,仅用于验证。