NIPS 改名了!改成了neurips了。。。

深度神经网络在过参数化和使用大量噪声和正则化(如权重衰减和 dropout)进行训练时往往性能很好。dropout 广泛用于全连接层的正则化,但它对卷积层的效果没那么好。原因可能在于卷积层中的激活单元是空间关联的,使用 dropout 后信息仍然能够通过卷积网络传输到下一层。相比于dropout一个一个扔掉神经元,自然而然我们就要成块成块扔。因此就产生了这种叫dropblock的方法来对卷积网络进行正则化约束,它会丢弃特征图相邻区域中的单元。此外,在训练过程中逐渐增加丢弃单元的数量会带来更高的准确率,使模型对超参数选择具备更强的鲁棒性。

如下图更加形象生动:

图(a)中图片狗的区域是包含语义信息的,(b)中dropout扔神经元基本是这样随机扔,这就导致了很多狗这个实例的相关性信息被保存下来了,如(c), dropblock的思想是随机找一些点,然后自定义一个区域(block)把这里的信息一股脑全扔了。这样语义信息就不会冗余,从一定程度上使学习到的特征更加鲁棒。

如何操作:

block_size: 控制block的区域大小

: 控制丢掉多少神经元,注意这里的神经元不是真正丢了,而是某一次不用它的概率。

参数设置:

Blocksize设置为1的时候和dropout类似,但是只在图中绿色区域丢

设置:

Keep_prob 为保存信息的比率

feat_size 为整个feature map的大小

feat_size-block_size+1 为绿色区域的大小,我把它命名为语义信息区域吧。。

我的想法:

读了这篇文章,我倒是有些想法,我们的目标不是去除图像像素之间的冗余特征吗,那么我们根据这样一句话:

the m best features are not the best m features....在卷积层与全连接层的中间加一个去冗余层。

扔特征的目标是不是就是找出含有个特征的特征子集S?其实相对于也是丢弃一部分特征

那我们这样:

1:与标签的最大相关性:

(2)

C为类别,S 为特征子集,为第i个特征。

变量间的最小冗余度:

(3)

其中I函数为给定两个随机变量x和y,他们的概率密度函数(对应于连续变量)为p(x),p(y),p(x,y)p(x),p(y),p(x,y),则互信息为 :

那么我们整个神经网络优化公式为:

传统损失 - 公式(2)+公式(3)

当然上面思想主要来自于mrmr算法,正好可以结合卷积来做一下。一点初步的idea,有空实现下,在来分享。

NeurIPS2018: DropBlock: A regularization method for convolutional networks的更多相关文章

  1. (原)DropBlock A regularization method for convolutional networks

    转载请注明出处: https://www.cnblogs.com/darkknightzh/p/9985027.html 论文网址: https://arxiv.org/abs/1810.12890 ...

  2. (转)ResNet, AlexNet, VGG, Inception: Understanding various architectures of Convolutional Networks

    ResNet, AlexNet, VGG, Inception: Understanding various architectures of Convolutional Networks by KO ...

  3. Fully Convolutional Networks for Semantic Segmentation 译文

    Fully Convolutional Networks for Semantic Segmentation 译文 Abstract   Convolutional networks are powe ...

  4. 论文翻译——Character-level Convolutional Networks for Text Classification

    论文地址 Abstract Open-text semantic parsers are designed to interpret any statement in natural language ...

  5. 论文阅读(Xiang Bai——【CVPR2016】Multi-Oriented Text Detection with Fully Convolutional Networks)

    Xiang Bai--[CVPR2016]Multi-Oriented Text Detection with Fully Convolutional Networks 目录 作者和相关链接 方法概括 ...

  6. VERY DEEP CONVOLUTIONAL NETWORKS FOR LARGE-SCALE IMAGE RECOGNITION 这篇论文

    由Andrew Zisserman 教授主导的 VGG 的 ILSVRC 的大赛中的卷积神经网络取得了很好的成绩,这篇文章详细说明了网络相关事宜. 文章主要干了点什么事呢?它就是在在用卷积神经网络下, ...

  7. Fully Convolutional Networks for semantic Segmentation(深度学习经典论文翻译)

    摘要 卷积网络在特征分层领域是非常强大的视觉模型.我们证明了经过端到端.像素到像素训练的卷积网络超过语义分割中最先进的技术.我们的核心观点是建立"全卷积"网络,输入任意尺寸,经过有 ...

  8. Very Deep Convolutional Networks for Large-Scale Image Recognition

    Very Deep Convolutional Networks for Large-Scale Image Recognition 转载请注明:http://blog.csdn.net/stdcou ...

  9. 论文学习:Fully Convolutional Networks for Semantic Segmentation

    发表于2015年这篇<Fully Convolutional Networks for Semantic Segmentation>在图像语义分割领域举足轻重. 1 CNN 与 FCN 通 ...

随机推荐

  1. 【转】oracle建立本地数据库

    来到公司的这段时间,在项目的开发过程中一直连接的是远程的oracle数据库,现在开始轮到自己做毕业设计了,自己想采用Oracle数据库,就想建立本地的数据库. 当然了,首先是自己先装Oracle客户端 ...

  2. [LeetCode] Restore IP Address [28]

    题目 Given a string containing only digits, restore it by returning all possible valid IP address comb ...

  3. Volatile 多线程中用到的关键字

    前言 不管是在面试还是实际开发中 volatile 都是一个应该掌握的技能. 首先来看看为什么会出现这个关键字. 内存可见性 由于 Java 内存模型(JMM)规定,所有的变量都存放在主内存中,而每个 ...

  4. SQL - 获取多机构最近相同节点

    -- Create Branches Table create table Branches ( BranchCode ) ,BranchName ) ,L0BCode ) ,L1BCode ) ,L ...

  5. jm解决乱码问题-参数化-数据库操作-文件上传下载

    jm解决乱码问题-参数化-数据库操作-文件上传下载 如果JM出果运行结果是乱码(解决中文BODY乱码的问题) 找到JM的安装路径,例如:C:\apache-jmeter-3.1\bin 用UE打开jm ...

  6. golang之路:mac下安装go

    1.下载dkg包 2.安装 3.vim .bash_profile export GOROOT=/usr/local/goexport GOPATH=$HOME/GoglandProjects/Pro ...

  7. bzoj 2458: [BeiJing2011]最小三角形 题解

    [前言]话说好久没有写题解了.到暑假了反而忙.o(╯□╰)o [原题] 2458: [BeiJing2011]最小三角形 Time Limit: 10 Sec  Memory Limit: 128 M ...

  8. hdu 4454 Stealing a Cake(计算几何:最短距离、枚举/三分)

    题意:已知起点.圆.矩形,要求计算从起点开始,经过圆(和圆上任一点接触即可),到达矩形的路径的最短距离.(可以穿过园). 分析:没什么好的方法,凭感觉圆上的每个点对应最短距离,应该是一个凸函数,用三分 ...

  9. 02 Memcache add详细介绍

    一:Memcached add 命令参数 ()add key flag expire length [增] key: 键名(起一个独立的名字) flag 标志,要求为一个正整数 备注:()当Memca ...

  10. dynamic_cast, RTTI, 整理

    主要是参考下图,了解内存布局,然后写个实例程序就差不多明白了,但是需要熟悉指针转换. 1) 只有多态类才有RTTI信息,dynamic_cast正是运用RTTI进行转换,属于运行时类型检查. 2) d ...