我一直在尝试使用 CNN 来解决回归问题。在尝试泛化之前,我遵循了禁用 dropout 和过度拟合小型训练集的标准建议。使用 10 层深度架构,我可以过拟合大约 3000 个示例的训练集。但是,在输出层之前的全连接层之后添加 50% 的 dropout 时,我发现我的模型不再能过拟合训练集。在几个 epoch 之后,验证损失也停止下降。这是一个非常小的训练集,所以过拟合应该不是问题,即使有 dropout。那么,这是否表明我的网络不够复杂,无法在存在 dropout 的情况下进行泛化?添加额外的卷积层也无济于事。在这种情况下要尝试什么?如果有人能给我线索或建议,我将不胜感激。
PS:作为参考,我使用了 Alexnet 前 16 层的学习权重,并添加了 3 个具有 ReLU 非线性的卷积层,然后是一个最大池化层和 2 个全连接层。我在训练期间使用带有动量的 SGD 更新所有层的权重。