当前位置: 首页 > news >正文

怎么在四川建设厅网站上进行劳务合同备案亚马逊市场营销案例分析

怎么在四川建设厅网站上进行劳务合同备案,亚马逊市场营销案例分析,建筑公司企业愿景模板平台,溧阳建设工程监理网站在 PyTorch 中,有几种常见的方法来保存和加载模型,具体方法取决于你想保存什么内容(例如,只保存模型的权重,还是保存整个模型)。下面我将介绍几种常见的保存和加载模型的方法。 1、保存和加载模型的 state…

PyTorch 中,有几种常见的方法来保存和加载模型,具体方法取决于你想保存什么内容(例如,只保存模型的权重,还是保存整个模型)。下面我将介绍几种常见的保存和加载模型的方法。

1、保存和加载模型的 state_dict

  • state_dict 是一个简单的 Python 字典对象,它将每一层的参数映射到其对应的张量(tensor)。这是最推荐的保存方式,因为它只保存模型的权重和参数,而不依赖于模型的代码结构。
  • 保存模型的 state_dict
import torch
import torch.nn as nn# 假设我们有一个模型
model = nn.Linear(10, 2)# 保存模型的 state_dict
torch.save(model.state_dict(), 'model.pth')
  • 加载模型的 state_dict
import torch
import torch.nn as nn# 假设我们有相同结构的模型
model = nn.Linear(10, 2)# 加载 state_dict
model.load_state_dict(torch.load('model.pth'))# 使用模型
model.eval()

2、保存和加载整个模型

  • 这种方法不仅保存了模型的权重和参数,还保存了模型的结构。因此,整个模型在加载时不需要再定义模型结构。尽管这提供了更大的便利性,但也有一些缺点,比如文件可能与代码过于耦合(会保存模型的类和结构,如果代码发生变化可能无法加载)。
  • 保存整个模型:
import torch
import torch.nn as nn# 假设我们有一个模型
model = nn.Linear(10, 2)# 保存整个模型
torch.save(model, 'model_entire.pth')
  • 加载整个模型:
import torch# 加载整个模型
model = torch.load('model_entire.pth')# 使用模型
model.eval()

3、保存和加载 checkpoint(保存更多的训练状态)

  • 如果你希望保存更多的训练信息,例如优化器状态、当前的 epoch 以及训练损失等,以便后续继续训练,可以保存一个包含多个内容的字典。
  • 保存 checkpoint
import torch
import torch.nn as nn
import torch.optim as optim# 假设我们有一个模型和优化器
model = nn.Linear(10, 2)
optimizer = optim.SGD(model.parameters(), lr=0.001)# 保存 checkpoint
checkpoint = {'epoch': 10,'model_state_dict': model.state_dict(),'optimizer_state_dict': optimizer.state_dict(),'loss': 0.5,
}torch.save(checkpoint, 'checkpoint.pth')
  • 加载 checkpoint
import torch
import torch.nn as nn
import torch.optim as optim# 假设我们有相同结构的模型和优化器
model = nn.Linear(10, 2)
optimizer = optim.SGD(model.parameters(), lr=0.001)# 加载 checkpoint
checkpoint = torch.load('checkpoint.pth')
model.load_state_dict(checkpoint['model_state_dict'])
optimizer.load_state_dict(checkpoint['optimizer_state_dict'])
epoch = checkpoint['epoch']
loss = checkpoint['loss']# 恢复训练
model.train()

4、动态量化后的模型保存与加载

  • 如果你对模型进行了量化(如动态量化),你可能需要保存量化后的模型。保存和加载方法与保存 state_dict 类似。
  • 动态量化模型:
import torch
import torch.nn as nn# 假设我们有一个模型
model = nn.Linear(10, 2)# 进行动态量化
quantized_model = torch.quantization.quantize_dynamic(model, {nn.Linear}, dtype=torch.qint8
)# 保存量化后的模型
torch.save(quantized_model.state_dict(), 'quantized_model.pth')
  • 加载量化模型:
import torch
import torch.nn as nn# 重新定义与量化前相同的模型结构
model = nn.Linear(10, 2)# 加载量化后的模型权重
model.load_state_dict(torch.load('quantized_model.pth'))
model.eval()

总结

  1. 保存 state_dict:最常用和推荐的方式,只保存模型参数,需手动重新定义模型结构后加载。
  2. 保存整个模型:保存模型结构和参数,一次性加载整个模型,但依赖于模型的代码结构。
  3. 保存 checkpoint:适合长时间训练的场景,保存更多状态以便后续继续训练。
  4. 保存量化后的模型:用于保存经过量化处理的模型,节省存储空间并提升推理速度。

不同的保存方式适合不同的使用场景,推荐使用 state_dict 来保存模型权重,尤其是在需要在不同环境或版本中加载模型时。

http://www.yidumall.com/news/84883.html

相关文章:

  • 电商网站多少钱国内做seo最好的公司
  • 永川区城乡建设委员会网站正规电商培训班
  • 中国文化网站建设方案宜昌网站seo收费
  • dota2海涛做的网站百度指数是什么意思
  • 荆州做网站河南百度推广公司
  • 网站不备案的后果数字经济发展情况报告
  • 网站开发需求分析范本杭州优化商务服务公司
  • 自己做公众号引流到其他电影网站可以百度云搜索
  • 做外贸b2c网站买什么服务器湖南seo排名
  • 手机建立网站软件产品宣传推广方案
  • 上海网络推广报价吉安seo网站快速排名
  • 南宁网站推广手段seo少女
  • 公司网站建设价格表怎么制作网站教程
  • 做自己的网站多少钱建网站的流程
  • 制作h5用什么软件比较好网站关键词优化怎么做的
  • 衡水网站设计公司哪家好乐陵seo优化
  • 正规建网站企业网络营销方案有哪些
  • 原则网站设计版式app推广引流方法
  • 南川网站建设公司seo网课培训
  • gta5买房子网站正在建设建站公司网站源码
  • 如何建造一个网站乐天seo培训
  • 淘宝客做网站好还是建群号太原关键词优化公司
  • 网站建设需求书泉州seo网站排名
  • 星河东莞网站建设百度seo排名培训 优化
  • 织梦做的网站别人提交给我留的言我去哪里看网站排名系统
  • wordpress面包屑导航兰州网络推广关键词优化
  • 管理咨询网站怎么在百度推广自己的公司
  • 武汉建设信息网站廊坊seo快速排名
  • 什么电脑做网站前段用域名交易域名出售
  • 吉林市城市建设管理执法局网站免费网络推广网站