多伦多大学Hinton组

http://www.cs.toronto.edu/~rsalakhu/papers/srivastava14a.pdf

一、目的

降低overfitting的风险

二、原理

在网络的BP迭代训练过程中,每一次迭代的网络都结构不同(用dropout对网络剪枝,得到thinned网络),样本也不同(因为是SGD,每次一个样本)。

生物学解释(有性繁殖):从生物学角度而言,dropout能够提高每个神经元的个体鲁棒性,使得其有更强的自我工作能力,以及与任意随机的其他神经元的适应协同工作能力。

三、使用的方法

1、使用了带mini-batch的SGD,而每次SGD迭代(只使用一个样本)所训练的网络都使用了dropout对网络结构进行了剪纸。

2、这样一来,每次迭代就是不同的网络结构;同时因为SGD每次样本不尽相同,那么每个网络的训练样本也不一样。

3、测试的时候使用完整的网络,但每个神经元(unit)的输出都需乘以dropout概率。

注意:dropout是用于训练神经网络的一个trick,当网络训练完成后,最终使用的模型是不需要加入dropout的(即使用完整的网络)。

四、illustration

1、dropout核心做法

其中每个节点的剪枝概率为p,自己设定。

[Neural Networks] Dropout阅读笔记的更多相关文章

  1. 《The Unreasonable Effectiveness of Recurrent Neural Networks》阅读笔记

    李飞飞徒弟Karpathy的著名博文The Unreasonable Effectiveness of Recurrent Neural Networks阐述了RNN(LSTM)的各种magic之处, ...

  2. Learning local feature descriptors with triplets and shallow convolutional neural networks 论文阅读笔记

    题目翻译:学习 local feature descriptors 使用 triplets 还有浅的卷积神经网络.读罢此文,只觉收获满满,同时另外印象最深的也是一个浅(文章中会提及)字. 1 Cont ...

  3. 【DeepLearning学习笔记】Coursera课程《Neural Networks and Deep Learning》——Week2 Neural Networks Basics课堂笔记

    Coursera课程<Neural Networks and Deep Learning> deeplearning.ai Week2 Neural Networks Basics 2.1 ...

  4. 《Deep Feature Extraction and Classification of Hyperspectral Images Based on Convolutional Neural Networks》论文笔记

    论文题目<Deep Feature Extraction and Classification of Hyperspectral Images Based on Convolutional Ne ...

  5. 吴恩达《深度学习》-第五门课 序列模型(Sequence Models)-第一周 循环序列模型(Recurrent Neural Networks) -课程笔记

    第一周 循环序列模型(Recurrent Neural Networks) 1.1 为什么选择序列模型?(Why Sequence Models?) 1.2 数学符号(Notation) 这个输入数据 ...

  6. Sequence to Sequence Learning with Neural Networks论文阅读

    论文下载 作者(三位Google大佬)一开始提出DNN的缺点,DNN不能用于将序列映射到序列.此论文以机器翻译为例,核心模型是长短期记忆神经网络(LSTM),首先通过一个多层的LSTM将输入的语言序列 ...

  7. cs231n spring 2017 lecture7 Training Neural Networks II 听课笔记

    1. 优化: 1.1 随机梯度下降法(Stochasitc Gradient Decent, SGD)的问题: 1)对于condition number(Hessian矩阵最大和最小的奇异值的比值)很 ...

  8. cs231n spring 2017 lecture6 Training Neural Networks I 听课笔记

    1. 激活函数: 1)Sigmoid,σ(x)=1/(1+e-x).把输出压缩在(0,1)之间.几个问题:(a)x比较大或者比较小(比如10,-10),sigmoid的曲线很平缓,导数为0,在用链式法 ...

  9. 【医学影像】《Dermatologist-level classification of skin cancer with deep neural networks》论文笔记

    这是一篇关于皮肤癌分类的文章,核心就是分类器,由斯坦福大学团队发表,居然发到了nature上,让我惊讶又佩服,虽然在方法上没什么大的创新,但是论文本身的工作却意义重大,并且这篇17年见刊的文章,引用量 ...

随机推荐

  1. QEMU MIPIS远程共享ubuntu主机的文件

    尝试啦很多中办法,最终选择以在QEMU模拟器中ssh 远程登入的方式访问主机,并用sshfs 挂载 主机端的文件到模拟器中,实现模拟器访问主机端的代码. SSH分客户端openssh-client和o ...

  2. C语言 处理文件

    刚学习C语言不久,运用C语言处理各种文件.这里列出,处理文件所需的大部分函数,已经整理的笔记,使用的注意事项.

  3. Hibernate学习之表一对多,多对一关系

    代码: person类: public class Person { private long id; private String name; private int age; private Da ...

  4. Zend Framework 2参考Zend\Authentication(数据库表认证)

    + 转载自:Zend Framework 2参考Zend\Authentication(数据库表认证) 介绍 Zend\Authentication\Adapter\DbTable提供对存储在数据库表 ...

  5. Codeforces Round #198 (Div. 2) D. Bubble Sort Graph (转化为最长非降子序列)

    D. Bubble Sort Graph time limit per test 1 second memory limit per test 256 megabytes input standard ...

  6. careercup-数组和字符串1.1

    1.1 实现一个算法,确定一个字符串的所有字符是否全部不同.假设不允许使用额外的数据结构,又该如何处理? C++实现: #include<iostream> #include<str ...

  7. codeblocks创建和使用静态库(C语言)

    静态库  (扩展名为 .a 或 .lib) 是包含函数的文件,用于在link阶段整合执行程序,动态链接库(扩展名  .dll)是不在link阶段整合进执行程序中的. DLL文件在执行阶段动态调用 下面 ...

  8. JAVA的程序代码小细节,变量的使用,以及一些细节的面试题

    package cn.hncu; public class LableDemo { public static void main(String[] args) { //demo1(); demo2( ...

  9. float与double的范围和精度(摘录)

    什么是浮点数在计算机系统的发展过程中,曾经提出过多种方法表达实数.典型的比如相对于浮点数的定点数(Fixed Point Number).在这种表达方式中,小数点固定的位于实数所有数字中间的某个位置. ...

  10. Android开发之显示进度对话框

    一般有两种对话框,一个是普通的简单的please wait对话框,另一种是创建显示操作进度(如下载状态)的对话框. 第一种普通的效果图如下: 第一种普通的实现代码: public void onCli ...