torch.nn
pytorch中文文档链接:torch.nn
在__init__()函数里定义,定义的是一个类:
torch.nn.functional
pytorch中文文档链接:torch.nn.functional
在__forward()__函数里定义,定义的是一个函数:
两者的区别
torch.nn中是一个定义的类,以class xx来定义的,可以提取变化的学习参数。
torch.nn.functional是一个函数,由def function( )定义,是一个固定的运算公式。
深度学习中会有很多权重是在不断更新的,所以需要采用类的方式,以确保能在参数发生变化时仍能使用我们之前定好的运算步骤。因此如果模型有可学习的参数,应该使用nn.Module,否则两个没有区别。但是简单的计算不需要新建一个类来做,所以使用nn.functional定义函数就可以。
即:层内有variable的情况用nn定义,否则用nn.functional定义。
学习更多编程知识,请关注我的公众号:
[代码的路]
-
编程
+关注
关注
90文章
3708浏览量
96768 -
函数
+关注
关注
3文章
4406浏览量
66851 -
python
+关注
关注
57文章
4858浏览量
89598 -
深度学习
+关注
关注
73文章
5591浏览量
123915 -
pytorch
+关注
关注
2文章
813浏览量
14706
发布评论请先 登录
【「DeepSeek 核心技术揭秘」阅读体验】基于MOE混合专家模型的学习和思考-2
如何利用PyTorch API构建CNN?
Canny边缘检测器的详细介绍以及Pytorch实现
如何使用torch 2.0或更高版本创建图像?
pytorch模型转换需要注意的事项有哪些?
松下NN-5508 NN-5558 NN-6508 NN-7
深度学习的19种损失函数你了解吗?带你详细了解
深度学习Pytorch翻车记录:单卡改多卡踩坑记
PyTorch教程-6.5. 自定义图层
PyTorch教程-8.6. 残差网络 (ResNet) 和 ResNeXt
pytorch如何构建网络模型
Google AI Edge Torch的特性详解

PyTorch中 torch.nn与torch.nn.functional的区别
评论