计算机视觉与深度学习-经典网络解析-GoogLeNet-[北邮鲁鹏]

这里写目录标题

GoogLeNet

GoogLeNet的设计主要特点是引入了Inception模块,这是一种多尺度卷积结构,可以在不同尺度下进行特征提取。Inception模块使用了不同大小的卷积核和池化操作,并将它们的输出在通道维度上连接在一起,以获得更丰富的特征表示。

GoogLeNet还采用了一种称为"平均池化"(average pooling)的特殊池化方式来代替全连接层,以减少参数数量和计算量。此外,GoogLeNet还使用了辅助分类器(auxiliary classifier)来帮助训练深层网络,并通过附加的损失函数促进梯度的传播。

参考

论文原文

GoogLeNet模型结构

创新点

串联结构(如VGG)存在的问题

后面的卷积层只能处理前层输出的特征图;前层因某些原因(比如感受野限制)丢失重要信息,后层无法找回。

解决方案:每一层尽量多的保留输入信号中的信息。

Inception结构,它能保留输入信号中的更多特征信息

Inception 结构的主要思路是怎样用密集成分来近似最优的局部稀疏结构。

1、采用不同大小的卷积核意味着不同大小的感受野,最后拼接意味着不同尺度特征的融合;

2、 之所以卷积核大小采用1、3和5,主要是为了方便对齐。

设定卷积步长stride=1之后,只要分别设定pad=0、1、2,那么卷积之后便可以得到相同维度的特征。

3、3×3 max pooling 可理解为非最大化抑制。

文章说很多地方都表明pooling挺有效,所以Inception里面也嵌入了。保留且加强了原图中比较重要的信息。

4、网络越到后面,特征越抽象,而且每个特征所涉及的感受野也更大了,因此随着层数的增加,3x3和5x5卷积的比例也要增加。

5、1×1 3×3 5×5卷积,及3×3max pooling,通过设定合适的padding都会得到相同维度的特征,然后将这些特征直接拼接在一起。

但是,使用5x5的卷积核仍然会带来巨大的计算量。

为此,文章借鉴NIN2,采用1x1卷积核来进行降维。

具体改进后的Inception Module如下图:

例如:上一层的输出为100x100x128,经过具有256个输出的5x5卷积层之(stride=1,pad=2),输出数据为100x100x256。其中,卷积层的参数为128x5x5x256。

假如上一层输出先经过具有32个输出的1x1卷积层,再经过具有256个输出的5x5卷积层,那么最终的输出数据仍为100x100x256,但卷积参数量已经减少为128x1x1x32 + 32x5x5x256,大约减少了4倍。

层数更深、参数更少、计算效率更高、非线性表达能力也更强

去掉了AlexNet的前两个全连接层,并采用了平均池化

这一设计使得GoogLeNet只有500万参数,比AlexNet少了12倍

引入了辅助分类器

克服了训练过程中的梯度消失问题


问题1:平均池化向量化与直接展开向量化有什么区别?

特征响应图中位置信息不太重要,平均池化,忽略位置信息,可以很大节省计算量。

问题2: 利用1 x1卷积进行压缩会损失信息吗?

不会,假设图像或特征响应图深度通道为64,其中记录信息的只有少数,对应的向量非常稀疏,且其后的每个卷积核(深度通道也为64)都作用在这64个通道上。 经过压缩,并不会影响图像原始信息的记录。

相关推荐
QQ_7781329746 分钟前
从文本到视频:基于扩散模型的AI生成系统全解析(附PyTorch实现)
人工智能·pytorch·python
ljd21032312432 分钟前
opencv函数展示2
人工智能·opencv·计算机视觉
戈云 110639 分钟前
Spark-SQL
人工智能·spark
川穹冬菱草1 小时前
Ubuntu 20.04.6编译安装COMFAST CF-AX90无线网卡驱动
网络·编译安装·comfast cf-ax90·无线网卡驱动·linux网卡驱动·ubuntu网卡驱动·aic8800驱动
明明真系叻1 小时前
2025.4.20机器学习笔记:文献阅读
人工智能·笔记·机器学习
学术小八1 小时前
2025年机电一体化、机器人与人工智能国际学术会议(MRAI 2025)
人工智能·机器人·机电
爱的叹息1 小时前
关于 雷达(Radar) 的详细解析,涵盖其定义、工作原理、分类、关键技术、应用场景、挑战及未来趋势,结合实例帮助理解其核心概念
人工智能·分类·数据挖掘
许泽宇的技术分享1 小时前
.NET MCP 文档
人工智能·.net
anscos2 小时前
Actran声源识别方法连载(二):薄膜模态表面振动识别
人工智能·算法·仿真软件·actran
-曾牛2 小时前
【LangChain4j快速入门】5分钟用Java玩转GPT-4o-mini,Spring Boot整合实战!| 附源码
java·开发语言·人工智能·spring boot·ai·chatgpt