专栏算法工具链插入定点算子centered_yuv2rgb

插入定点算子centered_yuv2rgb

Durrrrui2023-07-31
36
5

你好,

针对rgb输入的训练模型,进行qat后,对模型转为定点模型,需要执行nv12->yuv444->(centered_yuv2rgb)->rgb的

过程。对此在论坛上找到了以下内容:

=======================================================================================

该算子为纯定点算子,不参与模型训练的过程。该算子使用方式如下:

  1. 通过QAT训练得到满意的精度之后,先使用convert()接口将qat模型转为quantized模型;

  2. 修改forward,在QuantStub后插入该算子;

  3. 设置QuantStub的scale=1(因为QuantStub已经被合入到了centered_yuv2rgb中,此处只有标识符的作用);

  4. 推理一次quantized模型。

=======================================================================================

针对该内容有一些疑问,

在转为定点模型后修改forward和quantstub该如何进行,并成功将原有的已经读入内存的定点模型修改?

此处推理一次定点模型是进行一次quantize_model(input)还是执行一次torch.jit.trace操作

能否给个相应例子,或者详细说明一下上面的具体步骤,谢谢

祝好

算法工具链
评论3
0/1000
  • 颜值即正义
    Lv.2
    您好,1. 在转为定点模型后,通过修改模型输入端的量化节点的scale为1,然后在centered_yuv2rgb算子中设置量化参数,把量化操作融入到centered_yuv2rgb算子中来做,示意图如下:

    相关操作流程和示例可以参考J5工具链用户手册:https://developer.horizon.ai/api/v1/fileData/horizon_j5_open_explorer_cn_doc/plugin/source/advanced_content/rgb888_deploy.html

    2. 插入centered_yuv2rgb算子后需要推理一次quantized模型
    2023-07-31
    0
    2
    • Durrrrui回复颜值即正义:

      谢谢,了解了

      2023-07-31
      0
    • 颜值即正义回复Durrrrui:

      这里补充说明一下,手册中的示例使用的quantized_model.recompile(),到 recompile 这步就是已经成功插入了,后续是要做 quangtized infer 还是直接编译成上板的 hbm 模型都是可以的。

      2023-07-31
      0
  • 颜值即正义
    Lv.2
    您好,地平线工具链在持续迭代优化,为了给您提供更好的服务,希望您能抽出3分钟左右的时间,将您在使用工具链期间的感受和建议告诉我们,您的宝贵意见对我们很重要,非常感谢!
    问卷链接:地平线算法工具链使用满意度反馈
    2023-08-01
    0
    0
  • Durrrrui
    Lv.1
    你好,请问1.1.40版本能实现这个算子插入吗?现在板子上的版本依然是1.1.40版本,你给我的文档https://developer.horizon.ai/api/v1/fileData/horizon_j5_open_explorer_cn_doc/plugin/source/advanced_content/rgb888_deploy.html貌似是新版本的。
    2023-09-18
    0
    0