地平线机器人 · 2022年04月08日

新版工具链yaml配置文件参数详解

1 引言
目前地平线浮点转换工具链需要依据 yaml 配置文件实现模型转换,而某些参数如果配置有误将会导致最终模型的性能/精度不理想,甚至直接转换失败,本文将针对 yaml 文件中的相关配置项进行说明,作为工具链文档的额外补充。

Note:随着工具链版本迭代,yaml 参数可能会有细微调整,本文以 v1.9.4 版本 MobileNet-v1为例进行说明。

2 概述
整个 yaml 文件包含 4 个必选参数组(model_parameters、input_parameters、calibration_parameters、compiler_parameters)和 1 个可选参数组(custom_op),每个参数组下也区分必选和可选参数(可选参数默认隐藏),具体要求和填写方式请参考工具链文档。其中以下为几个填写注意点:

当模型为多输入模型时, 请将可选参数 input_name, input_shape显式写出, 以免造成参数对应顺序上的错误;
当 input_type_rt 配置为 nv12 时,模型H/W维度不支持奇数输入大小,例如不支持 1x255x255x3。
3 参数详解
本小节针对各部分参数进行分类说明,主要包括 性能影响参数、精度影响参数、自定义算子参数 三类。关于参数的具体描述或取值范围,可参考对应的工具链文档。

3.1 性能影响参数
关于配置文件中与性能相关参数总结(包含未在示例中暴露的高阶参数)如下表所示:
1.png
2.png

图1 Layer Details信息

3.2 精度影响参数
关于配置文件中与精度相关参数总结(包含未暴露的参数)如下表所示:
3.png

3.3 自定义算子参数
此部分参数针对您有自定义算子行为的需求进行配置,目前我们已开放部分CPU算子自定义,更多关于如何自定义算子请参考文章自定义算子这一小节,相关参数配置说明如下:
4.png

本文转载自地平线开发者社区:https://developer.horizon.ai
原作者:颜值即正义
原文链接:https://developer.horizon.ai/...
推荐阅读
关注数
1248
内容数
65
我们的使命是 AI 赋能万物 共创智能未来。我们致力于打造最实用、最好用、最易用的边缘 AI 开发平台。通过地平线自研的高算力 AI 芯片,开发工具,让更多的 AI 开发者,中小企业,学习和加速 AI 产品开发和创新!
目录
极术微信服务号
关注极术微信号
实时接收点赞提醒和评论通知
安谋科技学堂公众号
关注安谋科技学堂
实时获取安谋科技及 Arm 教学资源
安谋科技招聘公众号
关注安谋科技招聘
实时获取安谋科技中国职位信息