Pytorch中的bug调试记录(持续跟新)

机器学习调试新范式:用学习曲线定位代码级Bug 学习曲线不仅是模型性能的可视化工具,更是诊断机器学习系统中代码缺陷的核心方法论。其本质是将训练流程解耦为数据加载、预处理、模型定义、损失计算等可验证阶段,并在每个阶段注入数学预期与业务约束。通过监控梯度稳定性、激活分布一致性、逻辑正确性及子集指标合理性这四维信号,工程师能提前捕获标签越界、梯度消失、时间泄露等典型bug——这些错误往往不报错却导致线上效果崩塌。该方法显著区别于依赖loss下降或accuracy提升的传统判断,已在工业质检、金融风控、医疗影像等场景验证有效,是ML工程化落地的关键调试基础设施。 阅读详情
  • discriminator loss始终是一个常数,没有随着迭代次数的增加而更新

将disciminator loss中的各个分量打印出来,查看原因。
最后发现是因为netD输出的是经过sigmoid激活后的值,而在使用criterion是却采用了BCEWithLogitsLoss

  • input的data range [-1, 1]
  • 注意使用LeakyReLU(inplace=True) 这里的inplace会替换前一layer的值,如果网络搭建错很可能会修改输入数据
深度学习顶会论文 复现 tensorflow代码转pytorch 吐血入门经验 1. 前言 我想把一个TensorFlow代码转为pytorch代码,深度学习的代码。经过一个月的调试。。。。。自己好垃圾啊。。。 2.目标 将这个阴影去除的tensorflow代码转pytorch。 3.过程 阅读需要复现的原文 很快啊,就一天可能就把TensorFlow的网络结构照猫画虎的写成了pytorch 然后就进入了无限调bug阶段。。。持续两周左右 最后想要放弃的时候,打算搭建TensorFlow的环境跑作者提供的代码,这时灵光一现,发现了自己哪里写错了。。。 4.建议的过程 网络结构或许很 阅读详情

相关推荐

PyTorch CNN训练深度调试:从梯度、BN到部署的全链路实战

卷积神经网络(CNN)是计算机视觉的基石,其核心在于卷积运算、批量归一化(BatchNorm)与反向传播的协同机制。理解3×3卷积核为何成为视觉任务的物理最优解,需结合傅里叶分析与微分算子本质;而BatchNorm2d的momentum参数并非动量衰减,实为运行统计量的更新率,直接影响小批量验证的稳定性。技术价值体现在可复现训练、梯度可控收敛与跨设备部署一致性。典型应用场景包括CIFAR-10图像分类、医疗影像预处理及边缘端轻量化部署。本文聚焦PyTorch框架下真实项目中高频出现的梯度异常、BN统计偏移与

cumo3681的博客 942

【pytorch】内容链接汇总

所有pytorch相关文章链接

sazass的博客 948

图像矩阵matlab代码-Hyperspectral-Images-Classification-in-Pytorch-with-Multip

图像矩阵matlab代码带有多个GPU的Pytorch中的高光谱图像分类 Pytorch中的高光谱图像分类-帕维亚大学 目的:对高光谱图像进行分类(帕维亚大学地图,103个波段,〜42k像素) 笔记: 生成数据库的文件是在Matlab中创建的,称为DB.m。 目前,最大分类得分是72%。 工作正在进行中。 该代码使用并行GPU计算进行训练 我正在使用Windows 10中安装的Pytorch 0.4,Python 3.6,Anaconda 3,Matlab R2018b DB.m Matlab代码说明: 从磁盘加载的原始Pavia大学数据库... 2x零填充已添加到数据库(以允许从矩阵边距查找像素的邻居)... 使用24个邻居创建的test_data向量(原始文件中的所有非0值)和test_target向量... 使用24个邻居创建的train_data(每个类200个像素)和train_target ... 新的/干净的数据库已保存。

anaconda pytorch Segmentation Fault ( Core Dumped )

控制台显示Segmentation Fault ( Core Dumped ) pycharm显示Process finished with exit code 139 可能是pytorch版本比较低,使用conda install pytorch-nightly -c pytorch安装最新版本   参考链接: https://blog.youkuaiyun.com/yangguangqizhi/...

raquelle的记忆宫殿 3918

hyperspectral-image-classification-master.zip

图像分类。程序起码还是完整的 要看懂才是最主要的哈哈哈

从玩具车到手机充电:手把手带你用Multisim仿真Buck/Boost电路(附工程文件)

本文通过Multisim仿真软件,手把手教你搭建Buck降压电路和Boost升压电路,实现从12V到5V或3.7V到5V的电压转换。文章详细介绍了电路搭建步骤、关键波形观测技巧及常见故障排查方法,并附赠工程文件,帮助电子爱好者快速掌握电源转换技术。

weixin_29159127的博客 243

pytorch 报错“THCudaCheck FAIL file=/pytorch/aten/src/THC/THCGeneral.cpp line=663 error=11“解决方案

今天使用pysot测试数据,pytorch出现下面报错: THCudaCheck FAIL file=/opt/conda/conda-bld/pytorch_1535493744281/work/aten/src/THC/THCGeneral.cpp line=663 error=11 : invalid argument 参考了THCudaCheck FAIL file=/pytorch/aten/src/THC/THCGeneral.cpp下面的回答 通过pip3 install -U https:/

qq_39621037的博客 6044

手把手教你用gym训练宇树GO2机器人模型(附完整配置文件)

本文提供了一份详细的实战指南,教你如何使用Gym框架为宇树GO2四足机器人搭建强化学习训练环境。文章深入解析了环境配置、参数调试、奖励函数设置等关键步骤,并分享了避开常见陷阱的经验,旨在帮助开发者高效完成模型训练。

oo7890的博客 325

python出现THCudaCheck FAIL file=/pytorch/aten/src/THC/ThCGeneral.cpp line=405 error=11 : 情况

pip install https://download.pytorch.org/whl/cu110/torch-1.7.0%2Bcu110-cp37-cp37m-linux_x86_64.whl pip install torchvision

weixin_39467358的博客 2975

手把手教你用Sentinel-1和SNAP处理InSAR数据:从下载到生成沉降图(附Python脚本)

本文详细介绍了如何使用Sentinel-1数据和SNAP软件处理InSAR数据,从下载到生成地表沉降图的全流程。通过Python脚本实现自动化处理,适用于城市扩张和地质脆弱带的地表沉降监测,提供高性价比的毫米级形变监测方案。

weixin_26800111的博客 267

ICDAR数据集简介

ICDAR(文档分析与识别国际会议)是OCR领域的权威会议,每两年发布一次数据集,专注于‌自然场景文本检测与识别‌,涵盖多语言、复杂版式和真实环境挑战。街景、广告牌、票据、手写文档等真实场景图像。包含水平、垂直、倾斜、弯曲文本,背景干扰大,部分文本存在遮挡或模糊。提供文本位置坐标(矩形/四边形框)及内容,无法识别的文本标记为###。以上总结提炼了ICDAR的核心价值与应用方法论。给出最佳实践方法是官网数据预训练模型 + 业务数据微调(比如用PPOCRLabel标注100+张业务图)。

xinghaitao2005的博客 1117

解决:zip argument #1 must support iteration

问题 今儿做数据可视化,代码感觉正常的不得了。结果报错如下: 哽咽~就寻思着,为什么第一个for循环的zip函数没有任何问题,第二个for循环的zip函数就有问题了呢? 解决思路 看报错信息,是说第二个zip里面有元素是不可迭代的,不过也看不出啥…结果定位到第一个for循环的变量名为x,刚好与变量x重名… 于是我悟了,for循环的本质是利用__next__,所以循环完毕之后到最后一个__next__,也就是30,也就是说,x=30 这本来一点问题都木有,直到下面紧接着又往zip里面传x,此时就有问题了。因

菜鸟IT女 1万+

基于SpringBoot+SpringCloud+Vue前后端分离项目实战 --开篇

如何高效学习Java? 毕业设计项目应该怎么做?入门实战项目应该怎么做? 做Java开发都应该学习哪些框架技术? 我想来跟你聊聊为什么要学习此专栏?我们经常说,看一个事儿千万不要直接陷入细节里,你应该先鸟瞰其全貌,这样能够帮助你从高维度理解问题。同样,当你迷茫想努力没有方向时,最事半功倍的方法是:找人带你! 因为过来人,更懂得如何学、如何做、如何少走弯路! 那今天就给大家带来一门专栏课程,由 天罡gg 和 经海路大白狗 两位实力大牛合力打造的一款专栏,可以让你从0到1快速拥有企业级规范的项目实战经验!

天罡gg的专栏 2万+

新开一个版块,pytorch报错大全(持续更新)

刚接触pytorch,总是报错,奈何自己有比较笨,记不住,设个帖子记录一下: 1、RuntimeError: Assertion cur_target 0 cur_target n_classes failed,大概就是输出与label不符,个人踩的坑是,使用交叉熵(CrossEntropyLoss())损失函数时,label要从0开始,从1开始会报错; ...

weixin_44819138的博客 658

Python 爬虫高级实战:HTTPS 证书忽略与代理抓包配置

本文深入解析了HTTPS加密与SSL证书校验机制在爬虫开发中的核心问题及解决方案。文章首先剖析了HTTPS协议架构和证书校验流程,指出爬虫开发中常见的证书异常场景及其负面影响。随后详细介绍了Python主流请求库(requests、httpx、aiohttp)的证书忽略配置方法,包括同步/异步模式下的实现方案。针对代理环境,文章系统比较了HTTP、HTTPS、SOCKS5等代理类型的特性差异,并提供了完整的代理配置示例。特别对中间人抓包场景,阐述了Mitmproxy的工作原理和配置要点。最后提出了工程级爬虫

2503_91057718的博客 86

基于FPGA的64点fft变换verilog开发

这精度的损失在10bits看来对最后的误差的影响是存在是不可忽略的。此后,在这思想基础上又开发了高基和分裂基等快速算法,随着数字技术的高速发展,1976年出现建立在数论和多项式理论基础上的维诺格勒傅里叶变换算法(WFTA)和素因子傅里叶变换算法。采用这种算法能使计算机计算离散傅里叶变换所需要的乘法次数大为减少,特别是被变换的抽样点数N越多,FFT算法计算量的节省就越显著。采用这种算法能使计算机计算离散傅里叶变换所需要的乘法次数大为减少,特别是被变换的抽样点数N越多,FFT算法计算量的节省就越显著。

FPGA/MATLAB学习教程/源码/项目合作开发 1977

AutoDL复现Deep3DFaceRecon_pytorch全记录

在AutoDL平台基于Miniconda-Python3.10成功复现Deep3DFaceRecon_pytorch,详细梳理环境配置、依赖安装与CUDA版本匹配要点,重点解决ninja编译失败、OpenGL不兼容等问题,并提供关闭图形渲染、高效使用无卡模式等实用技巧,实现高质量3D人脸重建。

weixin_42388898的博客 1075

harbor x509: certificate signed by unknown authority【20251222】

本教程通过「合并证书链(服务器端)+ 预置根 CA(客户端)」彻底解决了自签名证书的 x509 错误,同时集成了 Trivy 漏洞扫描,实现了 Harbor 从搭建到实用的全流程。证书链合并是服务器端的关键,确保客户端获取完整信任路径;客户端需同时配置「系统信任库 + Docker 信任目录」,避免 Docker 独立信任机制导致的问题;所有 IP 需保持一致(Harbor 配置、证书绑定、客户端访问),是避免错误的基础。

老韩的Linux云计算架构师进阶之路 682

pytorch 中遇到的若干bug记录

在使用了AMP (自动混合精度)之后,模型的训练进程偶尔会出现很奇怪的现象。 在训练到某个epoch之后,验证集的acc变为0%, 经过调试之后发现是AMP的scaler的导致的。一般来说,scale在遇到loss为nan后,会停止本次更新,降低对loss的scale,但是我的代码在运行过程中出现-inf,而在最后经过sigmoid,结果变为0 ,从而导致loss变为常数,而非NaN,所以这当然是有问题的… (补充一下为什么要用scale,当某些计算经过amp变成版精度计算的以后,有一些少于16bit的.

GeniusSoul 320

复分析 阿尔福斯(Ahlfors) 第三版答案 英文

答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案

Camera2Demo

在Camera2 的基础上进行封装,使得Camera2一堆初始化逻辑与Activity分离,降低耦合度,完成预览拍照并保存的操作

Pytorch填坑

记录实验中遇到的pytorch可能的问题及解决办法,持续更新,欢迎大家在评论区补充。 1、UserWarning: Using a target size (torch.Size([64])) that is different to the input size (torch.Size([64, 1])). This will likely lead to incorrect resul...

qq_40600539的博客 1万+

IEM模型,地表粗糙度模拟

利用微波反演土壤水分时候,利用IEM模型可以实现对随机地表的模拟

GEM-X社区贡献指南:如何为开源项目添加新功能与修复Bug

欢迎来到GEM-X开源项目社区!🎉 作为NVIDIA开发的通用人体运动模型,GEM-X(Generalist Model for Human Motion)正在通过社区的力量不断成长。无论你是计算机视觉新手还是经验丰富的开发者,都可以通过贡献代码、修复Bug或改进文档来帮助这个优秀的项目。本文将为你提供一份完整的GEM-X社区贡献指南,帮助你快速上手并为项目贡献力量。 ## 🤝 为什么参与G

gitblog_00327的博客 988

VB摄像头监控

该VB模块可对摄像头捕获的画面进行录像等,可在创建的窗口进行控制

PyTorch Internals手册:深入框架内部,解决显存泄漏与梯度调试难题

深度学习框架的核心在于张量计算、自动微分与内存管理三大基础概念。张量作为数据载体,其内存布局与生命周期管理直接影响训练效率;自动微分通过动态计算图实现梯度反向传播,是模型优化的基石;而内存管理则决定了显存利用率和系统稳定性。理解这些底层原理,对于解决模型训练中的显存泄漏、梯度异常等工程问题至关重要。PyTorch作为主流框架,其内部机制如计算图构建、算子调度策略,正是这些原理的具体实现。通过掌握PyTorch Internals手册,开发者能深入框架内核,精准调试显存问题与梯度流,提升模型部署与性能优化能力

weixin_30932215的博客 393

PyTorch Wrapper:可调试、可复现、可扩展的工业级训练骨架

PyTorch原生训练循环虽灵活,却在状态管理、配置耦合、日志监控和分布式支持上存在工程落地暗礁。本文聚焦PyTorch Wrapper这一轻量级封装范式,其核心在于不替代nn.Module或DataLoader,而是在torch.nn与torch.optim之上构建语义清晰、职责内聚的胶水层,实现模型组装(Build)、训练过程可观测(Train)与错误可追溯。该方案显著提升训练流程的可复现性、跨任务迁移能力及多卡DDP鲁棒性,适用于CV/NLP/时序等多模态工业场景,是连接算法原型与AI工程交付的关键中

weixin_30781107的博客 310

使用screen命令保持PyTorch训练任务持续运行

远程训练常因网络中断前功尽弃,screen能让你的PyTorch任务在断开SSH后继续运行。它创建独立会话,支持随时恢复查看输出,并结合Docker实现环境隔离与进程稳定,是深度学习开发中简单却关键的工程实践。

weixin_29443363的博客 644

GitHub Sponsor支持PyTorch开源开发者

PyTorch凭借动态图设计和易用性成为主流深度学习框架,如今通过GitHub Sponsors实现对开发者的可持续支持,同时预配置的CUDA镜像大幅降低环境配置门槛。经济激励与工程提效双轮驱动,让开发者更专注于创新,推动AI生态走向成熟与普及。

weixin_33628677的博客 638

算法Bug识别能力成长路径:从现象归因到机制预判

机器学习中的算法Bug并非代码错误,而是模型决策系统性偏移的隐性缺陷,其本质是数据、模型与业务目标之间的深层矛盾。理解这类Bug需超越传统调试思维,从基础概念出发,把握其在数据漂移、特征编码、损失函数错位等环节的生成原理;技术价值在于将不可见的‘效果异常’转化为可观测、可量化、可干预的信号链;典型应用场景覆盖电商推荐、工业质检、信贷风控等对鲁棒性要求严苛的工程领域;本文聚焦工程师识别算法级缺陷的能力演进规律,结合数据分布信号、梯度健康信号等核心热词,系统拆解从症状识别、根因锚定到机制预判的三阶跃迁路径。

dglf54292的博客 400
上一篇: TensorBoardX add_image()输出图片与torchvision.transforms.Normalize()标准化需要注意的地方
下一篇: 对抗神经网络GAN中d_loss g_loss两种更新参数的图解释
chanhal
博客等级 码龄9年 30粉丝 28原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值