VGG_多个3×3卷积层可看作是大尺寸卷积层的分解

标题1、为什么多个3×3卷积层可看作是大尺寸卷积层的分解?

假设图片(Input)尺寸为M×M,卷积核(Filter)大小为K×K,填充(Padding)为P,步长(stride)为s。
则卷积输出(Output)特征图大小为 = (M + 2P - K)/S +1
假设图片是28×28的:
(1)使用5×5的卷积核对其卷积,步长(stride)为1,填充(pad)为0,得到的结果是:(28-5)/1+1=24
(2)使用2个卷积核为3*3的,这里的两个是指2层,同样步长(stride)为1,填充(pad)为0
第一层3×3:得到的结果是=(28-3)/1+1=26
第二层3×3:得到的结果是=(26-3)/1+1=24
所以我们的最终结果和5×5的卷积核是一样的。

标题2、为什么多个小尺寸卷积层比一个大尺寸卷积层有更少的参数?

多个 3×3 的卷积层比一个大尺寸的filter有更少的参数,假设卷积层的输入和输出的特征图大小相同为C,那么三个3×3的卷积层参数个数为:3×((3×3×C)×C)=27×C×C;一个7*7的卷积层参数个数为:(7×7×C)×C=49×C×C。前者可以表达出输入数据中更多个强力特征,使用的参数也更少。唯一的不足是,在进行反向传播时,中间的卷积层可能会导致占用更多的内存;

标题3、为什么使用多个小卷积代替大卷积操作?

(1)3×3是最小的能够捕获像素八邻域信息的尺寸。
(2)两个3×3的堆叠卷基层的有限感受野是5×5;三个3×3的堆叠卷基层的感受野是 7×7,故可以通过小尺寸卷积层的堆叠替代大尺寸卷积层,并且感受野大小不变。所以可以把三个3×3的filter看成是一个7×7 filter的分解中间层有非线性的分解, 并且起到隐式正则化的作用。
(3)多个3×3的卷基层比一个大尺寸filter卷基层有更多的非线性(更多层的非线性函数,使用了3个非线性激活函数),使得判决函数更加具有判决性。
(4)多个 3×3 的卷积层比一个大尺寸的filter有更少的参数,

原文链接:https://blog.csdn.net/HaoTheAnswer/article/details/89883605
原文链接:https://blog.csdn.net/Dandelion_2/article/details/96318986

上一篇:手撸布隆过滤器


下一篇:【xLua热更新】 将xLua导入Unity工程