论文要点:

  1. 用更有效的非线性函数逼近器(MLP,multilayer perceptron)代替 GLM 以增强局部模型的抽象能力。抽象能力指的模型中特征是对于同一概念的变体的不变形。
  2. 使用 global average pooling 代替全连接层,提高模型的泛化能力。

GLM 与 MLP 的输入都是局部“像素”

全连接层可以替换成 1×1 卷积层

这个要好好想想!!!

Mlpconv layer

结合下图,来谈谈 Mlpconv layer 的要点:


从交叉通道(即交叉特征映射)池化的角度来看,上图中的网络结构等效于在正常卷积层上的级联交叉通道参数池化层。 每个池化层都会在输入特征图(input feature map)上执行加权线性重组,然后通过整流线性单元。 交叉通道池化所生成的特征图再作为下一交叉通道池化的输入,依次进行下去。这种级联的交叉通道参数池化结构允许交叉通道信息的进行复杂且可学习的交互。 交叉通道参数化池层也等价于具有1x1卷积核的卷积层。

上面是论文中对 NiN 一个很重要的解释,下面解释一下:交叉通道参数池化层也等价于具有1x1卷积核的卷积层到底是何意?

我们就以上图 MLP 的第一层为例说明一下,我们看到上图中一个 patch 作为 MLP 得输入,MLP 第一层的神经元我们可以看成是传统 CNN 中的 filter,即我们在同一个 patch 上同时使用多个 filter(然后通过relu),并且在 MLP 中的第二层将这些 filter 的输出进行线性组合(然后通过 relu),然后通过第三层输出一个值。 这与通过传统 CNN 卷积然后使用 1×1 卷积将一个 patch 上的多个 filter 加权线性组合的总体效果相同,比如一个3层 MLP 来可以通过两次 1×1 卷积(每次过 relu)来达到相同效果。

注意!!! 一个 MLP filter 在一个 patch 上只输出一个值,一个 MLP filter在整个输入层上共享参数,所以和传统 filter 一样, 这里使用多个MLP filter, 而MLP filter 的个数就是下一层feature map的深度。举例如下,下图为使用 NiN 改进的 AlexNet 的网络结构

global average pooling


global average pooling 与 average pooling 的差别就在 "global" 这一个字眼上。global 与 local 在字面上都是用来形容 pooling 窗口区域的。 local 是取 feature map 的一个子区域求平均值,然后滑动这个子区域; global 显然就是对整个 feature map 求平均值了。因此,global average pooling 的最后输出结果仍然是 10 个 feature map,而不是一个,只不过每个 feature map 只剩下一个像素罢了,这个像素就是求得的平均值,10个feature map就变成一个10维的向量,然后直接输入到softmax中。

global average pooling 极大地减少了模型的参数个数,防止模型过拟合,自带正则化光环

Network in Network的更多相关文章

  1. Deep Learning 24:读论文“Batch-normalized Maxout Network in Network”——mnist错误率为0.24%

    读本篇论文“Batch-normalized Maxout Network in Network”的原因在它的mnist错误率为0.24%,世界排名第4.并且代码是用matlab写的,本人还没装caf ...

  2. Deep Learning 25:读论文“Network in Network”——ICLR 2014

    论文Network in network (ICLR 2014)是对传统CNN的改进,传统的CNN就交替的卷积层和池化层的叠加,其中卷积层就是把上一层的输出与卷积核(即滤波器)卷积,是线性变换,然后再 ...

  3. Linux: service network/Network/NetworkManager

    Linux:service network/Network/NetworkManager start 这三种有什么不同? 1.network service的制御网络接口配置信息改动后,网络服务必须从 ...

  4. 1×1卷积的用途(Network in Network)

    1×1卷积,又称为Network in Network 如果卷积的输出输入都只是一个平面,那么1x1卷积核并没有什么意义,它是完全不考虑像素与周边其他像素关系. 但卷积的输出输入是长方体,所以1x1卷 ...

  5. Network In Network学习笔记

    Network In Network学习笔记 原文地址:http://blog.csdn.net/hjimce/article/details/50458190 作者:hjimce 一.相关理论 本篇 ...

  6. Network in Network 2

    <Network in Network>论文笔记 1.综述 这篇文章有两个很重要的观点: 1×1卷积的使用 文中提出使用mlpconv网络层替代传统的convolution层.mlp层实际 ...

  7. Network In Network——卷积神经网络的革新

    Network In Network 是13年的一篇paper 引用:Lin M, Chen Q, Yan S. Network in network[J]. arXiv preprint arXiv ...

  8. 论文《Network in Network》笔记

    论文:Lin M, Chen Q, Yan S. Network In Network[J]. Computer Science, 2013. 参考:关于CNN中1×1卷积核和Network in N ...

  9. NIN (Network In Network)

    Network In Network 论文Network In Network(Min Lin, ICLR2014). 传统CNN使用的线性滤波器是一种广义线性模型(Generalized linea ...

  10. [DeeplearningAI笔记]卷积神经网络2.5-2.7 Network in Network/1*1卷积/Inception网络/GoogleNet

    4.2深度卷积网络 觉得有用的话,欢迎一起讨论相互学习~Follow Me 参考文献 Inception网络 --Szegedy C, Liu W, Jia Y, et al. Going deepe ...

随机推荐

  1. 【BZOJ3436】小K的农场(差分约束)

    [BZOJ3436]小K的农场(差分约束) 题面 由于BZOJ巨慢无比,使用洛谷美滋滋 题解 傻逼差分约束题, 您要是不知道什么是差分约束 您就可以按下\(Ctrl+W\)了 #include< ...

  2. NSURLRequest的缓存策略

    刚刚看到了一个小知识点,拿出来与大家分享一下,也是做个笔记. NSURLRequest有缓存策略,是这条属性: /*! @method cachePolicy @abstract Returns th ...

  3. MySQ备份常见问题

    1.备份的时候出现2002报错,找不到/tmp/mysql.sock,这个文件 [root@centos199 backup]# mysqldump -uroot -ppassword cz-offi ...

  4. hive数据库的哪些函数操作是否走MR

    平时我们用的HIVE 我们都知道 select * from table_name 不走MR 直接走HTTP hive 0.10.0为了执行效率考虑,简单的查询,就是只是select,不带count, ...

  5. 记录一次网站漏洞修复过程(三):第二轮处理(拦截SQL注入、跨站脚本攻击XSS)

    在程序编写的时候采用参数化的SQL语句可以有效的防止SQL注入,但是当程序一旦成型,再去修改大量的数据库执行语句并不是太现实,对网页表单上输入进行校验是易于实现的方法.在webForm 页面中开启校验 ...

  6. Infinite Fraction Path HDU 6223 2017沈阳区域赛G题题解

    题意:给你一个字符串s,找到满足条件(s[i]的下一个字符是s[(i*i+1)%n])的最大字典序的长度为n的串. 思路:类似后缀数组,每次倍增来对以i开头的字符串排序,复杂度O(nlogn).代码很 ...

  7. 如何卸载wineQQ?

    好久没有用ubuntu系统的wineqq了,今天用的时候,提示无法使用,要求官网重新下载新版本,  感觉挺麻烦的,准备卸载,半天卸载不了. 经过努力,最终还是卸载了. 卸载命令: sudo dpkg ...

  8. Appserv(Apache) 设置网页不显示目录(索引)

    首先在appserv安装目录下找到httpd.conf文件 ./AppServ/Apache24/conf/httpd.conf 打开文件,找到 Options Indexes FollowSymLi ...

  9. Problem : (1.2.1) Text Reverse

    #include<iostream> using namespace std; void main() { char arr[1000]; int a,n; int s,t; cin> ...

  10. 如何彻底关闭windows defender

    我是一个喜欢裸奔的人,我不喜欢使用那些安全软件,什么360啊,什么毒霸啊让我深恶痛绝,就连windows自带的杀软我都不能忍啊,因为我平时喜欢找一下软件,很多的补丁和注册机,这些安全软件都会误报,所以 ...