Glosario

TPU (Tensor Unidad de Procesamiento)

Descubre cómo las Unidades de Procesamiento Tensor (TPU) aceleran tareas de aprendizaje automático como el entrenamiento, la inferencia y la detección de objetos con una eficacia inigualable.

Entrena los modelos YOLO simplemente
con Ultralytics HUB

Saber más

Una Unidad de Procesamiento Tensor (TPU) es un acelerador de aprendizaje automático diseñado a medida y desarrollado por Google específicamente para cargas de trabajo de redes neuronales. Estos procesadores especializados están diseñados para acelerar y ampliar drásticamente las operaciones de aprendizaje automático, especialmente para tareas de inferencia y entrenamiento. Las TPU están diseñadas para manejar los complejos cálculos matemáticos que intervienen en la inteligencia artificial, ofreciendo mejoras significativas de rendimiento respecto a las CPU y GPU para determinados tipos de modelos de aprendizaje automático.

¿Qué es un TPU?

Un TPU es un circuito integrado de aplicación específica (ASIC) diseñado desde cero para las demandas únicas del aprendizaje automático, especialmente el aprendizaje profundo. A diferencia de los procesadores de uso general, como las CPU o incluso las GPU, que son versátiles y pueden realizar una amplia gama de tareas, las TPU están diseñadas específicamente para sobresalir en los cálculos de tensor , las operaciones matemáticas fundamentales de las redes neuronales. Los tensores son matrices multidimensionales que representan datos en los modelos de aprendizaje automático, y las TPU están optimizadas para realizar el álgebra tensor a gran velocidad y eficiencia. Esta especialización permite a las TPU ejecutar tareas de aprendizaje automático, como entrenar modelos complejos o realizar inferencias rápidas, mucho más rápidamente que las CPU y, en muchos casos, de forma más eficiente que las GPU. Para comprender mejor los cálculos subyacentes, puedes explorar recursos sobre aprendizaje profundo y redes neuronales.

Aplicaciones de los TPU

Las TPU se utilizan ampliamente en diversas aplicaciones, en particular las impulsadas por los servicios de Google y cada vez más en dominios más amplios de IA y ML. Algunas aplicaciones clave son:

  • Aceleración de los modelos Ultralytics YOLO : Las TPU pueden acelerar significativamente el proceso de inferencia de Ultralytics YOLO modelos, permitiendo una detección de objetos más rápida y eficaz en aplicaciones en tiempo real.
  • Impulsando los servicios de Google : Muchos productos de Google , como Google Search, Google Translate y Google Photos, utilizan TPUs para ofrecer funciones rápidas y precisas basadas en IA a miles de millones de usuarios. Por ejemplo, las TPU desempeñan un papel crucial en la búsqueda semántica y en la mejora de la calidad de los resultados de búsqueda.
  • Aprendizaje automático en la nube: Google Cloud ofrece TPUs como servicio, lo que permite a investigadores y desarrolladores aprovechar su potencia para cargas de trabajo exigentes de aprendizaje automático en la nube. Esto es especialmente beneficioso para tareas como el ajuste de hiperparámetros y el entrenamiento distribuido de grandes modelos.
  • Edge Computing: Las TPUs Edge de Google están diseñadas para su despliegue en dispositivos edge como Raspberry Pi y otros sistemas embebidos. Permiten ejecutar modelos de aprendizaje automático localmente en los dispositivos, facilitando el procesamiento en tiempo real y reduciendo la latencia, lo que es crucial para aplicaciones como la automatización de procesos robóticos (RPA) y el seguimiento de objetos en tiempo real.
  • Análisis de imágenes médicas: Las TPUs aceleran el procesamiento de grandes tareas de análisis de imágenes médicas, contribuyendo a acelerar el diagnóstico y la planificación del tratamiento en la asistencia sanitaria.

TPUs vs GPUs

Aunque tanto las TPU como las GPU se utilizan para acelerar cargas de trabajo de aprendizaje automático, tienen diferencias clave:

  • Especialización: Las TPU están muy especializadas para el aprendizaje automático, en particular para las cargas de trabajo de TensorFlow , mientras que las GPU son más polivalentes y destacan en el procesamiento paralelo para gráficos y una gama más amplia de tareas computacionales más allá del aprendizaje automático.
  • Arquitectura: Las TPU tienen una arquitectura diseñada específicamente para la multiplicación de matrices y las operaciones tensor , lo que las hace excepcionalmente eficientes para los cálculos de redes neuronales. Las GPU, aunque también son procesadores paralelos, tienen una arquitectura más flexible diseñada para el renderizado de gráficos que se adapta al aprendizaje automático.
  • Rendimiento: Para las tareas de aprendizaje profundo, especialmente la inferencia, las TPU suelen superar a las GPU en términos de velocidad y eficiencia energética. Sin embargo, las GPU siguen siendo versátiles y potentes para una amplia gama de tareas de cálculo y están respaldadas por un ecosistema más amplio de software y bibliotecas.
  • Accesibilidad: Al principio, el acceso a las TPU estaba más restringido, pero ahora están disponibles a través de los productos Google Cloud y Edge TPU . Las GPU son ampliamente accesibles a través de varios vendedores y proveedores de la nube.

En resumen, las TPU representan un avance significativo en hardware diseñado específicamente para las demandas del aprendizaje automático moderno, ofreciendo un rendimiento y una eficiencia mejorados para una amplia gama de aplicaciones de IA, incluidas las que aprovechan modelos de última generación como Ultralytics YOLOv8.

Leer todo