PP-YOLOE+ frente a EfficientDet#
Elegir la arquitectura adecuada es fundamental para crear aplicaciones robustas de visión artificial. Esta guía técnica analiza las ventajas e inconvenientes de dos modelos de detección de objetos conocidos: PP-YOLOE+ y EfficientDet. Desglosa sus arquitecturas, analiza sus métricas de rendimiento y abarca los escenarios de despliegue más adecuados.
Aunque ambos modelos han contribuido significativamente al sector, esta guía también explica cómo las alternativas modernas, como Ultralytics YOLO26, ofrecen una mayor eficiencia de memoria, inferencias más rápidas y una experiencia de desarrollo más sencilla.
Descripción general de la arquitectura: PP-YOLOE+#
PP-YOLOE+ es una versión mejorada de PP-YOLOE, que a su vez evolucionó a partir de la serie PP-YOLO. Se creó para optimizar el rendimiento en GPU de servidor dentro del ecosistema PaddlePaddle e incorpora varias mejoras a la arquitectura de referencia, centradas en un paradigma sin anclajes.
- Autores: Autores de PaddlePaddle
- Organización: Baidu
- Fecha: 2022-04-02
- arXiv: 2203.16250
- Documentación: README de PaddleDetection
Más información sobre PP-YOLOE+
PP-YOLOE+ cuenta con una red troncal CSPRepResNet y un cabezal eficiente alineado con tareas (ET-head), y utiliza principalmente la pérdida varifocal para la clasificación y la pérdida focal de distribución para la regresión de cajas delimitadoras. Su transición a un diseño de detector sin anclajes simplificó la canalización de posprocesamiento, lo que lo hizo muy competitivo en el momento de su lanzamiento.
Los equipos que ya trabajan intensamente con el marco PaddlePaddle de Baidu suelen encontrar más fácil integrar PP-YOLOE+ en sus canalizaciones existentes, aunque carece del amplio soporte para varios marcos que ofrecen las herramientas más recientes.
Descripción general de la arquitectura: EfficientDet#
EfficientDet adopta un enfoque distinto para la detección de objetos: parte de una red troncal obtenida mediante búsqueda de arquitecturas neuronales y aplica principios de escalado compuesto.
- Autores: Mingxing Tan, Ruoming Pang y Quoc V. Le
- Organización: Google
- Fecha: 2019-11-20
- arXiv: 1911.09070
- Documentación: Léeme de Brain AutoML
Más información sobre EfficientDet
La piedra angular de EfficientDet es su red piramidal de características bidireccional (BiFPN). A diferencia de las redes FPN tradicionales, BiFPN permite fusionar rápidamente características multiescala mediante pesos entrenables que aprenden la importancia de las distintas características de entrada. Combinado con una red troncal EfficientNet, EfficientDet escala sistemáticamente a la vez la anchura, la profundidad y la resolución de la red.
Aunque los modelos EfficientDet son muy eficientes en términos de FLOPs, pueden tener dificultades para trasladar su eficiencia teórica a la velocidad real en dispositivos edge debido a sus complejos patrones de acceso a memoria, a diferencia de los modelos basados en YOLO, que requieren menos memoria.
Análisis de rendimiento y pruebas de referencia#
La siguiente tabla compara métricas clave en conjuntos de datos estándar como COCO. Comparar la precisión media promedio (mAP) con la velocidad de inferencia muestra la posición de cada modelo en la frontera de Pareto entre velocidad y precisión.
| Modelo | tamaño (píxeles) | mAPval 50-95 | Velocidad CPU ONNX (ms) | Velocidad T4 TensorRT10 (ms) | parámetros (M) | FLOPs (B) |
|---|---|---|---|---|---|---|
| PP-YOLOE+t | 640 | 39.9 | - | 2.84 | 4.85 | 19.15 |
| PP-YOLOE+s | 640 | 43.7 | - | 2.62 | 7.93 | 17.36 |
| PP-YOLOE+m | 640 | 49.8 | - | 5.56 | 23.43 | 49.91 |
| PP-YOLOE+l | 640 | 52.9 | - | 8.36 | 52.2 | 110.07 |
| PP-YOLOE+x | 640 | 54.7 | - | 14.3 | 98.42 | 206.59 |
| EfficientDet-d0 | 512 | 34.6 | - | 3.92 | 3.9 | 2.54 |
| EfficientDet-d1 | 640 | 40.5 | - | 7.31 | 6.6 | 6.1 |
| EfficientDet-d2 | 768 | 43.0 | - | 10.92 | 8.1 | 11.0 |
| EfficientDet-d3 | 896 | 47.5 | - | 19.59 | 12.0 | 24.9 |
| EfficientDet-d4 | 1024 | 49.7 | - | 33.55 | 20.7 | 55.2 |
| EfficientDet-d5 | 1280 | 51.5 | - | 67.86 | 33.7 | 130.0 |
| EfficientDet-d6 | 1280 | 52.6 | - | 89.29 | 51.9 | 226.0 |
| EfficientDet-d7 | 1536 | 53.7 | - | 128.07 | 51.9 | 325.0 |
Como se muestra, PP-YOLOE+ suele escalar mejor en mAP bruto con GPU de gama alta, mientras que EfficientDet intenta minimizar el número de parámetros. Sin embargo, ambos se quedan atrás respecto al rendimiento en tiempo real que requieren las aplicaciones modernas de IA edge.
Casos de uso y recomendaciones#
La elección entre PP-YOLOE+ y EfficientDet depende de los requisitos específicos de tu proyecto, las limitaciones de implementación y tus preferencias de ecosistema.
Cuándo elegir PP-YOLOE+#
PP-YOLOE+ es una buena opción para:
- Integración con el ecosistema PaddlePaddle: Organizaciones con infraestructura existente basada en el framework y las herramientas de PaddlePaddle de Baidu.
- Implementación edge con Paddle Lite: Implementación en hardware con kernels de inferencia muy optimizados, diseñados específicamente para Paddle Lite o el motor de inferencia Paddle.
- Detección de alta precisión en servidores: Escenarios que priorizan la máxima precisión de detección en servidores con GPU potentes, donde la dependencia del framework no supone un problema.
Cuándo elegir EfficientDet#
Se recomienda EfficientDet para:
- Google Cloud y procesos con TPU: Sistemas basados en TensorFlow sobre la infraestructura Google Cloud TPU, donde la implementación de referencia de EfficientDet es compatible con el entrenamiento en TPU.
- Investigación sobre el escalado compuesto: Evaluaciones comparativas académicas centradas en estudiar los efectos del escalado equilibrado de la profundidad, la anchura y la resolución de la red.
- Implementación móvil mediante LiteRT: Proyectos que requieren específicamente exportar a LiteRT (antes TensorFlow Lite) para Android o dispositivos Linux integrados.
Cuándo elegir Ultralytics (YOLO26)#
Para la mayoría de los proyectos nuevos, Ultralytics YOLO26 ofrece la mejor combinación de rendimiento y experiencia para desarrolladores:
- Implementación edge sin NMS: Aplicaciones que necesitan inferencias uniformes y de baja latencia sin la complejidad del posprocesamiento con supresión no máxima.
- Entornos solo con CPU: dispositivos sin aceleración de GPU dedicada, donde la inferencia en CPU hasta un 43 % más rápida de YOLO26n frente a YOLO11n supone una clara ventaja.
- Detección de objetos pequeños: Casos exigentes, como las imágenes aéreas tomadas con drones o el análisis de sensores IoT, donde ProgLoss y STAL mejoran notablemente la precisión al detectar objetos diminutos.
La alternativa moderna: Ultralytics YOLO26#
Aunque PP-YOLOE+ y EfficientDet son hitos importantes, los desarrolladores que buscan una alta precisión, un menor consumo de memoria y una experiencia de uso sencilla deberían optar por Ultralytics YOLO26.
YOLO26 supone un gran avance en la detección de objetos e incorpora varias innovaciones importantes:
- Diseño integral sin NMS: A partir de YOLOv10, el cabezal integral opcional de YOLO26 (
nms=False) elimina la supresión no máxima (NMS) durante la inferencia. Esto reduce considerablemente la latencia y elimina los complejos cuellos de botella del posprocesamiento. - Optimizador MuSGD: Inspirado en las innovaciones del entrenamiento de LLM, YOLO26 utiliza un optimizador híbrido de SGD y Muon que mejora la estabilidad del entrenamiento y reduce el tiempo de convergencia.
- Inferencia en CPU más rápida: YOLO26n ofrece una inferencia en CPU hasta un 43 % más rápida que YOLO11n, por lo que es una excelente opción para dispositivos edge alimentados por batería o que solo usan CPU.
- Técnicas de entrenamiento avanzadas: ProgLoss y STAL mejoran notablemente el reconocimiento de objetos pequeños, algo esencial para tareas como el análisis con drones y la robótica.
A diferencia de EfficientDet, centrado exclusivamente en la detección, YOLO26 gestiona de forma nativa la segmentación de instancias, la clasificación de imágenes, la estimación de pose y las cajas delimitadoras orientadas (OBB), todo dentro del mismo ecosistema bien mantenido.
Facilidad de uso e integración en el ecosistema#
Uno de los mayores inconvenientes de los modelos antiguos como EfficientDet es la complejidad de sus procesos de entrenamiento y configuraciones de aprendizaje automático automatizado. En cambio, la plataforma Ultralytics ofrece una experiencia de desarrollo más sencilla.
Con Ultralytics, basta con unas pocas líneas de código para entrenar y ejecutar un modelo, a diferencia de las detalladas configuraciones que requieren los marcos antiguos.
from ultralytics import YOLO
# Carga un modelo YOLO26 preentrenado
model = YOLO("yolo26s.pt")
# Entrena el modelo con el conjunto de datos COCO8
results = model.train(data="coco8.yaml", epochs=100)
# Ejecuta inferencias sin NMS en una imagen de prueba con la cabeza integral
predictions = model("https://ultralytics.com/images/bus.jpg", nms=False)Si estás explorando otras alternativas, el ecosistema de Ultralytics también incluye arquitecturas como RT-DETR y el anterior YOLOv8, lo que facilita cambiar de modelo y probar distintas opciones.
Conclusión#
PP-YOLOE+ sigue siendo una opción sólida para determinados despliegues en servidores dentro del ecosistema Paddle, y EfficientDet continúa siendo un caso de estudio interesante sobre el diseño automatizado de arquitecturas. Sin embargo, para las aplicaciones modernas que exigen inferencia en tiempo real, facilidad de despliegue y requisitos mínimos de memoria, Ultralytics YOLO26 ofrece el equilibrio de rendimiento más convincente. Su diseño opcional sin NMS y su rápido rendimiento en CPU lo convierten en la opción recomendada para las infraestructuras de IA modernas.