¿Cómo empezar a utilizar TensorFlow?
1. ¿Qué es TensorFlow?
Es una biblioteca de aprendizaje profundo de código abierto de Google que puede derivar automáticamente funciones definidas en tensores.
Tensor se refiere a una matriz de N dimensiones, Flujo se refiere a cálculos basados en gráficos de flujo de datos y TensorFlow es un flujo tensor de un extremo del gráfico al otro.
Uno de sus aspectos más destacados es su soporte para computación distribuida en dispositivos heterogéneos, que pueden ejecutar automáticamente modelos en varias plataformas, incluidos teléfonos, con una sola CPU/GPU y compuestos por cientos o miles de tarjetas GPU. .
Al admitir algoritmos CNN, RNN y LSTM, actualmente es el modelo de red neuronal profunda más popular en los campos de imágenes y PNL.
2. ¿Por qué necesitas bibliotecas como TensorFlow?
El aprendizaje profundo generalmente significa construir redes neuronales a gran escala con muchas capas.
Además de la entrada X, la función toma una variedad de argumentos, incluidos valores escalares, vectores y las matrices más costosas y tensores de orden superior.
Antes de entrenar la red, es necesario definir una función de costos; las funciones de costos comunes incluyen varianza para problemas de regresión y entropía cruzada para clasificación.
La capacitación implica alimentar continuamente lotes de nuevas entradas a la red, derivar todos los parámetros y luego conectarlos a la función de costos para actualizar todo el modelo de red.
Hay dos problemas principales con este proceso: 1. Los números o tensores más grandes deben multiplicarse millones de veces, lo que encarece mucho el modelo completo. 2. La derivación manual lleva mucho tiempo.
Por lo tanto, la derivación automática de funciones y la computación distribuida de TensorFlow nos ahorran mucho tiempo de entrenamiento del modelo.
3. Ventajas de TensorFlow
En primer lugar, está basado en Python, que es rápido y muy legible.
En segundo lugar, funciona mejor en sistemas multi-GPU.
En tercer lugar, la compilación de código es más eficiente.
En cuarto lugar, la comunidad es muy rápida y activa.
En quinto lugar, la capacidad de generar visualizaciones que muestren la topología y el rendimiento de la red.
4. Cómo funciona TensorFlow
TensorFlow utiliza gráficos de flujo de datos para cálculos numéricos.
El diagrama de flujo de datos describe el proceso de cálculo numérico en un gráfico dirigido.
En un grafo dirigido, los nodos suelen representar operaciones matemáticas, mientras que las aristas representan algún tipo de conexión entre nodos, y estas conexiones se encargan de transmitir datos multidimensionales (tensores).
Los nodos se pueden asignar a múltiples dispositivos informáticos y pueden realizar operaciones de forma asincrónica o en paralelo. Dado que es un gráfico dirigido, el nodo actual solo puede realizar operaciones después de que se complete el estado de cálculo del nodo entrante anterior.