激活参数
激活参数是指模型处理一个 token 时实际参与计算的参数数量。MoE 模型只从全部参数中挑选一部分使用,因此总参数和激活参数相差很大。
通俗解释 这就像一家大医院虽然有数百名专科医生,但一位病人只会由其中几位诊治。医院大楼(内存)必须大到能容纳全部医护人员,这一点也是相同的。
工作原理
一般的模型在处理每个 token 时都会用到全部参数。MoE 模型设有多组“专家”,由路由器为每个 token 只挑选部分专家进行计算。此时实际参与计算的参数就是激活参数。因此,它既能拥有大模型的知识量,又能把每个 token 的计算量降到小模型的水平。
如何估算
模型名称或模型卡中常常会同时标出总参数和激活参数。例如,“30B-A3B”这个名称应理解为总参数 300 亿、激活参数 30 亿。内存按总参数来估算,用“总参数数量 × 每个数值的字节数”推算权重大小。而每个 token 的计算量和生成速度则更接近激活参数的水平。
总参数与激活参数
总参数模型拥有的全部数值
- 决定所需内存
- 所有专家都加载到内存中
激活参数每个 token 实际使用的数值
- 决定每个 token 的计算量
- 更接近生成速度
공통 普通模型两个数字相同,只有 MoE 才会不同
注意事项
激活参数少并不意味着能装进小显存的 GPU,未被使用的专家也必须加载在内存中。其质量通常优于激活规模相同的普通模型,但并不保证与总规模相同的普通模型相当。在多块 GPU 上分布式部署时,专家之间的通信可能成为瓶颈。比较模型时,一定要确认所说的数字是总参数还是激活参数。
示例
假设一个团队想在公司内部服务器上部署开放权重模型,正在评估一个标为“30B-A3B”的 MoE 模型(示例)。负责人会按总参数 300 亿来核算 VRAM 是否足够,并预计响应速度接近 30 亿激活参数的模型,以此估算吞吐量。实际速度取决于推理引擎和 GPU 配置,因此需要亲自测量确认。