模型的存储、加载和部署

定义损失函数并以此训练和评估模型
存储模型可以只存储state_dict或模型参数,每当需要部署经过训练的模型时,创建模型的对象并从文件中加载参数,这是 Pytorch 创建者推荐的方法。

目录

模型的存储、加载

模型的部署


模型的存储、加载

承接上文,完成模型的训练后,需要将训练的参数存储在文件中,以供部署和使用。

复制代码
#定义路径
path2weights="./models/weights.pt"
#将state_dict存储到文件
torch.save(model.state_dict(), path2weights)

为了从文件中加载模型参数,定义一个 Net 的对象类并加载state_dict

复制代码
#定义随机初始权重模型
_model = Net()
#加载文件中的state_dict
weights=torch.load(path2weights)
#赋予权重
_model.load_state_dict(weights)

加载成功如下

模型的部署

将模型加载到内存中后,可以将新数据传递给模型

复制代码
import matplotlib.pyplot as plt
#抽取一个n=10张量
n=10
x= x_val[n]
y=y_val[n]
print(x.shape)
plt.imshow(x.numpy()[0],cmap="gray")

对张量进行预处理

复制代码
#将维度扩展为 1*C*H*W
x= x.unsqueeze(0)
#转换为torch.float32格式
x=x.type(torch.float)

得到模型预测

复制代码
#获取模型输出
output=_model(x)
#获取预测结果
pred = output.argmax(dim=1, keepdim=True)
print (pred.item(),y.item())
相关推荐
Circ.3 分钟前
Python 调试 Litellm 本地大模型接口:模型列表与对话接口实操踩坑记录
开发语言·python
AIGS00112 分钟前
什么是本体语义平台?和知识图谱、传统数据中台的区别在哪
人工智能·知识图谱·数据中台·ai问数·本体语义平台·智能数据中台
YOLO数据集集合12 分钟前
烟叶病虫害检测数据集 | 烟叶病害 无人机航拍 智慧农业 病害检测 9125期
人工智能·目标检测·目标跟踪·无人机·烟草病虫·烟草虫害
Experience-摆渡20 分钟前
一个开源免费的本地AI抠图工具 unbagrnd:断网也能用的背景移除
人工智能·开源
只是甲21 分钟前
Text2SQL 系列博客 07:4 步选型法(上)- 场景与标准的定义
人工智能·text2sql·nl2sql·ai agent·智能问数
Csvn36 分钟前
AI 应用日志别再 print 了:结构化日志 + request_id 贯穿(O01)
人工智能
风早爽太1 小时前
用 ‌Render‌ 快速部署网站和常见问题解决
python·fastapi
空 白II1 小时前
9.26 大语言模型研究简报:把 Agent 开发做成“数据—训练—Harness”闭环
人工智能·语言模型·自然语言处理
tellmewhoisi1 小时前
机器学习:集成学习4(XGBoost 的API)
人工智能·机器学习·集成学习
只猪侠GGBond1 小时前
从“会诊断”到“能验证”:AI FaultLab 的修复验证闭环设计
人工智能