Update README.md

This commit is contained in:
gwg_xujiao 2024-10-25 14:33:55 +08:00
parent 49175df0df
commit b8f50fc918
1 changed files with 25 additions and 19 deletions

View File

@ -12,6 +12,8 @@ netrans
└── utils
```
目录说明如下:
| 目录 | 说明 |
| :--- | ---
| netrans_cli | 导入,量化,推理和导出的一键运行脚本 |
@ -29,6 +31,8 @@ netrans
## 1.3 支持介绍
netrans 支持的 输入模型、量化数据和输出数据类型、算子 如下表
支持框架介绍
|输入支持|描述|
|:---|---|
| caffe|支持|
@ -37,8 +41,10 @@ netrans 支持的 输入模型、量化数据和输出数据类型、算子 如
| ONNX|支持 ONNX 至 1.14.0 opset支持至19 |
| Pytorch | 支持 Pytorch 至 1.5.1 |
| Keras |支持以TensorFLow 2.0.x, 2.3.x, 2.6.x, 2.8.x, 2.10.x, 2.12.x 作为后端导出的keras模型|
| Darknet |支持[官网](https://pjreddie.com/darknet/)列出 darknet 模型|
| Darknet |支持[Darknet官网](https://pjreddie.com/darknet/)列出 darknet 模型|
支持数据类型介绍:
|数据支持|描述|
|:---|---|
| 推理输入数据| 推理输入数据支持txt文本文件、numpy数据|
@ -248,24 +254,24 @@ netrans_cli 脚本介绍
在netrans_cli目录下使用inputmeta_gen.sh脚本生成inputmeta文件
- 用法: ./inputmeta_gen.sh 以模型文件名命名的模型数据文件夹,例如:
```shell
$ ./inputmeta_gen.sh lenet
... ...
I Namespace(generate='inputmeta', input_meta_output=None, model='lenet.json', separated_database=True, which='generate')
I Load model in lenet.json
I Generate input meta lenet_inputmeta.yml
I ----------------Error(0),Warning(0)----------------
```shell
$ ./inputmeta_gen.sh lenet
... ...
I Namespace(generate='inputmeta', input_meta_output=None, model='lenet.json', separated_database=True, which='generate')
I Load model in lenet.json
I Generate input meta lenet_inputmeta.yml
I ----------------Error(0),Warning(0)----------------
$ ls -lrt lenet
total 3400
-rwxr-xr-x 1 hope hope 1727201 Nov 5 2018 lenet.pb
-rw-r--r-- 1 hope hope 553 Nov 5 2018 0.jpg
-rwxr--r-- 1 hope hope 6 Apr 21 17:04 dataset.txt
-rw-rw-r-- 1 hope hope 69 Jun 7 09:19 inputs_outputs.txt
-rw-r--r-- 1 hope hope 5553 Jun 7 09:21 lenet.json
-rw-r--r-- 1 hope hope 1725178 Jun 7 09:21 lenet.data
-rw-r--r-- 1 hope hope 948 Jun 7 09:35 lenet_inputmeta.yml
```
$ ls -lrt lenet
total 3400
-rwxr-xr-x 1 hope hope 1727201 Nov 5 2018 lenet.pb
-rw-r--r-- 1 hope hope 553 Nov 5 2018 0.jpg
-rwxr--r-- 1 hope hope 6 Apr 21 17:04 dataset.txt
-rw-rw-r-- 1 hope hope 69 Jun 7 09:19 inputs_outputs.txt
-rw-r--r-- 1 hope hope 5553 Jun 7 09:21 lenet.json
-rw-r--r-- 1 hope hope 1725178 Jun 7 09:21 lenet.data
-rw-r--r-- 1 hope hope 948 Jun 7 09:35 lenet_inputmeta.yml
```
可以看到,最终生成的是*.yml文件该文件用于为Netrans中间模型配置输入层数据集合。<b>Netrans中的量化、推理、导出和图片转dat的操作都需要用到这个文件。因此此步骤不可跳过。</b>
Inputmeta.yml文件结构如下
@ -352,7 +358,7 @@ Inputmeta.yml文件结构如下
可以根据实际情况对生成的inputmeta文件进行修改。
### 3.3 模型量化
如果我们训练好的模型的数据类型是float32的为了使模型以更高的效率在pnna上运行我们可以对模型进行量化操作量化操作可能会带来一定程度的精度损失。<
如果我们训练好的模型的数据类型是float32的为了使模型以更高的效率在pnna上运行我们可以对模型进行量化操作量化操作可能会带来一定程度的精度损失。
在netrans_cli目录下使用quantize.sh脚本进行量化操作。
- 用法:./quantize.sh 以模型文件名命名的模型数据文件夹 量化类型,例如: