Network in Network 笔记

  • 传统CNN里的卷积核是一个generalized linear model(GLM)之后经过一个sigmoid(现在通常是ReLu)的非线性激励函数,假设卷积有K个filter,那么这K个filter代表的特征应该是可分的,或者说对属于同一个类别的不同变形具有不变性。
  • 但是通过GLM来建模,也就是假设这些latent的filter是线性可分的,显然这样的假设并不总是成立,甚至通常都不成立。
  • 传统的CNN为了解决这种不可分的问题,往往会选择比较多的filter个数,也就是比较大的K值,来保证所有的变形都被分到正确的concept里。
  • 比如说人和猫是不同的概念,但不是线性可分的,为了避免错分,我们只有建立更多的子概念(增加filter的个数),黄种人、黑人等等。
  • 但是过多的filter也会带来问题。主要有两个问题:1)首先是复杂的问题中这样的变形的个数往往过多,造成参数的急剧增加,2)这给下一层的网络的学习造成了困难,因为下一层网络的作用就是结合这一层的网络的信息,形成更高语义的信息,那么对于当前这一层当中相同概念的不同变形的filter,下一层必须要能够有一定的处理。
  • maxout网络可以通过分段线性的方法近似表示一个convex可分的问题,但是同样的,并不是所有的问题都是convex的。
  • 这说明我们需要更general的非线性的卷积核,也就是Network in Network中的micro network,文中提到的多层感知机(multilayer perceptron)。
  • multilayer perceptron的卷积核,实际相当于先做一个一般的卷积,再做几个1*1的卷积(只改变filter的个数,不改变feature map的大小)。
  • 这么看来,相当于构建了一个层次更深的网络。
  • Global average pooling 的合理性在于,经过了一个多层的复杂的网络之后,每一个filter代表的都是high-level的信息,而不是low-level的像一些曲线或者纹理之类的信息。对于这种high-level的信息,对整个feature map做pooling相当于检测这个map中有没有这个filter要检测的concept,这个pooling的结果已经可以很好地用来做分类或者检测之类的工作,不需要fully connected之后再训练分类器。
  • 总结起来,Network in Network 模型相当于一个更多层的cnn,通过多个1*1的卷积,将单个的卷积变得表示能力更强。再结合最后将fully connected替换为average pooling,使得模型的参数大大下降,也避免了overfitting的问题。一个层次更深,但或许参数更少的模型(因为fully connected的参数实在是太多了)
时间: 2024-11-08 18:19:04

Network in Network 笔记的相关文章

论文笔记 《Maxout Networks》 && 《Network In Network》

论文笔记 <Maxout Networks> && <Network In Network> 发表于 2014-09-22   |   1条评论 出处 maxout:http://arxiv.org/pdf/1302.4389v4.pdfNIN:http://arxiv.org/abs/1312.4400 参考 maxout和NIN具体内容不作解释下,可以参考:Deep learning:四十五(maxout简单理解)Network In Network 各用一句话

论文《Chinese Poetry Generation with Recurrent Neural Network》阅读笔记

这篇文章是论文'Chinese Poetry Generation with Recurrent Neural Network'的阅读笔记,这篇论文2014年发表在EMNLP. ABSTRACT 这篇论文提出了一个基于RNN的中国古诗生成模型. PROPOSED METHOD 第一句的生成 第一句的生成是规则式的. 先自定义几个keywords,然后通过<诗学含英>(这是清朝人编写的)扩展出更多的相关短语.然后生成所有满足格式约束(主要是音调方面的)的句子,接下来用一个语言模型排个序,找到最好

深度学习方法(十):卷积神经网络结构变化——Maxout Networks,Network In Network,Global Average Pooling

技术交流QQ群:433250724,欢迎对算法.技术感兴趣的同学加入. 最近接下来几篇博文会回到神经网络结构的讨论上来,前面我在"深度学习方法(五):卷积神经网络CNN经典模型整理Lenet,Alexnet,Googlenet,VGG,Deep Residual Learning"一文中介绍了经典的CNN网络结构模型,这些可以说已经是家喻户晓的网络结构,在那一文结尾,我提到"是时候动一动卷积计算的形式了",原因是很多工作证明了,在基本的CNN卷积计算模式之外,很多简

Network in Network 2

<Network in Network>论文笔记 1.综述 这篇文章有两个很重要的观点: 1×1卷积的使用 文中提出使用mlpconv网络层替代传统的convolution层.mlp层实际上是卷积加传统的mlp(多层感知器),因为convolution是线性的,而mlp是非线性的,后者能够得到更高的抽象,泛化能力更强.在跨通道(cross channel,cross feature map)情况下,mlpconv等价于卷积层+1×1卷积层,所以此时mlpconv层也叫cccp层(cascade

Linux: service network/Network/NetworkManager

Linux:service network/Network/NetworkManager start 这三种有什么不同? 1.network service的制御网络接口配置信息改动后,网络服务必须从新启动,来激活网络新配置的使得配置生效,这部分操作和从新启动系统时时一样的作用.制御(控制)是/etc/init.d/network这个文件,可以用这个文件后面加上下面的参数来操作网络服务.例如:/etc/init.d/networkrestart同样也可以用service这个命令来操作网络服务例如

Network In Network&mdash;&mdash;卷积神经网络的革新

Network In Network 是13年的一篇paper 引用:Lin M, Chen Q, Yan S. Network in network[J]. arXiv preprint arXiv:1312.4400, 2013. 文章的新点: 1. 采用 mlpcon 的结构来代替 traditional 卷积层: 2. remove 卷积神经网络最后的 全连接层,采用 global average pooling 层代替: mplconv 结构的提出: conventional 的卷积层

1&#215;1卷积的用途(Network in Network)

1×1卷积,又称为Network in Network 如果卷积的输出输入都只是一个平面,那么1x1卷积核并没有什么意义,它是完全不考虑像素与周边其他像素关系. 但卷积的输出输入是长方体,所以1x1卷积实际上是对每个像素点,在不同的channels上进行线性组合(信息整合),且保留了图片的原有平面结构,调控depth,从而完成升维或降维的功能. 如下图所示,如果选择2个filters的1x1卷积层,那么数据就从原本的depth 3 降到了2.若用4个filters,则起到了升维的作用. 1. 相

Network 4: Network Layer

The primary tasks of a router lies in two aspects: (1) running routing protocols, and (2) forwarding datagrams. Some of the major routing protocols run on the Internet are as follow: Among broadcast routing algorithms, Reverse Path Forwarding is a co

Network In Network

传统的cnn过滤器是一个泛化的线性模型(GLM),我们认为这GLM的抽象能力是低级别的.把GLM替换为一个更有效的非线性函数近似能够提高抽象能力.当例子是线性可分时,GLM能实现很好的抽象.然而例子很多情况下是线性不可分的,输入的线性函数才能很好地表达.此网络没有采用传统的全连接层,而是采用全局平均池化层.一方面是因为全局平均池化层能很好解释特征映射和类别之间的联系.另一方面,全连接层由于参数太多容易过拟合并且高度依赖dropout regularization,但全局平均池化层本身就是一个结构