TensorFlow
Biblioteca de código abierto para aprendizaje automático creada por Google Brain y liberada en 2015. Opera con tensores que fluyen por un grafo de cómputo y hoy comparte el trono del aprendizaje profundo con PyTorch.
TensorFlow es una biblioteca de código abierto para el aprendizaje automático y el cálculo numérico, desarrollada por el equipo de Google Brain y liberada en noviembre de 2015 bajo licencia Apache 2.0. Nació como la infraestructura interna con la que Google entrenaba y ponía en producción sus modelos, y su apertura la convirtió en una de las herramientas más influyentes del campo.
Como descripción actual complementaria, TensorFlow es una plataforma integral y de código abierto para construir y desplegar modelos de aprendizaje automático.
Su documentación oficial la presenta hoy como una plataforma integral para construir y desplegar modelos, capaz de correr en servidores, dispositivos móviles, sistemas embebidos y el propio navegador. La idea es ofrecer un mismo marco desde la investigación hasta la puesta en producción.
Tensores, grafo de cómputo y diferenciación automática
El nombre lo explica casi todo. Un tensor es un arreglo multidimensional de datos —una generalización de vectores y matrices— y en TensorFlow esos tensores «fluyen» a través de un grafo de cómputo: una estructura en la que los nodos representan operaciones matemáticas y las aristas, los datos que circulan entre ellas. Este diseño permite distribuir el cálculo entre CPU, GPU y otros aceleradores sin reescribir el modelo.
La pieza que hace posible el aprendizaje es la diferenciación automática: TensorFlow calcula por sí mismo los gradientes necesarios para ajustar los parámetros del modelo mediante retropropagación. El desarrollador define la arquitectura y la función de pérdida; la biblioteca deriva las operaciones y actualiza los pesos durante el entrenamiento. Documentación: artículo de diseño de TensorFlow.
TensorFlow 2.x, Keras y el ecosistema
El salto decisivo llegó con TensorFlow 2.0, publicado en 2019. Esta versión integró Keras como API de alto nivel y adoptó la ejecución «eager» (inmediata) por defecto, de modo que las operaciones se ejecutan al escribirlas, como en Python corriente, en lugar de construir primero un grafo estático. El resultado fue un marco mucho más sencillo de aprender y depurar sin renunciar al rendimiento.
Alrededor del núcleo creció un ecosistema amplio: TensorFlow Lite para móviles y dispositivos embebidos, TensorFlow.js para entrenar e inferir en el navegador, y TensorBoard para visualizar métricas y grafos durante el entrenamiento. A ello se suma la aceleración por hardware en GPU y en las TPU, los chips que Google diseñó específicamente para este tipo de cálculo. Documentación: guías oficiales de TensorFlow.
Frente a PyTorch
El gran contrapeso de TensorFlow es PyTorch, desarrollado por Meta con un estilo imperativo y cercano a Python. El artículo de diseño de PyTorch explica ese modelo de ejecución; las guías de TensorFlow describen hoy eager execution, Keras y el despliegue en su ecosistema. La distancia ya no se reduce a «dinámico frente a estático», y esos documentos no demuestran una jerarquía universal de uso. Para elegir conviene probar la API, el despliegue, las extensiones y el hardware que exige el proyecto, no asumir que investigación y producción pertenecen por naturaleza a bandos distintos.
Piezas que usan este término
- TensorFlow es infraestructura: el modelo y los datos van aparte (2023-10-11)
- Escalar aprendizaje automático: cuatro cuellos de botella distintos (2023-05-09)
- Libros recomendados (I) (2023-01-12)
Este artículo se ha elaborado con inteligencia artificial bajo supervisión editorial humana.