人工智能学习pyTorch的ResNet残差模块示例详解

 更新时间:2021年11月11日 14:46:47   作者:Swayzzu  
这篇文章主要为大家介绍了人工智能学习pyTorch的ResNet残差模块示例详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步

1.定义ResNet残差模块

一个block中,有两个卷积层,之后的输出还要和输入进行相加。因此一个block的前向流程如下:

输入x→卷积层→数据标准化→ReLU→卷积层→数据标准化→数据和x相加→ReLU→输出out

中间加上了数据的标准化(通过nn.BatchNorm2d实现),可以使得效果更好一些。

①各层的定义

②前向传播

在前向传播中输入x,过程中根据前向流程,调用上面定义的层即可。

如此,便定义好了一个残差的模块。

2.ResNet18的实现

此处的ResNet18并没有涉及到太多细节,只是一个大致的内容。

在初始化的时候,定义好所需要使用的模块,根据上面定义好的残差模块,调用即可。在这里使用了4次残差模块,将通道数从输入的3(也就是RGB),变成了512通道。也就是最终提取的高级特征。提取完特征,直接输入给Linear方法,得到图片在10种图片类型上的结果,用于预测以及损失值的求解。

①各层的定义

②前向传播

同样的,调用上面定义好的层,根据流程传播即可。

3.测试ResNet18

如下图,输入的是2张图,RGB,长宽均是32的数据。

通过ResNet18之后,输出的是2张图,每张图对应10种类型的不同取值logits。

过程中的通道数目的转换如下面的结果所示:3→64→128→256→512→512

过程中的尺寸转换,根据设置的卷积核,以及步长,会有不同的结果。但总体都是为了得到更高级的特征,最终输入全连层,得到Logits。

以上就是人工智能学习pyTorch的ResNet残差模块示例详解的详细内容,更多关于PyTorch人工智能学习ResNet残差模块的资料请关注脚本之家其它相关文章!

相关文章

  • opencv python 对指针仪表读数识别的两种方式

    opencv python 对指针仪表读数识别的两种方式

    这篇文章主要介绍了opencv python 对指针仪表读数识别的两种方式,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2021-01-01
  • Python类的动态绑定实现原理

    Python类的动态绑定实现原理

    这篇文章主要介绍了Python类的动态绑定实现原理,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-03-03
  • 基于Python实现有趣的象棋游戏

    基于Python实现有趣的象棋游戏

    一直以来,中国象棋都是中华民族的一种象征,当然也是人们最为喜感的一种娱乐方式。这篇文章主要介绍了如何基于Python实现有趣的象棋游戏,感兴趣的可以了解一下
    2023-03-03
  • python网络爬虫之模拟登录 自动获取cookie值 验证码识别的具体实现

    python网络爬虫之模拟登录 自动获取cookie值 验证码识别的具体实现

    有时,我们需要爬取一些基于个人用户的用户信息(需要登陆后才可以查看)就要进行模拟登陆,因为验证码往往是作为登陆请求中的请求参数被使用,就需要识别验证码
    2021-09-09
  • python print输出延时,让其立刻输出的方法

    python print输出延时,让其立刻输出的方法

    今天小编就为大家分享一篇python print输出延时,让其立刻输出的方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2019-01-01
  • 基于python3 OpenCV3实现静态图片人脸识别

    基于python3 OpenCV3实现静态图片人脸识别

    这篇文章主要为大家详细介绍了基于Python3 OpenCV3实现静态图片人脸识别,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2018-05-05
  • Python基于链接表实现无向图最短路径搜索

    Python基于链接表实现无向图最短路径搜索

    链接表的存储相比较邻接炬阵,使用起来更方便,对于空间的使用是刚好够用原则,不会产生太多空间浪费。所以本文将以链接表方式实现无向图最短路径搜索,需要的可以参考一下
    2022-04-04
  • Python常用数据库接口sqlite3和MySQLdb学习指南

    Python常用数据库接口sqlite3和MySQLdb学习指南

    在本章节中,我们将学习 Python 中常用的数据库接口,包括 sqlite3用于SQLite数据库和MySQLdb用于 MySQL 数据库,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-06-06
  • 用python的哈希函数对密码加密

    用python的哈希函数对密码加密

    大家好,本篇文章主要讲的是用python的哈希函数对密码加密,感兴趣的同学赶快来看一看吧,对你有帮助的话记得收藏一下
    2022-02-02
  • pyspark dataframe列的合并与拆分实例

    pyspark dataframe列的合并与拆分实例

    这篇文章主要介绍了pyspark dataframe列的合并与拆分实例,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-03-03

最新评论