Inception v1 - v4 简单总结以及比较(笔记性质)
Inception概念结构借鉴了NIN的设计思路,用于增加网络的深度和宽度,提高神经网络性能。
Inception v1
Inception的提出主要考虑了多个不同size的卷积核能够增强网络的适应能力。但这种结构存在问题,每一层inception module的filters参数量为所有分支上的总和,多层inception后参数量会非常大,对计算资源有很大依赖。
于是又提出了1*1的卷积对inception进行降维,在不损失模型特征表征能力的情况下,尽量减少filters的数量,降低模型复杂度。
4个分支最后通过concatenation的方式进行通道合并。(如tf.concat(3, [], []))
Inception v2(BN诞生于V2)
v2学习了VGG使用两个3*3的卷积代替5*5的大卷积,在降低参数的同时建立了更多的非线性变换,使得CNN对特征的学习能力更强。
两个3 × 3 与一个5 × 5 的 效果类似
Inception v3
提出了将卷积核分解为小卷积的思想(Factorization into small convolution)。将一个较大的二维卷积拆成两个小的,如上图。比如将7 ×7 拆成1 ×7 和7 × 1比拆成3个3*3更加节约参数。而且增加了非线性用来扩展模型表达能力。这种非对称的拆分,比对称的拆为几个相同的小卷积核效果更加明显,可以处理更多、更丰富的空间特征。
另一方面优化了网络结构。实现NININ
Inception v4
结合了resnet