1*1卷积核作用,卷积参数计算,卷积计算量计算
记录一下吴恩达老师深度学习的第二周的笔记,全是文字记录推荐继续撸视频... .. .
添加截图了,增加瓶颈层的解释(听说是某面试题,,,)
一般的卷积运算可以压缩输入的长度和宽度,1*1卷积核可以整合各个数据通道信息缩小数据尺寸的深度,同时减小计算量
卷积核参数计算:卷积核的长度*卷积核的宽度*卷积核的个数
卷积计算量计算:输出数据大小*卷积核的尺寸*输入通道数
比如(懒得绘图)求输入28*28*192经过5*5*32的卷积核输出为28*28*32的参数大小和运算量大小
① 参数计算:5*5*32
② 运算量计算:(28*28*32)*(5*5)*(192)≈1.2亿
那么1*1卷积核是怎么通过压缩通道信息来减少计算量的呢?
我们把上面你那个例子改一下在中间添加以一个1*1的卷积核
28*28*192先通过一个1*1*16卷积核得到28*28*16的大小然后再经过5*5*32的卷积核得到28*28*32的输出,那么输入输出都和前面那个例子是一样的,只是中间多了一个1*1的卷积核。我们来计算一下现在的计算量
① (28*28*16)*(1*1)*(192)≈2.4M
②(28*28*32)*(5*5)*(16)≈10.0M
所以total computational cost ≈1240万和1.2亿相比
看到了吧,就是添加了一个1*1的卷积核就大大降低计算量的哦,同时应该注意添加了1*1产生的“bottleneck layer”的意思
The end.