Dropout: A Simple Way to Prevent Neural Networks from Overfitting Dropout:防止神经网络过度拟合的简单方法

一.摘要  Abstract

Deep neural nets with a large number of parameters are very powerful machine learning systems. However, overfitting is a serious problem in such networks. Large networks are also slow to use, making it difficult to deal with overfitting by combining the predictions of many different large neural nets at test time. Dropout is a technique for addressing this problem. The key idea is to randomly drop units (along with their connections) from the neural network during training. This prevents units from co-adapting too much. During training, dropout samples from an exponential number of different “thinned” networks. At test time, it is easy to approximate the effect of averaging the predictions of all these thinned networks by simply using a single unthinned network that has smaller weights. This significantly reduces overfitting and gives major improvements over other regularization methods. We show that dropout improves the performance of neural networks on supervised learning tasks in vision, speech recognition, document classification and computational biology, obtaining state-of-the-art results on many benchmark data sets.

Keywords: neural networks, regularization, model combination, deep learning

翻译:

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

关键词:神经网络,正则化,模型组合,深度学习

二.简介

深度神经网络包含多个非线性隐藏层,这使得它们非常具有表现力的模型,可以学习输入和输出之间非常复杂的关系。然而,在训练数据有限的情况下,许多复杂的关系将是采样噪声的结果,因此它们将存在于训练集中,但不存在于真实的测试数据中,即使它是从相同的分布中得出的。这会导致过度拟合,并且已经开发了许多方法来减少过度拟合。其中包括一旦验证集的性能开始变差就停止训练,引入各种权重惩罚,例如 L1 和 L2 正则化和软权重共享。

对于大型神经网络,对许多单独训练的网络的输出进行平均的明显想法是非常昂贵的。当各个模型彼此不同时,组合多个模型是最有帮助的,并且为了使神经网络模型不同,它们应该具有不同的架构或针对不同的数据进行训练。训练许多不同的架构很困难,因为为每个架构找到最佳超参数是一项艰巨的任务,并且训练每个大型网络需要大量计算。此外,大型网络通常需要大量的训练数据,并且可能没有足够的数据可用于在不同的数据子集上训练不同的网络。即使能够训练许多不同的大型网络,在快速响应非常重要的应用中,在测试时使用所有这些网络也是不可行的。

Dropout 是解决这两个问题的技术。它可以防止过度拟合,并提供一种有效地近似组合指数级许多不同神经网络架构的方法。术语“dropout”是指丢弃神经网络中的单元(隐藏的和可见的)。通过删除一个单元,我们的意思是暂时将其从网络中删除,以及它的所有传入和传出连接。

  • 11
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: dropout是一种简单方法,用于防止神经网络过度拟合。它通过在训练过程中随机地将一些神经元的输出设置为零,从而减少了神经元之间的依赖关系,使得网络更加鲁棒和泛化能力更强。这种方法可以有效地提高模型的性能,并且在实际应用中得到了广泛的应用。 ### 回答2: dropout是一种简单有效的防止神经网络拟合方法,其原理是在训练神经网络时随机选择一部分神经元不参与计算。具体来说,对于每个训练样本,我们以一定的概率(通常是50%)随机将其中一些神经元的输出设为0。这样做有两个好处:一是可以减少每个神经元的依赖性,从而使网络更加健壮,避免“依赖某些特定神经元”的问题;二是可以防止拟合,因为每个神经元都有一定的概率被“关闭”,这样可以避免某些神经元在处理训练数据时过于自信,而在处理测试数据时失效。实际实现时,dropout可以在每个层之间添加dropout层或者在每个全连接层之前添加dropout操作。使用dropout时需要注意,dropout的概率不能过高,否则会使网络无法学习到足够的信息。同时,dropout在测试时需要关闭,因为在测试时我们需要利用所有的神经元进行最终的预测。总的来说,dropout是一种简单而有效的防止神经网络拟合方法,可以提高网络的泛化性能和鲁棒性。 ### 回答3: 随着深度学习的发展,人们逐渐意识到过拟合问题的严重性。为了解决这个问题,大量的复杂度更高的网络或方法被提出,如L1,L2正则化,数据增强,dropout等。本文将重点介绍dropout这种简单且有效的方法dropout是由Geoff Hinton在2012年提出的。其基本思想是在训练神经网络时,通过以概率p(通常为0.5)随机地使一些隐含层单元输出为0。而在预测时,dropout仅仅将所有的单元都保留下来,并将其输出乘以概率p,以避免模型过度依赖于任何一个单元。 dropout的实现方法非常简单,主要包括两个步骤。第一步是在训练时,以概率p决定哪些单元要被保留,哪些要被丢弃。第二步是在预测时,将所有的单元都保留下来,同时将其输出与概率p相乘。 dropout具有以下几个优点: 1. dropout可以显著减少过拟合。通过在模型中随机丢弃一些单元,可以有效地减少模型之间的相互依赖,避免复杂模型过度学习训练数据,从而提高泛化能力。 2. dropout可以提高模型学习速度。相比其他正则化方法dropout的运算速度非常快,只需要在前向传播中做一些简单的随机化,不会对反向传播过程带来额外的复杂度。 3. dropout可以解决模型中的特征选择问题。dropout的随机丢弃可以促使每个神经元的输出都得到充分利用,即使是那些在训练集中很少出现的特征也会得到一定程度的学习,从而避免了一些过拟合问题。 总之,dropout是一种简单且实用的正则化方法,可以显著减少神经网络拟合的问题,同时也具有很高的运行速度和模型准确性。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值