简介
自有实现的算子在昇腾AI处理器上的运算结果与业界标准算子(如Caffe、ONNX、TensorFlow)的运算结果可能存在差异:
- ATC在模型转换过程中对模型进行了优化,包括算子消除、算子融合、算子拆分,这些动作可能会造成自有实现的算子运算结果与业界标准算子(如Caffe、TensorFlow、ONNX)运算结果存在差异。
- 用户原始网络可以迁移到Atlas 训练系列产品上执行训练,网络迁移可能会造成自有实现的算子运算结果与用业界标准算子(如TensorFlow)运算结果存在差异。
为了帮助开发人员快速解决算子精度问题,需要提供比对自有实现的算子运算结果与业界标准算子运算结果之间差异的工具。
精度比对工具选择
当前支持的精度比对工具如下:
- PyTorch精度比对工具:用于PyTorch训练场景的精度比对,包含数据dump、精度比对、比对结果分析以及溢出检测等功能。详情请参见《PyTorch 网络模型迁移和训练》。
- 一键式全流程精度比对:用于TensorFlow和ONNX模型推理场景的精度比对。一般情况下推荐使用该工具。详情请参见《一键式全流程精度比对(推理)》。
- msaccucmp.py脚本精度比对工具:用于对包括Caffe、ONNX和TensorFlow框架模型的ATC模型转换前后的比对、TensorFlow训练场景的比对、离线模型不同版本之间的比对等;另外该工具还支持精度比对结果的专家建议输出、算子溢出分析等功能。
- MindStudio精度比对工具:msaccucmp.py脚本精度比对工具的界面可视化版本。详情请参见《MindStudio 用户指南》。
本文档主要介绍msaccucmp.py脚本精度比对工具。
父主题: 精度比对工具