增加 fe的测试结果
本项目展示了混合量化自动化和前后处理自动化的实现方案:
├── test/ # 测试代码 │ ├── yolov5s # yolov5s模型相关文件 │ ├── gen_qnt_layers_median.py # 依据中值策略自动提取生成.txt │ └── gen_qnt_layers_topk.py # 依据相邻层差值的topk个层策略自动提取生成.txt ├── docs/ │ ├── auto_pre_post_processing.md # 前、后处理自动化流程 │ ├── mixed_quantization.md # 混合量化自动化流程 │ ├── result_comparison.md # 混合量化测试结果 ├── tensors_compare # tensor对比工具 ├── README.md # 项目说明文档
前后处理自动化通过 netrans 工具将预处理和后处理操作集成到推理网络中,详细的测试流程请参考链接文本
后处理自动流程 修改acuity_examples_74bfdd1/importer.py下的第316行代码,将add_postproc_node = False,修改为add_postproc_node = True
数据标准化/归一化自动流程 在 channel_mean_value.txt 中填入相应参数即可实现自动化配置
输入数据自动量化流程
混合量化自动化是指将uint8数据类型的部分精度损失大的节点替换成高精度的数据类型,自动化生成替换节点,达到精度提升的效果,详细的流程请参考链接文本
在对模型进行uint8量化时,根据对模型采取的不同混合量化处理策略,然后将量化好的nbg文件部署到下位机,将yolov5的源码推理部分替换为下位机推理,通过余弦相似度和map50来评估结果,详细的测试过程以及测试依赖代码请参考链接文本
评估指标:
不同处理策略对比:
不同量化层数对比:
作者 {{liangliangou}}
自动混合量化的流程以及前后处理自动化
©Copyright 2023 CCF 开源发展委员会 Powered by Trustie& IntelliDE 京ICP备13000930号
混合量化、前后处理自动化示例
概述
本项目展示了混合量化自动化和前后处理自动化的实现方案:
项目结构
环境要求及配置
前后处理自动化示例
前后处理自动化通过 netrans 工具将预处理和后处理操作集成到推理网络中,详细的测试流程请参考链接文本
后处理自动流程 修改acuity_examples_74bfdd1/importer.py下的第316行代码,将add_postproc_node = False,修改为add_postproc_node = True
数据标准化/归一化自动流程 在 channel_mean_value.txt 中填入相应参数即可实现自动化配置
输入数据自动量化流程
混合量化自动化示例
混合量化自动化是指将uint8数据类型的部分精度损失大的节点替换成高精度的数据类型,自动化生成替换节点,达到精度提升的效果,详细的流程请参考链接文本
混合量化测试结果
在对模型进行uint8量化时,根据对模型采取的不同混合量化处理策略,然后将量化好的nbg文件部署到下位机,将yolov5的源码推理部分替换为下位机推理,通过余弦相似度和map50来评估结果,详细的测试过程以及测试依赖代码请参考链接文本
评估指标:
不同处理策略对比:
不同量化层数对比: