美文网首页
dropout的理解

dropout的理解

作者: 云彩修建站站长 | 来源:发表于2019-10-28 14:54 被阅读0次

在神经网络中,dropout是一种很常用的操作。

1. 作用

在训练的时候以一定的概率随机丢弃网络中的某些节点。

2. 原理

每个batch的训练都是在训练一个网络,结果就是很多网络的叠加,类似bagging

3. 具体实现

3.1 训练阶段

  1. 对于要dropout的tensor t,产生与t相同shape的01矩阵,这个01矩阵中1的个数是 t的节点个数 * keep_prob(01矩阵的产生服从二项分布),然后将X与这个01矩阵相乘。
  2. 对于步骤1产生的结果,除以keep_prob。

ps. 二项分布:n次相互独立的伯努利分布,伯努利分布指的是(0-1)分布。

3.2 预测阶段

  1. 不抛弃任何一个神经元。

3.3 关于输出的期望

3.1中的步骤2,会除以keep_prob,解释如下:

  1. 因为随机保留一些节点,如果一个节点原始输出的期望是x,那么经过节点随机保留之后,期望就是keep_prob*x
  2. 在预测阶段因为不做丢弃处理,所里预测的节点的输出期望是x,为了保证训练和预测输出的一致性,所以会对训练阶段的输出除以keep_prob。

相关文章

  • Dropout

    Dropout简单理解 Dropout 理解dropout

  • seq2seq调参

    Dropout 深度学习(二十二)Dropout浅层理解与实现 - hjimce的专栏 理解dropout - 雨...

  • 吴恩达深度学习笔记(33)-带你进一步了解Dropout

    理解 dropout(Understanding Dropout) Dropout可以随机删除网络中的神经单元,他...

  • 神经网络中的Dropout

    Dropout 的理解 Dropout 在深度学习中是一种防止过拟合的手段,具有很好的容错能力。 dropout ...

  • Dropout理解

    概述 Dropout,是指在神经网络中,随机失活部分隐层的神经元。是深度学习中一种针对过拟合的解决方法。 流程 2...

  • dropout的理解

    在神经网络中,dropout是一种很常用的操作。 1. 作用 在训练的时候以一定的概率随机丢弃网络中的某些节点。 ...

  • 《理解Dropout》分享

    引言:相信有接触过深度学习的同学应该知道dropout可以用来解决过拟合问题,但为什么dropout能解决过拟合,...

  • 对Dropout的理解

    今天第一次在别人的代码里面看到了dropout 这个功能,找了一下相关的资料大概理解了一些。论文地址 概念 dro...

  • Dropout正则化

    理解dropout 用于解决过拟合问题 Dropout存在两个版本:直接(不常用)和反转。(这里只对Inverte...

  • 炼丹解惑 一

    一 、不要在CNN中使用DropOut 如果你在读这篇文章的话,我假设你有一些对dropout的基本理解,以及它在...

网友评论

      本文标题:dropout的理解

      本文链接:https://www.haomeiwen.com/subject/vxxbvctx.html