Tensor比对结果及说明。
Tensor比对结果界面分为8个区域。其中1~4区域为整网比对结果,如图1所示,详细介绍请参见表1;5区域为整网比对结果的专家系统分析结果,详细介绍请参见比对结果专家建议。6~8区域为单算子比对功能及结果展示,详细介绍请参见单算子比对。
区域 |
区域名称 |
说明 |
---|---|---|
1 |
菜单栏 |
从左到右分别为Open…、New Task、Refresh、Help四项功能。Open…为打开并展示比对结果csv文件;New Task为创建新的比对任务;Refresh用于读取并刷新File Manager中管理的文件;单击Help弹出小窗,可展示精度比对工具的使用限制(Restrictions)、使用建议、在线教程链接等。 |
2 |
File Manager,历史数据管理 |
显示用户指定文件夹以及文件夹下生成的整网比对的csv文件以及显示通过Open…单独打开的csv文件;对文件夹和csv,提供历史数据管理功能,包括打开、删除、另存为;在文件夹处右键删除;在空白处右键创建新比对任务(New Task)、刷新(Refresh)和Open…(打开并展示比对结果csv文件)。 |
3 |
Model Accuracy Analysis,精度比对分析界面 |
默认仅显示有结果的算子。可单击列名,进行排序;单击Show Invalid Data,可展示无法比对的数据,各列字段含义请参见表2。 |
4 |
Scatter Diagram,各项算法指标的散点分布图 Show Model,比对模型可视化展示 |
Scatter Diagram:横坐标表示算子的执行顺序,纵坐标为算法指标在对应Tensor上的实际取值。各字段含义请参见表3。 Show Model:分别展示NPU和Ground Truth的模型图。详细介绍请参见表4。 |
注:历史数据管理功能暂不支持数据老化,即当磁盘空间不足时系统无法自动删除多余的历史文件,请用户自行删除多余的文件以保证比对程序的运行。 |
字段 |
说明 |
---|---|
Index |
网络模型中算子的ID。 |
OpSequence |
算子运行的序列。全网层信息文件中算子的ID。仅配置“Operator Range”时展示。 |
OpType |
算子类型。 |
NPUDump |
表示NPU Dump模型的算子名。光标悬浮时,可显示具体算子所在的文件路径。 |
DataType |
表示NPU Dump侧数据算子的数据类型。 |
Address |
dump tensor的虚拟内存地址。用于判断算子的内存问题。仅基于昇腾AI处理器AI处理器NPU IP加速器运行生成的dump数据文件在整网比对时可提取该数据。 |
GroundTruth |
表示Ground Truth模型的算子名。光标悬浮时,可显示具体算子所在的文件路径。 |
DataType |
表示Ground Truth侧数据算子的数据类型。 |
TensorIndex |
表示NPU Dump模型算子的input ID和output ID。 |
Shape |
比对的Tensor的Shape。 |
OverFlow |
溢出算子。显示YES表示该算子存在溢出;显示NO表示算子无溢出;显示NaN表示不做溢出检测。 开启Advisor功能时展示,为比对结果专家建议的FP16溢出检测专家建议提供数据。 |
CosineSimilarity |
进行余弦相似度算法比对出来的结果。取值范围为[-1,1],比对的结果如果越接近1,表示两者的值越相近,越接近-1意味着两者的值越相反。 |
MaxAbsoluteError |
进行最大绝对误差算法比对出来的结果。取值范围为0到无穷大,值越接近于0,表明越相近,值越大,表明差距越大。 |
KullbackLeiblerDivergence |
进行KL散度算法比对出来的结果。取值范围为0到无穷大。KL散度越小,真实分布与近似分布之间的匹配越好。 |
RootMeanSquareError |
表示均方根误差。取值范围为0到无穷大,MeanAbsoluteError趋于0,RootMeanSquareError趋于0,说明测量值与真实值越近似;MeanAbsoluteError趋于0,RootMeanSquareError越大,说明存在局部过大的异常值;MeanAbsoluteError越大,RootMeanSquareError等于或近似MeanAbsoluteError,说明整体偏差越集中;MeanAbsoluteError越大,RootMeanSquareError越大于MeanAbsoluteError,说明存在整体偏差,且整体偏差分布分散;不存在以上情况的例外情况,因为RMSE ≥ MAE恒成立。 |
MaxRelativeError |
表示最大相对误差。取值范围为0到无穷大,值越接近于0,表明越相近,值越大,表明差距越大。 |
RelativeEuclideanDistance |
进行欧氏相对距离算法比对出来的结果。取值范围为0到无穷大,值越接近于0,表明越相近,值越大,表明差距越大。 |
StandardDeviation |
进行标准差算法比对出来的结果。取值范围为0到无穷大。标准差越小,离散度越小,表明越接近平均值。该列显示NPU Dump和Ground Truth两组数据的均值和标准差,第一组展示NPU Dump模型dump数据的数值(均值;标准差),第二组展示Ground Truth模型dump数据的数值(均值;标准差)。 |
AccumulatedRelativeError |
进行累积相对误差算法比对出来的结果。取值范围为0到无穷大,值越接近于0,表明越相近,值越大,表明差距越大。 |
MeanAbsoluteError |
表示平均绝对误差。取值范围为0到无穷大,MeanAbsoluteError趋于0,RootMeanSquareError趋于0,说明测量值与真实值越近似;MeanAbsoluteError趋于0,RootMeanSquareError越大,说明存在局部过大的异常值;MeanAbsoluteError越大,RootMeanSquareError等于或近似MeanAbsoluteError,说明整体偏差越集中;MeanAbsoluteError越大,RootMeanSquareError越大于MeanAbsoluteError,说明存在整体偏差,且整体偏差分布分散;不存在以上情况的例外情况,因为RMSE ≥ MAE恒成立。 |
MeanRelativeError |
表示平均相对误差。取值范围为0到无穷大,值越接近于0,表明越相近,值越大,表明差距越大。 |
CompareFailReason |
算子无法比对的原因。 若余弦相似度为1,则查看该算子的输入或输出shape是否为空或全部为1,若为空或全部为1则算子的输入或输出为标量,提示:this tensor is scalar。 |
注1:余弦相似度和KL散度比较结果为NaN,其他算法有比较数据,则表明左侧或右侧数据为0;KL散度比较结果为inf,表明右侧数据有一个为0;比对结果为nan,表示dump数据有nan。 注2:光标悬浮在表头可以看到对应的参数详细解释。 注3:若配置了自定义算法比对,则在比对结果的内置算法后增加对应自定义算法列。 |
字段 |
说明 |
---|---|
Algorithm |
选择展示对应比对算法结果的散点分布图,不支持展示StandardDeviation、KullbackLeiblerDivergence和AccumulatedRelativeError。 |
Tensor |
过滤显示Input、Output结果散点分布图。 |
Highlight |
对算子Tensor散点进行高亮。通过拖拉游标在对应算法指标的[min,max]间滑动来设置算法指标(纵坐标)的阈值,高于或等于阈值的点显示为蓝色,低于阈值的点显示为红色。如针对余弦相似度,图中设置阈值为0.98,小于0.98的算子Tensor被标记为红色。 |
注1:光标移动到对应Tensor点上时,浮窗显示Tensor信息。信息包括:Index(Tensor对应算子的Index)、Op Name(算子名称)、Tensor Index(Tensor类型(input/output))以及Value(在当前算法维度下的Tensor数值)。 注2:支持对散点图进行缩放。 注3:指定区域3中的Tensor时,高亮对应Tensor点。 |