Model Ensemble
Descubre cómo los ensambles de modelos combinan múltiples arquitecturas como Ultralytics YOLO26 para aumentar la precisión y la robustez. Aprende técnicas clave y consejos de implementación.
Un Conjunto de modelos (Model Ensemble) es un enfoque estratégico en aprendizaje automático donde las predicciones de múltiples modelos individuales se combinan para producir un resultado final que a menudo es más preciso y robusto de lo que cualquier modelo individual podría lograr por sí solo. Al igual que un comité de expertos que delibera para tomar una mejor decisión que un solo individuo, un conjunto de modelos aprovecha las fortalezas de diversas arquitecturas para mitigar errores. Esta técnica se utiliza ampliamente para mejorar el rendimiento en tareas complejas, reducir el riesgo de sobreajuste y manejar la compensación sesgo-varianza inherente a los modelos estadísticos.
Link to this sectionLa mecánica del ensamblado#
El principio fundamental detrás de un conjunto de modelos es la "diversidad". Al entrenar varios modelos (a menudo denominados "aprendices base" o "aprendices débiles") con diferentes subconjuntos de datos de entrenamiento o utilizando diferentes algoritmos, el conjunto garantiza que los errores cometidos por un modelo probablemente sean corregidos por otros. En el contexto del aprendizaje profundo, esto a menudo implica ejecutar múltiples redes neuronales en paralelo durante la inferencia.
Los métodos comunes para combinar estas predicciones incluyen:
- Votación: Utilizado en clasificación de imágenes, donde la clase seleccionada por la mayoría de los modelos se convierte en la predicción final.
- Promediado: A menudo utilizado en tareas de regresión, donde las salidas numéricas se promedian para suavizar el ruido.
- Fusión ponderada: En detección de objetos, técnicas como Weighted Box Fusion (WBF) combinan cuadros delimitadores de diferentes detectores basándose en puntuaciones de confianza.
Link to this sectionAplicaciones en el mundo real#
Los conjuntos de modelos son esenciales en entornos de alto riesgo donde maximizar la precisión es fundamental y los recursos computacionales permiten ejecutar múltiples modelos.
-
Diagnóstico médico: En el análisis de imágenes médicas, perder un diagnóstico puede tener consecuencias graves. Los radiólogos a menudo utilizan conjuntos que combinan una Red Neuronal Convolucional (CNN) estándar con un Vision Transformer (ViT). La CNN destaca en el análisis de texturas locales, mientras que el ViT captura el contexto global, lo que permite al sistema detectar tumores con mayor sensibilidad que cualquiera de las dos arquitecturas por separado.
-
Conducción autónoma: Los sistemas de percepción en vehículos autónomos deben ser a prueba de fallos. Los ingenieros implementan frecuentemente un conjunto de modelos de detección; por ejemplo, fusionando la velocidad en tiempo real de YOLO26 con la precisión basada en Transformers de RT-DETR. Esto garantiza que los peatones u obstáculos se detecten incluso si un modelo tiene dificultades con condiciones de iluminación específicas, como el resplandor o las sombras.
Link to this sectionImplementación de conjuntos con Python#
Si bien se pueden construir estrategias de conjunto complejas utilizando bibliotecas como Scikit-learn, puedes crear un conjunto de inferencia básico para visión artificial simplemente cargando varios modelos y procesando la misma entrada. El siguiente ejemplo demuestra cómo cargar dos modelos distintos de Ultralytics YOLO para generar predicciones sobre la misma imagen.
from ultralytics import YOLO
# Load two different model variants to create a diverse ensemble
model_a = YOLO("yolo26n.pt") # Nano model (Speed focused)
model_b = YOLO("yolo26s.pt") # Small model (Higher accuracy)
# Perform inference on an image with both models
# In production, results are typically merged programmatically
results_a = model_a("https://ultralytics.com/images/bus.jpg")
results_b = model_b("https://ultralytics.com/images/bus.jpg")
print(f"Model A detected {len(results_a[0].boxes)} objects.")
print(f"Model B detected {len(results_b[0].boxes)} objects.")Link to this sectionConjunto de modelos frente a Mezcla de Expertos#
Es útil diferenciar un conjunto de modelos estándar de una Mezcla de Expertos (MoE), un término que se ve a menudo en la investigación moderna de Modelos de Lenguaje Extensos (LLM).
- Conjunto de modelos: Normalmente consulta a cada modelo de la colección para cada entrada y agrega los resultados. Esto maximiza métricas como la precisión media promedio (mAP) pero aumenta significativamente la latencia de inferencia y el costo computacional. Es un enfoque de fuerza bruta para obtener calidad.
- Mezcla de expertos: Utiliza una "red de enrutamiento" para dirigir los datos solo a unos pocos submodelos "expertos" específicos que se adaptan mejor a la entrada actual. Esto permite una escalabilidad masiva en modelos fundacionales sin la penalización computacional de ejecutar cada parámetro para cada token.
Link to this sectionVentajas y consideraciones#
La principal ventaja de usar un conjunto de modelos es el aumento en el rendimiento. Los conjuntos dominan con frecuencia las clasificaciones en desafíos de ciencia de datos como las competiciones de Kaggle porque pueden modelar patrones complejos que los modelos individuales pasan por alto. Sin embargo, esto tiene un costo: desplegar conjuntos requiere más memoria y potencia de cálculo.
Para los equipos que buscan gestionar estas demandas de recursos de manera eficiente, la Plataforma Ultralytics ofrece herramientas para entrenar, realizar un seguimiento y comparar diferentes arquitecturas de modelos. Al comparar fácilmente las métricas de rendimiento, los desarrolladores pueden decidir si la ganancia de precisión de un conjunto justifica la infraestructura adicional requerida para el despliegue en escenarios de Edge AI.






