# pytorch_train
## 模型训练
![UtyvKf.png](https://s1.ax1x.com/2020/07/14/UtyvKf.png)
训练模型主要分为五个模块:启动器、自定义数据加载器、网络模型、学习率/损失率调整以及训练可视化。
启动器是项目的入口,通过对启动器参数的设置,可以进行很多灵活的启动方式,下图为部分启动器参数设置。
![UtciwD.png](https://s1.ax1x.com/2020/07/14/UtciwD.png)
任何一个深度学习的模型训练都是离不开数据集的,根据多种多样的数据集,我们应该使用一个方式将数据集用一种通用的结构返回,方便网络模型的加载处理。
![Utc9OK.png](https://s1.ax1x.com/2020/07/14/Utc9OK.png)
这里使用了残差网络Resnet-34,代码中还提供了Resnet-18、Resnet-50、Resnet-101以及Resnet-152。残差结构是通过一个快捷连接,极大的减少了参数数量,降低了内存使用。
以下为残差网络的基本结构和Resnet-34 部分网络结构图。
![UtcPeO.png](https://s1.ax1x.com/2020/07/14/UtcPeO.png)
![Utcn6P.png](https://s1.ax1x.com/2020/07/14/Utcn6P.png)
除了最开始看到的train-val图表、Top-、Top-5的error记录表以外,在训练过程中,使用进度条打印当前训练的进度、训练精度等信息。打印时机可以通过上边提到的 启动器 优雅地配置。
![Utc3kQ.png](https://s1.ax1x.com/2020/07/14/Utc3kQ.png)
以下为最终的项目包架构。
```
pytorch_train
|-- data -- 存放读取训练、校验、测试数据路径的txt
| |-- train.txt
| |-- val.txt
| |-- test.txt
|-- result -- 存放最终生成训练结果的目录
|-- util -- 模型移植工具
|-- clr.py -- 学习率
|-- dataset.py -- 自定义数据集
|-- flops_benchmark.py -- 统计每秒浮点运算次数
|-- logger.py -- 日志可视化
|-- mobile_net.py -- 网络模型之一 mobile_net2
|-- resnet.py -- 网络模型之一 Resnet系列
|-- run.py -- 具体执行训练、测试方法
|-- start.py -- 启动器
```
![UtgkuV.png](https://s1.ax1x.com/2020/07/14/UtgkuV.png)
## 模型移植
Github 地址:[pytorch_train/transfor](https://github.com/tf2jaguar/pytorch_train/blob/master/util/transfor.py)
```python
import os
import torch
import torchvision
model_pth = os.path.join("results", "2020-04-27_10-27-17", 'checkpoint.pth.tar')
# 将resnet34模型保存为Android可以调用的文件
mobile_pt = os.path.join("results", "2020-04-27_10-27-17", 'resnet34.pt')
num_class = 13
device = 'cpu' # 'cuda:0' # cpu
model = torchvision.models.resnet34(num_classes=num_class)
model = torch.nn.DataParallel(model, [0])
model.to(device=device)
checkpoint = torch.load(model_pth, map_location=device)
model.load_state_dict(checkpoint['state_dict'])
model.eval() # 模型设为评估模式
# 1张3通道224*224的图片
input_tensor = torch.rand(1, 3, 224, 224) # 设定输入数据格式
traced_script_module = torch.jit.trace(model.module, input_tensor) # 模型转化
traced_script_module.save(mobile_pt) # 保存文件
```
## 启动模型训练
<font color=red>启动前需要确保你已经有了本项目使用的数据集 CompCars</font>
### 重新开始新的训练
```shell script
python start.py --data_root "./data" --gpus 0,1,2 -w 2 -b 120 --num_class 13
```
- --data_root 数据集路径位置
- --gups 使用gpu训练的块数
- -w 为gpu加载自定义数据集的工作线程
- -b 用来gpu训练的 batch size是多少
- --num_class 分类类别数量
### 使用上次训练结果继续训练
```shell script
python start.py --data_root "./data" --gpus 0,1,2 -w 2 -b 120 --num_class 13 --resume "results/2020-04-14_12-36-16"
```
- --data_root 数据集路径位置
- --gups 使用gpu训练的块数
- -w 为gpu加载自定义数据集的工作线程
- -b 用来gpu训练的 batch size是多少
- --num_class 分类类别数量
- --resume 上次训练结果文件夹,可继续上次的训练
### 模型移植
将训练好的模型转换为Android可以执行的模型
```shell script
python transfor.py
```
没有合适的资源?快使用搜索试试~ 我知道了~
温馨提示
deepsort 【作品名称】:基于pytorch进行深度学习网络模型训练,实现车型识别【毕业设计】 【适用人群】:适用于希望学习不同技术领域的小白或进阶学习者。可作为毕设项目、课程设计、大作业、工程实训或初期项目立项。 【项目介绍】:启动模型训练 启动前需要确保你已经有了本项目使用的数据集 CompCars 重新开始新的训练 python start.py --data_root "./data" --gpus 0,1,2 -w 2 -b 120 --num_class 13 --data_root 数据集路径位置 --gups 使用gpu训练的块数 -w 为gpu加载自定义数据集的工作线程 -b 用来gpu训练的 batch size是多少 --num_class 分类类别数量 使用上次训练结果继续训练 python start.py --data_root "./data" --gpus 0,1,2 -w 2 -b 120 --num_class 13 --resume "results/2020-04-14_12-36-16" --data_root 数据集路径位
资源推荐
资源详情
资源评论
收起资源包目录
pytorch_train-master.zip (16个子文件)
pytorch_train-master
.DS_Store 6KB
mobile_net.py 7KB
data
README.md 53B
flops_benchmark.py 8KB
dataset.py 4KB
start.py 12KB
clr.py 7KB
run.py 5KB
requirements.txt 73B
resnet.py 7KB
logger.py 3KB
.gitignore 1KB
util
__init__.py 118B
transfor.py 837B
results
README.md 20B
README.md 4KB
共 16 条
- 1
资源评论
MarcoPage
- 粉丝: 4307
- 资源: 8839
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- Java 多线程课程的代码及少量注释.zip
- 数据库课程设计-基于的个性化购物平台的建表语句.sql
- 数据库课程设计-基于的图书智能一体化管理系统的建表语句.sql
- Java 代码覆盖率库.zip
- Java 代码和算法的存储库 也为该存储库加注星标 .zip
- 免安装Windows10/Windows11系统截图工具,无需安装第三方截图工具 双击直接使用截图即可 是一款免费可靠的截图小工具哦~
- Libero Soc v11.9的安装以及证书的获取(2021新版).zip
- BouncyCastle.Cryptography.dll
- 5.1 孤立奇点(JD).ppt
- 基于51单片机的智能交通灯控制系统的设计与实现源码+报告(高分项目)
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功