主流卷积神经网络CNN总结

ops/2024/11/14 15:01:05/

ResNet(2015)残差神经网络

残差结构

ResNet50具体卷积结构图

ResNeXt(2016)加入了分组卷积的思想,将原ResNet网络中的block替换成由group分组的block,两者得到的feature map一致,只是参数量更少了。

并且当block层数≥3时才有意义。经过验证,group数一般设置为32会取得最好的效果,每组卷积核4d,d表示倍数。

DenseNet(2017) 稠密连接卷积神经网络,所有层之间的连接提高了特征重用,避免了过拟合,加上瓶颈层和压缩层,减小了模型参数。

SE-ResNet(2017) SENet的核心思想是通过自适应地调整通道间的特征重要性来提升网络的表达能力。SE-Block嵌入堆叠在ResNet中形成了SE-ResNet。

SENet的基本结构是在卷积层后添加了一个Squeeze-and-Excitation模块。该模块通过全局平均池化操作来获取通道间的特征关系,然后使用两个全连接层来学习通道的权重。

最后,通过乘法操作将学习到的权重应用于输入特征图,以增强有用的特征并抑制无用的特征。

引入通道注意力机制,可以在众多的输入信息中聚焦于对当前任务更为关键的信息,降低对其他信息的关注度,甚至过滤掉无关信息,并提高任务处理的效率和准确性。

Res2Net(2019) 加入了多尺度的思想,将输入的特征图分为几组(一般是4组),每一组滤波器先从一组输入特征图中进行特征提取,

然后与先前组生成的特征图和另一组输入的特征图一起被送到下一组卷积核进行处理。这个过程将一直持续到所有特征图都被处理完毕。

最终,所有特征图将被并联在一起然后通过一个 1×1 的卷积层进行信息融合

ResNeSt(2020) 在ResNeXt的分组卷积思想基础上,再结合SE-Net的通道注意力机制思想,形成了分组通道注意力机制(Split-Attention)

SE-Net的注意力机制:

SE-Net主要关注的是通道注意力机制。它利用Squeeze-and-Excitation(SE)模块来学习每个特征通道的重要性,并为每个通道生成一个权重。

这个权重是通过全局平均池化压缩特征图的空间维度后,经过全连接层学习得到的。

这样,SE-Net就能够根据输入数据的特性自适应地调整不同通道的特征响应,使得网络更加关注那些对任务更有帮助的通道。

ResNest的注意力机制:

ResNest则采用了一种分裂注意力(Split-Attention)机制。它首先将输入特征图分为多个组(或称为分支),每个组经过独立的卷积操作。

然后,通过跨通道的注意力权重将这些组的结果加权求和。这种分裂注意力的设计使得ResNest能够同时关注多个特征通道,并从不同的视角或角度提取信息。

相同点:两者都利用了注意力机制来提高网络对特征图的利用能力,

使网络能够更加关注对任务有贡献的特征。

不同点:SE-Net主要关注通道注意力,通过为每个通道生成权重来重新调整特征图;

 而ResNest则采用了分裂注意力的方式,从多个视角提取特征,并通过跨通道的注意力权重进行融合。此外,ResNest的分裂注意力机制更加适合并行计算,可以提高训练效率。


http://www.ppmy.cn/ops/113667.html

相关文章

【数据结构】排序算法---基数排序

文章目录 1. 定义2. 算法步骤2.1 MSD基数排序2.2 LSD基数排序 3. LSD 基数排序动图演示4. 性质5. 算法分析6. 代码实现C语言PythonJavaCGo 结语 ⚠本节要介绍的不是计数排序 1. 定义 基数排序(英语:Radix sort)是一种非比较型的排序算法&…

如何在安卓設備上更換IP地址?

IP地址是設備在網路中的唯一標識,通過IP地址,網路能夠識別並與設備進行通信。本文將詳細介紹在安卓設備上更換IP地址的幾種方法。 在安卓設備上更換IP地址的方法 1. 使用Wi-Fi網路更換IP地址 最簡單的方法是通過Wi-Fi網路更換IP地址。步驟如下&#x…

【Gateway】Gateway Filter Factories

Predicate决定了请求由哪一个路由处理,如果在请求处理前后需要加一些逻辑,这就是Filter(过滤器)的作用范围了.Filter分为两种类型:Pre类型和Post类型 滤器的两种类型 Pre 类型过滤器: 执行时机: 在请求被转发到后端服务之前执行。作用: 可以用来执行鉴权、限流、请求日志记录、…

【C++指南】inline内联函数详解

💓 博客主页:倔强的石头的CSDN主页 📝Gitee主页:倔强的石头的gitee主页 ⏩ 文章专栏:《C指南》 期待您的关注 目录 引言 C为什么引入了inline来替代C语言中的宏 inline的基本用法 定义inline函数 inline的优势与…

【ARM】A64指令介绍及内存屏障和寄存器

A64指令集介绍 ISA : Instruction System Architecture 指令集总结 跳转指令 使用跳转指令直接跳转,跳转指令有跳转指令B,带链接的跳转指令BL ,带状态切换的跳转指令BX。 B 跳转指令,跳转到指定的地址执行程序。 BL 带链接的跳…

拓扑排序专题篇

目录 前言 课程表 课程表II 课程表IV 火星词典 前言 拓扑排序是指对一个有向无环图的节点进行排序之后得到的序列,如果存在一条从节点A指向节点B的边,那么在拓扑排序的序列中节点A出现在节点B的前面。一个有向无环图可以有一个或多个拓扑排序序列&a…

Linux(ubuntu)Makefile

一、Makefile简介 Makefile的必要性:嵌入式开发要将Linux移植到开发版上,而开发版没有图形界面。只能用终端,我们可以用gcc,但是很不方便。而Makefile能解决这个问题。 二、Makefile下载 终端输入:sudo apt install -y build-essential 三…

javascript检测数据类型的方法

1. typeof 运算符 typeof是一个用来检测变量的基本数据类型的运算符。它可以返回以下几种类型的字符串:“undefined”、“boolean”、“number”、“string”、“object”、“function” 和 “symbol”(ES6)。需要注意的是,对于 n…