0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

深度学习与图神经网络学习分享:CNN经典网络之-ResNet

恬静简朴1 来源:恬静简朴1 作者:恬静简朴1 2022-10-12 09:54 次阅读

深度学习与图神经网络学习分享:CNN 经典网络之-ResNet

resnet 又叫深度残差网络

图像识别准确率很高,主要作者是国人哦

深度网络的退化问题

深度网络难以训练,梯度消失,梯度爆炸,老生常谈,不多说

poYBAGNGHmKAb8zQAAA44hSDe-c316.jpg

resnet 解决了这个问题,并且将网络深度扩展到了最多152层。怎么解决的呢?

残差学习

结构如图

pYYBAGNGHmOAZ6BEAAArfIgkM_Q814.jpg

在普通的卷积过程中加入了一个x的恒等映射(identity mapping)

专家把这称作 skip connections或者 shortcut connections

残差结构的理解

为什么要这样呢?下面我从多个角度阐述这个问题。

生活角度

每学习一个模型,我都希望能用日常的生活去解释为什么模型要这样,一是加深对模型的理解,二是给自己搭建模型寻找灵感,三是给优化模型寻找灵感。

resnet 无疑是解决很难识别的问题的,那我举一个日常生活中人类也难以识别的问题,看看这个模型跟人类的识别方法是否一致。

比如人类识别杯子里的水烫不烫

一杯水,我摸了一下,烫,好,我的神经开始运转,最后形成理论杯子里的水烫,这显然不对

又一杯水,我一摸,不烫,好嘛,这咋办,认知混乱了,也就是无法得到有效的参数

那人类是怎么办呢?

我们不止是摸一摸,而且在摸过之后还要把杯子拿起来仔细看看,有什么细节可以帮助我们更好的识别,这就是在神经经过运转后,又把x整体输入,

当然即使我们拿起杯子看半天,也可能看不出任何规律来帮助我们识别,那人类的作法是什么呢?我记住吧,这种情况要小心,这就是梯度消失了,学习不到任何规律,记住就是恒等映射,

这个过程和resnet是一致的。

网络结构角度

poYBAGNGHmWAdPVqAALb1wwHWXY335.jpg

当梯度消失时,f(x)=0,y=g(x)=relu(x)=x,怎么理解呢?

1. 当梯度消失时,模型就是记住,长这样的就是该类别,是一个大型的过滤器

2. 在网络上堆叠这样的结构,就算梯度消失,我什么也学不到,我至少把原来的样子恒等映射了过去,相当于在浅层网络上堆叠了“复制层”,这样至少不会比浅层网络差。

3. 万一我不小心学到了什么,那就赚大了,由于我经常恒等映射,所以我学习到东西的概率很大。

数学角度

pYYBAGNGHmeAFXhOAALTmLkF-yo946.jpg

可以看到 有1 的存在,导数基本不可能为0

那为什么叫残差学习呢

poYBAGNGHmmASbWBAAIxzxBIZoY909.jpg

可以看到 F(x) 通过训练参数 得到了 H(x)-x,也就是残差,所以叫残差学习,这比学习H(x)要简单的多。

等效映射 identity mapping

上面提到残差学习中需要进行 F(x)+x,在resnet中,卷积都是 same padding 的,当通道数相同时,直接相加即可,

但是通道数不一样时需要寻求一种方法使得y=f(x)+wx

实现w有两种方式

1. 直接补0

2. 通过使用多个 1x1 的卷积来增加通道数。

网络结构

block

block为一个残差单元,resnet 网络由多个block 构成,resnet 提出了两种残差单元

pYYBAGNGJFWAd6msAAOBZybQmhQ171.png

左边针对的是ResNet34浅层网络,右边针对的是ResNet50/101/152深层网络,右边这个又被叫做 bottleneck

bottleneck 很好地减少了参数数量,第一个1x1的卷积把256维channel降到64维,第三个又升到256维,总共用参数:1x1x256x64+3x3x64x64+1x1x64x256=69632,

如果不使用 bottleneck,参数将是 3x3x256x256x2=1179648,差了16.94倍

这里的输出通道数是根据输入通道数确定的,因为要与x相加。

整体结构

poYBAGNGHmuAR_vuAAQ4LV13yH4841.jpg

1. 与vgg相比,其参数少得多,因为vgg有3个全连接层,这需要大量的参数,而resnet用 avg pool 代替全连接,节省大量参数。

2. 参数少,残差学习,所以训练效率高

结构参数

Resnet50和Resnet101是其中最常用的网络结构。

pYYBAGNGHm6AAst0AANF0c0z6hI069.jpg

我们看到所有的网络都分成5部分,分别是:conv1,conv2_x,conv3_x,conv4_x,conv5_x

其结构是相对固定的,只是通道数根据输入确定。

注意,Resnet 最后的 avg_pool 是把每个 feature map 转换成 1 个特征,故池化野 size 为 feature map size,如 最后输出位 512x7x7,那么池化野size 为 7

最新进展

残差单元被进一步更新

poYBAGNGHm6AX1flAACOCF91vfw313.jpg

个人经验

1. 卷积层包含大量的卷积计算,如果想降低时间复杂度,减少卷积层

2. 全连接层包含大量的参数,如果想降低空间复杂度,减少全连接层

转载自努力的孔子

审核编辑 黄昊宇

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 神经网络
    +关注

    关注

    42

    文章

    4572

    浏览量

    98749
  • 深度学习
    +关注

    关注

    73

    文章

    5237

    浏览量

    119910
  • cnn
    cnn
    +关注

    关注

    3

    文章

    327

    浏览量

    21299
  • resnet
    +关注

    关注

    0

    文章

    12

    浏览量

    3113
收藏 人收藏

    评论

    相关推荐

    详解深度学习神经网络与卷积神经网络的应用

    在如今的网络时代,错综复杂的大数据和网络环境,让传统信息处理理论、人工智能与人工神经网络都面临巨大的挑战。近些年,深度学习逐渐走进人们的视线
    的头像 发表于 01-11 10:51 728次阅读
    详解<b class='flag-5'>深度</b><b class='flag-5'>学习</b>、<b class='flag-5'>神经网络</b>与卷积<b class='flag-5'>神经网络</b>的应用

    从AlexNet到MobileNet,带你入门深度神经网络

    思维导如下:发展历程DNN-定义和概念在卷积神经网络中,卷积操作和池化操作有机的堆叠在一起,一起组成了CNN的主干。同样是受到猕猴视网膜与视觉皮层之间多层网络的启发,
    发表于 05-08 15:57

    TFCNN:Tensorflow构建卷积神经网络CNN的嘻嘻哈哈事详细攻略

    TFCNN:Tensorflow构建卷积神经网络CNN的嘻嘻哈哈事详细攻略
    发表于 12-19 17:03

    基于赛灵思FPGA的卷积神经网络实现设计

    FPGA 上实现卷积神经网络 (CNN)。CNN 是一类深度神经网络,在处理大规模图像识别任务以及与机器
    发表于 06-19 07:24

    神经网络结构搜索有什么优势?

    近年来,深度学习的繁荣,尤其是神经网络的发展,颠覆了传统机器学习特征工程的时代,将人工智能的浪潮推到了历史最高点。然而,尽管各种神经网络模型
    发表于 09-11 11:52

    卷积神经网络深度卷积网络:实例探究及学习总结

    深度学习工程师-吴恩达》03卷积神经网络深度卷积网络:实例探究 学习总结
    发表于 05-22 17:15

    卷积神经网络CNN介绍

    深度学习】卷积神经网络CNN
    发表于 06-14 18:55

    解析深度学习:卷积神经网络原理与视觉实践

    解析深度学习:卷积神经网络原理与视觉实践
    发表于 06-14 22:21

    卷积神经网络模型发展及应用

    十余年来快速发展的崭新领域,越来越受到研究者的关注。卷积神经网络CNN)模型是深度学习模型中最重要的一种经典结构,其性能在近年来
    发表于 08-02 10:39

    卷积神经网络简介:什么是机器学习

    复杂数据中提取特征的强大工具。例如,这包括音频信号或图像中的复杂模式识别。本文讨论了 CNN 相对于经典线性规划的优势。后续文章“训练卷积神经网络:什么是机器学习?——第2部分”将讨论
    发表于 02-23 20:11

    神经网络深度学习》讲义

    神经网络深度学习》讲义
    发表于 07-20 08:58 0次下载

    快速了解神经网络深度学习的教程资料免费下载

    本文档的详细介绍的是快速了解神经网络深度学习的教程资料免费下载主要内容包括了:机器学习概述,线性模型,前馈神经网络,卷积
    发表于 02-11 08:00 25次下载
    快速了解<b class='flag-5'>神经网络</b>与<b class='flag-5'>深度</b><b class='flag-5'>学习</b>的教程资料免费下载

    综述深度学习的卷积神经网络模型应用及发展

    深度学习是机器学习和人工智能研究的最新趋势,作为一个十余年来快速发展的崭新领域,越来越受到研究者的关注。卷积神经网络CNN)模型是
    发表于 04-02 15:29 20次下载
    综述<b class='flag-5'>深度</b><b class='flag-5'>学习</b>的卷积<b class='flag-5'>神经网络</b>模型应用及发展

    3小时学习神经网络深度学习课件下载

    3小时学习神经网络深度学习课件下载
    发表于 04-19 09:36 0次下载
    3小时<b class='flag-5'>学习</b><b class='flag-5'>神经网络</b>与<b class='flag-5'>深度</b><b class='flag-5'>学习</b>课件下载

    卷积神经网络概述 卷积神经网络的特点 cnn卷积神经网络的优点

    卷积神经网络概述 卷积神经网络的特点 cnn卷积神经网络的优点  卷积神经网络(Convolutional neural network,
    的头像 发表于 08-21 16:41 1939次阅读