Actualidad

Tecnología

¿Qué es TensorFlow?

Sería un desafío hoy en día encontrar un ingeniero de aprendizaje automático que no haya escuchado nada sobre TensorFlow

¿Qué es TensorFlow?
¿Qué es TensorFlow?larazon

Sería un desafío hoy en día encontrar un ingeniero de aprendizaje automático que no haya escuchado nada sobre TensorFlow. Inicialmente creado por el equipo de Google Brain para algunos propósitos internos, como el filtrado de spam en Gmail, fue abierto en 2015 y se convirtió en el marco de aprendizaje profundo más popular.

Tensorflow se usa a menudo para resolver problemas de aprendizaje profundo y para entrenar y evaluar procesos hasta la implementación del modelo. Además de los propósitos de aprendizaje automático, TensorFlow también se puede usar para construir simulaciones, basadas en ecuaciones derivadas parciales. Es por eso que se considera una herramienta de uso múltiple para los ingenieros de aprendizaje automático.

Para aumentar la productividad, el backend de TensorFlow fue escrito en el lenguaje C++, que se ejecuta increíblemente rápido. Sin embargo, la API está disponible en C++ y en Python, el lenguaje más utilizado para el aprendizaje automático, y también en otros lenguajes como Java, Go, Haskell, JavaScript, Swift y más.

El gran número de seguidores de TensorFlow y en continuo crecimiento ha contribuido a la creación de nuevas interfaces de Tensorflow para lenguajes de programación que incluyen Julia, C#, Haskell y Ruby. TensorFlow también se ha adaptado para ejecutarse en diferentes plataformas; Además de Linux, macOS y Windows, puede usar los modelos Tensorflow en iOS, Android y Raspberry Pi.

El mayor beneficio de TensorFlow es que permite el uso de API de diferentes niveles para alcanzar el grado de abstracción necesario. Por ejemplo, crear nuevos modelos con la API de estimadores de alto nivel, que es útil para las funciones de entrenamiento, predicción y despliegue. Sin embargo, la API de bajo nivel ofrece más libertad para los experimentos con la arquitectura de modelo o los hiperparámetros.

TensorFlow realiza operaciones matemáticas en grandes matrices multidimensionales de números, que pueden generalizarse como tensores. Por ejemplo, el tensor de forma 0 es un número, mientras que el tensor de forma 1 es un vector y el tensor de forma 2 es una matriz, y así sucesivamente.

Para comprender mejor cómo funciona TensorFlow, imagine un gráfico dirigido con tensores en sus bordes y nodos representados como operaciones matemáticas entre tensores. Los cálculos en este gráfico se ejecutan dentro de las sesiones. Dicha abstracción se deriva del concepto de programación de bajo nivel denominado "evaluación perezosa"donde los datos y las operaciones se inician y luego se calculan a través de la sesión. Este enfoque permite utilizar CPU junto con GPU, así como múltiples GPU para cálculos paralelos, lo que hace que todos los procesos, especialmente la capacitación, sean significativamente más rápidos.