专栏算法工具链J6模型算子精度问题定位

J6模型算子精度问题定位

y19002025-11-26
103
2

一、            量化思路

模型量化中,分析掉点算子是很常见和必要的技巧,J6工具链支持int8int16fp16float32量化,实际在bpu芯片运行,依赖底层约束条件限制,可以查看工具链算子支持列表看bpu运行实际的量化类型,但前只是基于精度问题,而不考虑bpu芯片运行状态,后期基于定位掉点的算子然后再去优化算子从而能量化部署到bpu
int16为模型精度配置看精度上限,因为int16量化是bpu芯片支持的共同配置,可以快速的配置出一个高精度模型,然后基于这个int16模型,看每个算子的相似度,看logThreshold值,特别大的值如大于10000等算子就要特别关注,从而配置为fp16cpu算子,再看相似度是否提升,有提升则记录下配置的算子定位出掉点问题。

二、            分步实战

1.       全int16量化

  最终量化精度:


2.       Threshold大值退化cpu算子



最终量化精度:


 

3.       分类型配置fp16量化

最终量化精度:


三、            总结

基于分步测试优化,我们分析了Threshold较大的值、算子类型对量化精度的影响,最终得到高精度的模型,从而定位出那些算子掉点,然后根据问题,例如当前分步的模型,大Threshold值、pow类型等都在Conv层特征后加归一化,如LayerNormBatchNorm等归一化算子,从而更利于BPU芯片量化模型。
算法工具链
技术深度解析征程6官方教程
评论2
0/1000
  • 默认60384
    Lv.1

    你好,为什么校准之后的余弦相似度和定点的不一样

    2026-01-24
    1
    0
  • Mercury
    Lv.1

    你好,我想问一下你这个例子中的定点余弦相似度是负数的,这正常吗?

    2026-01-06
    0
    0