论坛算法工具链J6 PTQ量化掉点非常严重,帮忙看下

J6 PTQ量化掉点非常严重,帮忙看下

已解决
布谷呀2026-08-18
296
20
飞书文档 - 图片
算法工具链
技术深度解析征程6
+2
评论7
0/600
  • DR_KAN
    Lv.5
    2026-08-18
    0
    3
    • 布谷呀回复DR_KAN:
      飞书文档 - 图片
      2026-08-19
      0
    • 布谷呀回复布谷呀:

      帮忙看下,怎么定位哈

      2026-08-19
      0
    • 布谷呀回复DR_KAN:

      研究到现在又发现bc比hbm推理结果存在严重差异,miou指标pth>bc>hbm,差距好大

      2026-08-21
      0
  • 沃德菲
    Lv.3
    可以参考如下排查流程:图片.png
    2026-08-19
    0
    2
    • 布谷呀回复沃德菲:
      该工具链没有累计误差统计吗,这样可以看出哪层导致的模型精度下降
      飞书文档 - 图片
      2026-08-19
      0
    • 布谷呀回复沃德菲:
      2026-08-19
      0
  • 金属货机
    Lv.2

    看您长时间没有回复,请问还有什么问题吗?

    2026-09-07
    0
    0
  • 费小财
    Lv.5
    • 定位敏感层:使用地平线提供的精度分析工具(如 hb_analyzer或类似 debug工具),逐层对比浮点与定点输出的差异,找出 IoU降幅最大的前几层。
    • 应用混合精度:将这些敏感层设为 FP16/INT16重新编译验证。
    • 若无效则 QAT:构建 QAT训练流程,使用原浮点模型权重初始化,进行少量 epoch的微调
    2026-09-13
    0
    0
  • HuangHui
    Lv.5

    您好,本帖已等待反馈一段时间,暂未收到新的信息,因此先作关闭处理。后续如有需要,欢迎重新提交问题,我们将继续协助。

    2026-09-28
    0
    0
  • 沃德菲
    Lv.3
    建议您通过 hb_verifier工具 进行问题分析,看下具体是哪方面导致的
    2026-08-19
    0
    6
    • 布谷呀回复沃德菲:
      2026-08-19
      0
    • 布谷呀回复沃德菲:

      帮忙定位下,感谢

      2026-08-19
      0
    • 布谷呀回复布谷呀:
      2026-08-19
      0
    • 沃德菲回复布谷呀:
      2026-08-31
      0
    • 费小财回复布谷呀:
      这个错误 CUDA failure 804: forward compatibility was attempted on non supported HW 表明你的 NVIDIA 显卡驱动版本过低,无法支持当前容器中安装的 CUDA Toolkit 版本。
      在地平线 J6 工具链的 Docker 环境中,这通常发生在进行 QAT(量化感知训练) 或调用涉及 GPU 的插件时。虽然 PTQ 校准主要在 CPU 运行,但 hb_verifier 或某些预处理步骤可能依赖 PyTorch/CUDA 环境
      2026-09-13
      0
    • 费小财回复布谷呀:

      如果你暂时无法升级宿主机驱动,可以尝试以下方法绕过 GPU依赖:

      • 强制使用 CPU进行验证/推理:
        hb_verifier主要用于比对 BC和 HBM的一致性。如果只是为了验证精度,且模型不大,可以尝试在不加载 GPU插件的环境下运行,或者确保代码中所有 Tensor操作都指定在 CPU上。
        注意:hb_verifier本身是一个 Python工具,如果它内部调用了 horizon_plugin_pytorch且该插件默认尝试初始化 CUDA上下文,就会报错。
      • 检查环境变量:
        尝试设置环境变量强制 PyTorch使用 CPU(但这可能导致部分依赖 GPU算子的功能失效):

      export CUDA_VISIBLE_DEVICES=""

      # 或者在 Python代码开头加入:

      # import os; os.environ["CUDA_VISIBLE_DEVICES"] = ""

      2026-09-13
      0
  • 金属货机
    Lv.2

    根据你贴出的hb_compile.log中的Quantized Cosine可以看出在最后余弦相似度骤降。可以对比一下optimized_float_model.onnx和quantized_model.bc这两个模型在使用相同输入时的下面这三个算子的输出:ArgMax_112,Unsqueeze_113,Cast_114。看他们从哪里开始放大误差,如果是ArgMax_112的类别索引不一致就说明误差发生在输入logits,可以进一步查看Resize_111,Conv_109的输出,如果是在Cast_114不一致,那检查一下数据类型转换数值范围或输出格式。

    2026-08-25
    0
    2
    • 布谷呀回复金属货机:
      目前上述PTQ在x86端KPI:pth,miou=78.44 bc 77.83
      考虑x86获取hbm miou指标,但是hbm在x86推理巨耗时
      板端没有horizon_tc_ui python库,如果板端和x86使用不是一套代码,恐会引入其他不可控因素。请教下hbm怎么在x86上加速推理,多进程吗还是torhrun (https://developer.horizon.auto/blog/13110)
      2026-08-25
      0
    • 金属货机回复布谷呀:
      您好,可以使用hbm_infer工具在x86上去加速推理hbm,可以保持现有评测代码,仅将模型推理部分替换为hbm_infer,前处理、数据集遍历、后处理以及mIoU还是在x86上执行,输入会通过网络下发到直连开发板,由板端BPU执行HBM推理再将输出返回给x86,这样不需要在板端去安装python库,也不用重写板端评测代码。参考手册(https://doc.oe.horizon.auto/guide/tools_guide/dnn_tools/hbm_infer.html)
      2026-08-25
      0