卷积常用网络
目录
- 1.AlexNet
- 2.VGG
- 3.GoogleNet
- 4.ResNet
- 5.MobileNet
1.AlexNet
AlexNet是2012年ISLVRC 2012(ImageNet Large Scale Visual Recognition Challenge)竞赛的冠军网络。
- 首次利用 GPU 进行网络加速训练。
- 使用了 ReLU 激活函数,而不是传统的 Sigmoid 激活函数以及 Tanh 激活函数。
- 使用了 LRN 局部响应归一化。
- 在全连接层的前两层中使用了 Dropout 随机失活神经元操作,以减少过拟合
2.VGG
VGG在2014年由牛津大学著名研究组VGG (Visual Geometry Group) 提出,斩获该年ImageNet竞 中 Localization Task (定位 任务) 第一名 和 Classification Task (分类任务) 第二名。
- 通过连续小的卷积核堆叠形成大的卷积核的效果
通过堆叠两个3x3的卷积核替代5x5的卷积核,堆叠三个3x3的卷积核替代7x7的卷积核。感受野不变,参数减小。
3.GoogleNet
GoogLeNet在2014年由Google团队提出,斩获当年ImageNet竞 中Classification Task (分类任务) 第一名。
-
使用1X1卷积核:可以升维降维,减少参数
使用1x1卷积核也可以代替全连接:从而使得输入层图片尺寸可变,加上适配不同输出通道的1x1卷积核就可以替代全连接 -
GoogleNet引入了Inception模块,该模块将不同尺寸的卷积核(1x1、3x3、5x5)和最大池化操作组合在一起,以并行的方式提取不同尺度的特征
-
辅助分类器:在网络中添加了辅助分类器,这有助于梯度的传播,避免梯度消失问题,并提供额外的训练信号以增强模型的稳定性和性能
-
丢弃全连接层,使用平均池化层(大大减少模型参数)
4.ResNet
ResNet在2015年由微软实验室提出,斩获当年ImageNet竞 中 分类任务第一名,目标检测第一名。获得COCO数据集中目标 检测第一名,图像分割第一名。
- 超深的网络结构(突破1000层)
- 提出residual模块
- 使用Batch Normalization加速训练(丢弃dropout)
残差网络(ResNet)之所以不会对信息造成损失,主要是因为它引入了残差学习的概念和残差连接(Shortcut Connection)的设计。以下是几个关键点,解释了为什么ResNet不会对信息造成损失:
残差连接:ResNet中的残差连接允许网络中的信息直接从较早的层传递到后面的层。这种设计确保了即使在深层网络中,信息也能有效地流动,不会在传播过程中丢失。
恒等映射:在残差模块中,如果增加的层仅仅是恒等映射(即输入直接传递到输出),那么网络的性能至少和浅层网络一样好。这意味着即使增加额外的层,也不会损害网络的性能。
梯度流动:残差连接使得梯度可以直接从输出层流向输入层,避免了深层网络中常见的梯度消失问题。这有助于网络在训练过程中有效地学习,并保持信息的完整性。
特征重用:通过残差连接,前面的层可以重用已经学习到的特征,而不需要重新学习。这有助于网络在深层结构中保持特征的丰富性和多样性。
网络退化问题解决:在传统的深度网络中,随着网络深度的增加,性能往往会饱和甚至下降,这被称为网络退化问题。ResNet通过残差学习解决了这个问题,使得网络可以有效地增加深度而不损失性能。
信息融合:ResNet允许不同层的特征图在残差连接处进行融合,这有助于整合不同层次的信息,提高网络的表示能力。
灵活性:ResNet的设计允许网络根据需要学习残差函数,这意味着网络可以灵活地调整其行为,以适应不同的数据和任务。
实验验证:ResNet在多个数据集和任务上的表现证明了其有效性。实验结果表明,ResNet可以训练更深的网络,同时保持或提高性能,这表明信息在网络中的传递是有效的。
总之,ResNet的设计哲学和残差连接机制确保了信息可以在深层网络中有效地流动和利用,从而避免了信息损失,使得网络能够从增加的深度中受益。
ResNeXt:在ResNet基础上对通道分组训练,既可以减少参数量,又可以提高准确率。
注意:分组训练仅对residual结构深度大于等于3有优化效果。
5.MobileNet
MobileNet网络是由google团队在2017年提出的,专注于移动端或者嵌入 式设备中的轻量级CNN网络。相比传统卷积神经网络,在准确率小幅降 低的前提下大大减少模型参数与运算量。(相比VGG16准确率减少了0.9%, 但模型参数只有VGG的1/32)
- Depthwise Convolution(大大减少运算量和参数数量)
- 增加超参数α、β控制通道数和图片尺寸
MobileNet v2网络是由google团队在2018年提出的,相比MobileNet V1网 络,准确率更高,模型更小。特点如下:
- mobileNetV2: Inverted Residual(倒残差结构)
- Liner Bottlenecks (部分网络去掉了激活函数)
在 MobileNetV2 架构中,“Linear bottlenecks” 是指网络中的一系列层,它们由深度可分离卷积(depthwise separable convolution)组成,用于在特征提取的同时减少计算量。这种结构通常包括以下几个步骤:
深度卷积(Depthwise Convolution):对输入通道进行卷积,每个输入通道通过各自独立的滤波器进行卷积运算。
逐点卷积(Pointwise Convolution):在深度卷积的输出上应用1x1的卷积,以组合通道并减少通道数量,达到降维的目的。
在 MobileNetV2 中,“Linear bottlenecks” 结构通常不使用激活函数,特别是在逐点卷积之后。这是因为:
降维目的:逐点卷积的主要目的是减少通道数,而不是引入非线性,因此在降维步骤之后通常不使用激活函数。
计算效率:避免在每个卷积层之后都使用激活函数可以减少计算量,这对于移动和嵌入式设备上的设计尤为重要。
MobileNetV2 在网络的某些部分使用了 ReLU6 激活函数,原因包括:
输出限制:ReLU6 激活函数将输出限制在 0 到 6 之间,这有助于防止梯度消失问题,并为后续层提供更稳定的输入。
网络设计:MobileNetV2 的设计者可能发现在特定位置使用 ReLU6 激活函数能够提高模型性能或稳定性。
特定层的需求:在网络的某些层,如特征混合层(feature mixing layers)或最终的分类层,使用激活函数可能有助于改善模型的表示能力。
实验结果:ReLU6 激活函数的选择可能是基于实验结果,设计者可能发现它在 MobileNetV2 的特定架构中能够提供更好的性能。ReLU激活函数对低位特征信息造成大量丢失。
MobileNetV2的网络结构:
MobileNetV2在分类和图像识别领域的效果:
(Top-1表示模型预测的前1个最高概率的准确率,Params表示参数,MAdds表示运算量,CPU表示一张图片的训练时间,P-1表示在Google手机设别Phone-1上的运行时间)
MobileNetV3比V2更准确高效,特点如下:
- 优化了bottleneck
- 使用NAS搜索参数
- 重新设计耗时层结构
V3效果如下:
相关文章:

卷积常用网络
目录 1.AlexNet2.VGG3.GoogleNet4.ResNet5.MobileNet 1.AlexNet AlexNet是2012年ISLVRC 2012(ImageNet Large Scale Visual Recognition Challenge)竞赛的冠军网络。 首次利用 GPU 进行网络加速训练。使用了 ReLU 激活函数,而不是传统的 Si…...

Firebase Local Emulator Suite详解
文章目录 Firebase Local Emulator Suite 组件安装和使用步骤1. 安装 Firebase CLI2. 初始化 Firebase 项目3. 配置模拟器4. 启动模拟器5. 配置应用程序使用本地模拟器 常见用途 Firebase Local Emulator Suite 是一组本地服务,可以模拟 Firebase 平台的在线服务&am…...

计算机组成原理·存储系统疑点归纳
组原这门课有点学得不是很懂,现在快考试了,挑几个做错了的题分析、记录一下。 N o . 1 \mathit{No}.1 No.1 x x x、 y y y 为定点整数,其格式为 1 1 1 位符号位、 n n n 位数值位,若采用补码一位乘法实现乘法运算,则…...

在 GPU 上实现全规模文件系统加速
摘要 现代高性能计算和人工智能计算解决方案经常使用 GPU 作为其主要计算能力来源。这就为 GPU 应用程序的存储操作造成了严重的不平衡,因为每一个此类存储操作都必须向 CPU 发出信号并由 CPU 处理。在 GPU4FS 中,我们针对这种不平衡提出了一个彻底的解决…...
代码随想录算法训练营Day7|454.四数相加II、 383. 赎金信、15. 三数之和、 18. 四数之和
454.四数相加II 四个数组分成两组进行for循环,先用HashMap存储所有第一组for循环出现的和的次数。再进行第二组for循环,每一次得出的和判断其负数是否在map的key中,如果存在,就加上这个value。 class Solution {public int four…...
编译器屏障概述
文章目录 1. 前言2. 编译器内存屏障2.1 编译器内存访问重排序规则2.2 编译器屏障的几种形式2.2.1 显式编译器屏障2.2.2 隐式编译器屏障2.2.3 硬件内存屏障充当编译屏障2.2.4 编程语言内存模型提供的编译屏障 2.3 编译器内存屏障实例2.3.1 Linux spinlock 3. 结语4. 参考资料 1.…...
RUST宏编程入门
宏指示符 在Rust的宏编程中,宏可以接受多种类型的参数,称为“指示符”。这些指示符帮助宏识别不同类型的代码片段,并相应地处理它们。 这里列出全部指示符: blockexpr 用于表达式ident 用于变量名或函数名itemliteral 用于字面常…...

linux安装srs
获取srs cd /opt git clone -b 4.0release https://gitee.com/ossrs/srs.git cd srs/trunk 启动srs ./objs/srs -c conf/srs.conf ./etc/init.d/srs status 访问http://192.168.220.146:8080/出现下方图片说明安装成功 点击进入SRS控制台看到下方图片...

IO流(2)
缓冲流 字节缓冲流 利用字节缓冲区拷贝文件,一次读取一个字节: public class test {public static void main(String [] args) throws IOException {//利用字节缓冲区来拷贝文件BufferedInputStream bisnew BufferedInputStream(new FileInputStream(&…...
【docker】docker启动bitnami/mysql
说明:-v 宿主机目录:docker容器目录,-p 同理 注意:/opt/bitnami/mysql/conf/bitnami 目录自定义conf的目录,不能使用原有的/opt/bitnami/mysql/conf 目录。 容器启动后可在宿主机的/宿主/mysql8.0/conf,添加my_custom.…...
边缘计算、云计算、雾计算在物联网中的作用
边缘计算和雾计算不像云那样广为人知,但可以为企业和物联网公司提供很多帮助。这些网络解决了物联网云计算服务无法解决的许多问题,并使分散的数据存储适应特定的需求。让我们分别研究一下边缘计算、雾计算和云计算的优势。 雾计算的好处 低延迟。雾网络…...
【c语言】探索内存函数
探索内存函数 memcpy函数memmove函数memset函数memcmp函数: memcpy函数 memcpy函数声明: void * memcpy ( void * destination, const void * source, size_t num );将source空间下的num个字符复制到dest中去 函数的使用: 将字符数组a的5字…...

day46 完全背包理论基础 518. 零钱兑换 II 377. 组合总和 Ⅳ
完全背包理论基础 有N件物品和一个最多能背重量为W的背包。第i件物品的重量是weight[i],得到的价值是value[i] 。每件物品都有无限个(也就是可以放入背包多次),求解将哪些物品装入背包里物品价值总和最大。 01背包内嵌的循环是从…...

【linux】运维-基础知识-认知hahoop周边
1. HDFS HDFS(Hadoop Distributed File System)–Hadoop分布式文件存储系统 源自于Google的GFS论文,HDFS是GFS的克隆版 HDFS是Hadoop中数据存储和管理的基础 他是一个高容错的系统,能够自动解决硬件故障,eg:…...

Python自动实时查询预约网站的剩余名额并在有余额时发邮件提示
本文介绍基于Python语言,自动、定时监测某体检预约网站中指定日期的体检余额,并在有体检余额时自动给自己发送邮件提醒的方法。 来到春招末期,很多单位进入了体检流程。其中,银行(尤其是四大行)喜欢“海检”…...

Flutter 验证码输入框
前言: 验证码输入框很常见:处理不好 bug也会比较多 想实现方法很多,这里列举一种完美方式,完美兼容 软键盘粘贴方式 效果如下: 之前使用 uniapp 的方式实现过一次 两种方式(原理相同)࿱…...
如何从0到设计一个CRM系统
什么是CRM 设计开始之前,先来了解一下什么是CRM。CRM(Customer Relationship Management)是指通过建立和维护与客户的良好关系,达到满足客户需求、提高客户满意度、增加业务收入的一种管理方法和策略。CRM涉及到跟踪和管理客户的所…...

Numba 的 CUDA 示例 (2/4):穿针引线
本教程为 Numba CUDA 示例 第 2 部分。 按照本系列从头开始使用 Python 学习 CUDA 编程 介绍 在本系列的第一部分中,我们讨论了如何使用 GPU 运行高度并行算法。高度并行任务是指任务完全相互独立的任务,例如对两个数组求和或应用任何元素函数。 在本教…...
项目的各个阶段如何编写标准的Git commit消息
标准提交消息格式 一个标准的提交消息应包括三部分:标题(summary)、正文(description)和脚注(footer)。 1. 标题(Summary) 简洁明了,不超过50个字符。使用…...

Python课设-学生信息管理系统
一、效果展示图 二、前端代码 1、HTML代码 <1>index.html <!DOCTYPE html> <html lang"en"><head><meta charset"UTF-8"><meta name"viewport" content"widthdevice-width, initial-scale1.0">…...

《Qt C++ 与 OpenCV:解锁视频播放程序设计的奥秘》
引言:探索视频播放程序设计之旅 在当今数字化时代,多媒体应用已渗透到我们生活的方方面面,从日常的视频娱乐到专业的视频监控、视频会议系统,视频播放程序作为多媒体应用的核心组成部分,扮演着至关重要的角色。无论是在个人电脑、移动设备还是智能电视等平台上,用户都期望…...
镜像里切换为普通用户
如果你登录远程虚拟机默认就是 root 用户,但你不希望用 root 权限运行 ns-3(这是对的,ns3 工具会拒绝 root),你可以按以下方法创建一个 非 root 用户账号 并切换到它运行 ns-3。 一次性解决方案:创建非 roo…...

苍穹外卖--缓存菜品
1.问题说明 用户端小程序展示的菜品数据都是通过查询数据库获得,如果用户端访问量比较大,数据库访问压力随之增大 2.实现思路 通过Redis来缓存菜品数据,减少数据库查询操作。 缓存逻辑分析: ①每个分类下的菜品保持一份缓存数据…...

SpringBoot+uniapp 的 Champion 俱乐部微信小程序设计与实现,论文初版实现
摘要 本论文旨在设计并实现基于 SpringBoot 和 uniapp 的 Champion 俱乐部微信小程序,以满足俱乐部线上活动推广、会员管理、社交互动等需求。通过 SpringBoot 搭建后端服务,提供稳定高效的数据处理与业务逻辑支持;利用 uniapp 实现跨平台前…...
uniapp中使用aixos 报错
问题: 在uniapp中使用aixos,运行后报如下错误: AxiosError: There is no suitable adapter to dispatch the request since : - adapter xhr is not supported by the environment - adapter http is not available in the build 解决方案&…...
OpenLayers 分屏对比(地图联动)
注:当前使用的是 ol 5.3.0 版本,天地图使用的key请到天地图官网申请,并替换为自己的key 地图分屏对比在WebGIS开发中是很常见的功能,和卷帘图层不一样的是,分屏对比是在各个地图中添加相同或者不同的图层进行对比查看。…...
【碎碎念】宝可梦 Mesh GO : 基于MESH网络的口袋妖怪 宝可梦GO游戏自组网系统
目录 游戏说明《宝可梦 Mesh GO》 —— 局域宝可梦探索Pokmon GO 类游戏核心理念应用场景Mesh 特性 宝可梦玩法融合设计游戏构想要素1. 地图探索(基于物理空间 广播范围)2. 野生宝可梦生成与广播3. 对战系统4. 道具与通信5. 延伸玩法 安全性设计 技术选…...

OPenCV CUDA模块图像处理-----对图像执行 均值漂移滤波(Mean Shift Filtering)函数meanShiftFiltering()
操作系统:ubuntu22.04 OpenCV版本:OpenCV4.9 IDE:Visual Studio Code 编程语言:C11 算法描述 在 GPU 上对图像执行 均值漂移滤波(Mean Shift Filtering),用于图像分割或平滑处理。 该函数将输入图像中的…...

html css js网页制作成品——HTML+CSS榴莲商城网页设计(4页)附源码
目录 一、👨🎓网站题目 二、✍️网站描述 三、📚网站介绍 四、🌐网站效果 五、🪓 代码实现 🧱HTML 六、🥇 如何让学习不再盲目 七、🎁更多干货 一、👨…...

2025季度云服务器排行榜
在全球云服务器市场,各厂商的排名和地位并非一成不变,而是由其独特的优势、战略布局和市场适应性共同决定的。以下是根据2025年市场趋势,对主要云服务器厂商在排行榜中占据重要位置的原因和优势进行深度分析: 一、全球“三巨头”…...