DAY 37 GPU训练及类的call方法

一、GPU性能的查看:看架构代际、核心数、线程数

二、GPU性能的查看:看显存、看级别、看架构代际

三、GPU训练的方法:数据和模型移动到GPU device上

模型在 GPU 上训练,主要是将模型和数据迁移到 GPU 设备上。

在 PyTorch 里,.to(device) 方法的作用是把张量或者模型转移到指定的计算设备(像 CPU 或者 GPU)上。

- 对于张量(Tensor):调用 .to(device) 之后,会返回一个在新设备上的新张量。

- 对于模型(nn.Module):调用 .to(device) 会直接对模型进行修改,让其所有参数和缓冲区都移到新设备上。

在进行计算时,所有输入张量和模型必须处于同一个设备。要是它们不在同一设备上,就会引发运行时错误。并非所有 PyTorch 对象都有 .to(device) 方法,只有继承自 torch.nn.Module 的模型以及 torch.Tensor 对象才有此方法。

RuntimeError: Tensor for argument #1 'input' is on CPU, but expected it to be on GPU

这个常见错误就是输入张量和模型处于不同的设备。

四、类的call方法:为什么定义前向传播时可以直接写作self.fc1(x)

Python 中,只要一个类定义了 __call__ 方法,这个类的实例就变成了可调用对象(可以像函数一样加括号调用)。

self.fc1(x) 能直接调用的本质是:self.fc1 指向的是一个可调用对象(通常是 PyTorch/TensorFlow 等框架的层类实例,这些类实现了 __call__ 方法),而 __call__ 是 Python 中让实例 “像函数一样被调用” 的核心魔法方法。

self.fc1 通常是 nn.Linear 类的实例,而 nn.Linear(以及所有 nn.Module 子类)都实现了 __call__ 方法,且 __call__ 会关联到层的前向传播逻辑(forward 方法)。

self.fc1(x) 能直接写的核心是:

  • fc1 是 nn.Module 子类(如nn.Linear)的实例;
  • nn.Module 实现了 __call__ 方法,使得实例可被 “函数式调用”;
  • 调用 self.fc1(x) 时,自动触发 __call__ → 调用 forward 方法,完成前向传播。

@浙大疏锦行

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/1004495.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

YYEVA动态MP4播放器:让视频资源真正“动“起来

YYEVA动态MP4播放器:让视频资源真正"动"起来 【免费下载链接】YYEVA YYEVA(YY Effect Video Animate)是YYLive推出的一个开源的支持可插入动态元素的MP4动效播放器解决方案,包含设计资源输出的AE插件,客户端…

Activiti流程引擎终极指南:从零开始掌握企业级工作流开发

在当今数字化转型浪潮中,企业流程自动化已成为提升效率的关键。Activiti作为业界领先的开源工作流引擎,凭借其强大的BPMN 2.0支持和丰富的企业级特性,正成为开发者的首选工具。本文将通过通俗易懂的方式,带你全面了解Activiti的核…

GBase 8a数据库统一平台(UP)引擎介绍

当前,在大型的数据仓库以及大数据分析等使用场景中,会出现多种不同的数据库系统共存现象,如何便利地进行不同数据库系统之间的数据交换和数据计算,是需要考虑的一个重要问题。针对上述现象和问题,南大通用GBase 8a数据…

MATLAB环境下一维时间序列信号的欠定盲源分离方法(基于L1范数最小化算法)

MATLAB环境下一维时间序列信号的欠定盲源分离方法 代码为MATLAB环境下一维时间序列信号的欠定盲源分离方法。 首先利用各阶模态响应信号在时频域中的聚类特性估计结构的模态振型;然后,在已知振型矩阵的基础上,通过L1范数最小化算法分离出多个…

Vuetify终极指南:从零构建企业级Vue应用的完整教程

Vuetify终极指南:从零构建企业级Vue应用的完整教程 【免费下载链接】vuetify 🐉 Vue Component Framework 项目地址: https://gitcode.com/gh_mirrors/vu/vuetify 还在为Vue项目中的UI设计一致性、开发效率和团队协作而烦恼?Vuetify作…

Draco 3D压缩技术:如何让你的3D模型体积缩小90%?

Draco 3D压缩技术:如何让你的3D模型体积缩小90%? 【免费下载链接】draco Draco is a library for compressing and decompressing 3D geometric meshes and point clouds. It is intended to improve the storage and transmission of 3D graphics. 项…

BLDC直流无刷电机FOC控制:多层次架构的电机驱动与精确控制的探索实践

BLDC直流无刷电机FOC控制 在Matlab/Simulink中实现了无刷直流电机的磁场定向控制FOC,整个FOC架构包括: 1、估计:根据霍尔传感器信号估计转子位置、角度和电机速度; 2、诊断:执行错误检测,如霍尔传感器未连接…

如何快速掌握YOLOv12:实时目标检测的完整实践指南

如何快速掌握YOLOv12:实时目标检测的完整实践指南 【免费下载链接】yolov10n 项目地址: https://ai.gitcode.com/hf_mirrors/jameslahm/yolov10n 如果你正在寻找一款既能保持实时性能又能提供卓越精度的目标检测模型,那么YOLOv12绝对值得你深入了…

终极图像量化神器:libimagequant完全指南

终极图像量化神器:libimagequant完全指南 【免费下载链接】libimagequant Palette quantization library that powers pngquant and other PNG optimizers 项目地址: https://gitcode.com/gh_mirrors/li/libimagequant 在当今数字时代,图像优化已…

CodeGeeX2企业级部署实战:从环境搭建到性能调优的全链路指南

CodeGeeX2企业级部署实战:从环境搭建到性能调优的全链路指南 【免费下载链接】CodeGeeX2 CodeGeeX2: A More Powerful Multilingual Code Generation Model 项目地址: https://gitcode.com/gh_mirrors/co/CodeGeeX2 CodeGeeX2作为新一代多语言代码生成模型&a…

5分钟掌握LightVAE:AI视频生成的终极效率革命

5分钟掌握LightVAE:AI视频生成的终极效率革命 【免费下载链接】Autoencoders 项目地址: https://ai.gitcode.com/hf_mirrors/lightx2v/Autoencoders 在AI视频生成技术快速发展的今天,LightVAE系列模型通过架构优化与知识蒸馏技术,为开…

掌握BOSL2:OpenSCAD工具库让3D建模简化如虎添翼

掌握BOSL2:OpenSCAD工具库让3D建模简化如虎添翼 【免费下载链接】BOSL2 The Belfry OpenScad Library, v2.0. An OpenSCAD library of shapes, masks, and manipulators to make working with OpenSCAD easier. BETA 项目地址: https://gitcode.com/gh_mirrors/bo…

开源监控工具Prometheus与商业监控方案选型指南

开源监控工具Prometheus与商业监控方案选型指南 【免费下载链接】dataease DataEase: 是一个开源的数据可视化分析工具,支持多种数据源以及丰富的图表类型。适合数据分析师和数据科学家快速创建数据可视化报表。 项目地址: https://gitcode.com/GitHub_Trending/d…

Spring AI与MCP集成实践:构建智能应用的新方式

Spring AI与MCP集成实践:构建智能应用的新方式 引言 在当今人工智能快速发展的时代,如何将AI能力无缝集成到现有应用中成为了开发者面临的重要挑战。Spring AI作为Spring生态系统中的AI集成框架,结合MCP(Model Context Protocol&a…

NIST SP800-53中文翻译:信息安全从业者的终极参考指南

NIST SP800-53中文翻译:信息安全从业者的终极参考指南 【免费下载链接】NISTSP800-53翻译稿 本开源项目提供了NIST SP800-53早期版本的中文翻译稿,致力于为信息安全领域的研究者和技术人员提供权威参考。翻译内容详尽准确,帮助用户深入理解信…

调试技巧:从 IDE 调试到生产环境定位问题,提升调试效率的全方位指南 - 指南

调试技巧:从 IDE 调试到生产环境定位问题,提升调试效率的全方位指南 - 指南2025-12-12 20:49 tlnshuju 阅读(0) 评论(0) 收藏 举报pre { white-space: pre !important; word-wrap: normal !important; overflow-…

构建可信AI系统:从因果推理到强化学习的完整实践指南

构建可信AI系统:从因果推理到强化学习的完整实践指南 【免费下载链接】trustworthyAI trustworthy AI related projects 项目地址: https://gitcode.com/gh_mirrors/tr/trustworthyAI 在人工智能日益深入各行各业的今天,如何确保AI系统的可靠性、…

Python闭包与解释器全解析

一、全局变量和局部变量1.作用域在python中,作用域分为全局作用域和局部作用域.2.变量的作用域在局部定义的变量---->局部变量在全局定义的变量---->全局变量3.全局变量与局部变量的访问范围① 在全局作用域中可以访问全局变量,在局部作用域中可以访问局部变量…

矮冬瓜矮砧密植:水肥一体化系统的详细铺设要点

瓜棚里,老陈的矮冬瓜圆润饱满,挂果均匀。“这套系统让我的冬瓜管理轻松了不少,”他指着架下的滴灌设备说,“不仅瓜形漂亮,产量还特别稳定。”认识矮冬瓜矮砧密植矮冬瓜矮砧密植,简单来说就是选用矮蔓品种&a…

选对远控软件,效率翻倍!2025年十大品牌真实评分大揭秘

个人主页:chian-ocean 选对远控软件,效率翻倍!2025年十大品牌真实评分大揭秘 在混合办公与数字化转型的双重浪潮下,远程控制软件已成为连接工作与生活的核心纽带。市场月活用户突破1.8亿,但面对“延迟高”、“画质差…