主要内容:

一、dropout正则化的思想

二、dropout算法流程

三、dropout的优缺点

一、dropout正则化的思想

在神经网络中,dropout是一种“玄学”的正则化方法,以减少过拟合的现象。它的主要思想就是:在训练神经网络的每一轮迭代中,随机地关闭一些神经元,以此降低神经网络的复杂程度:

 二、dropout算法流程

1)对于第k层的结点,选择一个范围在(0,1]的数keep_prob,表明每一个结点的存在几率为keep_prob

2)在每一轮迭代中,为第k层的所有结点随机分配一个范围在[0,1]的数D。如果某个结点的D小于等于keep_prob,那么这个结点在此轮迭代中能保存;否则,这个结点将在这轮迭代中被暂时删去,所谓删去,其实就是将该节点在这轮前向传播的输出值设为0。

3)对于保存下来的点,还需要做一步操作:新输出值 = 原输出值/keep_prob。

问:为何输出值要除以keep_prob呢?

答:因为这样能保证第k层输出的期望不发生改变,或者说是保持第k层输出值的scale。

4)以上是前向传播的过程,在反向传播中,同样需要对保留下来的结点的导数dA除以keep_prob。

5)每一层的keep_prob可以不一样,其中输入层X一般不进行dropout,结点数大的隐藏层其keep_prob可以小一点以降低其复杂度。

三、dropout的优缺点

优点:使用dropout正则化的神经网络,不会过分依赖于某个或某些特征,使得权重分散。因为在每一轮迭代中隐藏层的任何一个结点都有可能被删除,那么原本属于它的权重就会被分配到其他结点上,多次迭代平均下来,就能降低对某个特征或者是某个结点的依赖了。

缺点:损失函数在每一轮迭代中不一定是逐渐减小,因为此时的损失函数没有明确的定义。(这个不理解)

吴恩达深度学习笔记(十一)—— dropout正则化的更多相关文章

  1. 【Deeplearning.ai 】吴恩达深度学习笔记及课后作业目录

    吴恩达深度学习课程的课堂笔记以及课后作业 代码下载:https://github.com/douzujun/Deep-Learning-Coursera 吴恩达推荐笔记:https://mp.weix ...

  2. 吴恩达深度学习笔记(八) —— ResNets残差网络

    (很好的博客:残差网络ResNet笔记) 主要内容: 一.深层神经网络的优点和缺陷 二.残差网络的引入 三.残差网络的可行性 四.identity block 和 convolutional bloc ...

  3. 吴恩达深度学习笔记(deeplearning.ai)之卷积神经网络(二)

    经典网络 LeNet-5 AlexNet VGG Ng介绍了上述三个在计算机视觉中的经典网络.网络深度逐渐增加,训练的参数数量也骤增.AlexNet大约6000万参数,VGG大约上亿参数. 从中我们可 ...

  4. 吴恩达深度学习笔记(deeplearning.ai)之卷积神经网络(CNN)(上)

    作者:szx_spark 1. Padding 在卷积操作中,过滤器(又称核)的大小通常为奇数,如3x3,5x5.这样的好处有两点: 在特征图(二维卷积)中就会存在一个中心像素点.有一个中心像素点会十 ...

  5. 吴恩达深度学习笔记(deeplearning.ai)之循环神经网络(RNN)(三)

    1. 导读 本节内容介绍普通RNN的弊端,从而引入各种变体RNN,主要讲述GRU与LSTM的工作原理. 事先声明,本人采用ng在课堂上所使用的符号系统,与某些学术文献上的命名有所不同,不过核心思想都是 ...

  6. 吴恩达深度学习笔记(deeplearning.ai)之卷积神经网络(一)

    Padding 在卷积操作中,过滤器(又称核)的大小通常为奇数,如3x3,5x5.这样的好处有两点: 在特征图(二维卷积)中就会存在一个中心像素点.有一个中心像素点会十分方便,便于指出过滤器的位置. ...

  7. 吴恩达深度学习笔记(十二)—— Batch Normalization

        主要内容: 一.Normalizing activations in a network 二.Fitting Batch Norm in a neural network 三.Why does ...

  8. 吴恩达深度学习笔记(七) —— Batch Normalization

    主要内容: 一.Batch Norm简介 二.归一化网络的激活函数 三.Batch Norm拟合进神经网络 四.测试时的Batch Norm 一.Batch Norm简介 1.在机器学习中,我们一般会 ...

  9. 吴恩达深度学习笔记1-神经网络的编程基础(Basics of Neural Network programming)

    一:二分类(Binary Classification) 逻辑回归是一个用于二分类(binary classification)的算法.在二分类问题中,我们的目标就是习得一个分类器,它以对象的特征向量 ...

随机推荐

  1. LINQ 标准查询操作符

    本文介绍了LINQ标准查询操作符.没有这些操作符,LINQ就不会存在.本文为理解这些操作符的功能提供了很好的基础.了解它们将会很有帮助,因为LINQ的各种Provider都是基于这些操作符来完成各自丰 ...

  2. Intellij IDEA 搜索文件内容

    位置:Edit-Find-Find in Path 把KeyMap改成Eclipse的就可以用Ctrl+H查找了.

  3. php的下载

    前言:你的坚持,终将美好! 今天给大家说一下,php的下载,由于php的下载本身就是一个压缩包,解压缩后即可使用.所以,解压缩的过程不再赘述. 第一步:在浏览器的地址栏输入:http://www.ph ...

  4. Laravel创建Route

    <?php /* |-------------------------------------------------------------------------- | Routes Fil ...

  5. <转载> Jquery的性能优化-实用!

    我一直在寻找有关jQuery性能优化方面的小窍门,能让我那臃肿的动态网页应用变得轻便些.找了很多文章后,我决定将最好最常用的一些优化性能的建议列出来 ========================= ...

  6. Android之使用Android-query框架进行开发

    开发Android使用Android-query框架能够快速的,比传统开发android所要编写的代码要少得很多,容易阅读等优势. 下载文档及其例子和包的地址:http://code.google.c ...

  7. python 引用的含义,尤其注意列表跟字典的使用

    a = '12345'b = aa = 'sssss'print('a ===== %s' % a)print('b ===== %s' % b) 结果: a ===== sssss  b ===== ...

  8. 在前端眼中pc端和移动的开发区别

    按照昨天所说,本包子今天将总结在前端开发中,pc端和移动端的区别,整理完这些区别,本包子将开始整理pc端的布局,会写实际的代码了,还是那句话,希望文章中有什么不足的地方,大家能多多指正,大家一起进步, ...

  9. Sql注入_mysql盲注__二次注入

    sleep盲注攻击 Sleep延迟:延迟盲注 If(条件,true,false): 条件成立,返回第二个参数,反之第三个参数 举例1:length id=1 union select 1,2,slee ...

  10. MySQL 5.7.9修改root密码以及新特性

    原文地址:http://www.cnblogs.com/Gbeniot/p/5156633.html