深度学习(07)-- 经典CNN网络结构(Inception (v1-v4))

文章目录

  • 目录
    • 1.Inception介绍
      • 1.1 Inception结构
      • 1.2 Inception V1(GoogleNet)
      • 1.3 Inception V2(Batch Norm)
      • 1.4 Inception V3(Factorization)
      • 1.5 Inception V4(ResNet)
      • 1.5 Inception v1~v4 总结
      • 1.6 Inception进阶
    • 2.Inception实现

目录

1.Inception介绍

1.1 Inception结构

在这里插入图片描述
在这里插入图片描述

1.2 Inception V1(GoogleNet)

Naive Inception
在这里插入图片描述
在这里插入图片描述
Inception Module
在这里插入图片描述
GoogLeNet
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

1.3 Inception V2(Batch Norm)

在这里插入图片描述
在这里插入图片描述

1.4 Inception V3(Factorization)

在这里插入图片描述

1.5 Inception V4(ResNet)

Inception V4 相比 V3 主要是结合了微软的 ResNet,将错误率进一步减少到 3.08%。

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

1.5 Inception v1~v4 总结

在这里插入图片描述

1.6 Inception进阶

Inception v4 、Inception ResNet v1、Inception ResNet v2

Inception V4 网络模型 Vs Inception ResNet 模型:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

2.Inception实现

inceptionV2

def Conv2d_BN(x, filters, kernel_size, padding='same', strides=(1,1), name=None):if name is not None:bn_name   = name + '_bn'conv_name = name + '_conv'else:bn_name   = Noneconv_name = Nonex = Conv2D(filters=filters, kernel_size=kernel_size, padding=padding, strides=strides, activation='relu', name=conv_name)(x)x = BatchNormalization(axis=3, name=bn_name)(x)return xdef Inception(x, filters):branch_1x1 = Conv2d_BN(x, filters=filters, kernel_size=(1,1), padding='same', strides=(1,1), name=None)branch_3x3 = Conv2d_BN(x,          filters=filters, kernel_size=(1,1), padding='same', strides=(1,1), name=None)branch_3x3 = Conv2d_BN(branch_3x3, filters=filters, kernel_size=(3,3), padding='same', strides=(1,1), name=None)branch_5x5 = Conv2d_BN(x,          filters=filters, kernel_size=(1,1), padding='same', strides=(1,1), name=None)branch_5x5 = Conv2d_BN(branch_5x5, filters=filters, kernel_size=(5,5), padding='same', strides=(1,1), name=None)branch_pool = MaxPooling2D(pool_size=(3,3), strides=(1,1), padding='same')(x)branch_pool = Conv2d_BN(branch_pool, filters=filters, kernel_size=(1,1), padding='same', strides=(1,1), name=None)x = concatenate([branch_1x1, branch_3x3, branch_5x5, branch_pool], axis=3)return xdef Inception_v2(input_shape=(64,64,3), classes=6):x_input = Input(input_shape)"stage 1: "x = Conv2d_BN(x_input, filters=4, kernel_size=(5,5), strides=(1,1), padding='same')x = MaxPooling2D(pool_size=(3,3), strides=(2,2), padding='same')(x)x = Conv2d_BN(x, filters=8, kernel_size=(1,1), strides=(1,1), padding='same')x = Conv2d_BN(x, filters=8, kernel_size=(3,3), strides=(1,1), padding='same')x = MaxPooling2D(pool_size=(3,3), strides=(2,2), padding='same')(x)"stage 2: Inception_v2_block (*2)"x = Inception(x, 16)  #4*16=64x = Inception(x, 16)x = MaxPooling2D(pool_size=(3,3), strides=(2,2), padding='same')(x)"stage 3: Inception_v2_block (*5)"x = Inception(x, 32)x = Inception(x, 32)x = Inception(x, 32)  x = Inception(x, 64)x = Inception(x, 64)x = MaxPooling2D(pool_size=(3,3), strides=(2,2), padding='same')(x)  "stage 4: Inception_v2_block (*2)"x = Inception(x, 128) x = Inception(x, 128)x = AveragePooling2D(pool_size=(4,4), strides=(1,1), padding='same')(x)x = Flatten()(x)"stage 5: fc"x = Dropout(0.5)(x)  x = Dense(6,activation='softmax')(x)  model = Model(inputs=x_input, outputs=x, name='Inception_v2')return model

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/445300.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Python(13)-函数,lambda语句

函数1 函数定义2 函数调用3 函数注释文档4 函数参数4.1 参数列表,默认参数,任意参数4.1.1 无缺省值参数4.1.2(部分)缺省值参数4.1.3 数量不定形参数4.2 可变对象和不可变对象4.3 作用域4.3.1 globals()函数4.3.2 global 声明变量为全局变量5 函数返回值5…

深度学习(08)-- Residual Network (ResNet)

文章目录目录1.残差网络基础1.1基本概念1.2VGG19、ResNet34结构图1.3 梯度弥散和网络退化1.4 残差块变体1.5 ResNet模型变体1.6 Residual Network补充1.7 1*1卷积核(补充)2.残差网络介绍(何凯明)3.ResNet-50(Ng)3.1 非常深的神经网…

redis——命令请求的执行过程

发送命令请求 当用户在客户端中键入一个命令请求时, 客户端会将这个命令请求转换成协议格式, 然后通过连接到服务器的套接字, 将协议格式的命令请求发送给服务器。 读取命令请求 当客户端与服务器之间的连接套接字因为客户端的写入而变得可…

深度学习(09)-- DenseNet

文章目录目录1.DenseNet网络结构2.稠密连接及其优点3.代码实现4.补充说明目录 1.DenseNet网络结构 2.稠密连接及其优点 每层以之前层的输出为输入,对于有L层的传统网络,一共有L个连接,对于DenseNet,则有L*(L1)/2。 这篇论文主要…

redis——缓存击穿/穿透/雪崩

缓存穿透 一般的缓存系统,都是按照key去缓存查询,如果不存在对应的value,就去后端系统查找(比如DB)。 一些恶意的请求会故意查询不存在的key,请求量很大,就会对后端系统造成很大的压力。这就叫做缓存穿透…

python(15)-window7配置iPython

前提:安装了Pythonanaconda anaconda安装参考:https://www.zhihu.com/question/58033789 在window系统下可以使用两种方法来实现类似与于Linux终端命令运行程序的方法(推荐方式2): 1.cmd:自己没有操作过,可以参考下面…

深度学习(10)-- Capsules Networks(CapsNet)

版权声明&#xff1a;本文为博主原创文章&#xff0c;未经博主允许不得转载。 https://blog.csdn.net/malele4th/article/details/79430464 </div><div id"content_views" class"markdown_views"><!-- flowchart 箭头图标 勿删 --&g…

手把手maven的功能/安装/使用/idea集成

看这篇文章不用着急安装&#xff0c;跟着步骤一定会成功&#xff0c;要理解maven是什么&#xff0c;如何使用。 介绍 maven官网 对于一个小白来说&#xff0c;官网有用的信息就是这些 不管如何介绍maven&#xff0c;作为使用者来说&#xff0c;主要感觉两个方面有帮助&#x…

python(16)-列表list,for循环

高级数据类型--列表1列表定义2列表中取值3列表的增&#xff0c;删&#xff0c;查&#xff0c;改3.1修改指定位置的数据3.2确定指定元素的索引3.3增加操作3.4删除操作3.5 元素是否存在与列表中 in3.6在指定索引位置插入元素4列表的数据统计5列表排序6列表的循环遍历-for7多维度l…

深度学习(11)-- GAN

TensorFlow &#xff08;GAN&#xff09; 目录 TensorFlow &#xff08;GAN&#xff09;目录1、GAN1.1 常见神经网络形式1.2 生成网络1.3 新手画家 & 新手鉴赏家1.4 GAN网络1.5 例子 1、GAN 今天我们会来说说现在最流行的一种生成网络, 叫做 GAN, 又称生成对抗网络, 也…

redis——数据结构和对象的使用介绍

redis官网 微软写的windows下的redis 我们下载第一个 额案后基本一路默认就行了 安装后&#xff0c;服务自动启动&#xff0c;以后也不用自动启动。 出现这个表示我们连接上了。 redis命令参考链接 String 字符串结构 struct sdshdr{//记录buf数组中已使用字节的数量int …

Python模块(1)-Argparse 简易使用教程

argparse 简易使用教程1.概况2. action3. argparse 使用demo3.1 argparse 实现加法器3.2 D-Model parser1.概况 argparse是Python中用于解析命令行参数的一个模块&#xff0c;可以自动生成help和usage信息&#xff1b;当从终端输入的参数无效时&#xff0c;模块会输出提示信息…

redis——NOSQL及redis概述

NoSql入门概述 单机Mysql的美好时代 瓶颈&#xff1a; 数据库总大小一台机器硬盘内存放不下数据的索引&#xff08;B tree&#xff09;一个机器的运行内存放不下访问量&#xff08;读写混合&#xff09;一个实例不能承受Memcached&#xff08;缓存&#xff09; MySql 垂直拆…

Python(17)-元组tuple

高级数据类型--元组1.元组的定义2.元组基本操作3.元组的循环遍历4.元组的应用场景5.元组与格式化字符串6.元组与列表之间的转换元组的最大特征就是可访问不可改&#xff0c;可作为字典的键值&#xff0c;因为键值必须是唯一的。字符串也是不可边类型&#xff0c;因此也适合做字…

深度学习(莫烦 神经网络 lecture 3) Keras

神经网络 & Keras 目录 神经网络 & Keras目录1、Keras简介1.1 科普: 人工神经网络 VS 生物神经网络1.2 什么是神经网络 (Neural Network)1.3 神经网络 梯度下降1.4 科普: 神经网络的黑盒不黑1.5 Why Keras?1.6 兼容 backend 2、如何搭建各种神经网络2.1 Regressor回归…

阿里Java编程规约(集合)

【强制】关于 hashCode 和 equals 的处理&#xff0c;遵循如下规则&#xff1a; 1&#xff09; 只要覆写 equals&#xff0c;就必须覆写 hashCode。 2&#xff09; 因为 Set 存储的是不重复的对象&#xff0c;依据 hashCode 和 equals 进行判断&#xff0c;所以 Set 存储的对…

Pytorch(3)-数据载入接口:Dataloader、datasets

pytorch数据载入1.数据载入概况Dataloader 是啥2.支持的三类数据集2.1 torchvision.datasets.xxx2.2 torchvision.datasets.ImageFolder2.3 写自己的数据类&#xff0c;读入定制化数据2.3.1 数据类的编写map-style范式iterable-style 范式2.3.2 DataLoader 导入数据类1.数据载入…

大数据学习(5)-- NoSQL数据库

文章目录目录1.NoSQL的介绍2.NoSQL产生的原因2.1 web2.02.2 NoSQL兴起原因3.NoSQL和关系数据库的区别4.NoSQL的四大类型4.1 键值数据库4.2 列族数据库4.3 文档数据库4.4 图形数据库4.5 不同类型的NoSQL数据库进行比较5.NoSQL的三大基石5.1 CAP5.2 base5.3 最终一致性6.从NoSQL到…

经典算法重点总结

文章目录排序算法冒泡排序直接插入排序希尔排序直接选择排序快速排序堆排序归并排序总结查找算法顺序查找二分查找插值查找斐波那契查找树表查找分块查找哈希查找总结排序算法 冒泡排序 void bubbleSort(int a[] , int n){for(int i n-1 ; i > 0 ; i--){for(int j 0 ; j …

redis——HyperLogLog

HyperLogLog 是一种概率数据结构&#xff0c;用来估算数据的基数。数据集可以是网站访客的 IP 地址&#xff0c;E-mail 邮箱或者用户 ID。 基数就是指一个集合中不同值的数目&#xff0c;比如 a, b, c, d 的基数就是 4&#xff0c;a, b, c, d, a 的基数还是 4。虽然 a 出现两次…