2. 卷积的经典模型

news2024/11/27 14:38:52

一、什么是卷积神经网络

卷积神经网络就是含有卷积层的网络。

二、有哪些经典的模型?每一次的技术进步在哪里?

  1. 卷积神经网络(LeNet)

LeNet第一次将卷积神经网络推上舞台,通过梯度下降训练卷积神经网络可以达到手写数字识别在当时最先进的结果。

LeNet交替使用卷积层和最大池化层后全连接层进行图像分类(使用sigmoid激活函数)。

2. 深度卷积神经网络(AlexNet)

Alex与LeNet结构类似,但使用了更多的卷积层和更大的参数空间来拟合大规模数据集ImageNet, 它是浅层神经网络和深度神经网络的分割线。

虽然看上去AlexNet的实现比LeNet的实现多了几行代码,但是观念上的转变和真正优秀的实验结果却令学术界付出了很多年。

   (1)与相对较小的LeNet相比,AlexNet包含8层变换(5层卷积,2层全连接隐藏层,1个全连接输出层)

(2)将sigmoid激活函数改为更简单的ReLU激活函数

(3)通过丢弃发来控制全连接层的模型复杂度

(4)引入大量图像增广,比如翻转、裁剪、颜色变化等,进一步扩大数据集来缓解过拟合。

3. 使用重复元素的网络(VGG)

VGG通过5个可以重复使用的卷积块来构造网络,根据每块里卷积层个数和输出通道数的不同可以定义出不同的VGG网络。

VGG比起AlexNet计算通常慢很多,也需要更多的内存或显存。

eg:VGG-11使用5个卷积块,前两块使用单卷积层,后三块使用双卷积层。第一块输出通道是64,之后每次对输出通道数翻倍,直到变为512.

4. 网络中的网络(NiN)

串联多个由卷积层和“全连接层”构成的小网络来构建一个深层网络。

(1)NiN重复使用由卷积层和代替全连接层的1*1卷积层构成的NiN块来构建深层网络。

卷积层:输入和输出是四维,样本、通道、高、宽

全连接层:输入和输出是二维,样本、特征

如果想在全连接层后加上卷积层,需要将全连接层变为四维,而1*1卷积层可以看成全连接层,使得空间信息自然传递到后面的层中。

(2)NiN去除了容易造成过拟合的全连接输出层,而是将其替换成NiN块和全局平均池化层。

好处是可以显著减小模型参数尺寸,从而缓解过拟合。然而,该设计有时会造成训练时间的增加。

NiN块:输出通道数等于标签类别数

全局平均池化层:对每个通道的所有元素求平均并直接用于分类

NiN的以上设计思想影响了后面一系列神经网络的设计。

5. 含并行连接的网络(GoogleNet)

(1)Inception 模块

Inception块通过不同窗口形状的卷积层和最大池化层来并行抽取信息,并使用1*1卷积层减少通道数从而降低模型的复杂度。

  在卷积网络中,如何设置卷积层的卷积核大小是一个关键问题,在Inception网络中,一个卷积层包含多个不同大小的卷积操作。eg:Inception模块同时使用1*1,3*3,5*5等不同大小的卷积核,并将得到的特征拼接起来作为输出特征映射。

(2)GooleNet将多个设计精细的Inception模块和其它层串联起来,其中Inception块的通道数分配之比是在ImageNet数据集上通过大量实验得来的。

(3)GoogleNet和它的后继者们一度是ImageNet上最高效的模型之一,在类似的测试精度下,它们的计算复杂度往往更低。

6. 残差网络(ResNet)

残差网络用于解决“退化现象”,当网络很深时,很小的数乘起来将会变成 0(梯度消失),很大的数乘起来会变得非常大(梯度爆炸)。 随着网络层不断的加深,模型的准确率先是不断的提高,达到最大值(准确率饱和),然后随着网络深度的继续增加,模型准确率毫无征兆的出现大幅度的降低。

为了解决梯度消失 / 爆炸的问题,添加了一个跳过 / 快捷方式连接,将输入 x 添加到经过几个权重层之后的输出中。输出为 H (x) = F (x) + x,权重层实际上是学习一种残差映射:F (x) = H (x) - x,即使权重层的梯度消失了,我们仍然始终具有标识 x 可以转移回较早的层。

7. 稠密连接网络(DenseNet)

        稠密连接网络(DenseNet)是一种深度卷积神经网络,通过在网络中引入密集连接(dense connection)来增强特征重用和梯度流动,从而提高模型的性能和泛化能力。

ResNet将函数展开为:

ResNet和DenseNet的关键区别在于,DenseNet输出是连接(用图中的[,]表示)而不是如ResNet的简单相加。 因此,在应用越来越复杂的函数序列后,我们执行从x到其展开式的映射:

        稠密网络主要由2部分构成:稠密块(dense block)和过渡层(transition layer)。 前者定义如何连接输入和输出,而后者则控制通道数量,使其不会太复杂。

 稠密块: 基本构建单元,每个Dense Block包含多个卷积层和一个跳跃连接(shortcut connection),其中每个卷积层的输入都是前面所有层的拼接。

过渡层:由于每个稠密块都会带来通道数的增加,使用过多则会过于复杂化模型。 而过渡层可以用来控制模型复杂度。 它通过1×1卷积层来减小通道数,并使用步幅为2的平均汇聚层减半高和宽,从而进一步降低模型复杂度

引用:

(186条消息) 深度学习知识点全面总结_GoAI的博客-CSDN博客

动手学深度学习 李沐

(194条消息) 卷积神经网络之 - 残差⽹络(RESNET)_视学算法的博客-CSDN博客

稠密连接网络(DenseNet) - 知乎 (zhihu.com)

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

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

相关文章

chatgpt赋能python:Python中取出中间文本的方法

Python中取出中间文本的方法 在Python开发中,我们常常需要从字符串中取出特定位置的文本,例如从一个网页源码中提取出指定的内容。而且,一份好的代码需要清晰易懂、高效可靠。那么,在Python中如何取出中间文本呢?下面…

超详细Redis入门教程——Redis 主从集群(下)

前言 本文小新为大家带来 Redis 主从集群 相关知识,具体内容包括哨兵机制实现(包括:哨兵机制简介,Redis 高可用集群搭建,Redis 高可用集群的启动,Sentinel 优化配置),哨兵机制原理&a…

史上最全网络安全面试题汇总

最近有不少小伙伴跑来咨询: 想找网络安全工作,应该要怎么进行技术面试准备?工作不到 2 年,想跳槽看下机会,有没有相关的面试题呢? 为了更好地帮助大家高薪就业,今天就给大家分享一份网络安全工…

vmware创建ubuntu服务器>>(使用xshell)配置连接

目录 引言服务器创建准备镜像创建服务器全过程新建虚拟机选择虚拟机硬件兼容性镜像选择服务器目录名和基础信息设置虚拟机命名和存储位置设置处理器配置内存配置网络选型下一步连续点击启动 服务器配置root用户密码设置root用户切换安装ssh服务并启动vmware-ssh配置链接 xshell…

算法(三)—— 双指针

文章目录 27 移除元素344 反转字符串(手写reverse)剑指 Offer 05 替换空格19 删除链表的倒数第N个节点面试题 02.07. 链表相交15 三数之和二、使用步骤1.引入库2.读入数据 总结 27 移除元素 题目:原地移除数组中值为val的元素 思路&#xff…

Jetson Orin Nano nvme系统备份和恢复

大家好,我是虎哥,Jeston Orin nano 8G模块,我自己也玩了一段时间,配置了很多环境后,我就在琢磨如何将系统像之前的模块一样捞取出来后,在新模块上进行恢复。过程是曲折的,结果也是曲折的&#x…

开源字节 考研集训营小程序

考研集训营的价格要比普通的班课贵很多,价格通常在上万元。考研集训营分为春季、暑期、秋季等短期集训营,还有半年和全年长期集训,为学生提供英语、数学、政治的公共课辅导和各种专业课的教学。想要了解更多的考研相关信息,获得适…

自然语言处理从入门到应用——自然语言处理的基本问题:结构预测问题

分类目录:《自然语言处理从入门到应用》总目录 与文本分类问题不同,在结构预测问题中,输出类别之间具有较强的相互关联性。例如,在词性标注任务中,一句话中不同词的词性之间往往相互影响,如副词之后往往出现…

1、mysql的安装与配置

下载安装配置 下载zip文件解压之后配置环境变量 在path后面添加mysql bin文件夹的路径:C:\Program Files (x86)\MySQL\bin 配置完环境变量后,在C:\Program Files (x86)\MySQL目录下新建一个配置文件mysql.ini,同时在bin的同级目录C:\Program …

算法的复杂度【数据结构】

1、时间复杂度 算法在编写成可执行程序后,运行时需要耗费时间资源和空间(内存)资源,因此衡量一个算法的好坏一般是从时间和空间两个维度来衡量的,即时间复杂度和空间复杂度时间复杂度主要衡量一个算法的运行快慢,而空间复杂度主要…

Jenkins安装配置

前言:Jenkins是一款CICD(持续集成与持续交付)工具。Jenkins可以帮你在写完代码后,一键完成开发过程中的一系列自动化部署的工作。 Jenkins 2.346.1 版本支持 jdk1.8 和 jdk11,最后一版支持jdk1.8的版本。 安装Jenkins前…

windows修改Pycharm的右键打开方式

title: windows中open floder as Pycharm太长了怎么修改 date: 2023-06-04 author: IoT_H2 tags: windows系统问题 categories: Markdown 问题描述: Pycharm这一栏这么长,长的我实在是很难受,事实上Jetbrains家的软件都是这个鸟模样 导…

RocketMq的单机版安装以及可视化软件的安装

一 RocketMq的单机版安装 1.1 RocketMq的上传 1.2 解压 [rootlocalhost export]# unzip rocketmq-all-4.9.6-bin-release.zip 1.3 修改配置 使用 vim 命令打开 bin/runserver.sh 文件。现将这些值修改为如下: [rootlocalhost bin]# vi runserver.sh 使用vim命令…

tinkerCAD入门操作(3):创建和操作分组对象

tinkerCAD入门操作(3):创建和操作分组对象 介绍 我们现在将探索Tinkercad的超能力 - 组合简单的形状来制作复杂的对象。 组合形状是实体建模的基本目的。这就是汽车、建筑物和宇宙飞船等有趣东西的制作方式。现在,我们要教你这个超能力。 创建复合形状…

Stable-Diffusion|window10安装GPU版本的 Stable-Diffusion-WebUI遇到的一些问题(一)

教程主要参考: AI绘画第一步,安装Stable-Diffusion-WebUI全过程 ! Stable Diffusion WebUI使用手冊(正體中文)|Ivon的部落格 具体记录一下笔者除了按照上述教程,遇到坑的地方 文章目录 1 git PYTHON2 Nvidia设置3 stable-diffus…

如何解决构建安防监控系统的技术难点?快解析来助力

在安防领域,大数据具有广阔的应用场景,能带来深度的价值。随着应用普及越来越广,安防监控系统被人们日益重视起来,科技含量越来越高,几乎所有高新科技都可促进其发展,尤其是信息时代的来临,更给该专业的发展提供了契机…

2023年全球项目管理系统排行榜:推荐15家值得关注的项目管理系统

在当今世界,管理项目已经成为许多企业不可分割的一部分。因此,拥有正确的项目管理系统对于确保任何业务的成功都是至关重要的。随着技术的不断发展,好用的项目管理系统也在不断发展,以满足现代工作场所日益增长的需求。到2023年&a…

区间预测 | MATLAB实现基于QRCNN-BiGRU-Multihead-Attention多头注意力卷积双向门控循环单元多变量时间序列区间预测

区间预测 | MATLAB实现基于QRCNN-GRU-Multihead-Attention多头注意力卷积双向门控循环单元多变量时间序列区间预测 目录 区间预测 | MATLAB实现基于QRCNN-GRU-Multihead-Attention多头注意力卷积双向门控循环单元多变量时间序列区间预测效果一览基本介绍模型描述程序设计参考资…

设计模式之-模板方法模式C++实现与C++模板template使用

介绍 模板方法模式使用比较常见,也比较简单,模板方法模式是属于设计模式中的行为设计模式。行为设计模式是关注对象的行为或者交互方面的内容,主要涉及算法和对象之间的职责分配。 模板方法模式使用场景:在设计需求中,…

超详细IDEA创建MavenWeb项目

文章目录 一、环境准备二、骨架方式创建Maven-Web项目三、非骨架方式创建Maven-Web项目 一、环境准备 既然是创建Maven-Web项目,那么首先我们需要配置好Maven和JDK环境,这里笔者使用JDK8版本以及Maven3.6系列版本。 附Maven安装配置教程 超详细Maven安装…