本文对Inception模块进行介绍及原理分析
Inception 即盗梦空间,是电影中的一个梗~ ,取名GoogleNet 是Google团队向LeNet致敬之意。
贡献:
1. 合并1*1、3*3、5*5、pooling层
- 不需要人为决定采取1*1、3*3、5*5、pooling层
- 采用bottleneck layer(瓶颈层)大幅压缩计算量
CONV与pooling方式皆为same,对所有通道进行concat,得到28*28*(32+32+128+64=256)输出特征。
2.bottleneck layer(瓶颈层)大幅压缩计算量
瓶颈处中间窄两边粗,形如下图:
采用1*1压缩通道,再通过正常卷积扩充通道即可达到瓶颈的形状。
原始计算量:5*5*192*28*28*32=1.2亿
更改后计算量:1*1*192*28*28*16+5*5*16*28*28*32=0.12亿
计算方法可参考我的上一篇博客:
经过瓶颈层降低至0.1。
Inception模块
其中,pooling后的1*1用来降维。其它的1*1作为瓶颈层。原始的1*1单纯地添加非线性。
GoogleNet(Inception network)
至于Inception其它改进,今后慢慢介绍。