pytorch模型部署到树莓派(pytorch搭建模型)

pytorch模型部署到树莓派(pytorch搭建模型)Pytorch 对于树莓派提供了较好的支持 可以利用 Pytorch 在树莓派上进行试试推理 当然也可以使用树莓派进行模型训练了 这里尝试使用树莓派 CPU 对模型进行训练 0 环境配置 必要的环境安装 这个步骤没有什么值得说的 这里不再赘述 有需要可以参考之前的博客 树莓派 5 上手 另外 这里还需要安装 matplotlib 绘图库 之后绘制损失曲线用的到



Pytorch 对于树莓派提供了较好的支持,可以利用 Pytorch 在树莓派上进行试试推理,当然也可以使用树莓派进行模型训练了,这里尝试使用树莓派CPU对模型进行训练。

0 环境配置

必要的环境安装,这个步骤没有什么值得说的,这里不再赘述,有需要可以参考之前的博客:树莓派5上手。

另外,这里还需要安装matplotlib绘图库(之后绘制损失曲线用的到):

 

1 训练代码

这里通过自己生成随机数据集,来训练一个简单的一维 CNN 模型。github地址:https://github.com/Taot-chen/raspberrypi_dl
项目结构:

 
1.1 生成模拟数据集

在没有数据集的情况下,通过简单的方式来生成一个数据集。数据集包含两部分,训练的值和标签,训练的值用data表示,训练的标签用label表示,:

 
1.2 训练数据处理
  • 导入需要的工具包:
 
  • 导入自定义数据集 API:
 
  • 导入自定义模型

这里自定义的模型比较多,可以去github仓库取完整代码,这里只使用了 MobileNetV3:

 

导入模型:

 
  • 加载数据集
 
  • 划分训练集和测试集
    去数据集的前 70% 为训练集,后 30% 为测试集:
 
  • 数据加载 class
 
  • 构建 dataloader
 
  • 数据加载至训练设备上
    选择CPU训练还是GPU训练:
 
  • 加载模型
 
  • 加载损失函数

这里使用交叉误熵损失函数:

 
  • 加载优化器
 
  • 初始化训练集准确率和测试集准确率列表

初始化两个列表,这两个列表分别用于存储训练集准确率和测试集准确率,每间隔show_result_epoch轮保存一次训练准确率和测试准确率,打印一次训练集和测试集的准确率:

 
1.3 完整训练函数

 

2 训练

2.1 生成训练数据
 
2.2 训练模型
 
2.3 训练结果

由于这里的训练集和测试集都是使用的随机数,可以的看到,测试的准确率比较低。训练速度的话,就真的是不快。

在这里插入图片描述

编程小号
上一篇 2025-03-26 20:33
下一篇 2025-02-28 11:27

相关推荐

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
如需转载请保留出处:https://bianchenghao.cn/bian-cheng-ri-ji/49641.html