Dropout作用

    在hinton的论文Improving neural networks by preventing coadaptation提出的,主要作用就是为了防止模型过拟合。当模型参数较多,训练数据较少时候,根据线性代数相关知识可以知道,当前模型可以非常完美的拟合我们的曲线。但该模型对测试数据集可能就没有很好的表现了,也就是说训练出的模型泛化能力很弱,我们称之为过拟合。从文章题目通过阻止特征检测器的共同作用来提高神经网络的性能可以看出,网络在提取训练集特征时,舍弃掉了一部分特征来提高网络的泛化能力。

基本认识

   Dropout用网络训练时工作变化来定义的话,是指在模型训练时随机让某些神经单元的权重停止本次更新,等下次训练时就有可能更新,对与一层中每个神经单元来说,它们更新的概率是相同的。
在hinton论文中没有数学公式,只是作者直观解释: 1. 网络中某层神经单元权值更新是等概率的,因此,不能保证相邻的神经单元每次都更新,直观解释就是有些特征不必完全依托于其他的特征。举个栗子:假如有5兄弟,老大和老二,老二和老三、、、相邻两个人才能完成一个任务,现在呢,我们把5兄弟放在黑屋子里面,每次随机选择一个兄弟执行任务,如果完成不了就惩罚其他兄弟,同时被选中的大兄弟当面对自己这次没有完成任务来自我反思(权值更新),在我们的逼迫下,进行了N次随机选择,发现5兄弟都能通过自我努力(权值更新)独立完成任务。
2. 论文讲,把dropout看作是,针对每次batch_size大的样本集训练,对应的网络结构是不同的,但是呢,它们之间还可以共享权重,不同的样本集合训练出了不同的网络模型。最后,得出的网络模型是每次训练的模型的“平均模型”。这种解释还是不错的^.^……
3. 把dropout比作是贝叶斯,贝叶斯有个大前提(不一定对哈)所有的特征是相互独立的,训练样本较少时候,独立学习每个特征,测试时候将所有的特征相乘。实际效果还不错。
4. 仿生物进化。适者生存,不断适应环境的变化。 参考来源:
https://github.com/rasmusbergpalm/DeepLearnToolbox
【面向代码】学习 Deep Learning(一)Neural Network
http://www.cnblogs.com/tornadomeet/p/3258122.html
http://blog.csdn.net/qq_25073253/article/details/72457840

paper 158:CNN(卷积神经网络):Dropout Layer的更多相关文章

  1. TensorFlow——CNN卷积神经网络处理Mnist数据集

    CNN卷积神经网络处理Mnist数据集 CNN模型结构: 输入层:Mnist数据集(28*28) 第一层卷积:感受视野5*5,步长为1,卷积核:32个 第一层池化:池化视野2*2,步长为2 第二层卷积 ...

  2. 3层-CNN卷积神经网络预测MNIST数字

    3层-CNN卷积神经网络预测MNIST数字 本文创建一个简单的三层卷积网络来预测 MNIST 数字.这个深层网络由两个带有 ReLU 和 maxpool 的卷积层以及两个全连接层组成. MNIST 由 ...

  3. Deep Learning模型之:CNN卷积神经网络(一)深度解析CNN

    http://m.blog.csdn.net/blog/wu010555688/24487301 本文整理了网上几位大牛的博客,详细地讲解了CNN的基础结构与核心思想,欢迎交流. [1]Deep le ...

  4. [转]Theano下用CNN(卷积神经网络)做车牌中文字符OCR

    Theano下用CNN(卷积神经网络)做车牌中文字符OCR 原文地址:http://m.blog.csdn.net/article/details?id=50989742 之前时间一直在看 Micha ...

  5. Deep Learning论文笔记之(四)CNN卷积神经网络推导和实现(转)

    Deep Learning论文笔记之(四)CNN卷积神经网络推导和实现 zouxy09@qq.com http://blog.csdn.net/zouxy09          自己平时看了一些论文, ...

  6. CNN(卷积神经网络)、RNN(循环神经网络)、DNN(深度神经网络)的内部网络结构有什么区别?

    https://www.zhihu.com/question/34681168 CNN(卷积神经网络).RNN(循环神经网络).DNN(深度神经网络)的内部网络结构有什么区别?修改 CNN(卷积神经网 ...

  7. CNN(卷积神经网络)、RNN(循环神经网络)、DNN,LSTM

    http://cs231n.github.io/neural-networks-1 https://arxiv.org/pdf/1603.07285.pdf https://adeshpande3.g ...

  8. day-16 CNN卷积神经网络算法之Max pooling池化操作学习

    利用CNN卷积神经网络进行训练时,进行完卷积运算,还需要接着进行Max pooling池化操作,目的是在尽量不丢失图像特征前期下,对图像进行downsampling. 首先看下max pooling的 ...

  9. cnn(卷积神经网络)比较系统的讲解

    本文整理了网上几位大牛的博客,详细地讲解了CNN的基础结构与核心思想,欢迎交流. [1]Deep learning简介 [2]Deep Learning训练过程 [3]Deep Learning模型之 ...

  10. Keras(四)CNN 卷积神经网络 RNN 循环神经网络 原理及实例

    CNN 卷积神经网络 卷积 池化 https://www.cnblogs.com/peng8098/p/nlp_16.html 中有介绍 以数据集MNIST构建一个卷积神经网路 from keras. ...

随机推荐

  1. 《图解设计模式》读书笔记1-1 Iterator模式

    目录 迭代器模式的类图 类图的解释 迭代器模式的代码 解释 原因 思想 迭代器模式的类图 类图的解释 名称 说明 Aggregate 集合接口,有提供迭代器的方法 Iterator 迭代器接口,提供迭 ...

  2. 测开之路七十二:性能测试工具之locust简介

    locust官网:https://locust.io/ locust安装(不支持python3.7):pip install locustio   或者pycharm安装 官网给出的样例 根据官网代码 ...

  3. Show Me the Code

    最近在练习写Python代码,拥有150多道程序员面试题的LeetCode注重算法的实现,锻炼思维,还能在线测试代码的正确性,而Python练习册涉及到了Python实际的应用,锻炼解决问题的能力,托 ...

  4. Action 分离

    原文地址:http://www.cnblogs.com/giggle/p/5380832.html?utm_source=tuicool&utm_medium=referral 本处摘要备注. ...

  5. Maven安装、配置环境变量

    一.首先在官网下载安装maven 1.进入官网 2.找到下载位置 3.点进去后是最新版的,若需要最新版就下这个,需要旧版本接着往下滑 4.下载历史版本 (1)点击"archives" ...

  6. google+ sign in and get the oauth token 转摘:https://gist.github.com/ianbarber/5170508

    package com.example.anothersignintest;   import java.io.IOException;   import com.google.android.gms ...

  7. lambda 分组后的count

    var list = stuList.GroupBy(b => b.PersonalId).Select(g => (new { personalId = g.Key, count = g ...

  8. photoshop中调整图层的颜色深浅明暗

    图像-调整-可选颜色, 选中某一个颜色如绿色,可以将绿色调的深一点或浅一点

  9. [C++] 所有该类的对象共享静态类成员变量

    问:智能指针可以对指针的引用数量进行计数,一个智能指针释放时,别的智能指针怎么知道的? 同一类的对象共享同一变量最简单的方法是静态变量: 不像普通的变量,静态成员变量是被所有类对象共享的,不同的对象可 ...

  10. Spring之控制反转——IoC、面向切面编程——AOP

      控制反转——IoC 提出IoC的目的 为了解决对象之间的耦合度过高的问题,提出了IoC理论,用来实现对象之间的解耦. 什么是IoC IoC是Inversion of Control的缩写,译为控制 ...