随机失活

更新时间:2021-07-25 19:06

随机失活(dropout)是对具有深度结构的人工神经网络进行优化的方法,在学习过程中通过将隐含层的部分权重或输出随机归零,降低节点间的相互依赖性(co-dependence )从而实现神经网络的正则化(regularization),降低其结构风险(structural risk)。

总结

具有大量参数的深度神经网络是非常强大的机器学习系统。然而,过拟合是这种网络中的严重问题。大型网络使用起来也很慢,因此在测试时通过组合许多不同的大型神经网络的预测很难处理过拟合。随机失活是一种解决此问题的技术。关键思想是在训练期间从神经网络中随机丢弃单位(及其连接)。这可以防止单位共适应太多。在训练期间,从指数数量的不同“稀疏”网络中抽取样本。在测试时,通过简单地使用具有较小权重的单个未加网络的网络,很容易近似平均所有这些稀疏网络的预测的效果。这显著减少了过拟合,并且比其他正则化方法有了重大改进。研究表明,随机失活提高了神经网络在视觉,语音识别,文档分类和计算生物学中监督学习任务的性能,在许多基准数据集上获得了最先进的结果。

动机

随机失活是为解决深度神经网络的过拟合(overfitting)和梯度消失(gradient vanishing)问题而被提出的优化方法,其一般设想是在神经网络的学习过程中,随机将部分隐含层节点的权重归零,由于每次迭代受归零影响的节点不同,因此各节点的“重要性”会被平衡。引入随机失活后,神经网络的每个节点都会贡献内容,不会出现少数高权重节点完全控制输出结果的情况,因此降低了网络的结构风险。

实现

按神经网络自身的不同结构,随机失活的实现方法有差异。对多层感知器(Multi-Layer Perceptron, MLP),随机失活通常将选中节点的输出归零;对卷积神经网络(Convolutional Neural Network, CNN),随机失活可以随机将卷积核的部分元素归零,即随机连接失活(drop connect),或在多通道情形下随机归零整个特征图的通道,即空间随机失活(spatial dropout);对循环神经网络(Recurrent Neural Network, RNN),随机失活按网络的拓扑结构可以作用于每个时间步的输入和状态矩阵。

效果

随机失活通常降低了神经网络的计算开销,因为归零操作可以得到稀疏矩阵。但在迭代次数较多的学习任务,例如RNN的学习中,反复生成随机数会带来额外的计算开销。

免责声明
隐私政策
用户协议
目录 22
0{{catalogNumber[index]}}. {{item.title}}
{{item.title}}