pytorch学习

一、训练模型的流程

1.定义数据集对象
  • __init__(self,......):可以视为构造函数
  • __len__(self):返回读取文件的长度
  • __getitem__(self, index):读取文件指定index多张的图片(输入图、答案);对图片进行预处理操作(裁剪、翻转、归一化等);cv2读取图片后要转换颜色通道,图片从HxWxC改为CxHxW的形式;生成one-hot encoding;返回对应输入图像矩阵、标注图像矩阵、one-hot encoding
2.搭建网络结构
  • 使用卷积、激活等函数来搭建网络
3.训练模型
  • 定义epoch、学习率等超参数
  • 初始化数据集对象、加载数据集
  • 初始化模型
  • 定义损失函数、优化函数
  • 编写训练周期
    • 将input输入到模型得到output
    • 将output和label算loss

二、pytorch 加载模型

方法一:将整个网络都都保存下来
# 保存和加载整个模型
torch.save(model_object, 'model.pkl')
model = torch.load('model.pkl')
方法二:仅保存和加载模型参数
# 仅保存和加载模型参数(推荐使用)
torch.save(model_object.state_dict(), 'params.pkl')
model_object.load_state_dict(torch.load('params.pkl'))

三、遇到的问题

1.不能成功读取图片
  • 路径存在中文
  • 路径不对,用相对路径时需要特别注意,可以自己直接把字符串路径写道方法里测试一下
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值