dropout 正则化的最后一步是将权重乘以 dropout 概率。这是出于类似于装袋的动机:平均多个网络的权重。但由于 Jensen 的不平等,情况并非如此。
平均的效果基本上只是将权重缩小了一些因素。为什么要平均?有没有人尝试过简单地不平均,并通过例如 L2 正则化来控制参数的大小?人们仍然可以获得防止相互依赖的好处,但需要以其他方式规范化。
dropout 正则化的最后一步是将权重乘以 dropout 概率。这是出于类似于装袋的动机:平均多个网络的权重。但由于 Jensen 的不平等,情况并非如此。
平均的效果基本上只是将权重缩小了一些因素。为什么要平均?有没有人尝试过简单地不平均,并通过例如 L2 正则化来控制参数的大小?人们仍然可以获得防止相互依赖的好处,但需要以其他方式规范化。
使用 dropout,在训练和测试期间为每个神经元提供的激活总和需要大致相同。问题是在训练过程中一些神经元被屏蔽掉了,而这在测试过程中不会发生。因此,使用 dropout 在训练和测试阶段之间必须存在缩放差异,否则每个神经元将接收到更大幅度的输入,并且整个网络的行为可能会非常不同。
这在数学上与对权重进行平均不同——尽管这种效果可以直观地与对许多相关的神经网络进行装袋并平均它们的输出进行比较。相反,通常解释为,当 dropout 处于活动状态(训练期间)与非活动状态(测试/预测期间)时,dropout 将神经元激活缩放为具有相同的预期总幅度。
应用 L2 或任何其他类型的参数控制正则化技术对此无济于事,因为这些不会改变训练和测试阶段之间的任何激活。
您可以将训练激活值视为规范,并在测试时将激活值调整为较低(乘以保持概率),这是“经典 dropout”,或者您将测试激活值视为规范值并将激活值乘以在训练期间,这被称为“反向 dropout”。后一种方法现在更常见,因为在预测过程中可以完全忽略丢失层。