专栏算法工具链QAT量化流程

QAT量化流程

已解决
默认328322024-07-17
136
10

J5 J5_OE_1.1.74 在阅读并复现了算法工具链7.量化感知训练(QAT)中的快速入门的示例之后,有以下两个问题想请教一下技术人员。

1.在量化我们自己开发的算法时是可以按照示例一步一步在我们的算法里面插入量化节点进行量化的吗?

2.请问有对每一步插入节点的每个节点函数的详细解释吗?(意思就是使用的每个函数的作用及用法)

算法工具链
技术深度解析征程5
评论5
0/1000
  • GOYU\XU
    Lv.2
    1. 自己算法可以在地平线平台插入量化节点进行量化的。

    2. 每一步插入节点函数具体指哪些函数?可以举个具体函数?就我的理解量化的函数应该是和pytorch是对应的,可以参照pytorch上面函数解释进行了解

    2024-07-17
    0
    3
    • 默认32832回复GOYU\XU:

      你好,请问:1、多个输入仅在 scale 相同时可以共享 QuantStub,否则请为每个输入定义单独的 QuantStub,这句话里面的 scale指的是量化比例吗?

      2、若需要将上板时输入的数据来源指定为 "pyramid",请手动设置对应 QuantStub 的 scale 参数为 1/128,这句话里面的pyramid又是指的什么呢?

      2024-07-18
      0
    • GOYU\XU回复默认32832:

      1中的scale是量化比例,2中pyramid指上板时数据来源(上板时数据来源于ddr、pyramid或resize)

      2024-07-19
      0
    • 默认32832回复GOYU\XU:
      谢谢你的解答,我还有以下两个问题想请教一下,1、请问上板时的数据来源可以指定为ddr、pyramid或resize中的其中一个吗?还是只能来源于pyramid?这个pyramid就是J5的BPU图像金字塔吗?
      2、请问在J5 BPU图像金字塔的输出图像只能是 centered YUV444 格式吗?因为这涉及到我们的算法是否需要使用horizon.functional.rgb2centered_yuv进行图像转换。
      2024-07-19
      0
  • 默认32832
    Lv.2
    1、问题:算法工具链快速入门里面提到可以直接再在训练好的模型,但是加载训练好的模型是通过torch.load直接进行加载的加载后如何插入QuantStub和DequantStub?
    2024-07-22
    0
    1
    • kotei左文亮回复默认32832:

      是新建的QAT网络模型要加载之前已经训练好的浮点参数,而不是直接使用torch.load()的网络和结构。这个网络参数赋值是要自己多写几行代码的,示例里面暂时没有。

      2024-07-22
      0
  • 默认32832
    Lv.2

    训练好的模型是一个.pth文件,请问怎样才能在新建的QAT网络模型里加载之前已经训练好的浮点参数呢?(需要先定义网络的模型吗?)

    2024-07-22
    0
    1
    • GOYU\XU回复默认32832:
      1. 板端数据来源可以为ddr、pyramid或resize中的一个

      2. J5 BPU图像金字塔的输出图像并没有说是唯一输出格式,可以为NV12, 或gray等

      另外建议 1. 不是同一个问题麻烦另起一个帖子在咨询 2. 相同问题不要在多个帖子下面咨询

      2024-07-23
      0
  • 默认32832
    Lv.2

    谢谢你的解答,你的意思就是要自己写几行代码来加载之前已经训练好的模型(先定义模型结果,再实例化模型,最后加载预训练模型权重),然后再对模型进行改造,而不能用torch.load()来加载模型是吗?

    2024-07-22
    0
    0
  • 默认32832
    Lv.2

    好的,谢谢你的解答!

    2024-07-23
    0
    0