En Deepseek-V3, el puntaje de afinidad juega un papel crucial en el proceso de selección de expertos dentro de su arquitectura de mezcla de expertos (MOE). Esta arquitectura está diseñada para manejar eficientemente las tareas de modelado de lenguaje a gran escala activando dinámicamente un subconjunto de expertos basados en los tokens de entrada.
Cálculo de puntaje de afinidad
El puntaje de afinidad se calcula como el producto DOT de la incrustación de token de entrada y un centroide de expertos específico. El centroide puede considerarse como un vector representativo para cada experto, que podría derivarse de las activaciones o entradas promedio que procesa el experto. Este producto DOT mide cuán estrechamente alineado está el token con la experiencia de cada experto disponible.
Proceso de selección de expertos
1. Enrutamiento de Top-K: para cada token de entrada, Deepseek-V3 selecciona los 8 mejores expertos con los puntajes de afinidad más altos. Este proceso se conoce como enrutamiento de Top-K, donde K se fija en 8 en este caso [1] [7].
2. Ajuste de sesgo: para evitar el colapso de enrutamiento, donde se enrutan demasiados tokens a los mismos expertos, Deepseek-V3 introduce un ajuste de sesgo dinámico. Cada experto tiene un término de sesgo $$ b_i $$ que se agrega a su puntaje de afinidad durante el enrutamiento. Si un experto está sobrecargado, su sesgo disminuye y si se subutiliza, su sesgo aumenta. Este ajuste ayuda a mantener una carga de trabajo equilibrada en todos los expertos sin usar pérdidas auxiliares explícitas [1] [3].
3. Mecanismo de activación: el mecanismo de activación calcula una puntuación para cada token y selecciona a los expertos enrutados más relevantes en función de estos puntajes. Esto asegura que el modelo asigne eficientemente los recursos computacionales al activar solo los expertos necesarios para cada token [3].
Beneficios del puntaje de afinidad
- Eficiencia: al seleccionar expertos basados en puntajes de afinidad, Deepseek-V3 reduce los costos computacionales al activar solo una fracción de los parámetros totales del modelo para cada token. Esto da como resultado procesos de inferencia y capacitación más eficientes [4] [8].
- Especialización: el puntaje de afinidad permite una mejor especialización entre los expertos. Cada experto puede centrarse en patrones o tareas específicos, mejorando el poder de representación general del modelo y la capacidad de manejar diversas entradas [1] [2].
- Estabilidad: el ajuste de sesgo dinámico asegura que ningún experto esté sobrecargado, manteniendo la estabilidad durante el entrenamiento y la inferencia. Esto evita que el modelo deje caer tokens debido a la sobrecarga, que fue un problema en versiones anteriores [2] [3].
En resumen, el puntaje de afinidad en Deepseek-V3 es crucial para seleccionar dinámicamente los expertos más relevantes para cada token de entrada, asegurando un procesamiento eficiente y especializado mientras mantiene la estabilidad del modelo.
Citas:
[1] https://gonzoml.substack.com/p/deepseek-v3-technical-details
[2] https://martinfowler.com/articles/deepseek-papers.html
[3] https://www.youtube.com/watch?v=bv7ct-_spqy
[4] https://www.linkedin.com/pulse/whatmain-benefit-mixture-experts-moe-models-qi-he-nkgbe
[5] https://www.linkedin.com/pulse/unpacking-deepseek-v3-technical-innovations-question-cost-statton-juplc
[6] https://latenode.com/blog/deepseek-v3-and-deepseek-r1-integrations-a-now-on-latenode
[7] https://www.linkedin.com/pulse/dynamication-selecting-number-expert-moe-models-like-deepseek-ROSI%C4%87-ckytf
[8] https://arxiv.org/html/2412.19437v1
[9] https://www.bentoml.com/blog/the-complete-guide-to-deepseek-models-v3-to-r1-and-beyond