pytorch学习002- -debug(load_state_dict() missing 1 required positional argument: ‘state_dict‘)

本文介绍如何使用Python和PyTorch将GPU上训练得到的模型转换为可在CPU环境中进行推理的.pt文件。主要内容包括解决在加载模型状态字典时遇到的TypeError错误及“Unexpected key(s) in state_dict”问题。
Python3.11

Python3.11

Conda
Python

Python 是一种高级、解释型、通用的编程语言,以其简洁易读的语法而闻名,适用于广泛的应用,包括Web开发、数据分析、人工智能和自动化脚本

Debug

savept.py文件用来将gpu上训练的模型转换为cpu上推理可用的pt文件
以下为部分代码:

import torch

from model import NET

print(torch.__version__)  # 1.10.1+cpu

model = NET
device = torch.device('cpu')
state_dict = torch.load(PATH, map_location=device)

model.load_state_dict(state_dict, strict=False)

具体的报错内容
model.load_state_dict(state_dict, strict=False)
TypeError: load_state_dict() missing 1 required positional argument: ‘state_dict’

=打印一下state_dict:在这里插入图片描述
可以看到的是正常的,一个关键在于实例化*
参考
在这里插入图片描述
修改:model= NET()
这个地方是属于实例化错误,以后的学习过程中应当重视基础。
补充:
在测试过程中遇到了一个“Unexpected key(s) in state_dict”的问题
解决方案:优快云博客

您可能感兴趣的与本文相关的镜像

Python3.11

Python3.11

Conda
Python

Python 是一种高级、解释型、通用的编程语言,以其简洁易读的语法而闻名,适用于广泛的应用,包括Web开发、数据分析、人工智能和自动化脚本

评论 3
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值