浅谈pytorch中的nn.Sequential(*net[3: 5])是啥意思
作者:alittlebai1 发布时间:2023-10-05 05:42:55
标签:pytorch,nn.Sequential(,net[3:,5])
看到代码里面有这个
1 class ResNeXt101(nn.Module):
2 def __init__(self):
3 super(ResNeXt101, self).__init__()
4 net = resnext101()
# print(os.getcwd(), net)
5 net = list(net.children()) # net.children()得到resneXt 的表层网络
# for i, value in enumerate(net):
# print(i, value)
6 self.layer0 = nn.Sequential(net[:3]) # 将前三层打包0, 1, 2两层
print(self.layer0)
7 self.layer1 = nn.Sequential(*net[3: 5]) # 将3, 4两层打包
8 self.layer2 = net[5]
9 self.layer3 = net[6]
可以看到代码中的第六行(序号自己去掉,我打上去的) self.layer0 = nn.Sequential(net[:3])
和
第七行self.layer1 = nn.Sequential(*net[3: 5])
有一个nn.Sequential(net[:3])
和nn.Sequential(*net[3: 5])
今天不讲nn.Sequential()
用法,意义,作用因为我也不咋明白。惊天就说*net[3: 5]
这个东西为啥要带“ * ”
当代码中不带*
的时候,运行会出现以下问题
意思就是列表不是子类,就是说参数不对
net = list(net.children())
这一行代码是将模型的每一层取出来构建一个列表,自己试着打印就可以。大概的输出就是[conv(),BatchNorm2d(), ReLU,MaxPool2d]
等等
总共是是个元素,和一般的列表不太一样。
当我们取net[:3]
的时候,传进去的参数是一个列表,但是我们用*net[:3]
的时候传进去的是单个元素
list1 = ["conv", ("relu", "maxing"), ("relu", "maxing", 3), 3]
list2 = [list1[:1]]
list3 = [*list1[:1]]
print("list2:{}, *list1[:2]:{}".format(list1[:1], *list1[:1]))
结果不带✳的是列表,带✳的是元素,所以nn.Sequential(*net[3: 5])
中的*net[3: 5]
就是给nn.Sequential()
这个容器中传入多个层。
来源:https://blog.csdn.net/alittlebai1/article/details/116105471
0
投稿
猜你喜欢
- Function Comma(str)If Not(IsNumeric(str)) Or 
- 前言最近重新再看python的基础知识,感觉自己还是对于这些知识很陌生,需要用的时候还是需要翻书查阅,还是先注重基础吧——我要重新把pyth
- 这篇文章我们学习 Python 变量与数据类型变量变量来源于数学,是计算机语言中能储存计算结果或能表示值抽象概念,变量可以通过变量名访问。在
- 同质化的网站越来越多,往往你还没发展起来,就已有许多站点抄袭走了你的成果,如何留下用户?——让用户有更好的使用体验。一些网页上的小技巧,可以
- 本文实例讲述了用python实现面向对像的ASP程序的方法。分享给大家供大家参考。具体实现方法如下:平时我们写ASP时,一般都用vbscri
- ASP从发布至今已经7年了,使用ASP技术已经相当成熟,自从微软推出了ASP.NET之后就逐渐停止了对ASP版本的更新。但是由于有很多人仍然
- Python中pass的作用空语句 do nothing保证格式完整保证语义完整以if语句为例,在c或c++/java中:if(true);
- 最近做了一次口碑网注册流程改造,简单说一下激活邮件的设计上的一些小心得:1、尽量不要用图片,尤其是别把激活链接做成一个点击按钮。2、尽量少的
- 前言在python中,print是重要的输出语句,让我们更方便的知道程序的运行状况,但是这样还不够,我们也可以用print来给周围的小伙伴秀
- SWFObject的使用是非常简单的,只需要包含 swfobject.js这个js文件,然后在DOM中插入一些简单的JS代码,就能嵌入Fla
- 我们平常在网页上显示的字体最小一般是12PX,当小于10PX时,显示的效果就大打折扣了,因为中文默认的字体是宋体,当小于12PX时的效果如下
- 今天在这里,不以设计师的身份,而从一个普通用户的角度和各位聊聊设计中蕴含的那份情感,关于情感再产品设计中的意义,聊聊设计中的那份源于“心”的
- 小编语:小编我最早使用的网页制作工作就是FrontPage啦,FrongPage方便简单,会用Word就能做网页。如果你对网页制作要求不高,
- 首先:文章用到的解析库介绍BeautifulSoup:Beautiful Soup提供一些简单的、python式的函数用来处理导航、搜索、修
- 相信很多人在使用正则表达式的时候都会遇到如下的语句:通过查阅正则表达式的API文档可以了解到正则表达式的语法知识:很多小伙伴就会产生疑问为什
- Oracle 背景资料 在介绍 Oracle9i 之前我们先介绍一些关于Oracle 公司的资料,让各位朋友更多了解 Oracle。 197
- 项目开发中文件的读写是必不可少的下面来简单介绍一下文件的读读文件,首先我们要有文件那我首先自己创建了一个文本文件password.txt内容
- 有时候,我们在某一重要的时间段需要监控某张表的变化情况,包含插入、更新、删除。举例来说,当我们把数据导出到外部的系统时,我们希望导出的是全部
- 本文实例讲述了ASP.NET中MVC从后台控制器传递数据到前台视图的方式。分享给大家供大家参考。具体分析如下:数据存储模型Model:pub
- 马上就是圣诞节了,先提前祝大家圣诞快乐!:christmas_tree::christmas_tree::christmas_t