-
卷积层代替全连接层
2018-08-01 21:01:20为什么卷积层可以“代替”全连接层? 卷积和全连接的区别大致在于:卷积是局部连接,计算局部信息;全连接是全局连接,计算全局信息。(但二者都是采用的点积运算) 但如果卷积核的kernel_size和输入...为什么卷积层可以“代替”全连接层?
卷积和全连接的区别大致在于:卷积是局部连接,计算局部信息;全连接是全局连接,计算全局信息。(但二者都是采用的点积运算)
但如果卷积核的kernel_size和输入feature maps的size一样,那么相当于该卷积核计算了全部feature maps的信息,则相当于是一个的全连接。
在全连接层上,相当于是(其中是输入的维度,是输出的维度)的全连接,其计算是通过一次导入到内存中计算完成;如果是在最后一个feature maps上展开后进行的全连接,这里若不进行展开,直接使用的卷积核代替,则相当于是的全连接(这里的就是feature maps展开的向量大小,也就是卷积核的大小),使用个卷积核则可以相当于的全连接层。
但用卷积层代替全连接层的方式,其卷积核的计算是并行的,不需要同时读入内存中,所以使用卷积层的方式代替全连接层可以加开模型的优化。
为什么(在分类网络上)不能直接用卷积层代替全连接层的方式,使得模型处理不同大小的输入?
因为卷积层的运算是通过卷积核,说到底也就是点积运算,是需要事先设定参数的大小。
但如果这种操作用于处理不同size的输入,则实际上每次训练时,该层的参数size是不一样的,也就是模型不能得到训练。
虽然使用卷积层代替全连接层来处理不同大小输入的模型在整个流程上看起来没什么问题,但根本上,该模型是不能得到良好训练的。(从代替的那层卷积层开始,其后的每一层得到的输入分布其实是一直在变化的,所以波动会比较大。) -
为什么用1*1卷积层代替全连接层?
2019-07-15 15:26:21全连接层的作用是,可以将卷积得到...用1*1卷积层代替全连接层的好处: 1、不改变图像空间结构 全连接层会破坏图像的空间结构,而1*1卷积层不会破坏图像的空间结构。 2、输入可以是任意尺寸 全连接层的输入尺寸...全连接层的作用是,可以将卷积得到的局部特征连接起来,综合考虑整个图像。
当1*1卷积层的channel个数等于全连接层的节点个数时,可以看成全连接层,其中空间维度高和宽上的每个元素相当于样本,通道相当于特征。
用1*1卷积层代替全连接层的好处:
1、不改变图像空间结构
全连接层会破坏图像的空间结构,而1*1卷积层不会破坏图像的空间结构。
2、输入可以是任意尺寸
全连接层的输入尺寸是固定的,因为全连接层的参数个数取决于图像大小。而卷积层的输入尺寸是任意的,因为卷积核的参数个数与图像大小无关。
-
为什么使用卷积层代替全连接层?
2020-05-07 10:02:52不同点是:卷积层是局部连接的全连接层,因此可以相互替换 卷积层替换全连接层的优点: 输入可以不用限制死输入图像的大小,提供方便。 并且在前向传播时效率更高(减少w计算量)。 举个例子: 假设最后一个卷...卷积层的特点:
- 可以提取更深层的特征
- 减少w计算量(相对于全连接层)和权值共享
全连接层的特点:
- 每个神经元都和上一层的所有神经元相连接
不同点是:卷积层是局部连接的全连接层,因此可以相互替换
卷积层替换全连接层的优点:
- 输入可以不用限制死输入图像的大小,提供方便。
- 并且在前向传播时效率更高(减少w计算量)。
举个例子:
假设最后一个卷积层的输出为:7 * 7 * 512,我们经过4096个7 * 7 * 4096 个卷积核进行卷积后输出1 * 1 * 4096的特征图,等价于4096个神经元(全连接网络)。
-
卷积层和全连接层的区别_为什么可以用1*1卷积层代替全连接层
2020-12-20 03:41:08Network in Network 这篇论文中 提出了 11卷积层,那么问题来了,为什么可以用11卷积层来代替全连接层假设当前输入张量维度为6×6×32,卷积核维度为1×1×32,取输入张量的某一个位置(如图黄色区域)与卷积核进行...Network in Network 这篇论文中 提出了 11卷积层,那么问题来了,为什么可以用11卷积层来代替全连接层
假设当前输入张量维度为6×6×32,卷积核维度为1×1×32,取输入张量的某一个位置(如图黄色区域)与卷积核进行运算。实际上可以看到,如果把1×1×32卷积核看成是32个权重W,输入张量运算的1×1×32部分为输入x,那么每一个卷积操作相当于一个Wx过程,多个卷积核就是多个神经元,相当于一个全连接网络。
综上,可以将1×1卷积过程看成是将输入张量分为一个个输入为1×1×32的x,他们共享卷积核变量(对应全连接网络的权重)W的全连接网络。
显然用1*1的卷积核W来遍历图像时,就相当于图像每个pixel点*卷积核的值W,这就同全连接层乘以权重W是一个含义,所以等同。
总结一下:
全连接层的作用是,可以将卷积得到的局部特征连接起来,综合考虑整个图像。
当1*1卷积层的channel个数等于全连接层的节点个数时,可以看成全连接层,其中空间维度高和宽上的每个元素相当于样本,通道相当于特征。
那么还有人想问,1*1 卷积的作用
1*1 卷积的作用
一、 实现特征通道的升维和降维
通过控制卷积核的数量达到通道数大小的放缩。而池化层只能改变高度和宽度,无法改变通道数。
二、 增加非线性
如上所述,1×1卷积核的卷积过程相当于全连接层的计算过程,并且还加入了非线性激活函数,从而可以增加网络的非线性,使得网络可以表达更加复杂的特征。
三、 减少卷积核参数(简化模型)
在Inception Network中,由于需要进行较多的卷积运算,计算量很大,可以通过引入1×1确保效果的同时减少计算量。具体可以通过下面例子量化比较
3.3.1 - 不引入1×1卷积的卷积操作
3.3.2 - 引入1×1卷积的卷积操作
总共需要的计算量为(28×28×16)×(1×1×192)+(28×28×32)×(5×16×16)≈ 12.4 million,明显少于不引入1×1卷积的卷积过程的计算量。其本质我觉得可以理解成,通过1×1卷积操作提取出输入张量的重要特征(相当于降维),然后通过5×5卷积的计算量可以减少很多(减少的比引入1×1卷积所需额外的计算量多多了)。
用1*1卷积层代替全连接层的好处:
1、不改变图像空间结构
全连接层会破坏图像的空间结构,而1*1卷积层不会破坏图像的空间结构。
2、输入可以是任意尺寸
全连接层的输入尺寸是固定的,因为全连接层的参数个数取决于图像大小。而卷积层的输入尺寸是任意的,因为卷积核的参数个数与图像大小无关。
参考博客:
https://blog.csdn.net/wydbyxr/article/details/84061410
https://blog.csdn.net/qq_32172681/article/details/95971492
https://www.cnblogs.com/tianqizhi/p/9665436.html
ding_programmer
发布了79 篇原创文章 · 获赞 149 · 访问量 3万+
私信
关注
标签:卷积,32,张量,代替,图像,连接,输入
来源: https://blog.csdn.net/ding_programmer/article/details/104109895
-
在网络中用卷积层代替全连接层
2018-08-23 11:15:04参考资料: FCN用卷积层代替FC层原因(转) - byteH - 博客园 https://www.cnblogs.com/byteHuang/p/6959714.html 深度学习—之全卷积神经网络取代全连接层–用于图像分割 - CSDN博客 ... 占坑,待填... -
用卷积层代替全连接层做mnist手写数字识别
2020-06-08 20:04:12本文的重点在于用卷积层代替最后的全连接层。 一般的图片分类,最后一般是使用Flatten层和Dense层。 以博主之前那篇文章为例,模型的结构是: 如何用卷积层代替Flatten层和Dense层呢? 首先我们得明确,最后一层... -
卷积神经网络在分类层用卷积层代替全连接层的好处(附代码演示)
2020-02-25 12:02:02假设batch-size是1,最后的卷积层输出大小是5X5,通道数是512的话,如果接全连接层的话,就需要先reshape成一维的,这里的dim=12800(5X5X512),这里全连接层的权重矩阵大小就固定为了[12800,256](全连接... -
为什么使用卷积层替代CNN末尾的全连接层
2017-04-16 11:32:50原本CNN网络的经典结构是: 卷积层——>池化层——>……——>全连接层FCN的出现为什么要把CNN网络最后的全连接层特换为卷积层?或者换句话说这样会带来什么好处呢?...2. 然后,究竟使用卷积层代替全连接层会带来什 -
FCN -- CNN: 把全连接层替换为卷积层
2019-10-15 14:20:18然后,究竟使用卷积层代替全连接层会带来什么好处呢?答案:可以让卷积网络在一张更大的输入图片上滑动,得到每个区域的输出(这样就突破了输入尺寸的限制): VGG网络中测试时为什... -
为什么目标检测中要将全连接层转化为卷积层?
2018-11-04 16:13:06参考文章: ...究竟使用卷积层代替全连接层会带来什么好处呢? 答:全连接层的权重是不变的,所以输入的图片大小不能变。而卷积层可以让卷积网络在一张更大的输入图片上滑动,得到每个区域的输出... -
卷积代替全连接_卷积层(1)
2021-01-16 09:32:44卷积层(1)前面聊了3期全连接层,下面先扔下它,看看卷积神经网络的另外一个重量级组成部分——卷积层。关于卷积层的具体计算方式在这里就不多说了,和全连接层类似,由线性部分和非线性部分组成,一会儿直接看代码就... -
FCN用卷积层代替FC层原因(转)
2019-09-23 13:09:10例如,做物体分类的话,入门级别的做法就是利用caffe提供的alexnet的模型,然后把输出的全连接层稍稍修改称为自己想要的类别数,然后再根据实际需要修改网络模型(通常是瘦身)。下面记录几个point。 关于crop ... -
全连接层与卷积层替换的原因
2020-08-17 14:49:07out = (in+2p-k)/s+1 “SAME” 考虑下图: 现有一feature map:7X7X512,当其与相同尺寸的核进行卷积时就相当于矩阵的点积,...为啥要用卷积代替全卷积(全连接层)呢? 以下摘自:https://blog.csdn.net/ARYAD/artic -
全连接层 时间复杂度_CNN中使用卷积代替全连接
2021-01-16 09:32:40船长黑板报所有文章和代码的最新版本均在Captain1986/CaptainBlackboardgithub.com维护,知乎不...但是近些年来,越来越多的网络,比如SSD,FasterRCNN的RPN,MTCNN中的PNet,都使用卷积层来代替全连接,也一样可... -
全连接层的作用_CNN中使用卷积代替全连接
2020-11-30 19:11:18船长黑板报所有文章和代码的最新版本均在Captain1986/CaptainBlackboardgithub.com维护,知乎不...但是近些年来,越来越多的网络,比如SSD,FasterRCNN的RPN,MTCNN中的PNet,都使用卷积层来代替全连接,也一样可... -
vgg19全局平均池化代替全连接层_第四周[任务3]学习卷积和池化
2021-02-03 15:26:35一、任务简介斯坦福CS231n关于卷积和池化课程2017CS231n 斯坦福李飞飞...三、任务作业 1、卷积与全连接的区别卷积层可以保全空间结构,对于32*32*3的输入图像,不是把它展成一个长的向量,而是三维数据输入,可以... -
卷积神经网络中关于全局平均池化代替全连接层、以及参数计算等的一些思考
2020-05-10 22:06:13一、引发思考的实验与问题: ...按道理就算inception_v1模型有多尺度(并联卷积层)的设计思想,准确率和AUC的值是会提升,但不会提升这么多,而且在训练集的效果差距也太大了。 为了研究这个问题,我首先 -
1*1卷积层
2020-01-29 20:48:12Network in Network 这篇论文中 提出了 11卷积层,那么问题来了,为什么可以用11卷积层来代替全连接层 假设当前输入张量维度为6×6×32,卷积核维度为1×1×32,取输入张量的某一个位置(如图黄色区域)与卷积核进行... -
理解全连接层与GAP
2020-10-20 17:24:07所以现在会用一种GAP(全局平均池化)来代替全连接层。 GAP就是让一个H×W×C的输入变成一个1×1×C的输出,每个输出都是该层的像素的平均值。 假设卷积层的最后输出是h × w × d 的三维特征图,具体大小为6 × 6 ... -
第一问:1×1卷积层的作用?
2018-11-05 17:11:261×1卷积层在实现全卷积神经网络中经常用到,即使用1*1的卷积层替换到全连接层,这样可以不限制输入图片大小的尺寸,使网络更灵活。 实现跨通道的交互和信息整合。 1×1 的卷积层(可能)引起人们的重视是在 NIN 的... -
全卷积网络多层特征融合的飞机快速检测
2021-02-04 01:22:22用卷积层代替全连接层以减少网络参数并适应不同大小的输入图像;复用区域提取网络和检测网络的卷积层和学习的特征参数以保证检测的高效性。仿真结果表明, 与典型的飞机检测方法相比, 所提方法在测试集上取得了更高的...