工具运行流程

具体运行流程如图1所示。

图1 运行流程
表1 运行流程关键操作步骤说明

关键步骤

说明

获取软件包

安装前请先获取对应软件包,详情请参见获取软件包

安装前准备

安装AMCT之前,需要创建AMCT的安装用户,检查系统环境是否满足要求,安装依赖以及上传软件包等一系列动作。详细操作请参见安装前准备

安装

参见工具安装安装Caffe框架的AMCT

安装后处理

安装完AMCT后,需要参见安装后处理章节完成proto合并与patch安装,然后重新编译Caffe环境;如果要设置量化过程中打印的日志等级信息,还需要设置环境变量等操作。

(可选)编写脚本,调用AMCTAPI

如果用户需要量化自己的网络模型,不使用本手册提供的sample链接进行量化,则需要修改量化脚本,进行适配,然后才能进行量化。关于sample代码解析请参见快速入门

(可选)张量分解

如用户模型中存在大量卷积,且卷积核shape普遍大于(64, 64, 3, 3)时推荐使用张量分解,否则不需要进行该操作,直接进行量化即可。

该场景为可选操作,用户自行决定是否进行原始模型的分解。

量化

AMCT提供了两种量化方法,命令行方式量化和调用Python API接口方式,两种方式详细区别请参见快速入门

  • 命令行方式量化:用户只需准备模型和模型匹配的数据集即可,但是当前仅支持训练后量化。具体量化步骤请参见快速入门
  • 调用Python API接口的方式,需要了解Python语法以及详细量化流程,支持所有的量化方式。具体量化步骤请参见量化

用户根据准备的原始网络模型以及数据集,采用本手册提供的量化脚本或者命令行,进行量化。

根据是否需要重训练,分为训练后量化和量化感知训练。详细介绍请参见训练后量化量化感知训练

训练后量化根据是否对权重数据进行压缩又分为均匀量化和非均匀量化。该版本只支持均匀量化。

AMCT是基于深度学习框架进行开发的,在执行量化过程中需要调用深度学习框架进行必要的推理或训练过程。

自动量化

量化后的模型精度是否满足要求,如果不满足,则请参见基于精度的自动量化进行自动量化。

(后续处理)量化后模型的推理

用户使用上述量化后的部署模型,通过ATC工具转换成适配昇腾AI处理器的离线模型,然后可以使用该模型进行推理。