如何在caffe中使用全卷积网络解决过度拟合问题

4 deep-learning caffe

我在咖啡中有一个完全卷积网络(特别是堆叠沙漏网络)。在每个卷积层之后,我有一个批量归一化、一个缩放层和一个 ReLU 层。然而,我遇到了过度拟合的问题。通常,我会增加我的数据集(这是不可能的)或者我会使用 Dropout 层,但由于我读到在全卷积网络中使用 Dropout 层没有用,我不知道如何解决这个问题。除了我提到的以外还有什么要做的吗?在这种情况下正则化可能有帮助吗?

Pan*_*hin 5

这是我从互联网上偷来的一张方便的图片。这是一个方便的图表,列出了当您的深度学习模型遇到问题时可以尝试的事情。你说你听说Dropout在Conv中不好,但是你测试过吗?从那开始并继续进行:

  1. 将 dropout 添加到具有接近输出的大深度尺寸的 Conv 层
  2. 尽量不要深入这与“深入”相反,您应该在深入之前尝试一下。首先确保您有一个不会过度拟合的简单模型,然后尝试添加层。
  3. 如果你仍然过度拟合并且有 dropout,那么尝试通过使后面的 Conv 层没有那么深的深度来删除神经元。
  4. 按照 Z.Kal 所说的操作,通过转换数据集来倍增数据集。
  5. 如果这一切都没有影响,请接受您的架构可能是错误的事实。你已经在其中深深埋下了一种方法,让它可以逐字存储你提供给它的所有数据,而无需对其进行概括。考虑创建一个挤压点,其中有一个与输入数据相比较小的层。

在此输入图像描述

2020/10/22 更新- 经过几年的卷积编码并尝试了为什么我的嵌入层似乎具有不合理的高协方差问题的原因,我已将其追踪到丢失。 Dropout 会鼓励协方差(顺便说一句,这不好)。我没有使用 dropout,而是使用其他正则化器,或者完全跳过正则化并专注于初始化和架构。这是我制作的一个(糟糕的)视频,展示了如何有效地训练超深400 层卷积以及用于帮助其训练和运行的技巧