验证模型

为了确保模型能顺利在地平线平台高效运行,模型中所使用的算子需要符合平台的算子约束。算子约束部分给出了我们支持的具体算子,每个算子都给出了具体的参数限制,具体详细信息请参考 工具链算子支持约束列表 章节的内容。

使用 hb_compile 工具验证模型

考虑到地平线支持的算子较多,为了避免人工逐条校对的麻烦,我们支持您通过 hb_compile 工具来验证模型所使用算子的支持情况。

工具使用方法请参考 模型验证 章节。

验证结果

如果模型验证不通过, hb_compile 工具会报出ERROR。在当前工作目录下会生成 hb_compile.log 文件,从文件中可以查看到具体的报错。

如果不存在ERROR,则顺利通过校验。 hb_compile 工具将直接输出如下信息:

+--------------------------------------------+-------------------+------+------------------+
| Node                                       | NodeType          | ON   | Output Data Type |
+--------------------------------------------+-------------------+------+------------------+
| Conv_0+Relu_1                              | Conv+Relu         | BPU  | si8              |
| MaxPool_2                                  | MaxPool           | BPU  | si8              |
| Conv_3+Relu_4                              | Conv+Relu         | BPU  | si8              |
| Conv_5+Relu_6                              | Conv+Relu         | BPU  | si8              |
| Conv_7                                     | Conv              | BPU  | si8              |
| Conv_8                                     | Conv              | BPU  | si32             |
| Relu_10                                    | Relu              | BPU  | si8              |
...
The hb_compile completes running

结果中每行都代表一个模型节点的校验情况,每行含Node、NodeType、ON、Output Data Type四列,分别为节点名称、类型、执行device、输出数据类型。