DeepSeek-V3에서 Sigmoid 활성화 기능은 토큰이 전문가에게 할당되는 방법을 수정하여 전문가 라우팅 프로세스에서 중요한 역할을합니다. SoftMax 함수를 사용한 이전 버전과 달리 DeepSeek-V3은 시그 모이 드 기능을 사용하여 토큰과 전문가 간의 친화력 점수를 계산합니다. 이 변화는 극단적 인 전문가 선택 확률을 방지하여 모델이 다른 전문가보다 몇몇 전문가를 선호하는 상황으로 라우팅 붕괴로 이어져 전문화와 효율성의 이점을 줄일 수 있습니다.
전문가 라우팅에서
sigmoid 활성화 기능
$$ \ sigma (\ cdot) $$로 표시된 Sigmoid 함수는 토큰과 전문가 간의 친화력 점수를 계산하는 데 사용됩니다. 구체적으로, 점수 $$ s_ {i, t} $ Token $$ t $$ 및 전문가 $$ I $$의 경우 :
$$ s_ {i, t} = \ sigma (u_t^t e_i) $$
여기서 $$ u_t $$는 토큰 임베딩이고 $$ e_i $$는 전문가 $$ i $$의 중심 벡터입니다. 이 점수는 토큰이 전문가의 전문 분야와 얼마나 잘 일치하는지를 반영합니다.
정규화 및 선택
이 점수를 계산 한 후 DeepSeek-V3는이 점수를 정상화하고 이러한 정규화 된 점수를 기반으로 최고-$$ K_R $$ 전문가를 선택합니다. 이 프로세스는 각 토큰이 가장 관련이있는 전문가의 하위 집합으로 라우팅하여 효율적이고 전문화 된 처리를 촉진하도록합니다.
바이어스 용어로드 밸런싱 용어
DeepSeek-V3는 라우팅 붕괴를 방지하고 전문가 간의 균형 잡힌 부하 분포를 보장하기 위해 동적으로 조정 가능한 바이어스 용어를 소개합니다. 이 편견 항은 최고 전문가를 선택하기 전에 친화력 점수에 추가됩니다. 전문가에게 과부하가 걸리면 바이어스 용어가 줄어들고 부담이 부족하면 바이어스 용어가 증가합니다. 이 메커니즘은 보조 손실 함수에 의존하지 않고 부하가 균형을 유지하도록 보장하며, 이는 모델 성능에 부정적인 영향을 줄 수 있습니다 [1] [3].
SoftMax에 대한 Sigmoid의 이점
SoftMax 대신 Sigmoid 함수를 사용하면 다른 전문가의 선택 확률을 분리 할 수 있습니다. 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