更新时间:2021-03-18 GMT+08:00
分享

功能与约束

简介

ATC在模型转换过程中对模型进行了优化,包括算子消除、算子融合、算子拆分,可能会造成自有实现的算子运算结果与用业界标准算子(如Caffe、TensorFlow)实现的运算结果存在偏差,此时需要提供工具比对两者之间的差距,帮助开发人员快速解决算子精度问题。

精度比对工具具有比对华为自有模型算子的运算结果与Caffe、TensorFlow标准算子的运算结果的功能,以便确认误差发生的算子,目前提供以下比对方法:

Vector比对,包含余弦相似度、最大绝对误差、累积相对误差、欧氏相对距离、KLD散度、标准差的算法比对。

功能

当前版本,Vector比对支持通过昇腾AI处理器运行生成的Dump数据与Ground Truth(基于GPU/CPU运行生成的Dump数据)进行比对,同时还支持量化、非量化的数据比对,如表1

表1 Vector比对场景

序号

待比对数据(My Output)

标准数据(Ground Truth)

1

非量化离线模型在昇腾AI处理器上运行生成的dump数据

非量化原始模型的dump数据(Caffe)

2

量化离线模型在昇腾AI处理器上运行生成的dump数据

非量化原始模型的dump数据(Caffe)

3

量化原始模型的dump数据(Caffe)

非量化原始模型的dump数据(Caffe)

4

量化离线模型在昇腾AI处理器上运行生成的dump数据

量化原始模型的dump数据(Caffe)

5

非量化离线模型在昇腾AI处理器上运行生成的dump数据

非量化原始模型的dump数据(TensorFlow)

约束

  • 使用精度比对工具前,请参考Atlas 200 DK使用指南手册完成开发环境搭建。本文以HwHiAiUser普通用户安装,且默认安装路径/home/HwHiAiUser/Ascend/ascend-toolkit/latest为例,介绍精度比对的操作方法,请实际操作时根据您自己的环境进行替换。本文中举例路径均需要确保HwHiAiUser具有读或读写权限。
  • 本文多处举例和说明描述均以Host侧为例,请根据实际情况替换。
  • 使用精度比对工具,请确保硬件环境满足要求:CPU 8核 2.6Ghz,内存16GB,否则有可能会造成比对缓慢。
  • 单算子网络不支持精度比对。
  • 精度比对工具需要配套python3.7.5版本使用。
  • 精度比对工具不支持以下场景:
    • 单个Dump文件的大小超过2GB。
    • 模型batch数大于1。
  • 精度比对支持的Dump数据的Format类型:
    • NCHW
    • NHWC
    • ND
    • NC1HWC0
    • FRACTAL_Z
    • HWCN
  • 精度比对支持的Dump数据的类型:
    • FLOAT
    • FLOAT16
    • DT_INT8
    • DT_UINT8
    • DT_INT16
    • DT_UINT16
    • DT_INT32
    • DT_INT64
    • DT_UINT32
    • DT_UINT64
    • DT_BOOL
    • DT_DOUBLE
分享:

    相关文档

    相关产品

close