Home Arrow Icon Knowledge base Arrow Icon Global Arrow Icon Sigmoid激活功能在DeepSeek-V3的专家路由过程中起什么作用


Sigmoid激活功能在DeepSeek-V3的专家路由过程中起什么作用


在DeepSeek-V3中,Sigmoid激活函数通过修改代币的方式分配给专家,在专家路由过程中起着至关重要的作用。与使用SoftMax功能的早期版本不同,DeepSeek-V3采用Sigmoid函数来计算令牌和专家之间的亲和力得分。这种变化有助于防止极端的专家选择概率,这可能导致路线崩溃。该模型偏向于一些专家而不是其他专家,从而降低了专业化和效率的好处。

Sigmoid激活功能在专家路由中

Sigmoid功能(表示为$$ \ sigma(\ cdot)$$)用于计算令牌和专家之间的亲和力得分。具体而言,对于令牌$$ t $$和专家$$ i $$的分数$$ s_ {i,t} $$计算为:
$$ s_ {i,t} = \ sigma(u_t^t e_i)$$
$$ u_t $$是令牌嵌入,而$$ e_i $$是专家$$ i $$的质心向量。该分数反映了令牌与专家专业的一致性。

###标准化和选择

在计算这些分数之后,DeepSeek-V3将它们归一化,并根据这些归一化分数选择顶部 - $$ K_R $$专家。此过程确保每个令牌都可以路由到最相关的专家子集,从而促进高效且专业的处理。

###负载平衡的偏差条款

为了防止路由崩溃并确保专家之间的均衡负载分布,DeepSeek-V3引入了动态可调节的偏差术语。在选择顶级专家之前,这些偏差术语将添加到亲和力分数中。如果专家过载,其偏差项会减少,如果其较低载荷,则偏置项会增加。该机制可确保载荷保持平衡而不依赖辅助损失函数,这可能会对模型性能产生负面影响[1] [3]。

Sigmoid比Softmax的好处

使用Sigmoid函数代替SoftMax有助于解除不同专家的选择概率。在SoftMax中,将概率标准化为总和为一个,这可能导致一位专家受到显着有利的极端概率。另一方面,Sigmoid可以进行更灵活和独立的概率分配,从而降低了路由崩溃的可能性并促进了更平衡的专家利用率[4]。

总体而言,DeepSeek-V3中的Sigmoid激活函数增强了模型有效地将代币分配给相关专家的能力,同时保持平衡的工作量,这对于在大规模混合物(MOE)架构中实现高性能和计算效率至关重要。

引用:
[1] https://gonzoml.substack.com/p/deepseek-v3-technical-details
[2] https://aman.ai/primers/ai/deepseek-r1/
[3] https://machinelearningatscale.substack.com/p/deepseek-v3-model
[4] https://mlfrontiers.substack.com/p/understanding-deepseek-v3
[5] https://docs.nvidia.com/nemo-framework/user-guide/latest/llms/deepseek_v3.html
[6] https://planetbanatt.net/articles/deepseek.html
[7] https://arxiv.org/pdf/2412.19437.pdf
[8] https://builtin.com/machine-learning/sigmoid-activation-function