记一次pytorch训练loss异常的问题

记一次pytorch训练loss异常的问题

问题描述

使用mmdetection框架训练时,某项loss出现异常大的值,比如1781232349724294.000。这个问题只在多卡训练时才会出现。

解决方法

在确认target和predction没有问题后,发现是在dataset中的数据处理出现了问题。在dataset中的__getitem__函数中,对数据进行了处理,但是在处理时,将数据转换为了numpy格式,而没有将其他dtype转换为float32,导致了数据类型不匹配,从而导致了loss异常。将数据转换为float32后,问题解决。

numpy生成的数据默认为float64,而pytorch默认为float32,所以在处理数据时,需要注意数据类型的转换。

相关推荐
阳光是sunny8 小时前
别再被 worktree 绕晕了!AI 编程时代你必须掌握的 Git 隔离神器
前端·人工智能·后端
冬奇Lab9 小时前
每日一个开源项目(第148篇):obsidian-skills - Obsidian CEO 亲写的 AI Agent 格式规范,让 Agent 不再破坏你的 Vault
人工智能·开源·资讯
ethantan9 小时前
AI Agent 组成:像人一样思考的智能体
人工智能·程序员·架构
冬奇Lab9 小时前
Workflow 系列(05):评测体系——三层测试结构与 Trace 追踪
人工智能·工作流引擎
ethantan10 小时前
一篇讲解AI Agent 组成:像人一样思考的智能体
人工智能·后端·程序员
apocelipes12 小时前
常用编程语言和库的正则表达式性能对比
c语言·c++·python·性能优化·golang·开发工具和环境
Cosolar12 小时前
vLLM 生产级部署完全指南
人工智能·后端·架构
CodePlayer竟然被占用了12 小时前
被美国政府封杀18天,Claude Fable 5 回来了——但代价是什么?
人工智能
IT_陈寒12 小时前
垃圾回收器选错了,我的Java服务内存炸了
前端·人工智能·后端
smartpi13 小时前
SmartPi GPIO 脉冲与回复语执行时序指南
人工智能