论文要点:

  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. 【USACO4.2】草地排水Drainage Ditches(最大流)

    题目背景 在农夫约翰的农场上,每逢下雨,贝茜最喜欢的三叶草地就积聚了一潭水.这意味着草地被水淹没了,并且小草要继续生长还要花相当长一段时间.因此,农夫约翰修建了一套排水系统来使贝茜的草地免除被大水淹没 ...

  2. SPOJ3267:D-query

    题面 SPOJ3267 Sol 给定\(N\)个正整数构成的序列,将对于指定的闭区间查询其区间内的不同的数的个数 主席树 不是权值线段树 维护位置 如果插入一个数时发现之前有过了 那么修改当前的,那个 ...

  3. wpf 研究之道 winform or wpf,u choose who?

    很久以前,我们用winform做过一个五子棋的程序,当时用winform的画图,先画出棋盘...后来项目的研究阶段,偶尔用winform做个小工具.闲暇之余,看到介绍wpf的资料,只知道它采用了xam ...

  4. handsontable自定义渲染

    本文主要介绍在使用Handsontable过程中,对加载的数据进行字体颜色.样式(style).数据格式化,对齐方式的处理,并添加自定义图片和单机事件功能. 代码如下: <!DOCTYPE ht ...

  5. 基于fitnesse浅析waferslim引擎

    最近在用fitnesse框架做自动化测试,简单总结一下,后边再补充内容. 1.fitnesse简介:后续补 略,见官网 http://www.fitnesse.org/ 2.waferslim引擎之p ...

  6. js实现最长子串算法

    var arr=["weeweadbshow","jhsaasrbgddbshow","ccbshow"]; function Longes ...

  7. Lintcode249 Count of Smaller Number before itself solution 题解

    [题目描述] Give you an integer array (index from 0 to n-1, where n is the size of this array, data value ...

  8. C#压缩文件夹坑~

    dotNet疯狂之路No.29  今天很残酷,明天更残酷,后天很美好,但是绝大部分人是死在明天晚上,只有那些真正的英雄才能见到后天的太阳.  We're here to put a dent in t ...

  9. Python的Argparse模块是什么?(未完)

            近日在阅读代码的过程中遇到了Argparse模块,记得前段时间已经看了,可是过了两周现在又忘了, 看来写代码一定要钻研到底搞清楚其中原委才行,本文主要参考Python3.6系列官方文档 ...

  10. 分享PHP中的10个实用函数

    分享PHP中的10个实用函数 PHP的功能越来越强大,里面有着非常丰富的内置函数.资深的PHP程序员对它们可能都很熟悉,但很多参加PHP培训的PHP初学者,仍然对一些非常有用的函数不太熟悉.这篇文章里 ...