Ultralytics YOLO27: Únete a la lista de espera.
Get Started

YOLOv8 frente a YOLOX#

El panorama de la visión artificial ha estado marcado por la evolución continua de las arquitecturas de detección de objetos en tiempo real. Dos hitos destacados son Ultralytics YOLOv8 y YOLOX. Aunque ambos modelos usan un diseño sin anclajes para simplificar las predicciones de cuadros delimitadores, representan distintas épocas y filosofías de investigación en aprendizaje profundo y desarrollo de ecosistemas de despliegue.

Esta comparación técnica analiza sus arquitecturas, metodologías de entrenamiento y métricas de rendimiento en situaciones reales para ayudar a desarrolladores e investigadores a elegir el modelo adecuado para sus aplicaciones de IA de visión.

Contexto de los modelos#

Comprender los orígenes y objetivos de diseño de cada framework aporta un contexto fundamental para entender sus diferencias arquitectónicas y la madurez de sus ecosistemas.

Ultralytics YOLOv8#

Desarrollado por Glenn Jocher, Ayush Chaurasia y Jing Qiu en Ultralytics y publicado el 10 de enero de 2023, YOLOv8 supuso un avance importante para el ecosistema de Ultralytics. A partir del éxito de YOLOv5, YOLOv8 introdujo una arquitectura perfeccionada, capaz de abordar de forma nativa una amplia variedad de tareas, como la detección de objetos, la segmentación de instancias, la clasificación de imágenes y la estimación de poses.

Su principal ventaja reside en el ecosistema de Ultralytics, que cuenta con un mantenimiento activo y ofrece un flujo de trabajo completo con una API unificada de Python, documentación exhaustiva e integraciones nativas con herramientas de MLOps como Weights & Biases y Comet.

YOLOX#

Presentado por Zheng Ge, Songtao Liu, Feng Wang, Zeming Li y Jian Sun, de Megvii, el 18 de julio de 2021, YOLOX pretendía salvar la brecha entre la investigación académica y las aplicaciones industriales. Como se detalla en su artículo de arXiv, YOLOX destacó por orientar la familia YOLO hacia un diseño sin anclajes e integrar una cabeza desacoplada, lo que mejoró la estabilidad y la convergencia del entrenamiento.

Aunque tuvo una gran influencia en 2021, el repositorio de YOLOX en GitHub sigue siendo una base de código centrada principalmente en la investigación. Carece de la amplia versatilidad de tareas y de los flujos de implementación pulidos que ofrecen los frameworks modernos, por lo que requiere más configuración manual para implementarlo en producción.

Consulta la documentación de YOLOX

Innovaciones arquitectónicas#

Ambos modelos utilizan un enfoque sin anclajes, que elimina la necesidad de agrupar cajas de anclaje complejas y específicas del conjunto de datos antes del entrenamiento. Esto reduce la cantidad de parámetros de ajuste heurístico y simplifica la cabeza de detección.

Cabezas desacopladas y extracción de características#

YOLOX fue pionero en la integración de una cabeza desacoplada en la serie YOLO. Tradicionalmente, las tareas de clasificación y regresión se realizaban en una única cabeza unificada, lo que a menudo provocaba gradientes contradictorios durante el entrenamiento. Al separar las ramas de clasificación y localización, YOLOX logró una convergencia más rápida.

YOLOv8 adoptó y perfeccionó este concepto. Utiliza un módulo C2f (cuello de botella parcial entre etapas con dos convoluciones) en su red troncal, en sustitución del módulo C3 anterior. Esto mejora el flujo de gradientes y la representación de características sin añadir una carga computacional considerable. YOLOv8 también combina su cabeza de detección sin anclajes con un asignador alineado con la tarea, que empareja dinámicamente las muestras positivas según una combinación de puntuaciones de clasificación e intersección sobre unión (IoU), lo que mejora la precisión.

Eficiencia de memoria

Los modelos Ultralytics YOLO están diseñados para aprovechar la memoria de forma eficiente. En comparación con las arquitecturas basadas en Transformer o las bases de código de investigación no optimizadas, YOLOv8 requiere mucha menos memoria CUDA durante el entrenamiento, lo que permite a los desarrolladores usar tamaños de lote mayores en hardware de consumo estándar.

Comparativa de rendimiento#

Al evaluar modelos para su despliegue en situaciones reales, es esencial equilibrar la precisión (mAP) con la latencia de inferencia y la complejidad del modelo. La tabla siguiente destaca las métricas de rendimiento en el conjunto de datos COCO.

Modelotamaño
(píxeles)
mAPval50-95Velocidad
CPU ONNX
(ms)
Velocidad
T4 TensorRT10
(ms)
parámetros
(M)
FLOPs
(B)
YOLOv8n64037.380.41.473.28.7
YOLOv8s64044.9128.42.6611.228.6
YOLOv8m64050.2234.75.8625.978.9
YOLOv8l64052.9375.29.0643.7165.1
YOLOv8x64053.9479.114.3768.2257.8
YOLOXnano41625.8--0.911.08
YOLOXtiny41632.8--5.066.45
YOLOXs64040.5-2.569.026.8
YOLOXm64046.9-5.4325.373.8
YOLOXl64049.7-9.0454.2155.6
YOLOXx64051.1-16.199.1281.9

Como se observa, los modelos YOLOv8 superan sistemáticamente a sus equivalentes YOLOX con el mismo número de parámetros. Por ejemplo, YOLOv8m alcanza un mAP del 50,2 %, frente al 46,9 % de YOLOXm: una mejora de 3,3 puntos de mAP, con velocidades de inferencia en GPU competitivas mediante TensorRT.

Ventajas del entrenamiento y del ecosistema#

Una de las mayores diferencias entre estas dos soluciones es la experiencia de desarrollo. Entrenar YOLOX suele requerir configuraciones complejas del entorno, modificaciones manuales de scripts y un conocimiento profundo de los detalles internos de PyTorch para depurar problemas de entrenamiento o exportación.

El ecosistema de Ultralytics gestiona esta complejidad con una API de Python intuitiva y una interfaz de línea de comandos (CLI).

API de Python optimizada#

Para entrenar un modelo YOLOv8 con un conjunto de datos personalizado, solo hacen falta unas pocas líneas de código:

from ultralytics import YOLO

# Carga un modelo YOLOv8 preentrenado para la detección de objetos
model = YOLO("yolov8n.pt")

# Entrena el modelo con el conjunto de datos de ejemplo COCO8
results = model.train(data="coco8.yaml", epochs=100, imgsz=640)

# Valida el modelo fácilmente
metrics = model.val()

# Exportar a ONNX para producción
model.export(format="onnx")

Esta API estandariza los flujos de trabajo de detección, segmentación y tareas de cuadros delimitadores orientados (OBB), lo que reduce el tiempo de comercialización de las aplicaciones de producción. La funcionalidad de exportación integrada también convierte los modelos a ONNX, OpenVINO y CoreML sin necesidad de escribir operadores personalizados en C++.

Casos de uso ideales#

La elección entre estas arquitecturas depende de las limitaciones de tu proyecto, aunque YOLOv8 ofrece una base más flexible.

  • Análisis periférico de alta velocidad: para el procesamiento en tiempo real en dispositivos como NVIDIA Jetson, YOLOv8 ofrece un buen equilibrio entre velocidad y precisión, y se despliega fácilmente gracias a su integración nativa con TensorRT.
  • Investigación académica: YOLOX sigue siendo una herramienta educativa valiosa para investigadores que estudian la transición de las metodologías basadas en anclajes a las que prescinden de ellos en PyTorch.
  • Aplicaciones complejas con varias tareas: las aplicaciones que requieren el seguimiento de objetos y la segmentación de instancias simultáneos se beneficiarán de YOLOv8, ya que estas capacidades están integradas directamente en la biblioteca Ultralytics.

Próximos pasos: modelos alternativos#

YOLOv8 mejora considerablemente a YOLOX, pero el campo avanza deprisa. Para los proyectos nuevos, Ultralytics recomienda Ultralytics YOLO26, publicado en enero de 2026.

YOLO26 incorpora un diseño integral sin NMS, cuya cabeza opcional uno a uno (nms=False) elimina el posprocesamiento de supresión no máxima (NMS) y simplifica los flujos de despliegue. Gracias a la inferencia sin NMS y a la eliminación de Distribution Focal Loss (DFL), YOLO26n alcanza una inferencia en CPU hasta un 43 % más rápida que YOLO11n, mientras que el optimizador MuSGD mejora la estabilidad del entrenamiento. También incorpora ProgLoss + STAL (pérdida progresiva y asignación de etiquetas consciente de los objetos pequeños), que mejoran la detección de objetos pequeños en imágenes aéreas y robótica.

Como alternativa, también puedes considerar YOLO11, otro sólido predecesor con buen soporte dentro del ecosistema de Ultralytics, que ofrece un rendimiento fiable en diversas tareas.

Conclusión#

YOLOX demostró el valor de las cabezas desacopladas y del diseño sin anclajes en la familia YOLO. Ultralytics YOLOv8 tomó estos conceptos, perfeccionó la arquitectura y los integró en un ecosistema listo para producción, conocido por su facilidad de uso y versatilidad para distintas tareas. Con un modelo Ultralytics, los desarrolladores obtienen un rendimiento sólido, entrenamiento eficiente en memoria y herramientas de despliegue que simplifican el paso de la experimentación a la producción.

Comentarios1

  1. marybary0000GitHub(editado)

    Great deep dive! YOLOX introduced key innovations like anchor-free design and decoupled head structure, which significantly improved detection performance. However, this YOLOv8 comparison highlights how v8 builds on such ideas with a more modular framework, better support for multi-task learning, and an easier deployment pipeline. Both models reflect strong evolution in object detection, and choosing between them really depends on specific project goals and hardware constraints.