SuperAPI AI 工具集

pytorch-patterns

智能体与模型

查看项目

更新于 10-16 06:22

技能介绍

用途:本技能提供 PyTorch 惯用模式与最佳实践,用于编写新模型或训练脚本、审查深度学习代码、调试训练循环与数据管道、优化 GPU 显存与训练速度、搭建可复现实验。

主要能力:1) 设备无关代码,用 torch.device("cuda" if torch.cuda.is_available() else "cpu") 而非硬编码 .cuda();2) 可复现性,统一设置 torch.manual_seed、torch.cuda.manual_seed_all 及 cudnn 确定性;3) 显式形状管理,在 forward 中标注张量维度;4) 规范的 nn.Module 结构与显式权重初始化;5) 标准训练循环(model.train()、optimizer.zero_grad(set_to_none=True)、梯度裁剪)与验证循环(model.eval()、@torch.no_grad());6) 自定义 Dataset 与高效 DataLoader(num_workers、pin_memory、persistent_workers、drop_last)及变长数据的 collate_fn;7) 完整检查点保存与加载(保存 model_state_dict、optimizer_state_dict、epoch、loss,加载用 weights_only=True);8) 性能优化,包括 torch.amp 混合精度、梯度检查点、torch.compile。

使用方式:按资料中的代码模式改写训练代码,避免反模式,如验证时忘记 model.eval()、就地操作破坏自动求导、循环内重复移动模型、backward 前调用 .item()、直接保存整个模型等。建议用 torch.profiler 分析、torch.cuda.memory_summary() 检查显存。

适用场景:图像分类等深度学习项目、训练脚本编写与代码审查、性能调优。

限制:具体安装命令、依赖版本、收费与平台信息暂未提供。