4. 浮点模型转定点模型指导手册¶
地平线为您提供了两种浮点模型转定点模型的方法,分别为PTQ模型量化手段和QAT模型量化手段, 本章内容包括 训练后量化(PTQ) 和 Horizon Plugin Pytorch ,为您详细介绍两种方法的原理及使用指导。
- 4.1. 训练后量化(PTQ)
- 4.1.1. PTQ原理及步骤
- 4.1.1.1. PTQ转换的流程与步骤
- 4.1.1.2. 算子约束
- 4.1.1.3. 浮点模型准备
- 4.1.1.4. 验证模型
- 4.1.1.5. 校准数据准备
- 4.1.1.6. 模型量化与编译
- 4.1.1.7. 模型性能分析与调优
- 4.1.1.8. 模型精度分析与调优
- 4.1.1.9. 其他模型工具(可选)
- 4.1.1.10. 训练后量化(PTQ)常见问题
- 4.1.1.10.1. 如何理解算子约束中提及的BPU加速和CPU计算两种形式?
- 4.1.1.10.2. 如何理解模型分段的性能影响?
- 4.1.1.10.3. 如何理解模型尾部部分BPU可加速算子运行在CPU上?
- 4.1.1.10.4. 是否支持非对称量化?
- 4.1.1.10.5. 如何理解地平线的 default 校准方式?
- 4.1.1.10.6. 如何理解yaml文件中的编译器优化等级参数?
- 4.1.1.10.7. 为何nv12 模型 hb_perf 得出的输入大小和预测库不一致?
- 4.1.1.10.8. 量化模型和上板bin模型的输入的数据排布是否一定一致?
- 4.1.1.10.9. 如何编译得到多 batch 模型?
- 4.1.1.11. 自定义算子开发
- 4.1.2. PTQ工具文档
- 4.1.3. PTQ模型转换示例手册
- 4.1.3.1. 发布物介绍
- 4.1.3.2. 常见算法模型示例
- 4.1.3.2.1. 位置路径
- 4.1.3.2.2. 如何准备数据集
- 4.1.3.2.3. 如何准备模型
- 4.1.3.2.3.1. fcos_efficientnetb0
- 4.1.3.2.3.2. fcos_efficientnetb2
- 4.1.3.2.3.3. fcos_efficientnetb3
- 4.1.3.2.3.4. MobileNetv1/v2
- 4.1.3.2.3.5. GoogleNet
- 4.1.3.2.3.6. ResNet18
- 4.1.3.2.3.7. EfficientNet_Lite0/1/2/3/4
- 4.1.3.2.3.8. vargconvnet
- 4.1.3.2.3.9. efficientnasnet_m
- 4.1.3.2.3.10. efficientnasnet_s
- 4.1.3.2.3.11. YOLOv2_Darknet19
- 4.1.3.2.3.12. YOLOv3_Darknet53
- 4.1.3.2.3.13. YOLOv5x
- 4.1.3.2.3.14. SSD_MobileNetv1
- 4.1.3.2.3.15. Efficientdetd0
- 4.1.3.2.3.16. CenterNet_Resnet101
- 4.1.3.2.3.17. fcos_efficientnetb0
- 4.1.3.2.3.18. Yolov4
- 4.1.3.2.3.19. YOLOv3_VargDarknet
- 4.1.3.2.3.20. fcos_resnet50
- 4.1.3.2.3.21. fcos_resnext101
- 4.1.3.2.3.22. unet_mobilenet
- 4.1.3.2.3.23. deeplabV3plus_efficientnetb0
- 4.1.3.2.3.24. fastscnn_efficientnetb0
- 4.1.3.2.3.25. deeplabv3plus_dilation1248
- 4.1.3.2.3.26. deeplabv3plus_efficientnetm1
- 4.1.3.2.3.27. deeplabv3plus_efficientnetm2
- 4.1.3.2.4. 算法模型示例的使用演示
- 4.1.3.2.5. 常见问题
- 4.1.3.3. 其他算法模型示例
- 4.1.1. PTQ原理及步骤
- 4.2. 量化感知训练(QAT)
- 4.2.1. Get Started
- 4.2.2. QUICK START
- 4.2.3. TUTORIAL
- 4.2.3.1. 浮点模型准备
- 4.2.3.2. 算子融合
- 4.2.3.3. 设置不同的 BPU 架构
- 4.2.3.4. 异构模型QAT
- 4.2.3.5. 基于 FX 的量化
- 4.2.3.6. 搭建量化友好的浮点模型
- 4.2.3.7. QAT经验总结
- 4.2.3.8. 模型精度DEBUG工具
- 4.2.3.9. 量化精度DEBUG思路
- 4.2.4. API REFERRENCE
- 4.2.5. NOTE