TellWorldAI 世界档案
问档案English

首页›论文

论文JMLR

Dropout:一种防止神经网络过拟合的简单方法

作者杰弗里·辛顿伊利亚·苏茨克维(Ilya Sutskever)

2014 年的一篇论文提出 Dropout:训练时随机丢弃神经元,让大型神经网络不易过拟合,并在视觉、语音等领域的多项基准上取得当时最好的结果。

时代 深度学习

论文要解决的问题

参数数量庞大的深度神经网络(deep neural network)能力很强,但过拟合(overfitting)问题严重 [1]。所谓过拟合,是网络在训练数据上表现很好,遇到没见过的新数据却明显变差:它记住了训练集的细节,而没有学到能迁移到新样本的规律。

对抗过拟合的经典办法是集成(ensemble):分别训练许多个网络,再把它们的预测平均起来,单个网络的错误往往互相抵消。这个办法在大型网络上撞上一堵实际的墙——大型网络用起来慢,想在测试时靠组合许多大型网络的预测来控制过拟合,代价很高 [1]。集成的成员越多,训练和每次预测的开销就越大。

《Dropout: A Simple Way to Prevent Neural Networks from Overfitting》于 2014 年发表在《Journal of Machine Learning Research》第 15 卷第 56 期,第 1929 至 1958 页。作者是 Nitish Srivastava、Geoffrey Hinton、Alex Krizhevsky、Ilya Sutskever 和 Ruslan Salakhutdinov [1]。

训练时随机丢弃

核心想法是在训练过程中随机丢弃网络里的一些单元,连同它们的连接一起去掉 [1]。每一步训练,每个单元都按一定概率被保留或被丢掉;被丢掉的单元不向外传递任何东西,这一步也不更新它的权重(weight)。

理由与「共适应」(co-adaptation)有关。在普通网络里,一个单元可能逐渐依赖另外某些单元总是存在且输出正确,于是靠一套脆弱的组合去拟合训练数据。丢弃单元可以阻止它们过度共适应 [1]:任何单元都不能指望某个固定搭档在场,只能去学在多种组合下都有用的特征。

每一种随机的丢弃方式,都对应一个与其他子网络共享权重的「变薄」子网络。于是训练时的 dropout 相当于从一个指数级数量的不同子网络中采样 [1]:n 个单元有 2 的 n 次方种取舍方式,一次训练走过的不是一个网络,而是一个规模极其庞大的网络家族。

测试时把集成收回来

预测时显然不可能真的把这么多子网络都用一遍。论文给出的办法很简洁:测试时使用一个不丢弃单元、但权重更小的完整网络,用它来近似对这些子网络预测取平均的效果 [1]。也就是说,所有单元都保留,同时把权重按比例缩小,以补偿测试时活跃的单元比训练时更多这件事。最终只有一个模型、一次前向计算,行为却接近被采样到的那些子网络的平均。

结果

作者报告,在视觉、语音识别、文档分类和计算生物学等领域的许多基准数据集(benchmark dataset)上取得了当时最好的结果 [1]。这个覆盖面本身就说明问题:dropout 并不绑定某一种网络结构或某一类数据。它改动的是训练过程,而不是网络的形状,也不改变网络在测试时能表示什么。

为什么重要

它的吸引力在于投入与收益的比例。模型本身不需要重新设计,训练流程只多了一个随机掩码和一个缩放系数。而通常要靠训练许多完整网络才能换来的集成效果,在这里由一次训练得到——这恰好就是论文一开始要为大型网络拆掉的那道障碍 [1]。

能力科学发现

技术路线深度学习

历史研究史

注释与来源

  1. Dropout: A Simple Way to Prevent Neural Networks from Overfittinghttps://jmlr.org/papers/v15/srivastava14a.html

引用本页: Dropout:一种防止神经网络过拟合的简单方法. TellWorld, https://www.tellworld.net/zh/papers/dropout-2014. 更新于 2026-11-07