1*1卷积核的理解和作用

权值共享基本上有两种方法:

  • 在同一特征图和不同通道特征图都使用共享权值,这样的卷积参数是最少的,例如上一层为30*30*40,当使用3*3*120的卷积核进行卷积时,卷积参数为:3*3*120个.(卷积跟mlp有区别也有联系一个神经元是平面排列,一个是线性排列)
  • 第二种只在同一特征图上使用共享权值,根据上面的例子,则卷积参数为:3*3*40*120.

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

以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的十二分之一。

比如输入是28x28x192(WxDxK,K代表通道数),然后在3x3的卷积核,卷积通道数为128,那么卷积的参数有3x3x192x128,其中前两个对应的每个卷积里面的参数,后两个对应的卷积总的个数(一般理解为,卷积核的权值共享只在每个单独通道上有效,至于通道与通道间的对应的卷积核是独立不共享的,所以这里是192x128)。

原文地址:https://www.cnblogs.com/lqc-nogi/p/9740906.html

时间: 2024-10-08 16:45:54

1*1卷积核的理解和作用的相关文章

C++(extern关键字的理解和作用深入)

extern关键字的理解和作用深入 extern是一个关键字,它告诉编译器存在着一个变量或者一个函数,如果在当前编译语句的前面中没有找到相应的变量或者函数, 也会在当前文件的后面或者其它文件中定义 引文一.(主要是实战中的各种情况)http://www.cnblogs.com/yc_sunniwell/archive/2010/07/14/1777431.html 1 基本解释:extern可以置于变量或者函数前,以标示变量或者函数的定义在别的文件中,提示编译器遇到此变量和函数时在其他模块中寻找

CNN 中, 1X1卷积核到底有什么作用

转自https://blog.csdn.net/u014114990/article/details/50767786 从NIN 到Googlenet mrsa net 都是用了这个,为什么呢 发现很多网络使用了1X1卷积核,这能起到什么作用呢?另外我一直觉得,1X1卷积核就是对输入的一个比例缩放,因为1X1卷积核只有一个参数,这个核在输入上滑动,就相当于给输入数据乘以一个系数.不知道我理解的是否正确. 我来说说我的理解,我认为1×1的卷积大概有两个方面的作用吧:1. 实现跨通道的交互和信息整合

Egg入门学习(三)---理解中间件作用

Egg是基于koa的,因此Egg的中间件和Koa的中间件是类似的.都是基于洋葱圈模型的. 在Egg中,比如我想禁用某些IP地址来访问我们的网页的时候,在egg.js中我们可以使用中间件来实现这个功能,中间件的作用无非就是说在Egg的外层在包一层来判断某些事情是否符合要求,也就是在洋葱圈模型外面再进行包一层.在Egg入门二学习中(https://www.cnblogs.com/tugenhua0707/p/10226799.html), 我们最后的项目的目录结构如下: egg-demo2 ├──

vertical-align属性的一些理解与认识

在工作上遇到这个问题,只知道vertical-align属性设置元素的对齐方式,所以自己有必要深入理解vertical-align作用,顺便整理出来. 先了解一下vertical-align一些属性: 值 描述 baseline 默认.元素放置在父元素的基线上. sub 垂直对齐文本的下标. super 垂直对齐文本的上标 top 把元素的顶端与行中最高元素的顶端对齐 text-top 把元素的顶端与父元素字体的顶端对齐 middle 把此元素放置在父元素的中部. bottom 把元素的顶端与行

报表工具的二次革命之集算器的作用

之前的文章已经大致给大家介绍过大数据计算引擎-润乾集算器了.想必很多人心里还是存在疑惑,集算器作为大数据分析系统,到底它能做些什么?这篇文章,就为大家详细介绍. 降低报表开发难度 降低开发难度从而提高开发效率是集算器的设计初衷,是最容易理解的作用,前面已有粗略介绍. 这方面的细节内容太多,我们会再做一个专门话题详细讲述集算器如何解决报表开发中的各种具体难题以及与常规手段的对比.在这里只做总结性地阐述. 比Java和SQL更易写 如前所述,集算器的设计目标是为了解决报表的数据准备,而目前这个工作一

链接器(linker)的作用——CSAPP第7章读书笔记

首先说说我为什么要去读这一章.这个学期开OS的课,在Morden Operating System上读到和Process有关的内容时看到这样一句话:“Process is fundamentally a container that holds all the information needed to run a program.”当时瞬间就想到了之前在csapp上看的模棱两可的“目标可执行文件”这个概念,于是重新又把它的第7章给读了一遍. 要理解linker的作用,首先要搞明白他在整个计算机

装饰者模式简单理解

对装饰者模式的简单理解: 作用:对一个对象原有的方法进行加强,修饰. 实现:装饰者和被装饰者必须实现相同的基类. 实例:java io中的相关类.比如Writer,Read,BufferWriter,bufferReader. 注意: 1.装饰者只是对被装饰者方法的加强,而不是新增方法. 2.装饰者可以对被装饰者多次加强. 3.被装饰者对象要在装饰者中被传递调用,一层传一层,就行java io实现一样.

OSI参考模型是什么及主要的作用是什么?

通信行业的技术人员肯定是很清楚OSI参考模型的重要性,就好比有些技术如果想要跳槽,去面试就会被问到对基本的通信原理OSI七层模型的理解.这个就是真正的试探你技术的时候.那对于相关从业通讯工作人员,却不懂技术的人,这个就变得不理解OSI参考模型是什么及主要作用是什么?OSI(Open System Interconnect)即开放式系统互联. 一般称之为OSI参考模型,1985年ISO(国际标准化组织)组织研究的网络互联模型.此构造标准定义了网络通信互联的七层框架(物理层.数据链路层.网络层.传输

[转]浅谈AlphaGo背后所涉及的深度学习技术

转自:http://www.199it.com/archives/449359.html 导读:关于Alfa Go的评论文章很多,但真正能够与开发团队交流的却不多,感谢Alfa Go开发团队DeepMind的朋友对我这篇文章内容的关注与探讨,指出我在之前那一版文章中用字上的不够精确,所以在此又作调整.我之前文章提到的「全局」指的是跨时间点的整场赛局,很容易被误认为是某个特定时点整个棋盘的棋局,所以后面全部都修改为「整体棋局」.此外,关于整体棋局评估,除了透过脱机数据学习的评价网络之外,还可以透过