DenseNet与ResNet

news2024/10/5 22:24:31

ResNet(深度残差网络)

深度残差网络
在这里插入图片描述

DenseNet

采用密集连接机制,即互相连接所有的层,每个层都会与前面所有层在channel维度上连接在一起,实现特征重用,作为下一层的输入。
这样不但缓解了梯度消失的现象,也使其可以在参数与计算量更少的情况下实现比ResNet更优的性能。
在这里插入图片描述

公式表示

H l ( ⋅ ) H_l(·) Hl()代表是非线性转化函数,是一个组合操作。其可能包括一系列的BN,ReLU,Pooling及Conv操作

传统的网络在l层的输出为:
x l = H l ( x l − 1 ) x_l=H_l(x_{l-1}) xl=Hl(xl1)
在这里插入图片描述

对于ResNet,增加了来自上一层输入:
x l = H l ( x l − 1 ) + x l − 1 x_l=H_l(x_{l-1})+x_{l-1} xl=Hl(xl1)+xl1
在这里插入图片描述

在DenseNet中,会连接前面所有层作为输入:
x l = H l ( [ x 0 , x 1 , . . . , x l − 1 ] ) x_l=H_l([x_{0},x_{1},... ,x_{l-1}]) xl=Hl([x0x1...xl1])
在这里插入图片描述
特征传递分方式是,直接将前面所有层的特征concat后传到下一层,而不是前面层都要有一个箭头指向后面所有层。
在这里插入图片描述

DenseNet网络结构

其密集连接方式需要特征图大小保持一致。所以Den seNet网络中使用DenseBlock+Transition的结构。
在这里插入图片描述
DenseBlock是包含很多层的模块,每个层的特征图大小相同,层与层之间采用密集连接方式。
Transition模块是连接两个相邻的DenseBlock,通过Pooling使特征图大小降低。
在这里插入图片描述
假定输入层的特征图channel数为 k 0 k_0 k0,DenseBlock中各个层卷积之后均输出k个特征图,即得到的特征图的channel数为k,那么l层输入的channel数为 k 0 + ( l − 1 ) k k_0+(l-1)k k0+(l1)k,我们将k称之为网络的增长率(Growth Rate),一般取k=12。
DenseBlock,采用了激活函数在前、卷积层在后的顺序,即BN-ReLU-Conv的顺序,这种方式也称为pre-activation。通常模型采用Conv-BN-ReLU,也被称为post-activation。作者证明,如果采用后者,性能会变差。

bottleneck层

由于后面层的输入会非常大,DenseBlock内部可以采用bottleneck层来减少计算量,主要是原有的结构中增加1*1 Conv,即
BN+ReLU+1✖️1 Conv+ BN+ReLU+3✖️3 Conv
称为DenseNet-B结构。其中1✖️1 Conv得到4k个(特征数量的4倍)特征图,作用是降低特征数量,从而提升计算效率。
在这里插入图片描述
每一个Bottleneck输出的特征通道数是相同的。
1✖️1 Conv的作用是固定输出通道数,达到降维的作用,其输出的通道数通常是GrowthRate的4倍。

Transition层

主要是连接两个相邻的DenseBlock,并且降低特征图大小,其结构为:
BN+ReLU+1✖️1 Conv+2✖️2 AvgPooling
起到压缩模型的作用。假设transition的上接denseblock得到的特征图channels数为m,transition层可以产生[µm]个特征(通过卷积层),其中µ=[0,1]为压缩系数。µ=1时,特征个数经过transition层没有变化,即无压缩;µ<1时,这种结构称为DenseNet-C,一般使用µ=0.5。
对于使用bottleneck层的denseblock结构和压缩系数小于1的transition组合结构称为DenseNet-BC

DenseNet的优势

1、更强的梯度流动、减轻了梯度消失;
2、减少了参数数量;
3、保存了低纬度的特征。在标准的卷积网络中,最终输出只会利用提取最高层次的特征,而在DenseNet中,使用了不同层次的特征,倾向于给出更平滑的决策边界。这也解释了为什么训练数据不足时DenseNet表现依旧良好。

DenseNet的不足

需要进行多次concat操作,数据需要被复制多次,显存容易增加得很快,需要一定的显存优化技术。另外,DenseNet是一种更为特殊的网络,ResNet则相对一般化一些,因此ResNet的应用范围更广泛。

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

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

相关文章

2023数维杯数学建模ABC题思路分析

占个位置吧&#xff0c;开始在本帖实时更新数维杯数学建模赛题思路代码&#xff0c;文章末尾获取&#xff01; 持续为更新参考思路 赛题思路 已完成全部可以领取&#xff0c;详情看文末&#xff01;&#xff01;&#xff01; 数维杯A题思路 A题是这次比赛比较难的题目&…

AI落地:如何用AI做出可用的PPT?

ChatGPT问世以来&#xff0c;很多工具都有了AI版。原来让我们头疼的PPT&#xff0c;这不现在也能一键生成了。 看了网友分享的各种一键生成PPT技术&#xff0c;真是牛。 很快没错&#xff0c;但是。。。缺点你是一句不提啊。 PPT做成这样&#xff0c;这要是直接用&#xff0c…

【MATLAB图像处理实用案例详解(8)】—— 图像数字水印算法

目录 一、背景意义二、基本原理三、算法介绍3.1 数字水印嵌入3.2 数字水印提取 四、程序实现 一、背景意义 数字水印技术作为信息隐藏技术的一个重要分支&#xff0c;是将信息(水印)隐藏于数字图像、视频、音频及文本文档等数字媒体中&#xff0c;从而实现隐秘传输、存储、标注…

基于等照度线和窗口匹配的图像修补算法

作者&#xff1a;翟天保Steven 版权声明&#xff1a;著作权归作者所有&#xff0c;商业转载请联系作者获得授权&#xff0c;非商业转载请注明出处 一、关于图像修补 图像修补的目的是基于已有的图像信息或数据库内信息&#xff0c;对缺失区域进行合理地修复。在诸多领域如电影、…

35个开源的工业软件-工业4.0

不同的工业流程&#xff0c;需要不同的工业软件。面向研发设计环节的开源软件&#xff0c;今天就来介绍一下面向生产控制环节的开源软件&#xff0c;主要为可编程逻辑控制器&#xff08;PLC)、分布式控制系统&#xff08;DCS&#xff09;、生产执行系统&#xff08;MES&#xf…

以“阵地战”打法,多样性算力攻坚数字经济基础设施

作者 | 曾响铃 文 | 响铃说 人人都知道数字化转型进入深水区后&#xff0c;对算力的渴求在不断增长。 包括政务、能源、金融、制造业等领域的数字化转型铆足了劲头&#xff0c;不断向那些数字基础设施索要源源不断的算力。 但是&#xff0c;更应该注意到的是&#xff0c;在…

Debian 12 “Bookworm” 的新特性和发布日期

导读Debian 12 即将发布。了解一下更多关于其新特性和发布日期的相关信息。 debian 12 Debian 即将发布系统代号为 “书虫” 的新版本。与 Debian 11 “Bullseye” 相比&#xff0c;有许多改进和新功能。 Debian 12 “Bookworm” 包含了超过 11200 个新软件包&#xff0c;软件…

泰克RSA306B频谱分析仪测试信道功率方法

泰克RSA306B实时频谱分析仪是一种用于无线信号分析的仪器。它可以实时监控无线信号的频谱&#xff0c;帮助用户分析信号特征&#xff0c;掌握信号的功率、频率、调制等关键信息。在无线通信中&#xff0c;信道功率是一个非常重要的指标&#xff0c;它反映了信号在传输过程中的强…

基于matlab使用广义互相关和三角测量来确定宽带信号源的位置

一、前言 此示例说明如何使用广义互相关 &#xff08;GCC&#xff09; 和三角测量来确定宽带信号源的位置。为简单起见&#xff0c;此示例仅限于由一个源和两个接收传感器阵列组成的二维方案。您可以将此方法扩展到两个以上的传感器或传感器阵列以及三维。 二、介绍 源定位不同…

速锐得工业物联网技术无线自动化解决方案在物流业的应用

物流业一直走在工业物联网的最前沿&#xff0c;因为许多工业物联网的机会和技术与物流业完美匹配。因此&#xff0c;物流业多年依赖一直使用许多工业物联网相关的传感器和技术。 例如&#xff0c;多年来&#xff0c;物流业一直在包装、托盘和集装箱中使用条形码&#xff0c;从9…

Redis(18. 面试题简析)学习笔记

上一篇 &#xff1a;17. Redis 分布式锁 - 周阳 下一篇 &#xff1a;18. 面试题简析 文章目录 1. 为什么要用缓存&#xff1f;2. redis 和 memcached 有什么区别&#xff1f;3. redis 的线程模型4. 为啥 redis 单线程模型也能效率这么高&#xff1f;5. redis 都有哪些数据类型…

CodeArts持续发力输出,华为云重塑软件开发

配图来自Canva可画 互联网时代&#xff0c;软件技术对企业成功的助益越来越明显。不管是为了顺遂大众趋势&#xff0c;还是迫于生存压力&#xff0c;可以确定的是&#xff0c;目前各类软件的开发已经被纳入众多企业的发展规划当中。 只是&#xff0c;长期以来国内软件行业一直…

机器学习回归任务指标评价及Sklearn神经网络模型评价实践

机器学习回归模型评价是指对回归模型的性能进行评估&#xff0c;以便选择最佳的回归模型。其中&#xff0c;MAE、MSE、RMSE 用于衡量模型预测值与真实值之间的误差大小&#xff0c;R 用于衡量模型对数据的拟合程度。在实际应用中&#xff0c;我们可以使用这些指标来评估回归模型…

git 撤销中间某次提交,保留其他提交的方法

今天上班脑抽了&#xff0c;吧test直接合到了uat,因为项目近期就我一个人开发&#xff0c;自己拉个三个分支再改不同的东西&#xff0c;最后都是发到test分支发测试&#xff0c;发生产的时候一个个和嫌麻烦&#xff0c;直接吧test分支怼到了uat&#xff0c;结果生产就出问题了&…

Revit插件 | 精装模块15个新功能正式上线,快来体验

大家好&#xff0c;这里是建模助手。 建模助手建模、算量、出图&#xff0c;一站搞定的——精装模块&#xff0c;正式上线了! 简单来说&#xff0c;精装模块就是辅助用户快速搭建精装修模型&#xff0c;便于后续的模型渲染、出量、出图工作。 目前暂时上线15个功能&#xff0…

ShardingSphere数据分片、读写分离、数据屏蔽教程

本文不讨论框架实现原理以及源码分析&#xff0c;只做功能使用案例说明 数据分片&#xff1a; 表分片可以帮助评论应用程序更有效地管理其不断增长的评论表&#xff0c;提高性能和可扩展性&#xff0c;同时还使备份和维护任务更易于管理 Apache ShardingSphere 有两种形式&am…

公众号推文添加附件秀米添加附件?三步轻松实现

很多人都不知道&#xff0c;其实公众号文章正文是支持添加附件的&#xff0c;只是需要借助一个叫做“文章附件”的网站来实现。公众号自身是不支持直接上传文件的&#xff0c;但是我们可以通过另外的方式来实现。 其实原理很简单&#xff0c;公众号文章中是可以添加小程序链接…

AOP(小卡拉米!!!)温故!

前面我们说了AOP底层是使用代理模式进行实现&#xff0c;spring写的接口是通过代理反射&#xff0c;实现方法&#xff0c;然后定义切入点&#xff1a; springAOP接口定义的方法有&#xff1a;被加强的方法前执行&#xff0c;被加强的方法后执行&#xff0c;出错了执行&#xf…

docker数据卷volume详细配置案例讲解

docker数据卷 文章目录 docker数据卷1.docker挂载宿主机数据卷1.2.具体配置1.3.挂载命令1.3.1访问页面 2.多端口的容器nginx配置2.1.创建目录位置2.2.访问结果 3.数据卷volume持久化配置3.1.语法格式3.2.详细参数3.3.操作案例3.4.数据改动3.5.查看卷的详细属性 4.与某个容器使用…

如何利用技术做到脱颖而出?亚马逊云科技泛娱乐高峰论坛为你揭秘

互联网技术的飞速进步与数字内容消费的蓬勃发展&#xff0c;使得泛娱乐市场越来越红火&#xff0c;用户对于高品质内容的个性化需求也在不断提升&#xff0c;这对技术底座也提出了更加严苛的要求&#xff0c;时代潮流已至&#xff0c;如何利用技术在一片红海中做到脱颖而出&…