专栏算法工具链静态模型QAT结果分析疑问

静态模型QAT结果分析疑问

已解决
浮浮浮2025-10-21
29
0

J6

oe3.0.31

MapTROE模型当前状态:

 

1.算子融合情况,少量算子未按照预期融合

 

疑问1:

浮点模型一致,配置不同,算子融合情况不一致,全部为int8存在,激活层int16,权 重int8不存在该问题(Allfusablemodulesarefusedinmodel!)原理是什么?

 

2.共享模块检查

调用次数大于1的模块需要拆开

cls_branches= nn.ModuleList([cls_branch for_in range(num_layers)]) reg_branches=nn.ModuleList([reg_branch for in range(num_layers)) 改成 cls_branches=nn.ModuleList([copy.deepcopy(cls_branch) for_in range(num_layers)]) reg_branches=nn.ModuleList([copy.deepcopy(reg_branch)for_in range(num_layers)]) 后,已经没有了调用次数大于1的模块;

 

疑问2:这么改是否合理?能否这么操作。

 

 

3.每层可视化分析float、calibration的精度损失分析

疑问3:在maptroe模型中,bc模型和hbm模型的bev_decoders.post_process模块没有在 模型中实现的,这部分出现误差较大的情况是否属于正常情况?

疑问4:根据分析工具对maptroe模型,波动比较大的层为 view_transformer.encoder.layers.0.ffn.ffn1(1层),bev_decoders.0.decoder.layers.sa (6层)和bev_decoders.0.decoder.layers.ffn(6层)三个模块,调整精度为权重精度为 int8和激活精度为int16(calibration_8bit_weight_16bit_act_qconfig_setter),误差依旧大;进一步优化措施如何操作?

算法工具链
征程6
评论0
0/1000