基本概念

以下对MindIE-RT使用中的一些基本概念进行定义,您可进行参考,避免理解偏差。

概念

说明

IR

Intermediate Representation,是编译器或虚拟机内部用来表示源代码的数据结构或代码,作为前端语言转化为机器语言的过渡。在AI编译器中,借鉴了传统编译器的思想,使用中间表达来对模型进行翻译和优化,作为前端模型转换到目标硬件可执行代码的桥梁,如PyTorch中的TorchScript就属于一种模型IR表示。

Network

MindIE-RT中抽象的网络类,可以进行网络的组建,或作为容器将不同深度学习框架下的模型解析成MindIE-RT中的网络表示。

Layer

Network中的网络层概念,神经网络由层序结构堆叠而成,层可以看做是多个计算节点的组合。在MindIE-RT中提供了许多Layer支持,包括了Constant、Pooling、Conv等9个Layer,方便用户进行手动组网。

Tensor

Tensor是高维数据统一称呼,深度学习应用中充满着对高维数据的计算、存储过程,在网络模型中,数据的传递以Tensor的形式流转于网络层中。

builder

MindIE-RT中用于对模型做编译的抽象数据结构,builder可以创建Network,为编译配置个性化选项,builder还可以对编译完成的网络进行序列化。

pass

模型编译过程中有针对网络结构,参数精度,算子替换等的操作,将这些优化过程统称为pass。

parser

从不同的深度学习框架中加载训练模型,parser可以实现对不同框架下模型的解析,并生成MindIE-RT定义下的模型。

shape

在MindIE-RT中主要支持了动态shaperange(模型的输入可以设定最小最大值),和动态dims(离散的输入维度)两种动态输入模式。

PTQ

PTQ(Post-Training Quantization)即训练后量化,PTQ算法可以将训练好的FP32网络中的浮点数转化为低比特数,使得模型大小和内存带宽减少,计算速度增加,减少硬件能耗。模型可以通过量化部署在INT8的硬件设备上。