首页 最新 热门 推荐

  • 首页
  • 最新
  • 热门
  • 推荐

cccp 和 1*1 卷积层解释

  • 25-03-03 22:02
  • 3163
  • 5109
blog.csdn.net

Network in Network网络分析

2016年06月23日 20:03:27
阅读数:12951

本文地址:http://iyenn.com/rec/1702889.html

《Network in Network》论文笔记

1.综述

这篇文章有两个很重要的观点:

  1. 1×1卷积的使用 
    文中提出使用mlpconv网络层替代传统的convolution层。mlp层实际上是卷积加传统的mlp(多层感知器),因为convolution是线性的,而mlp是非线性的,后者能够得到更高的抽象,泛化能力更强。在跨通道(cross channel,cross feature map)情况下,mlpconv等价于卷积层+1×1卷积层,所以此时mlpconv层也叫cccp层(cascaded cross channel parametric pooling)。

  2. CNN网络中不使用FC层(全连接层) 
    文中提出使用Global Average Pooling取代最后的全连接层,因为全连接层参数多且易过拟合。做法即移除全连接层,在最后一层(文中使用mlpconv)层,后面加一层Average Pooling层。

以上两点,之所以重要,在于,其在较大程度上减少了参数个数,确能够得到一个较好的结果。而参数规模的减少,不仅有利用网络层数的加深(由于参数过多,网络规模过大,GPU显存等不够用而限制网络层数的增加,从而限制模型的泛化能力),而且在训练时间上也得到改进。

2.网络结构

  • 传统的convolution层 

  • 单通道mlpconv层 

  • 跨通道mlpconv层(cccp层) 

  • 由图可知,mlpconv=convolution+mlp(图中为2层的mlp)。

  • 在caffe中实现上,mlpconv=convolution+1×1convolution+1×1convolution(2层的mlp)

3.Caffe中的实现

原文3层mlpconv的完整网络结构 

Caffe中4层网络示意图(ImageNet) 

说明:

1.方框为网络层,椭圆为blob 
2.黄色pool4为Average Pooling

caffe网络数据数据如下(crop size=224)

LayerchannelsFilter sizeFilter stridePadding sizeInput size
conv196114-224×224
cccp19611-54×54
cccp29611-54×54
pool19632-54×54
conv225651227×27
cccp325611-27×27
cccp425611-27×27
pool225632-27×27
conv338431113×13
cccp538411-13×13
cccp638411-13×13
pool338432-13×13
conv4-102410243116×6
cccp7-1024102411-6×6
cccp8-1000100011-6×6
pool4-ave100061-6×6
accuracy1000---1×1
  • 对于crop size = 227,则input size的变化为227, 55, 27, 13, 6, 1。

4. 1×1卷积的作用

以下内容摘抄自:http://www.caffecn.cn/?/question/136

问:发现很多网络使用了1X1卷积核,这能起到什么作用呢?另外我一直觉得,1X1卷积核就是对输入的一个比例缩放,因为1X1卷积核只有一个参数,这个核在输入上滑动,就相当于给输入数据乘以一个系数。不知道我理解的是否正确

答1: 
对于单通道的feature map和单个卷积核之间的卷积来说,题主的理解是对的,CNN里的卷积大都是多通道的feature map和多通道的卷积核之间的操作(输入的多通道的feature map和一组卷积核做卷积求和得到一个输出的feature map),如果使用1x1的卷积核,这个操作实现的就是多个feature map的线性组合,可以实现feature map在通道个数上的变化。接在普通的卷积层的后面,配合激活函数,就可以实现network in network的结构了(本内容作者仅授权给CaffeCN社区(caffecn.cn)使用,如需转载请附上内容来源说明。)

答2: 
我来说说我的理解,我认为1×1的卷积大概有两个方面的作用吧: 
1. 实现跨通道的交互和信息整合 
2. 进行卷积核通道数的降维和升维

下面详细解释一下: 
1. 这一点孙琳钧童鞋讲的很清楚。1×1的卷积层(可能)引起人们的重视是在NIN的结构中,论文中林敏师兄的想法是利用MLP代替传统的线性卷积核,从而提高网络的表达能力。文中同时利用了跨通道pooling的角度解释,认为文中提出的MLP其实等价于在传统卷积核后面接cccp层,从而实现多个feature map的线性组合,实现跨通道的信息整合。而cccp层是等价于1×1卷积的,因此细看NIN的caffe实现,就是在每个传统卷积层后面接了两个cccp层(其实就是接了两个1×1的卷积层)。 
2. 进行降维和升维引起人们重视的(可能)是在GoogLeNet里。对于每一个Inception模块(如下图),原始模块是左图,右图中是加入了1×1卷积进行降维的。虽然左图的卷积核都比较小,但是当输入和输出的通道数很大时,乘起来也会使得卷积核参数变的很大,而右图加入1×1卷积后可以降低输入的通道数,卷积核参数、运算复杂度也就跟着降下来了。以GoogLeNet的3a模块为例,输入的feature map是28×28×192,3a模块中1×1卷积通道为64,3×3卷积通道为128,5×5卷积通道为32,如果是左图结构,那么卷积核参数为1×1×192×64+3×3×192×128+5×5×192×32,而右图对3×3和5×5卷积层前分别加入了通道数为96和16的1×1卷积层,这样卷积核参数就变成了1×1×192×64+(1×1×192×96+3×3×96×128)+(1×1×192×16+5×5×16×32),参数大约减少到原来的三分之一。同时在并行pooling层后面加入1×1卷积层后也可以降低输出的feature map数量,左图pooling后feature map是不变的,再加卷积层得到的feature map,会使输出的feature map扩大到416,如果每个模块都这样,网络的输出会越来越大。而右图在pooling后面加了通道为32的1×1卷积,使得输出的feature map数降到了256。GoogLeNet利用1×1的卷积降维后,得到了更为紧凑的网络结构,虽然总共有22层,但是参数数量却只是8层的AlexNet的十二分之一(当然也有很大一部分原因是去掉了全连接层)。 

最近大热的MSRA的ResNet同样也利用了1×1卷积,并且是在3×3卷积层的前后都使用了,不仅进行了降维,还进行了升维,使得卷积层的输入和输出的通道数都减小,参数数量进一步减少,如下图的结构。(不然真不敢想象152层的网络要怎么跑起来TAT) 

[1]. https://gist.github.com/mavenlin/d802a5849de39225bcc6 
[2]. http://www.caffecn.cn/?/question/136

版权声明:未经允许请勿用于商业用途,转载请注明出处:http://blog.csdn.net/mounty_fsc/ https://b
注:本文转载自blog.csdn.net的hellocsz的文章"https://blog.csdn.net/hellocsz/article/details/80887199"。版权归原作者所有,此博客不拥有其著作权,亦不承担相应法律责任。如有侵权,请联系我们删除。
复制链接
复制链接
相关推荐
发表评论
登录后才能发表评论和回复 注册

/ 登录

评论记录:

未查询到任何数据!
回复评论:

分类栏目

后端 (14832) 前端 (14280) 移动开发 (3760) 编程语言 (3851) Java (3904) Python (3298) 人工智能 (10119) AIGC (2810) 大数据 (3499) 数据库 (3945) 数据结构与算法 (3757) 音视频 (2669) 云原生 (3145) 云平台 (2965) 前沿技术 (2993) 开源 (2160) 小程序 (2860) 运维 (2533) 服务器 (2698) 操作系统 (2325) 硬件开发 (2491) 嵌入式 (2955) 微软技术 (2769) 软件工程 (2056) 测试 (2865) 网络空间安全 (2948) 网络与通信 (2797) 用户体验设计 (2592) 学习和成长 (2593) 搜索 (2744) 开发工具 (7108) 游戏 (2829) HarmonyOS (2935) 区块链 (2782) 数学 (3112) 3C硬件 (2759) 资讯 (2909) Android (4709) iOS (1850) 代码人生 (3043) 阅读 (2841)

热门文章

101
推荐
关于我们 隐私政策 免责声明 联系我们
Copyright © 2020-2025 蚁人论坛 (iYenn.com) All Rights Reserved.
Scroll to Top