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

pytorch训练模板

来源:http://worthpen.top/#/home/blog?blog=pot-blog36.md

引言

本项目实现了基于PyTorch Lightning的神经网络训练和测试管道。项目除了实现PyTorch Lightning的工作流外,还实现了通过任务池在训练过程中添加任务、k折交叉验证、将训练结果保存在.cvs中、接受随机种子进行恢复训练、将模型转换为.onnx和.tflite。

项目地址: https://github.com/shenyan233/machine_learning_template

使用方法

环境配置

python version:3.7-3.10

pip install -r requirements.txt

cuda and torch need to be installed by itself. Recommendation:

pip install torch==1.12.1+cu113 torchvision==0.13.1+cu113 torchaudio==0.12.1+cu113 --extra-index-url https://download.pytorch.org/whl/cu113

配置网络架构和数据集

整个项目目录结构如下:

.
├── dataset
│   └── {dataset_name}
│        ├── test
│        │   ├── image
│        │   │   └── *.png
│        │   └── label.txt
│        ├── train
│        │   ├── image
│        │   │   └── *.png
│        │   └── label.txt
│        └── ...
├── network
│   └── {network_name}
│         ├── network.py
│         └── ...
└── ...

上述表示的文件或文件夹需要预先配置。省略号所代表的文件或文件夹保持默认即可。
数据集需要调整为自己的数据集,图像(*.png)名称为对应label.txt中的行号。您可以在此处自由调整数据集的保存格式,但Dataloder和其他类需要在’/dataset/{dataset name}/init.py’中重写。
network.py包含要训练的网络架构, 可以改为其他名称, 但是需要同步修改__init__.py。
任务流的配置参数保存在tasks.json中。

设置训练参数

在./network/{network_name}/config.json中设置参数,参数包括model_name、dataset_path、stage、max_epoch、batch_size等。训练参数包括可选参数和必选参数, 具体内容可浏览main.py内的注释。参数stage为’fit’或’test’,分别表示处于训练阶段或测试阶段。

开始训练或测试

在终端或cmd内执行:
python3 main.py

http://www.lryc.cn/news/249356.html

相关文章:

  • 代码随想录二刷 |字符串 |反转字符串
  • Rust语言入门教程(九) - 结构体
  • 如何使用Qchan搭建更好保护个人隐私的本地图床并在公网可访问
  • AI伪原创软件-AI伪原创工具下载
  • 【python脚本】获取OneNET数据写入本地文件
  • 5 存储器映射和寄存器
  • 决策树学习
  • 如何在Ubuntu系统上安装Git
  • Leetcode.974 和可被 K 整除的子数组
  • Vue打包错误UnhandledPromiseRejectionWarning: CssSyntaxError
  • 鸿蒙系统扫盲(三):鸿蒙开发用什么语言?
  • linux 中vmalloc实现简述
  • homeassistant 随笔
  • 带大家做一个,易上手的家常炒鸡蛋
  • 芒格传奇落幕!生前最后一次谈论比特币,说了什么?
  • Springboot如何快速生成分页展示以及统计条数
  • 数据结构:图文详解顺序表的各种操作(新增元素,查找元素,删除元素,给指定位置元素赋值)
  • 2023 年 IntelliJ IDEA下载、安装教程,附详细图文
  • C++——解锁string常用接口
  • Stable Video Diffusion(SVD)参数使用教程
  • 【传智杯】排排队、小卡与质数 2、1024 程序员节发橙子题解
  • Oracle
  • 2023年c语言程序设计大赛
  • 9.vue3项目(九):spu管理页面的新增和修改
  • 人工智能:让生活更便捷、更智能——探讨人工智能在生活中的作用与挑战
  • 【C++】类和对象——const修饰成员函数和取地址操作符重载
  • express+mySql实现用户注册、登录和身份认证
  • 【PyTorch】(二)加载数据集
  • 如何提高3D建模技能?
  • 【前端开发】Next.js与Nest.js之间的差异2023