AI Infra Academy
返回题库
困难量化量化面试高频NVIDIA

量化中的 per-tensor、per-channel、per-token、per-group 量化粒度有何区别?

8 0 0

参考答案

量化粒度指"共享一个 scale/zero-point 的范围",粒度越细精度越高但开销越大。 - **per-tensor(逐张量)**:整个张量用一个 scale。最粗、最省,但 outlier 会拉大范围、损失精度。 - **per-channel(逐通道)**:权重每个输出通道一个 scale。权重量化常用,能隔离不同通道的幅度差异,精度好且硬件友好(scale 可折进后续计算)。 - **per-token(逐 token)**:激活每个 token(每行)一个 scale。适合激活量化,因为不同 token 幅度差异大;动态计算 scale。 - **per-group(逐组)**:把一个通道再切成若干组(如每 128 个元素一组),每组一个 scale。是 per-channel 和更细粒度间的折中,AWQ/GPTQ 的 4-bit 权重常用 group_size=128,精度接近 per-channel 而存储 scale 的开销可控。 **常见组合**: - 权重 W4:per-group(group=128)。 - 激活 A8:per-token 动态量化。 - KV Cache:per-token 或 per-channel。 **权衡**:细粒度精度高但要存更多 scale、反量化开销大;粗粒度省但易受 outlier 影响。SmoothQuant/AWQ 等本质是让粗粒度也能用得好。

讨论区(0)

还没有评论,来做第一个发言的人吧