Dropout技术为什么能防止过拟合?

在学习深度学习时,常常有人会问到这样一个问题:Dropout技术为什么能防止过拟合?

当然,简单的回答是:防止参数过分依赖训练数据,增加参数对数据集的泛化能力。

这样的回答,当然是正确的。但有点抽象。我来说点具体的案例,以帮助大家更形象化地理解。首先,这涉及到深度学习的分布式特征表达。

1.什么是分布式特征表达呢?

分布式表征(Distributed Representation),是人工神经网络研究的一个核心思想。那什么是分布式表征呢?简单来说,就是当我们表达一个概念时,神经元和概念之间不是一对一对应映射(map)存储的,它们之间的关系是多对多。具体而言,就是一个概念可以用多个神经元共同定义表达,同时一个神经元也可以参与多个不同概念的表达,只不过所占的权重不同罢了。

举例来说,对于“小红汽车”这个概念,如果用分布式特征地表达,那么就可能是一个神经元代表大小(形状:小),一个神经元代表颜色(颜色:红),还有一个神经元代表车的类别(类别:汽车)。只有当这三个神经元同时被激活时,就可以比较准确地描述我们要表达的物体。

分布式表征表示有很多优点。其中最重要的一点,莫过于当部分神经元发生故障时,信息的表达不会出现覆灭性的破坏。比如,我们常在影视作品中看到这样的场景,仇人相见分外眼红,一人(A)发狠地说,“你化成灰,我都认识你(B)!”这里并不是说B真的“化成灰”了,而是说,虽然时过境迁,物是人非,当事人B外表也变了很多(对于识别人A来说,B在其大脑中的信息存储是残缺的),但没有关系,只要B的部分核心特征还在,那A还是能够把B认得清清楚楚、真真切切!人类的大脑还是真的厉害啊!

事实上,利用神经网络的分布式特征表达,还可以用来阻止过拟合的发生。

下面我们来谈谈这个问题

2.什么是Dropout技术呢?

2012年,Hinton等人发表了一篇高引用论文[1],其中提到了一种在深度学习中广为使用的技巧:丢弃学习(Dropout Learning)。算法的核心思想和前文讲解的理念有异曲同工之妙。

“丢弃学习(Dropout,也有人称之为“随机失活”)”是指在深度学习网络的训练过程中,对于神经网络单元,按照一定的概率将其暂时从网络中丢弃。“丢弃学习”通常分为两个阶段:学习阶段和测试阶段。

Dropout技术为什么能防止过拟合?

图1 Dropout示意图(图片来源:参考文献[2])

在学习阶段,以概率p主动临时性地忽略掉部分隐藏节点。这一操作的好处在于,在较大程度上减小了网络的大小,而在这个“残缺”的网络中,让神经网络学习数据中的局部特征(即部分分布式特征)。在多个“残缺”之网(相当于多个简单网络)中实施特征,总要比仅在单个健全网络上进行特征学习,其泛化能力来得更加健壮。

而在测试阶段,将参与学习的节点和那些被隐藏的节点以一定的概率p加权求和,综合计算得到网络的输出。对于这样的“分分合合”的学习过程,有学者认为,“丢弃学习”可视为一种集成学习(Ensemble Learning)[3]。

这里顺便简单介绍一下集成学习的思路。集成学习的理念,有点类似于中国的那句古话“三个臭皮匠,赛过诸葛亮”。在对新实例进行分类时,集成学习把若干个单个分类器集成起来,通过对多个分类器的分类结果进行某种优化组合,最终通过投票法,决定分类的结果,即采用了“少数服从多数”原则。

通常,集成学习可以取得比单个分类器更好的性能。如果把单个分类器比作一个决策者的话,集成学习的方法,就相当于多个决策者共同进行一项决策。

但需要指出的是,要获得较好的集成效果,每一个单独学习器都要保证做到“好而不同”。也就是说,个体学习器都要有一定的“准确性(Accuracy)”,并保证有多样性(Diversity),也就是说,学习器要有差异性,有了差异性,才能“兼听则明”,表现出更强的鲁棒性。

参考文献:

[1] Hinton G E, Srivastava N, Krizhevsky A, et al. Improving neural networks by preventing co-adaptation of feature detectors[J]. Computer Science, 2012, 3(4):pp. 212-223.

[2] Srivastava N, Hinton G, Krizhevsky A, et al. Dropout: a simple way to prevent neural networks from overfitting[J]. Journal of Machine Learning Research, 2014, 15(1):1929-1958.

[3] MLAHara, Kazuyuki, D. Saitoh, and H. Shouno. "Analysis of Dropout Learning Regarded as Ensemble Learning." International Conference on Artificial Neural Networks Springer, Cham, 2016:72-79.


文章作者:张玉宏(著有《品味大数据》、《深度学习之美》(最通俗易懂的深度学习入门)2018年6月即将出版)

上一篇:【说云精选】后端之 Laravel 专刊


下一篇:“码头工人”的Docker进阶之路:从轻装上路到网络、存储和安全