Dropout(丢弃)

首先需要讲一下过拟合,训练一个大型网络时,因为训练数据有限,很容易出现过拟合。过拟合是指模型的泛化能力差,网络对训练数据集的拟合能力很好,但是换了其他的数据集,拟合能力就变差了。

在训练深层网络模型时,按照一定的概率,暂时将神经元丢弃,得到一个更加简单的网络模型,即每一个batch训练的网络模型都是不一样的,都是原始网络的子集,这些子网络共享权值,与原始网络的层数、参数数目相等。这样,每一个神经元在网络中出现都是独立的,不会依赖其他神经元。不同的batch训练得到更多的子网络,提高了网络模型的泛化能力,可以防止过拟合。

由上图可以看出,(a)是原始神经网络,(b)是dropout之后的网络。

原始网络中第层第个神经元的输出是:

采用dropout之后的网络中第层第个神经元的输出是:

其中,是第层第个神经元的输出,是第层第个神经元的权重(卷积核),

是第层第个神经元的偏置。由伯努利函数以概率随机的产生0、1向量,来决定网络中第层第个神经元被丢弃还是保留,0表示该神经元被dropout,就是使该神经元的激活被置零;1则表示该神经元被保留用于构成子网络。

在测试阶段:

我们前面说过,其实Dropout是类似于平均网络模型。我们可以这么理解,我们在训练阶段训练了1000个网络,每个网络生成的概率为Pi,然后我们在测试阶段的时候,我们肯定要把这1000个网络的输出结果都计算一遍,然后用这1000个输出,乘以各自网络的概率Pi,求得的期望值就是我们最终训练得到原始网络的精确度。

M是Dropout中所有的子网络的集合,所以当我们在测试阶段的时候,我们就是对M中所有的子网络,以其出现的概率进行加权平均,得到期望值,就是原始网络的精确度。

注:经过交叉验证,dropout率等于0.5的时候效果最好,原因是0.5的时候dropout随机生成的网络结构最多。

缺点是模型收敛速度会减慢。

卷积神经网络调参技巧(2)--过拟合(Dropout)相关推荐

  1. loss 曲线 神经网络_总结李飞飞教授讲义中的神经网络调参技巧

    总结了李飞飞教授的讲义,稍微结合自己的一些经验(也就是厚着脸皮说一下结合了自己的经验了,其实自己的那些经验,都在教授的讲义中了....). 数据预处理:零均值(zero-centered),将数据的均 ...

  2. 神经网络调参技巧:warmup策略

    有一些论文对warmup进行了讨论,使用 SGD 训练神经网络时,在初始使用较大学习率而后期改为较小学习率在各种任务场景下都是一种广为使用的做法,在实践中效果好且最近也有若干文章尝试对其进行了理论解释 ...

  3. 4.1 卷积神经网络调参-adagrad_adam

    4.3.1 adagrad_adam 我们之前将了随机梯度下降和动量梯度下降,不过,还有很多其他的优化算法可以使得模型稳定. 先来回顾随机梯度下降和动量梯度下降 随机梯度下降有两个问题:局部极值问题和 ...

  4. 神经网络调参-warmup and decay

    欢迎大家访问个人博客:https://jmxgodlz.xyz 前言 本文将介绍神经网络调参技巧:warmup,decay.反向传播主要完成参数更新:θt=θt−1−α∗gt\theta_t=\the ...

  5. 深度卷积神经网络(CNN tricks)调参技巧

    (53条消息) 深度卷积神经网络(CNN tricks)调参技巧(一)学习率调节_踏雪飞鸿的博客-CSDN博客https://blog.csdn.net/weixin_38957591/article ...

  6. 深度学习这么调参训练_聊一聊深度学习中的调参技巧?

    本期问题能否聊一聊深度学习中的调参技巧? 我们主要从以下几个方面来讲.1. 深度学习中有哪些参数需要调? 2. 深度学习在什么时候需要动用调参技巧?又如何调参? 3. 训练网络的一般过程是什么? 1. ...

  7. 深度学习调参技巧总结

    深度学习调参技巧总结 做dl也有一段时间了,积累了一些经验,也在网上看到一些别人的经验.  为了面试,结合知乎上面的问答,我也总结了一下,欢迎大家补充. 知乎 深度学习调参有哪些技巧? 一. 初始化  ...

  8. 深度学习网络调参技巧

    深度学习网络调参技巧 本文转载自[炼丹实验室],讲了一些深度学习训练的技巧,其中包含了部分调参心得:深度学习训练心得.不过由于一般深度学习实验,相比普通机器学习任务,时间较长,因此调参技巧就显得尤为重 ...

  9. step-by-step: 夕小瑶版神经网络调参指南(上)

    距离上一篇文章已经过去好久好久好久啦.闭关几个月后,其实早有继续码文章的打算,先后写了一下核函数与神经网络的一些思考.文本预处理tricks.不均衡文本分类问题.多标签分类问题.tensorflow常 ...

最新文章

  1. python的服务器、客户端被拒绝访问_python – uWSGI服务器日志…权限被拒绝读取......
  2. 数据库——MongoDB的安装
  3. java classes.jar_classes.jar
  4. 计算机心得300,计算机实训总结计算机实训心得300
  5. [转] Apache日志分析常用Shell命令
  6. 关于梦想--------听说标题够长才有人看
  7. java 项目 人力资源项目,基于jsp的人力资源系统-JavaEE实现人力资源系统 - java项目源码...
  8. 深度优先搜索——单词接龙(洛谷 P1019)
  9. 为vsftpd添加虚拟用户的脚本
  10. html点击按钮出现弹窗_电脑总是弹出乱七八糟的广告?跟我学,让你从此告别弹窗广告...
  11. 用python计算工程量_基于Python脚本程序的电缆工程量快速统计方法与流程
  12. like语法 mysql_mysql中like语法拼接4种方式
  13. IDEA运行java文件环境配置
  14. vulfocus——maccms远程命令执行(CVE-2017-17733)
  15. java练习题,个人所得税计算
  16. 无线串口服务器规模,无线串口服务器
  17. 4k纸是几厘米乘几厘米_几厘米?4k的纸多大?
  18. 基于微信电影播放小程序系统设计与实现 开题报告
  19. 情人节这些智能设备可千万别送女友
  20. python web py入门(3)-模板

热门文章

  1. 用range函数解码高斯等差数列求和
  2. 阵列麦克风声音定位-代码python实现-二维与三维声音定位
  3. UE4 C++入门——动画蒙太奇 学习笔记
  4. 《士兵突击》之伍六一:最钢铁的男儿最柔软的内心
  5. 华为总裁办紧急发文!两个鸿蒙别傻傻分不清!
  6. python3 爬虫日记(三) 爬取堆糖动态加载网页
  7. 基础Java练习16:学生喂养动物
  8. 【文字超分辨率】A Text Image Super-Resolution Generation Network without Pre-training 阅读笔记
  9. 初级网络工程师学习日志——第二日笔记
  10. 0基础学Linux-从小白到大牛(3)Linux命令