摆脱类似DeepMNIST的网络中的softmax饱和度,以便在TensorFlow中进行彩色图像分类



我有一个用于分类的数据集,它由大小为8000x(32x32x3图像(的训练和大小为2000x(相同尺寸的图像(的测试组成。
我正在做一项非常简单的任务,即区分车辆和背景。我正在使用cross_entropy作为成本函数。

我正在使用的网络几乎与DeepMNIST中使用的网络相同,除了第一个过滤器的大小为3x......而不是1x......因为它是彩色图像,输出的大小为2,因为只有两个类:车辆或非车辆。看到这个相对直接的任务的结果,我问自己几个审讯:

-首先,如果我不使用足够大的批量大小(>200(,我几乎每次都会卡在两组的准确率为 62%(在局部最优中(,这不足以满足我的需求

-其次,每当我使用具有正确批量大小和学习率的正确优化器 Adam 时,我都会上升到 92%,但是输出总是非常好,例如 [0.999999999 0.000000000001]。

这不应该发生,因为任务很困难。
因此,当我完全卷积以创建热图时,由于饱和,我几乎到处都得到了 1.000001。
我做错了什么?你认为美白会解决问题吗?批量规范化?别的?我面对的是什么?

这是过度拟合的迹象。如果你使用足够大的模型在小数据集上训练足够长的时间,最终你的置信度会饱和到 0 和 1。因此,防止过度拟合的相同技术(正则化惩罚、辍学、提前停止、数据增强(将有所帮助。

对于像这样的小数据集,我的第一步是用噪声损坏的示例来增强数据集。IE,对于您的示例,我会添加带有原始标签的 800k 噪声损坏示例,并对其进行训练。

最新更新