【发布时间】:2019-06-14 13:03:59
【问题描述】:
我正在做一个签名验证项目。我使用了ICDAR 2011 Signature Dataset。目前,我正在将原始图像的编码和伪造文件配对以获得训练样本(标记为0)。编码是从预训练的 VGG-16 卷积神经网络(去除全连接层)获得的。然后我修改了具有以下架构的全连接层:
- 输入大小:50177
- 第一个隐藏层:1000 个单位(激活:“sigmoid”,Dropout:0.5)
- 第二个隐藏层:500 个单位(激活:“sigmoid”,Dropout:0.2)
- 输出层:1 个单位(激活:“sigmoid”)
问题是,虽然训练集准确率提高了,但验证准确率随机波动。它在测试集上表现非常糟糕
我尝试了不同的架构,但似乎没有任何效果 那么有没有其他方法来准备数据或者我应该继续尝试不同的架构?
【问题讨论】:
-
训练、验证、测试比例是多少?你也尝试过《盗梦空间》吗?
-
训练:95%,验证:2.5%,测试:2.5%。为了进一步测试,一个用户的迹象不包括在整个数据集中。 Inception 在计算上是不可能的,尝试过。
-
您的训练/测试/验证行为表明您可能过度拟合 - 该模型基本上是在死记硬背。它不是在所有集合上随机猜测,因此它可以了解有关特征的一些东西,该模型现在在区分它们方面很差。可能值得尝试使用更多、更小的层。
-
尝试 75:15:10 或 80:10:10
-
@user8407600 过度拟合是训练和验证准确度之间的差异,但在这里验证集比训练集具有更高的准确度。也尝试了一些较小的架构,导致欠拟合。我认为我应该使用不同的网络用于生成嵌入
标签: python keras deep-learning computer-vision