Yolo Vision Shenzhen
Shenzhen
Únete ahora
Glosario

Mixture of Experts (MoE)

Descubra Mixture of Experts (MoE), una arquitectura de IA innovadora que permite modelos escalables y eficientes para el PNL, la visión, la robótica y más.

La Mezcla de Expertos (MoE) es una arquitectura de arquitectura de red neuronal (NN) especializada diseñada para la capacidad del modelo sin un aumento proporcional del coste computacional. A diferencia de los modelos modelos "densos" tradicionales, en los que cada parámetro está activo para cada entrada, un modelo MoE utiliza una técnica denominada cálculo condicional. Esto permite al sistema activar dinámicamente sólo un pequeño subconjunto de sus parámetros totales, denominados "expertos". parámetros -conocidos como "expertos"- en función de los requisitos específicos de los datos de entrada. Aprovechando esta activación dispersa, los investigadores pueden entrenar sistemas masivos, como los grandes modelos lingüísticos (LLM), que poseen trillones de parámetros manteniendo la latencia de inferencia y la velocidad de un modelo más pequeño.

Componentes básicos de la arquitectura del ME

El marco MoE sustituye las capas densas estándar por una capa MoE dispersa, que consta de dos componentes principales que trabajan en tándem para procesar la información:

  • Redes de expertos: Son subredes independientes, a menudo simples redes de alimentación directa (FFN), especializadas en el manejo de distintos tipos de patrones de datos. Por ejemplo, en procesamiento del lenguaje natural (PLN) un experto puede centrarse en la estructura gramatical y otro en las expresiones idiomáticas.
  • Red de Compuertas (Router): El enrutador actúa como controlador del tráfico. Para cada testigo de entrada o calcula una distribución de probabilidad mediante una función función softmax para determinar qué expertos para procesar esa entrada específica. Normalmente dirige los datos a los expertos "Top-K" (normalmente 1 o 2), lo que garantiza que la mayor parte del modelo permanezca inactiva y se ahorren recursos informáticos.

ME frente a conjuntos de modelos

Aunque ambas arquitecturas implican múltiples submodelos, es crucial distinguir Mezcla de expertos de un conjunto de modelos.

  • Conjuntos de modelos: En métodos como como bagging o boosting, varios modelos distintos procesan la misma entrada de forma independiente, y sus predicciones se agregan para mejorar la precisión. Este enfoque aumenta el coste computacional linealmente con el número de modelos, ya que cada modelo se ejecuta para cada inferencia.
  • Mezcla de Expertos: Una ME es un modelo único y unificado en el que las distintas entradas siguen caminos diferentes a través de la red. Sólo se ejecutan los expertos seleccionados, lo que permite que el modelo sea extremadamente grande en cuanto a número de parámetros, pero escaso en cuanto a cálculo. en número de parámetros, pero escaso en computación. Esto permite escalabilidad que los conjuntos densos no pueden igualar.

Aplicaciones en el mundo real

La arquitectura MoE se ha convertido en la piedra angular de la IA moderna de alto rendimiento, sobre todo en escenarios que requieren inmensa retención de conocimientos y capacidades multitarea.

  1. Generación avanzada de idiomas: Destacados modelos de base, como Mixtral 8x7B de Mistral AI y Google de Google, emplean MoE para gestionar diversas tareas lingüísticas. Al enviar tokens a expertos especializados, estos modelos pueden dominar simultáneamente sin los prohibitivos costes de formación de los modelos densos de tamaño equivalente. tamaño equivalente.
  2. Visión por computador escalable: En el campo de la visión por ordenador (CV), MoE se utiliza para crear versátiles para tareas como la detección de objetos y clasificación de imágenes. En modelo de visión basado en MoE, como el Vision MoE (V-MoE) de Google, puede dedicar expertos específicos a reconocer características visuales distintas, como texturas frente a formas, lo que mejora el rendimiento en conjuntos de datos masivos como ImageNet. Los modelos eficientes actuales como YOLO11 se basan en arquitecturas densas optimizadas, pero futuros proyectos de I+D como YOLO26 están explorando para maximizar la relación entre tamaño y velocidad.

Ejemplo de lógica de enrutamiento

Entender el mecanismo de enrutamiento es clave para comprender cómo funciona MoE. El PyTorch muestra un mecanismo de enrutamiento simplificado que selecciona los 2 mejores expertos para un lote de entrada dado.

import torch
import torch.nn as nn

# A simple router selecting the top-2 experts out of 8
num_experts = 8
top_k = 2
input_dim = 128

# The gating network predicts expert relevance scores
gate = nn.Linear(input_dim, num_experts)
input_data = torch.randn(4, input_dim)  # Batch of 4 inputs

# Calculate routing probabilities
logits = gate(input_data)
probs = torch.softmax(logits, dim=-1)

# Select the indices of the most relevant experts
weights, indices = torch.topk(probs, top_k, dim=-1)

print(f"Selected Expert Indices:\n{indices}")

Retos de la formación

A pesar de su eficacia, los modelos ME introducen complejidad en el proceso de formación. Uno de los principales retos es el equilibrio de la carga; la red de compuertas puede converger a un estado en el que todo se dirige a unos pocos expertos "populares", dejando a los demás sin formación. Para evitarlo, los investigadores aplican auxiliares que fomentan la distribución uniforme entre todos los expertos. Además, la aplicación de MoE requiere una sofisticada infraestructura de formación distribuida para gestionar la comunicación entre expertos repartidos en diferentes GPU. Bibliotecas como Microsoft DeepSpeed y TensorFlow Mesh se han desarrollado específicamente para manejar estos problemas de paralelización.

Únase a la comunidad Ultralytics

Únete al futuro de la IA. Conecta, colabora y crece con innovadores de todo el mundo

Únete ahora