- Publicado el
Desmitificando DeepSeek-V3: Desglosando Su Revolucionaria Arquitectura de IA
Introducción
DeepSeek-V3 representa un avance significativo en el campo de los grandes modelos de lenguaje (LLMs). Desarrollado por DeepSeek-AI, este modelo aprovecha la arquitectura Mixture-of-Experts (MoE) para ofrecer un rendimiento sin igual mientras mantiene la eficiencia tanto en el entrenamiento como en la inferencia. Con un total de 671 mil millones de parámetros y 37 mil millones activados por token, DeepSeek-V3 está diseñado para manejar tareas complejas con una precisión notable.
Esta publicación proporciona un recorrido detallado por la arquitectura de DeepSeek-V3, explicando sus componentes clave paso a paso. Cada sección desglosa los mecanismos subyacentes y presenta las formulaciones matemáticas que definen su funcionalidad. Las explicaciones se basan en el informe técnico oficial de DeepSeek-V3, que sirve como la fuente principal de información proporcionada por los autores del modelo. Puedes consultar el documento completo aquí: DeepSeek-V3 Technical Report. Al final, tendrás una comprensión clara de cómo DeepSeek-V3 logra eficiencia, escalabilidad y optimización de inferencia.
Arquitectura e Innovaciones
DeepSeek-V3 introduce múltiples innovaciones que mejoran la eficiencia, escalabilidad y precisión. Los avances arquitectónicos clave incluyen:
- Multi-head Latent Attention – Reduce los costos de inferencia y mejora la eficiencia de atención.
- DeepSeekMoE – Una arquitectura refinada de Mixture-of-Experts (MoE) que mejora la especialización de expertos y el balanceo de carga.
- Auxiliary-Loss-Free Load Balancing – Una estrategia de selección de expertos novedosa que elimina la necesidad de pérdida auxiliar, asegurando una utilización estable y eficiente de los expertos.
- Complementary Sequence-Wise Auxiliary Loss – Una función de pérdida ligera que previene desequilibrios locales dentro de una sola secuencia.
- Node-Limited Routing – Optimiza la distribución de expertos a través de nodos computacionales para reducir la sobrecarga de comunicación.
- No Token-Dropping Strategy – Asegura la retención estable de tokens durante el entrenamiento y la inferencia.
- Multi-Token Prediction – Mejora las representaciones de tokens durante el entrenamiento y puede ser utilizada para decodificación especulativa en la inferencia.
Cada uno de estos componentes contribuye al rendimiento de vanguardia de DeepSeek-V3 mientras mantiene la eficiencia computacional.

Arquitectura del Modelo DeepSeek-V3. Fuente DeepSeek-V3 Technical Report
Multi-head Latent Attention
Multi-head Latent Attention (MLA) es una piedra angular de la arquitectura de DeepSeek-V3. Este mecanismo permite al modelo procesar información de manera más eficiente al centrarse en las partes más relevantes de los datos de entrada. MLA reduce la sobrecarga computacional mientras mantiene una alta precisión, lo que lo hace ideal para modelos de lenguaje a gran escala.
Explicación Paso a Paso
(a) Proyección del Token de Entrada al Vector Latente
- El token de entrada en el paso de tiempo se denota como . Aquí, tiene la misma dimensión que el estado oculto del modelo.
- Se proyecta en un vector latente con una dimensión mucho más pequeña (donde ):
- Aquí, es una matriz de proyección aprendida que reduce la dimensionalidad de .
- El vector latente almacena información comprimida utilizada para calcular las representaciones de clave y valor en el mecanismo de atención.
(b) Cálculo del Vector Clave Aumentando desde el Vector Latente
- El vector clave se calcula aumentando desde la dimensión del vector latente a la dimensión completa de atención :
- Aquí, es una matriz de proyección aprendida que expande en la representación clave completa .
- Esto asegura que tenga la misma dimensionalidad que las claves en Multi-Head Attention (MHA).
(c) Proyección y Codificación RoPE del Token de Entrada
- El token de entrada se proyecta primero de la dimensión a utilizando una matriz de proyección aprendida:
- Aquí, es una matriz de proyección aprendida con tamaño .
- El vector proyectado se codifica luego utilizando Rotary Positional Embeddings (RoPE) en la posición del token :
- La clave codificada por RoPE se concatena a los vectores clave de cada cabeza, asegurando que la misma clave codificada posicionalmente se comparta entre todas las cabezas.
- Después de la concatenación, obtenemos el vector clave por cabeza final para cada cabeza de atención con dimensionalidad:
(d) Cálculo del Vector de Valor Aumentando desde el Vector Latente
- El vector de valor se calcula aumentando desde el vector latente con dimensión a la dimensión completa de atención :
- Aquí, es una matriz de proyección aprendida.
- Esto asegura que tenga la misma dimensionalidad que los valores en Multi-Head Attention (MHA).
(e) Cálculo del Vector de Consulta con Compresión de Bajo Rango
- La consulta de atención se calcula utilizando una compresión de bajo rango, primero proyectando hacia abajo en un espacio latente con dimensión (donde ):
- Aquí, es una matriz de proyección aprendida de proyección hacia abajo, y el vector latente tiene dimensión:
- La consulta se aumenta de nuevo al espacio completo de atención utilizando una matriz de proyección aprendida:
- Aquí, es una matriz de proyección aprendida específica para consultas, separada de las utilizadas para claves y valores.
- La codificación RoPE se aplica al vector de consulta proyectado en la posición del token :
- Aquí, es una matriz de proyección aprendida con tamaño .
- Finalmente, la consulta codificada por RoPE se concatena con el vector de consulta aumentado, formando el vector de consulta por cabeza final:
- La dimensionalidad resultante de cada vector de consulta por cabeza es:
(f) Cálculo de la Salida de Atención
- La salida final de atención se calcula utilizando las consultas, claves y valores:
- Aquí, para cada cabeza :
- La consulta .
- La clave .
- El valor .
- La salida .
- La similitud consulta-clave se escala por el factor (la dimensión de y ) antes de aplicar el softmax.
- Las salidas de todas las cabezas se concatenan en un solo vector columna: que tiene entradas.
- El estado oculto de salida final se calcula como:
- Aquí, es la matriz de proyección de salida aprendida.
- La salida final es un vector de una columna con entradas, es decir, .
DeepSeekMoE
DeepSeekMoE es una arquitectura especializada de Mixture of Experts (MoE) utilizada en DeepSeek-V3 para Redes de Alimentación (FFNs). En comparación con arquitecturas MoE tradicionales como GShard, DeepSeekMoE introduce una asignación de expertos más detallada, donde algunos expertos funcionan como compartidos.
Explicación Paso a Paso
(a) Cálculo de FFN para Cada Token
- Sea la entrada de FFN del token -ésimo , donde es la dimensión oculta.
- La salida se calcula como:
- Aquí:
- y denotan el número de expertos compartidos y enrutados, respectivamente.
- representa el -ésimo experto compartido.
- representa el -ésimo experto enrutado.
- es el valor de enrutamiento para el -ésimo experto.
- Tanto como tienen la misma dimensión oculta .
(b) Normalización del Valor de Enrutamiento
- Los valores de enrutamiento se normalizan entre los expertos activados:
- donde es la puntuación de enrutamiento inicial.
(c) Selección de los Mejores K Expertos
- A cada token se le asigna los expertos con las puntuaciones de afinidad más altas:
- La puntuación de afinidad determina la probabilidad de enrutamiento.
(d) Cálculo de Afinidad Token-a-Experto
- La puntuación de afinidad token-a-experto se da por: La función sigmoide es una función matemática definida como , que mapea cualquier número real a un rango entre 0 y 1, comúnmente utilizada para estimación de probabilidades y activación en redes neuronales.
- El centroide se calcula como:
- Aquí:
- es el vector centroide del -ésimo experto enrutado.
- es el conjunto de tokens enrutados al experto en un lote dado.
- es el número de tokens asignados al experto .
- El centroide se aprende durante el entrenamiento para especializar expertos para diferentes tipos de tokens.
- Durante la inferencia, permanece fijo y se utiliza solo para decisiones de enrutamiento.
Auxiliary-Loss-Free Load Balancing
Para modelos Mixture of Experts (MoE), una carga de expertos desequilibrada puede llevar a colapsos de enrutamiento, reduciendo la eficiencia computacional en arquitecturas paralelas de expertos. Las soluciones convencionales utilizan pérdidas auxiliares para equilibrar la distribución de tokens, pero grandes pérdidas auxiliares pueden degradar el rendimiento del modelo. Para evitar estos compromisos, DeepSeek-V3 introduce una estrategia de balanceo de carga sin pérdida auxiliar que ajusta dinámicamente un término de sesgo para cada experto. Este sesgo se añade a las puntuaciones de afinidad para determinar la selección de expertos.
Explicación Paso a Paso
(a) Selección de Expertos con Ajuste de Sesgo
- Cada experto tiene un término de sesgo , que se añade a la puntuación de afinidad original antes del enrutamiento:
- Aquí:
- es la puntuación de afinidad token-a-experto original.
- es un término de sesgo asignado al experto .
- se aprende durante el entrenamiento para equilibrar la utilización de expertos.
- Durante la inferencia, permanece fijo y se utiliza solo para decisiones de enrutamiento.
- La función Top- selecciona los expertos con las puntuaciones ajustadas más altas.
(b) El Término de Sesgo se Utiliza Solo para Enrutamiento
- El término de sesgo no afecta el cálculo de FFN.
- Se utiliza solo para ajustar las probabilidades de selección de expertos.
(c) Actualización Dinámica del Sesgo para Equilibrar la Carga
- Al final de cada paso de entrenamiento, el término de sesgo se actualiza en función de la carga del experto:
- Si el experto está sobrecargado, se disminuye por un factor de .
- Si el experto está subcargado, se aumenta por un factor de .
- Aquí:
- es un hiperparámetro de velocidad de actualización del sesgo que controla qué tan rápido se ajusta .
- Al final de cada paso de entrenamiento, el término de sesgo se actualiza en función de la carga del experto:
Complementary Sequence-Wise Auxiliary Loss
Aunque DeepSeek-V3 se basa principalmente en una estrategia sin pérdida auxiliar para el balanceo de carga, introduce una pérdida de balance complementaria por secuencia para prevenir desequilibrios extremos dentro de una sola secuencia. Esto asegura que la utilización de expertos permanezca equilibrada entre los tokens en una secuencia.
La pérdida de balance por secuencia se define como:
donde es un hiperparámetro de factor de balance, asignado un valor extremadamente pequeño en DeepSeek-V3.
Explicación Paso a Paso
(a) Cálculo de la Fracción de Carga del Experto
- La fracción de tokens asignados al experto dentro de una secuencia se calcula como:
- Aquí:
- es el número de expertos enrutados.
- es el número de expertos activados por token.
- es la longitud de la secuencia, representando el número de tokens.
- es la función indicadora, que devuelve 1 si el experto está entre los expertos seleccionados en el top- para el token .
(b) Probabilidad Normalizada del Experto
- El valor de enrutamiento token-a-experto normalizado se calcula como:
- Aquí:
- es el valor de enrutamiento token-a-experto original.
- El denominador asegura que los valores de enrutamiento sumen 1 entre todos los expertos enrutados.
(c) Cálculo de la Utilización Media del Experto
- La probabilidad media de que el experto sea seleccionado a lo largo de la secuencia es:
- Esto representa el valor de enrutamiento normalizado promedio para el experto sobre todos los tokens en la secuencia.
(d) Cómo se Utiliza la Pérdida de Balance por Secuencia
- penaliza los desequilibrios en el uso de expertos dentro de una secuencia.
- Se aplica solo durante el entrenamiento y no se utiliza en la inferencia.
- Ajusta suavemente el enrutamiento para prevenir la sobrecarga a corto plazo de expertos.
- El hiperparámetro asegura una interferencia mínima con la pérdida principal.
Node-Limited Routing
DeepSeek-V3 emplea Enrutamiento Limitado por Nodo durante el entrenamiento para reducir los costos de comunicación en modelos MoE. Cada token se enrutará a como máximo nodos, seleccionados en función de la suma de las puntuaciones de afinidad más altas entre los expertos en cada nodo. Esta restricción asegura un balanceo de carga eficiente mientras mantiene una casi superposición completa de computación-comunicación, optimizando la eficiencia del entrenamiento.
No Token-Dropping Strategy
Debido a su efectivo balanceo de carga, DeepSeek-V3 no descarta ningún token durante el entrenamiento o la inferencia. El modelo mantiene una utilización estable de expertos, y las estrategias de implementación específicas para la inferencia aseguran un enrutamiento equilibrado de tokens.
Multi-Token Prediction
DeepSeek-V3 introduce Predicción de Múltiples Tokens (MTP), un objetivo de entrenamiento que extiende el alcance de predicción a múltiples tokens futuros por posición. Este enfoque mejora la eficiencia del entrenamiento mientras mejora las representaciones de tokens para mejorar la predicción de tokens futuros.

Implementación de Predicción de Múltiples Tokens (MTP) de DeepSeek-V3. Fuente DeepSeek-V3 Technical Report
Explicación Paso a Paso
(a) Módulos MTP
- MTP se implementa utilizando módulos secuenciales, cada uno prediciendo un token adicional.
- Cada módulo MTP -ésimo consiste en:
- Una cabeza de salida compartida .
- Un bloque Transformer .
- Una matriz de proyección .
- En la profundidad de predicción , la representación del token se calcula combinando la representación de la profundidad anterior del token -ésimo con la incrustación del token -ésimo:
- Aquí:
- es una matriz de proyección aprendida.
- es la representación oculta de la profundidad anterior.
- es la incrustación del token futuro en la posición .
- RMSNorm se utiliza para la normalización, estabilizando las activaciones sin sustracción de la media.
- La representación transformada se procesa a través de un bloque Transformer: donde representa la longitud de la secuencia de entrada, y denota la operación de corte (inclusiva de ambos límites izquierdo y derecho).
- Finalmente, tomando como entrada, la cabeza de salida compartida calcula la distribución de probabilidad para el token adicional -ésimo: donde , siendo el tamaño del vocabulario. La cabeza de salida mapea linealmente la representación a logits y posteriormente aplica la función Softmax para calcular las probabilidades de predicción del token adicional -ésimo.
(b) Objetivo de Entrenamiento MTP
- Para cada profundidad de predicción, se calcula una pérdida de entropía cruzada :
- donde denota la longitud de la secuencia de entrada, representa el token de verdad en la posición -ésima, y es la probabilidad predicha de dada por el módulo MTP -ésimo.
- Las pérdidas MTP se promedian a través de todas las profundidades y se escalan por un factor de ponderación para obtener la pérdida MTP general , que sirve como un objetivo de entrenamiento adicional:
(c) MTP en Inferencia
- MTP se utiliza durante el entrenamiento para mejorar las representaciones de tokens.
- Durante la inferencia, los módulos MTP se desactivan, y solo se utiliza el modelo principal para la predicción de tokens.
- MTP también puede ser reutilizado para especulación de tokens, mejorando la eficiencia de decodificación.
Conclusiones Clave
- Atención Eficiente con MLA: Reduce el uso de memoria al utilizar proyecciones en el espacio latente para reducir las dimensiones de clave y valor, con posibles ahorros computacionales al operar en representaciones más pequeñas.
- Enrutamiento Estable de Expertos con DeepSeekMoE: Implementa un balanceo de carga sin pérdida auxiliar, previniendo el colapso de enrutamiento y asegurando una especialización eficiente de expertos. Utiliza un mecanismo de selección ajustado por sesgo para mantener una distribución uniforme de token-a-experto, mejorando la estabilidad del modelo sin introducir sobrecarga computacional adicional.
- Sin Pérdida de Tokens: Mantiene una retención estable de tokens durante el entrenamiento y la inferencia, evitando la degradación en el procesamiento de secuencias.
- La Predicción de Múltiples Tokens Mejora el Entrenamiento: Mejora las representaciones de tokens y la eficiencia de aprendizaje al extender el objetivo de predicción más allá del siguiente token.
DeepSeek-V3 representa un gran avance tanto en la eficiencia del entrenamiento como en la escalabilidad de la inferencia, estableciendo un nuevo estándar para los modelos de lenguaje de próxima generación.
Fuente(s)
¿Te gustó este post? ¿Lo encontraste interesante? No dudes en dejar un comentario a continuación para compartir tus pensamientos o hacer preguntas. Se requiere una cuenta de GitHub para unirse a la discusión.
Si encontraste valioso el análisis matemático de las arquitecturas LLM y te gustaría ver más publicaciones explorando sus mecanismos internos en profundidad, háznoslo saber.