四、经典网络9(Inception V3、V4)

inception 模块之间特征图的缩小,主要有下面两种方式:

右图是先进行 inception 操作,再进行池化来下采样,但是这样参数量明显多于左图 ( 比较方式同前文的降维后inception 模块 ) ,因此 v2 采用的是左图的方式,即在不同的 inception之间(35/17/8 的梯度)采用池化来进行下采样。
但是,左图这种操作会造成表达瓶颈问题,也就是说特征图的大小不应该出现急剧的衰减(只经过一层就骤降 ) 。如果出现急剧缩减,将会丢失大量的信息,对模型的训练造成困难。(上文提到的原则1

 因此,在 2015 12 月提出的 Inception V3 结构借鉴 inception 的结构设计了采用一 种并行的降维结构,如下图:

具体来说,就是在 35/17/8 之间分别采用下面这两种方式来实现特征图尺寸的缩小,如下图:

figure 5' 35/17 之间的特征图尺寸减小

 figure 6' 17/8 之间的特征图尺寸缩小

 这样就得到 Inception v3 的网络结构,如表所示。

Inception V4

其实,做到现在,inception模块感觉已经做的差不多了,再做下去准确率应该也不会有大的改变。但是谷歌这帮人还是不放弃,非要把一个东西做到极致,改变不了inception模块, 就改变其他的。

因此,作者Christian Szegedy设计了inception v4的网络,将原来卷积、池化的顺次连接(网络的前几层)替换为stem模块,来获得更深的网络结构。stem模块结构如下

Steam模块
stem模块

inception v4 中 的 inception 模 块 ( 分 别 为 inception A inception B inceptionC)

 inception v4 中的 reduction 模块(分别为 reduction A reduction B) 最终得到的 inception v4 结构如下图。

 Inception-ResNet-v2

ResNet(该网络介绍见卷积神经网络结构简述(三)残差系列网络)的结构既可以加速 训练,还可以提升性能(防止梯度弥散);Inception模块可以在同一层上获得稀疏或非稀疏 的特征。有没有可能将两者进行优势互补呢?

Christian Szegedy 等人将两个模块的优势进行了结合,设计出了 Inception-ResNet 网络。 (inception-resnet 有 v1 和 v2 两个版本,v2 表现更好且更复杂,这里只介绍了 v2) inception-resnet 的成功,主要是它的 inception-resnet 模块。 inception-resnet v2 中的 Inception-resnet 模块如下图

Inception-resnet 模块(分别为inception-resnet-A inception-resnet-B inception-resnet-C) Inception-resnet 模块之间特征图尺寸的减小如下图。(类似于inception v4)

inception-resnet-v2中的reduction模块(分别为 reduction A reduction B)最终得到的Inception-ResNet-v2网络结构如图(stem模块同inceptionv4).

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
Inception-v4是一种深度卷积神经网络,它是Inception系列网络的最新版本。它是通过结合Inception模块和残差连接来改进网络性能的。 Inception-v4网络的主要特点是使用了多个Inception模块和残差连接。Inception模块是一种特殊的卷积结构,它通过使用不同大小的卷积核和池化操作来捕捉不同尺度的特征。这种多尺度的特征提取有助于提高网络的表达能力和分类性能。 残差连接是一种跳跃连接的方式,它可以帮助信息在网络中更快地传播。通过将输入直接添加到输出中,残差连接可以减轻梯度消失问题,并加速网络的训练过程。 Inception-v4网络的设计目标是提高网络的准确率和速度。为了达到这个目标,Inception-v4网络采用了一系列的技巧和改进,包括使用更小的卷积核、使用批标准化、使用非对称卷积等。这些技巧和改进使得Inception-v4网络在图像分类、目标检测和语义分割等任务上取得了很好的性能。 以下是一个使用Inception-v4网络进行图像分类的示例代码: ```python import tensorflow as tf from tensorflow.keras.applications.inception_v3 import InceptionV3 from tensorflow.keras.preprocessing import image from tensorflow.keras.applications.inception_v3 import preprocess_input, decode_predictions import numpy as np # 加载预训练的Inception-v4模型 model = InceptionV3(weights='imagenet') # 加载图像并进行预处理 img_path = 'path_to_your_image.jpg' img = image.load_img(img_path, target_size=(299, 299)) x = image.img_to_array(img) x = np.expand_dims(x, axis=0) x = preprocess_input(x) # 使用模型进行预测 preds = model.predict(x) # 将预测结果解码为人类可读的标签 decoded_preds = decode_predictions(preds, top=3)[0] # 打印预测结果 for label, description, probability in decoded_preds: print(f'{label}: {description} (probability: {probability})') ``` 这段代码使用了TensorFlow的Keras库来加载预训练的Inception-v4模型,并使用该模型对输入图像进行分类预测。预测结果会输出前三个最有可能的标签及其对应的概率。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

满满myno

非常感谢对我创作的支持,爱你呦

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值