Dropout
来源:互联网 发布:js面向对象编程 编辑:程序博客网 时间:2024/04/29 02:46
Dropout
很形象的Dropout如图所示:
关于Dropout,Hinton文章中(文末)没有给出任何数学解释,Hintion的直观解释和理由如下:
1. 由于每次用输入网络的样本进行权值更新时,隐含节点都是以一定概率随机出现,因此不能保证每2个隐含节点每次都同时出现,这样权值的更新不再依赖于有固定关系隐含节点的共同作用,阻止了某些特征仅仅在其它特定特征下才有效果的情况。
2. 可以将dropout看作是模型平均的一种。对于每次输入到网络中的样本(可能是一个样本,也可能是一个batch的样本),其对应的网络结构都是不同的,但所有的这些不同的网络结构又同时share隐含节点的权值。这样不同的样本就对应不同的模型,是bagging的一种极端情况。和bagging,boosting理论有点像,但又不完全相同。
3. native bayes是dropout的一个特例。Native bayes有个错误的前提,即假设各个特征之间相互独立,这样在训练样本比较少的情况下,单独对每个特征进行学习,测试时将所有的特征都相乘,且在实际应用时效果还不错。而Droput每次不是训练一个特征,而是一部分隐含层特征。
4. 还有一个比较有意思的解释是,Dropout类似于性别在生物进化中的角色,物种为了使适应不断变化的环境,性别的出现有效的阻止了过拟合,即避免环境改变时物种可能面临的灭亡。
文章最后当然是show了一大把的实验来说明dropout可以阻止过拟合。这些实验都是些常见的benchmark,比如Mnist, Timit, Reuters, CIFAR-10, ImageNet.
【提问】Dropout和Pooling的本质区别是什么?
Dropout随机赋0,使得参数均衡,本质是正则化(都是让w差的不要太多)
Pooling本质是降维,ReLU做了贡献,原来是0,反向传播也是0
参考
[1] Hinton, G. E., et al. (2012). “Improving neural networks by preventing co-adaptation of feature detectors.” arXiv preprint arXiv:1207.0580.
[2]http://www.cnblogs.com/tornadomeet/p/3258122.html
阅读全文
1 0
- Dropout
- Dropout
- dropout
- Dropout
- Dropout
- Dropout
- dropout
- Dropout
- Dropout
- dropout是什么,理解dropout
- dropout voltage
- 理解dropout
- 理解dropout
- Dropout 理解
- 理解dropout
- 理解dropout
- 理解dropout
- dropout原理
- ABP官方文档(五十二)【集成EntityFramework MySQL】
- Handler消息机制--面试篇
- 关于不能转换的问题
- Android px、dp梳理
- Struts2 结果视图是另一个Action的情况的配置方式
- Dropout
- Go语言递归函数
- python接口测试之路Day1
- Hibernate中一对一以及一对多之间的关系
- CString.format 发现点问题
- Web应用扫描工具Wapiti
- 集合栈
- C语言的一些误用和知识总结
- C语言进阶-7讲: 递归经典:汉诺塔