目的:

通过用Mlpconv层来替代传统的conv层,可以学习到更加抽象的特征。传统卷积层通过将前一层进行了线性组合,然后经过非线性激活得到(GLM),作者认为传统卷积层的假设是基于特征的线性可分。而Mlpconv层使用多层感知机,是一个深层的网络结构,可以近似任何非线性的函数。在网络中高层的抽象特征代表它对于相同concept的不同表现具有不变性(By abstraction we mean that the feature is invariant to the variants of the same concept)。微小的神经网络在输入的map上滑动,它的权值是共享的,而且Mlpconv层同样可以使用BP算法学习到其中的参数。传统卷积层(左)与Mlpcon层(右)对比如下:

实现:

对于非线性激活函数,例如一个ReLU函数有,k代表通道下标,Xij表示以像素(i,j)为中心的输入区域。在Mlpconv层中,每一个神经元计算的规则为

n代表网络的层次。在上述b图可以看到,对于每一个神经元,生成的只有单个输出,而输入是多维(可以理解为多通道,在网络中的每一层是一个1*k的向量),可以把整个过程看作是一个1*1*k的卷积层作用在k通道上。在后续的一些论文中,常用到这样的方法来对输入进行降维(不是对图像的输入空间,而是通道降维),这样的非抽象的过程可以很好地把多维信息压缩。

使用全局平均池化层代替FC层:

使用这样的微网络的结构,可以抽象出更加好的局部特征,使得特征图与类别有一致性。在softmax的前一层去除FC层,则在这一层没有参数的优化,可以减少计算的消耗,降低这一层的过拟合。

过程是这样的:对于每一个特征图计算它的平均数,然后把这些平均数组成一个特征向量,输入到后续的softmax层中。

如下图:

总结NIN的优点:

(1)更好的局部抽象

(2)去除全连接层,更少的参数

(3)更小的过拟合

【CV论文阅读】Network in Network的更多相关文章

  1. [论文阅读笔记] Fast Network Embedding Enhancement via High Order Proximity Approximati

    [论文阅读笔记] Fast Network Embedding Enhancement via High Order Proximity Approximation 本文结构 解决问题 主要贡献 主要 ...

  2. 论文阅读 Continuous-Time Dynamic Network Embeddings

    1 Continuous-Time Dynamic Network Embeddings Abstract ​ 描述一种将时间信息纳入网络嵌入的通用框架,该框架提出了从CTDG中学习时间相关嵌入 Co ...

  3. 论文阅读 dyngraph2vec: Capturing Network Dynamics using Dynamic Graph Representation Learning

    6 dyngraph2vec: Capturing Network Dynamics using Dynamic Graph Representation Learning207 link:https ...

  4. 论文阅读 | Probing Neural Network Understanding of Natural Language Arguments

    [code&data] [pdf] ARCT 任务是 Habernal 等人在 NACCL 2018 中提出的,即在给定的前提(premise)下,对于某个陈述(claim),相反的两个依据( ...

  5. 论文阅读:Stateless Network Functions: Breaking the Tight Coupling of State and Processing

    摘要: 无状态网络功能是一个新的网络功能虚拟化架构,解耦了现有的网络功能设计到无状态处理组件以及数据存储层,在打破紧密耦合的同时,实现了更具可伸缩性和可恢复性的网络功能基础设施.无状态NF处理实例是围 ...

  6. 【CV论文阅读】Deep Linear Discriminative Analysis, ICLR, 2016

    DeepLDA 并不是把LDA模型整合到了Deep Network,而是利用LDA来指导模型的训练.从实验结果来看,使用DeepLDA模型最后投影的特征也是很discriminative 的,但是很遗 ...

  7. 【CV论文阅读】Unsupervised deep embedding for clustering analysis

    Unsupervised deep embedding for clustering analysis 偶然发现这篇发在ICML2016的论文,它主要的关注点在于unsupervised deep e ...

  8. 【CV论文阅读】Dynamic image networks for action recognition

    论文的重点在于后面approximation部分. 在<Rank Pooling>的论文中提到,可以通过训练RankSVM获得参数向量d,来作为视频帧序列的representation.而 ...

  9. 【CV论文阅读】Faster R-CNN: Towards Real-Time Object Detection with Region Proposal Networks

    由RCNN到FAST RCNN一个很重要的进步是实现了多任务的训练,但是仍然使用Selective Search算法来获得ROI,而FASTER RCNN就是把获得ROI的步骤使用一个深度网络RPN来 ...

随机推荐

  1. duilib属性

    原文转载自:http://blog.csdn.net/lixiang987654321/article/details/45008441 这里我想讲解一下duilib中的一些属性的理解,当然这是一篇永 ...

  2. TypeError: string indices must be integers, not str

    1. TypeError: string indices must be integers, not str 字符串类型取第index个字符的时候,应该传入int而不是str.如 1 a='abcde ...

  3. iOS显示一张图片 Objective-C

    图片文件放在项目目录下 #import "ViewController.h" @interface ViewController () @end @implementation V ...

  4. Concurrent control in SQLite

    This document describes the technologies to concurrent access to a SQLite database. There are also s ...

  5. CAD使用GetXData读数据(com接口)

    主要用到函数说明: MxDrawEntity::GetXData 返回实体的扩展数据. c#代码实现如下: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 1 ...

  6. docker在ubuntu16.04下的安装及阿里云镜像的配置

    1.获取最新版本的 Docker 安装包 anmin@ubuntu:~$ wget -qO- https://get.docker.com/ | sh 安装完成后有个提示: If you would ...

  7. js数组的处理

    //重写Array中的indexOf方法,获取数组中指定值的元素的索引 Array.prototype.indexOf = function (val) { for (var i = 0; i < ...

  8. 调用微信扫一扫功能,踩坑'invalid signature'

    在vue项目中,调用微信扫一扫功能,在安卓系统下完全正常,ios系统下却报错'invalid signature'的错误,这可能令许多小伙伴困惑,经过查询大量博客相关资料,才找到了解决的方法. 原因: ...

  9. Ubuntu---vim配置

    1. Linux g++开启C++11支持 1.1 使用vim打开.bashrc文件 sudo vim ~/.bashrc 1.2 在some more ls aliases注释块的地方添加: ali ...

  10. Mybatis中collection和association的使用区别

    1. 关联-association2. 集合-collection 比如同时有User.java和Card.java两个类 User.java如下: public class User{ privat ...