深度学习-模型调试经验总结

1、
这句话的意思是:期望张量的后端处理是在cpu上,但是实际是在cuda上。排查代码发现,数据还在cpu上,但是模型已经转到cuda上,所以可以通过把数据转到cuda上解决。

解决代码:

python 复制代码
tensor.to("cuda")

2、
解决方法:减小batch size的大小或减小图片的尺寸

3、

原始的代码如下:

python 复制代码
torch.save(model.module.state_dict(), os.path.join(model_prefix, '{}-model.pth'.format(epoch)))

原因:因为只有一块GPU,以上代码是多GPU使用的

解决方法:改为以下单GPU代码:

python 复制代码
        meta = {}
        checkpoint = {"meta": meta, "state_dict": weights_to_cpu(model.state_dict())}
        if optimizer is not None:
            checkpoint["optimizer"] = optimizer.state_dict()
        torch.save(checkpoint, os.path.join(model_prefix, '{}-model.pth'.format(epoch)))

4、原始代码:

python 复制代码
base_net.load_state_dict(torch.load(pretrain_model, map_location='cpu'))

原因:模型参数文件是保存在了state_dict中,所以后面要加

解决方法:改成以下代码:

python 复制代码
base_net.load_state_dict(torch.load(pretrain_model, map_location='cpu')["state_dict"])
相关推荐
星爷AG I3 分钟前
9-26 主动视觉(AGI基础理论)
人工智能·计算机视觉·agi
爱吃泡芙的小白白10 分钟前
CNN参数量计算全解析:从基础公式到前沿优化
人工智能·神经网络·cnn·参数量
拐爷20 分钟前
vibe‑coding 九阳神功之喂:把链接喂成“本地知识”,AI 才能稳定干活(API / 设计 / 报道 / 截图)
人工智能
石去皿20 分钟前
大模型面试通关指南:28道高频考题深度解析与实战要点
人工智能·python·面试·职场和发展
yuezhilangniao31 分钟前
AI智能体全栈开发工程化规范 备忘 ~ fastAPI+Next.js
javascript·人工智能·fastapi
好奇龙猫33 分钟前
【人工智能学习-AI入试相关题目练习-第十八次】
人工智能·学习
Guheyunyi37 分钟前
智能守护:视频安全监测系统的演进与未来
大数据·人工智能·科技·安全·信息可视化
程序员辣条40 分钟前
AI产品经理:2024年职场发展的新机遇
人工智能·学习·职场和发展·产品经理·大模型学习·大模型入门·大模型教程
AI大模型测试41 分钟前
大龄程序员想转行到AI大模型,好转吗?
人工智能·深度学习·机器学习·ai·语言模型·职场和发展·大模型
ProcessOn官方账号1 小时前
程序员如何与同龄人拉开差距?这5张让你快速提升认知,打开格局!
深度学习·职场和发展·学习方法