news 2026/6/14 17:40:12

pytorch框架训练、推理、模块冻结等各种细节说明

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
pytorch框架训练、推理、模块冻结等各种细节说明

1.张量的requires_grad属性

importtorch x=torch.randn(3,3,requires_grad=False)y=x*2# y = 2xy.requires_grad=Truez=y.mean()# z=(1/9)*(2x),微分是dz/dx = 2/9# z=(1/9)*y,微分是dz/dy = 1/9z.backward()print(x,x.requires_grad)print(y,y.requires_grad,y.grad)print(z.requires_grad)

注意,python中万物都是对象(object),因此基本上都会有一些属性,类比C++中类和对象的关系。张量也是一种对象。

这里对张量的核心属性requires_grad功能进行演示。例子中,x不需要梯度,因此计算得到的y也是不需要梯度的张量,我们可以手动设置y需要梯度,因此影响到z,z变为需要梯度的。

运行结果:

tensor([[-0.2486,1.0678,0.6611],[0.3205, -0.4081, -0.5011],[-1.1482,1.5839, -0.3978]])False tensor([[-0.4972,2.1357,1.3223],[0.6411, -0.8162, -1.0023],[-2.2964,3.1677, -0.7956]],requires_grad=True)True tensor([[0.1111,0.1111,0.1111],[0.1111,0.1111,0.1111],[0.1111,0.1111,0.1111]])True

2.model.train()和model.eval()对模型的行为影响

先搭建一个简单模型

importtorchimporttorch.nnasnn torch.random.manual_seed(42)classSimpleModel(nn.Module):def__init__(self):super(SimpleModel,self).__init__()self.fc=nn.Linear(10,2)# 一个简单的线性层self.bn=nn.BatchNorm1d(2)# 批量标准化self.dropout=nn.Dropout(0.5)# Dropout层,50%的丢弃概率defforward(self,x):x=self.fc(x)# 通过全连接层x=self.bn(x)# 进行批量标准化x=self.dropout(x)# 应用Dropoutreturnx# 创建模型model=SimpleModel()

2.1 获取模型的全部参数

使用方法state_dict()

print(model.state_dict())

返回一个字典

OrderedDict([('fc.weight', tensor([[-0.0290, -0.2516, -0.3142, -0.2079,0.2460, -0.1968, -0.1554, -0.2758,0.2958,0.3105],[0.2236, -0.0511,0.2169,0.2815,0.1189, -0.2317,0.1405,0.2883,0.2088, -0.2837]
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/6/15 11:42:26

Langchain-Chatchat集成华为NPU部署Qwen2.5

Langchain-Chatchat集成华为NPU部署Qwen2.5 在企业级AI应用逐渐从“可用”迈向“可控”的今天,如何在保障数据安全的前提下构建高效、低成本的智能问答系统,成为众多组织面临的核心命题。公有云API虽然便捷,但一旦涉及敏感文档或内部知识库&a…

作者头像 李华
网站建设 2026/6/15 3:30:57

T型槽试验平台不可忽视的数据

T型槽试验平台适用于各种检验工作,精度测量用的基准平面,用于机床机械检验测量基准,检查零件的尺寸精度或行为偏差,并作划线,T型槽试验平台在机械制造中也是不可缺少的基本工具。 T型槽试验平台材料为强度高铸铁材质HT…

作者头像 李华
网站建设 2026/6/11 20:01:31

【完整源码+数据集+部署教程】犬类检测系统源码分享[一条龙教学YOLOV8标注好的数据集一键训练_70+全套改进创新点发刊_Web前端展示]

一、背景意义 随着人工智能技术的迅猛发展,计算机视觉领域取得了显著的进步,尤其是在目标检测方面。目标检测技术的应用范围广泛,涵盖了安防监控、自动驾驶、智能家居等多个领域。犬类作为人类生活中不可或缺的伴侣动物,其检测与…

作者头像 李华
网站建设 2026/6/11 7:22:37

【计算机毕业设计案例】基于springboot的天气预报查询网站系统基于springboot天气预报查询系统(程序+文档+讲解+定制)

博主介绍:✌️码农一枚 ,专注于大学生项目实战开发、讲解和毕业🚢文撰写修改等。全栈领域优质创作者,博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java、小程序技术领域和毕业项目实战 ✌️技术范围:&am…

作者头像 李华
网站建设 2026/6/10 14:41:56

Dify支持多模型切换的配置方法详解

Dify 多模型切换的配置方法与实践 在如今的大语言模型(LLM)应用开发中,一个显而易见的趋势正在形成:没有“万能模型”。GPT-4 生成质量高但成本不菲;通义千问响应快、性价比优却在复杂推理上略显乏力;Claud…

作者头像 李华
网站建设 2026/6/9 5:33:52

【完整源码+数据集+部署教程】人脸识别检测系统源码分享[一条龙教学YOLOV8标注好的数据集一键训练_70+全套改进创新点发刊_Web前端展示]

一、背景意义 随着人工智能技术的迅猛发展,计算机视觉领域的研究逐渐成为学术界和工业界的热点。人脸识别作为计算机视觉中的重要应用之一,因其在安全监控、身份验证、社交媒体、智能家居等领域的广泛应用而备受关注。近年来,深度学习技术的进…

作者头像 李华