¡Sintonice YOLO Vision 2025!
25 de septiembre de 2025
10:00 — 18:00 BST
Evento híbrido
Yolo Vision 2024
Glosario

FLOPs

¡Comprenda los FLOPs en el aprendizaje automático! Aprenda cómo miden la complejidad del modelo, impactan la eficiencia y ayudan en la selección del hardware.

Las FLOPs, u Operaciones de Punto Flotante, son una métrica fundamental utilizada en el Aprendizaje Automático (ML) para medir la complejidad computacional de un modelo. Una operación de punto flotante es cualquier cálculo matemático, como la suma, la resta, la multiplicación o la división, que involucra números con decimales, que son estándar en las redes neuronales. Si bien el término puede referirse técnicamente a las operaciones por segundo, en el contexto del aprendizaje profundo, las FLOPs típicamente cuantifican el número total de estas operaciones requeridas para un solo pase hacia adelante de un modelo. Esta métrica proporciona una forma independiente del hardware para estimar cuán computacionalmente intensivo será un modelo durante la inferencia. Los números son a menudo tan grandes que se expresan en GigaFLOPs (GFLOPs), que son miles de millones de operaciones, o TeraFLOPs (TFLOPs), billones de operaciones.

¿Por qué son importantes los FLOPs en el aprendizaje automático?

Las FLOPs son un indicador crítico de la eficiencia de un modelo. Un conteo de FLOPs más bajo generalmente sugiere que un modelo será más rápido y requerirá menos potencia computacional para ejecutarse. Esto es especialmente importante para aplicaciones donde los recursos son limitados, como en la IA en el borde y en dispositivos móviles. Al analizar las FLOPs, los desarrolladores pueden:

  • Comparar Arquitecturas de Modelos: Al elegir entre diferentes modelos, como los que se encuentran en nuestras páginas de comparación de modelos, los FLOP ofrecen una forma estandarizada de evaluar la eficiencia computacional junto con la precisión.
  • Optimizar para la implementación: Para la implementación del modelo en hardware como una Raspberry Pi o NVIDIA Jetson, seleccionar un modelo con un recuento de FLOP apropiado es esencial para lograr los niveles de rendimiento deseados.
  • Guía para el diseño de modelos: Los investigadores que desarrollan nuevas arquitecturas, como las de la serie Ultralytics YOLO, a menudo consideran la minimización de FLOP como una restricción de diseño clave. Las técnicas exploradas en modelos como EfficientNet se centran en reducir el coste computacional sin sacrificar el rendimiento.

Aplicaciones en el mundo real

Las FLOPs son una métrica práctica utilizada diariamente en el desarrollo y la implementación de soluciones de IA.

  1. Aplicaciones de visión móvil: Un desarrollador que crea una función de detección de objetos en tiempo real para una aplicación de smartphone debe elegir un modelo que pueda ejecutarse rápidamente sin agotar la batería. Al comparar los FLOPs de modelos ligeros, como una variante pequeña de Ultralytics YOLO11 con otros, puede seleccionar un modelo que proporcione un buen equilibrio entre velocidad y precisión para la CPU o la GPU del dispositivo.

  2. Vehículos autónomos: En la conducción autónoma, los modelos de percepción deben procesar las imágenes de la cámara con una latencia extremadamente baja. Los ingenieros que diseñan estos sistemas analizan los FLOP de varios modelos para asegurarse de que la arquitectura elegida puede ejecutarse en el hardware especializado del vehículo. Un modelo como YOLO11 podría elegirse en lugar de uno más complejo si sus FLOP más bajos le permiten cumplir los estrictos requisitos de tiempo para un funcionamiento seguro.

FLOPs vs. Métricas Relacionadas

Es importante distinguir los FLOPs de otras métricas comunes:

  • Parámetros vs. FLOPs: El número de pesos del modelo (parámetros) indica el tamaño de un modelo en términos de almacenamiento de memoria. Los FLOPs, por otro lado, miden el trabajo computacional. Un modelo puede tener un pequeño número de parámetros pero un alto recuento de FLOPs si esos parámetros se reutilizan muchas veces en operaciones computacionalmente intensivas.
  • MACs vs. FLOPs: Las MACs, u operaciones de Multiplicación-Acumulación, son una operación común en las redes neuronales. Una sola MAC a menudo se considera equivalente a dos FLOPs (una multiplicación y una suma). Algunos artículos de investigación y frameworks pueden informar el costo computacional en MACs, que es aproximadamente la mitad del valor de FLOPs. Puedes ver esta distinción en recursos como Papers with Code.
  • Latencia vs. FLOPs: La latencia de inferencia es el tiempo real que tarda un modelo en hacer una predicción. Si bien los FLOP proporcionan una buena estimación teórica, la latencia del mundo real está influenciada por factores que los FLOP no capturan, como el ancho de banda de la memoria, el paralelismo del hardware y la eficiencia de las bibliotecas de software como PyTorch.

Limitaciones

Aunque útiles, los FLOP tienen limitaciones:

  • No tienen en cuenta los costes de acceso a la memoria, que pueden ser un cuello de botella importante.
  • No capturan el grado de paralelismo posible en las operaciones.
  • El rendimiento real depende en gran medida de las optimizaciones específicas del hardware y de la eficiencia de las bibliotecas de software subyacentes (cuDNN, Intel MKL).
  • Ciertas operaciones (por ejemplo, funciones de activación como ReLU) tienen un bajo conteo de FLOP, pero aún pueden afectar la latencia.

Por lo tanto, los FLOP deben considerarse junto con otras métricas de rendimiento, parámetros y puntos de referencia del mundo real para obtener una imagen completa de la eficiencia del modelo. Herramientas como Ultralytics HUB pueden ayudar a administrar modelos y realizar un seguimiento de varios aspectos del rendimiento durante el desarrollo y la implementación.

Únete a la comunidad de Ultralytics

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

Únete ahora
Enlace copiado al portapapeles