InceptionNet

 
Rethinking the Inception Architecture for Computer Vision
Christian Szegedy
Google Inc.
Vincent VanhouckeSergey IoffeJonathon Shlens
vanhoucke@google.com sioffe@google.com shlens@google.com
arXiv:1512.00567v3 [cs.CV] 11 Dec 2015
szegedy@google.com
Zbigniew Wojna
University College London
zbigniewwojna@gmail.com
  

核心

 
局部连接,参数共享,一个位置的核的计算结果对应一个点/数值,反之逆向也有一个对应关系

 
现代的设计理念为 多层小核,其效果与少层大核的一样 
但流量不一样,
大核每次计算的参数很大,层数虽然少了,但每次计算的参数量大
    
大核的感受视野大,小核的感受视野小,将不同视野的向量并起来,
这就是多尺度的概念

 
多尺度的思想是有价值的,是重要的,但不需要设计的如此复杂,
意思就是同样使用多尺度的思想,用更简单的设计也能达到同样的效果 
    

 
从不同的维度提取特征,然后 整合/融合,就是多尺度的思想 

这个整合/融合,通常是拼接,相加 

resnet使用的是相加,也叫短接,
这一加,就解决了DL因为层数多导致的梯度消失问题 
    

 

    

 


Inception详解
## Inception 模块 GoogLeNet(Inception V1)的核心创新是 **Inception 模块**,通过并行使用不同尺寸的卷积核来提取多尺度特征。 ### 基本结构 ``` 输入 ├──→ [1×1 卷积] ────────────────┐ ├──→ [1×1 卷积] → [3×3 卷积] ───┤ ├──→ [1×1 卷积] → [5×5 卷积] ───┤ → 通道拼接(Concat) └──→ [3×3 最大池化] → [1×1 卷积] ┘ ``` ### 特点 - **多尺度特征提取**:同时使用 1×1、3×3、5×5 卷积核 - **1×1 卷积降维**:在 3×3 和 5×5 卷积前使用 1×1 卷积减少通道数 - **参数效率高**:仅 4M 参数(远小于 VGG 的 138M) ### 输出尺寸计算 假设输入为 28×28×192: - 1×1 卷积(128通道):28×28×128 - 3×3 卷积(192→96→128):28×28×128 - 5×5 卷积(192→16→32):28×28×32 - 池化(192→32):28×28×32 **输出**:28×28×(128+128+32+32) = **28×28×320**
## 1×1 卷积的作用 1×1 卷积是 Inception 模块的关键组件,作用包括: ### 1. 降维(减少参数量) **示例**:输入 28×28×192,输出 28×28×32 - 直接使用 5×5 卷积:$5×5×192×32 = 153,600$ 参数 - 先 1×1 降维到 16,再 5×5:$1×1×192×16 + 5×5×16×32 = 3,072 + 12,800 = 15,872$ 参数 **参数量减少约 10 倍!** ### 2. 增加非线性 1×1 卷积后接激活函数,增加网络的非线性表达能力。 ### 3. 跨通道信息融合 1×1 卷积可以看作是对每个像素位置的所有通道进行线性组合,实现跨通道信息融合。 ### 公式 $$Output_{h,w} = \\sum_{c=0}^{C_{in}-1} W_c \\cdot Input_{h,w,c} + b$$
## GoogLeNet 网络结构 ``` 输入(224×224×3) → Conv(7×7,64,stride=2) → MaxPool → Conv(1×1,64) → Conv(3×3,192) → MaxPool → Inception(3a) → Inception(3b) → MaxPool → Inception(4a) → Inception(4b) → Inception(4c) → Inception(4d) → Inception(4e) → MaxPool → Inception(5a) → Inception(5b) → 全局平均池化 → Dropout → FC(1000) → Softmax ``` **辅助分类器**: - 在 Inception(4a) 和 Inception(4d) 后添加辅助分类器 - 用于缓解梯度消失问题 - 训练时使用,推理时移除 **总参数量**:约 4M(远小于 AlexNet 的 60M 和 VGG 的 138M)
## Inception 演进版本 ### Inception V2 (2015) **改进**:将大卷积核拆分为小卷积核 - 5×5 卷积 → 两个 3×3 卷积 - 参数量:$5×5 = 25$ → $3×3 + 3×3 = 18$(减少 28%) ### Inception V3 (2015) **改进**:非对称卷积分解 - n×n 卷积 → 1×n + n×1 - 3×3 卷积 → 1×3 + 3×1 - 参数量:$3×3 = 9$ → $1×3 + 3×1 = 6$(减少 33%) ### Inception V4 (2016) **改进**:更深的网络结构,结合 ResNet 的残差连接 - Inception + ResNet = Inception-ResNet
参考