位置: IT常识 - 正文

残差网络(Residual Network,ResNet)原理与结构概述(残差网络中的残差指的是什么)

编辑:rootadmin
残差网络(Residual Network,ResNet)原理与结构概述

推荐整理分享残差网络(Residual Network,ResNet)原理与结构概述(残差网络中的残差指的是什么),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:残差网络结构,残差网络的原理,残差网络层数,残差网络层数,残差网络的原理,残差网络的原理,残差网络中的残差指的是什么,残差网络中的残差指的是什么,内容如对您有帮助,希望把文章链接给更多的朋友!

  残差网络是为了解决模型层数增加时出现梯度消失或梯度爆炸的问题而出现的。传统的神经网络中,尤其是图像处理方面,往往使用非常多的卷积层、池化层等,每一层都是从前一层提取特征,所以随着层数增加一般会出现退化等问题。残差网络采取跳跃连接的方法避免了深层神经网络带来的一系列问题。

一:对模型原理与优点的理解

  首先,我们把网络层看成是映射函数。(1)在传统的前馈网络中,网络中堆叠的层可以将输入x映射为F(x),这一整体网络的输出为H(x),F(x)=H(x)。但是对于恒等映射函数f(x)=x,即网络的输入与输出相等,直接让这样的层去拟合这样的恒等映射函数会很困难,不过f(x)=0还是比较容易训练拟合的。(2)所以我们可以让输出H(x)=F(x)+x,这样如果整体网络H(x)需要是恒等映射,只需要把堆叠层拟合成F(x)=0即可。

  从另一角度考虑,在以往的网络中,都试图通过堆叠不同的层找到可将输入x映射为输出H(x)的函数,而残差网络的目的并不是学习x到H(x)的映射,而是x与H(x)的不同,这也正是“残差”一词名称由来。残差F(x)=H(x)-x,所以我们尝试学习F(x)+x,而不是像(1)直接学习H(x)。(这样解释或许有些牵强,但事实的确如此。)

  当然,还有一种说法是拟合H(x)-x与(1)中那样直接拟合F(x)相比更简单,这和开始部分提到的恒等映射函数不好优化这种说法是一致的。

  对于模型优点原理的各种解释并不是模型的重心,毕竟这些解释建立在实验事实之上,如果这样的模型并不理想,一切解释都是徒劳的,不过这些内容有助于我们对这一类网络的构想过程的理解。

二:模型结构

  ResNet的种类是很多的,如ResNet-18,ResNet-34,ResNet-50,ResNet-101,ResNet152等。但是它们的基本结构都是相同的——由多层相同的ResNet block重复堆叠而成。ResNet block特点是由若干层网络(这里表示为Layers)组成,输出为网络的输出与输入的加和。

残差网络(Residual Network,ResNet)原理与结构概述(残差网络中的残差指的是什么)

 上图表示一个ResNet block,下图为重复的结构。

 这里的加是两个张量相加。所以我们要保证x与layers后的输出形状相同,否则无法相加。这取决于Layers内部结构。在图像处理方面,常用的是采取卷积核为3,padding为1的两个卷积层处理,这样可以不改变张量形状。

  当然,理论上ResNet block只要保证输出形状与输入形状相同即可。所以我们可以根据实际需要以及卷积层、池化层等输出输入维度计算公式来设计ResNet block。但是一般ResNet block内部不会有太多结构,毕竟一般都是用它来实现深层网络,使用时一般会使用几个或数十个这样的block。

三:ResNet block的其它结构

  (二)中讲解的结构是最ResNet block中最基本的一种,即输入与输出直接相加。但实际的连接方式可以是多种多样的。在百度百科中介绍有以下六种,其中的a对应前面(二)。后面的五种虽然稍显复杂,但总体结构基本相同,最终也都是形状相同的张量相加。

三:关于跳跃连接(skip connection),残差连接(residual connection)与捷径连接(shoutcut connection)的一些问题

  这几个词在ResNet、Inception、DenseNet等文章中很常见。兔兔在前面只是说输入与输出相加,实际这个过程就是连接。有人说只要是模型内两个位置的连接即为跳跃连接,跳跃连接(skip connection)是很广泛的概念;残差连接(residual connection)是残差网络中的跳跃连接,也就是跳跃连接在残差网络中叫做残差连接(毕竟残差网络有一特点,所有的连接都是有规律的,是一块一块地连接)。而捷径连接(shortcut connection)可以理解为绕过中间的层去和后面输出连接,本质上体现的也是残差连接这个过程;也有人说捷径连接这个称呼可以理解为跳跃连接和残差连接最早定义,当时还是上个世纪,人工智能发展缓慢,人们使用这种连接主要用于全连接层网络;但是目前来看,这三种东西是用一个事物的不同称呼,只不过侧重点不同而已。

四:算法实现

如果直接使用ResNet模型,可以调用torchvision库。

from torchvision.models.resnet import resnet18resnet18=resnet18()print(resnet18)

上述代码可以查看模型内部结构,并且该模型可以直接进行训练,或者作为其它网络的一部分。

下面兔兔以(二)为例,简要地实现该部分,代码如下。

from torch import nnfrom torch.nn import functional as Fclass ResNetBlock(nn.Module): def __init__(self): super(ResNetBlock, self).__init__() self.conv1=nn.Conv2d(kernel_size=3,in_channels=4,out_channels=3,padding=1) self.conv2=nn.Conv2d(kernel_size=4,in_channels=3,out_channels=3,padding=1) self.bn1=nn.BatchNorm2d(4) self.bn2=nn.BatchNorm2d(3) def forward(self,input): x0=input x=F.relu(self.bn1(self.conv1(x0))) x=self.bn2(self.conv2(x)) x=x+x0 return x0class ResNet(nn.Module): def __init__(self,n_blocks): super(ResNet, self).__init__() self.n_blocks=n_blocks self.resnet_block=ResNetBlock() def forward(self,input): for i in range(self.n_blocks) x=self.resnet_block(input) input=x return input五:总结

  ResNet内部使用多个具有残差连接的残差块来解决梯度消失或梯度爆炸问题,并使得网络可以向更深层发展。

本文链接地址:https://www.jiuchutong.com/zhishi/299882.html 转载请保留说明!

上一篇:Vue知识点总结(vue知识点汇总)

下一篇:搭建Pytorch环境(pytorch的环境配置)

  • 苹果手机怎么设置夜间模式(苹果手机怎么设置铃声来电铃声)

    苹果手机怎么设置夜间模式(苹果手机怎么设置铃声来电铃声)

  • 为什么苹果手机屏幕有一条条线(为什么苹果手机无线局域网打不开)

    为什么苹果手机屏幕有一条条线(为什么苹果手机无线局域网打不开)

  • 如何用手机QQ扫描文件转换成文字(如何用手机qq扫描电脑二维码)

    如何用手机QQ扫描文件转换成文字(如何用手机qq扫描电脑二维码)

  • 联想笔记本三包是几年(联想笔记本三包时间)

    联想笔记本三包是几年(联想笔记本三包时间)

  • 小红书没有浏览足迹吗(小红书没有浏览量)

    小红书没有浏览足迹吗(小红书没有浏览量)

  • 电脑没有声卡能有声音出来吗(电脑没有声卡能直播吗)

    电脑没有声卡能有声音出来吗(电脑没有声卡能直播吗)

  • iqoo哪个版本有压感按键(iqoo哪个版本值得买2020)

    iqoo哪个版本有压感按键(iqoo哪个版本值得买2020)

  • 微信一天加多少人有限定吗(微信一天加多少好友会被限制封号)

    微信一天加多少人有限定吗(微信一天加多少好友会被限制封号)

  • 怎么隐藏热点(怎么隐藏热点不让别人发现)

    怎么隐藏热点(怎么隐藏热点不让别人发现)

  • 中塔和全塔机箱的区别(中塔和全塔机箱哪个好)

    中塔和全塔机箱的区别(中塔和全塔机箱哪个好)

  • 苹果x右上角下拉失灵怎么办(苹果右上角下拉叫什么)

    苹果x右上角下拉失灵怎么办(苹果右上角下拉叫什么)

  • 微信申诉次数上限(微信申诉次数上限多少次)

    微信申诉次数上限(微信申诉次数上限多少次)

  • vivoy93和y93s外观区别(vivoy93和y93s哪个好些)

    vivoy93和y93s外观区别(vivoy93和y93s哪个好些)

  • 7p玩游戏闪退怎么回事(7p进游戏闪退)

    7p玩游戏闪退怎么回事(7p进游戏闪退)

  • 三星双清和恢复出厂设置有区别吗(三星手机双清后还能恢复吗)

    三星双清和恢复出厂设置有区别吗(三星手机双清后还能恢复吗)

  • mate30 6g 8g区别(华为mate308g和6g区别)

    mate30 6g 8g区别(华为mate308g和6g区别)

  • 电脑怎么关机(电脑怎么关机重启)

    电脑怎么关机(电脑怎么关机重启)

  • 苹果xs是双卡双待吗(苹果xs是双卡双待吗还是单带)

    苹果xs是双卡双待吗(苹果xs是双卡双待吗还是单带)

  • 抖音直播怎么关闭礼物特效(抖音直播怎么关闭)

    抖音直播怎么关闭礼物特效(抖音直播怎么关闭)

  • 怎么使用思维导图(怎么使用思维导图模板)

    怎么使用思维导图(怎么使用思维导图模板)

  • 微信没有银行卡怎么收红包(微信没有银行卡钱转不出来怎么办)

    微信没有银行卡怎么收红包(微信没有银行卡钱转不出来怎么办)

  • 一加手机6的RAM容量(一加6内存规格)

    一加手机6的RAM容量(一加6内存规格)

  • ppt如何制作视频

    ppt如何制作视频

  • ps做倒影的具体步骤(ps做倒影教程)

    ps做倒影的具体步骤(ps做倒影教程)

  • 【滤波专题-第4篇】滤波器滤波效果的评价指标(信噪比SNR、均方误差MSE、波形相似参数NCC)(滤波方案)

    【滤波专题-第4篇】滤波器滤波效果的评价指标(信噪比SNR、均方误差MSE、波形相似参数NCC)(滤波方案)

  • 即征即退的增值税属于政府补助
  • 公司一般户需要年检吗
  • 含税金额和开票金额
  • 其他收益科目在哪个科目前面填
  • 以前年度损益调整结转到未分配利润
  • 企业所得税研发费用怎么填
  • 购买商标权发生损失能税前扣除吗?
  • 票据贴现利息怎么开发票
  • 发票种类和适用范围
  • 开专票都需要什么资料
  • 金税三期个人所得税怎么下载
  • 发票已认证部分怎么撤销
  • 营改增后,企业购进自用小轿车增值税
  • 一般纳税人为其他公司制作标书怎么缴税?
  • 外籍个税起征点
  • 小规模纳税人季报是哪几个月
  • 普票红冲对方已入账发票拿不回来
  • 没有收入能结转损益吗
  • windows10无法打开图片
  • 小规模纳税人采购商品时有可能涉及的会计科目有
  • vue父组件引入子组件
  • PHP:imagettftext()的用法_GD库图像处理函数
  • 提供劳务收入如何核算
  • 为什么要把收入当成舞弊假定
  • 账龄分析法计提比例
  • 企业支付宝要交税吗 要交多少钱
  • yaf框架优缺点
  • 城市维护建设税减免税优惠政策
  • pytorch例程
  • 待摊费用在资产负债表中怎么表示
  • 非居民纳税人工资个人所得税税率
  • 暂估入库成本结转处理低于实际成本怎么办
  • 进项税额转出最后怎么处理
  • vant的Uploader 文件上传,图片数据回显问题
  • 织梦相关文章调用
  • centos下编写贪吃蛇吗
  • 有没有网上学电脑的
  • 代开运输发票是否会引起双重征税?
  • 工会经费申报的依据
  • 小规模纳税人1%税率优惠政策
  • 应付职工薪酬在利润表哪里体现
  • 企业计提五险一金会计分录怎么写
  • 个税的缴纳期数是什么
  • 办公费税前扣除标准2023年
  • 用人单位延迟给员工交社保怎么办
  • 企业所得税业务招待费怎么调整
  • 员工为公司垫费合法吗
  • 车辆etc设备
  • 怎么才能回到一年前
  • 日后事项中所得税的处理方法
  • 非公司股东可以分红吗
  • 分公司分摊比例
  • 公司员工垫付款项
  • 营改增政策解答
  • 机票改签手续费有报销凭证吗
  • 原股东决定
  • 房地产企业会计科目
  • windows2008关闭ie增强
  • win7显示无线网络未连接
  • win8系统自带截图
  • win8连接网络
  • ubuntu和window双系统
  • windows7 设置
  • win8磁盘占用率高怎么处理
  • mac怎么设置屏幕显示时间
  • mac系统怎么查找文件
  • 如何用dos破解wifi
  • linux命令find用法
  • django内置组件
  • 如何使用nodejs
  • java list转set的方法
  • linux多线程编程实例
  • 安卓动态图标怎么实现
  • python自动化运维教程
  • 地税网上办税服务厅
  • 全国哪些地区社保比例高
  • 医保漏缴如何补交
  • 要深化税收制度改革健全
  • 准予扣除是什么意思
  • 税收负担与税负转嫁
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设