Interesante el ecosistema de TensorFlow 😏

Y claro, me uniré a la comunidad de TensorFlow Colombia :)
Elegir el framework adecuado para trabajar con deep learning puede marcar la diferencia entre un proyecto exitoso y uno lleno de fricciones. TensorFlow 2 se posiciona como una de las herramientas más robustas, con la mayor comunidad de soporte a nivel mundial y una curva de aprendizaje mucho más amigable que su versión anterior. A continuación se desglosan los puntos esenciales para entender por qué es una elección sólida y cómo se integra en un ecosistema completo.
¿Por qué TensorFlow 2 entre tantos frameworks de deep learning?
El panorama de frameworks para deep learning es amplio: Caffe, PyTorch, Gluon, CNTK de Microsoft, entre otros. Cada uno ofrece ventajas particulares, pero TensorFlow 2 destaca por tres razones principales [0:22]:
Esa combinación de poder y accesibilidad lo convierte en la opción preferida tanto para quienes inician como para equipos que necesitan llevar modelos a producción.
¿Qué significa el nombre TensorFlow?
El nombre revela su lógica interna. Las redes neuronales operan mediante nodos, aristas y grafos [1:52]. Cada nodo representa una operación matemática —desde una regresión hasta una función de activación—. Los datos recorren esas operaciones en forma de tensores, estructuras multidimensionales que transportan la información capa a capa. El flujo (flow) es ese recorrido a través del modelo. Así, tensor + flow = TensorFlow: el flujo de tensores a lo largo de una red neuronal [2:18].
¿Qué cambió entre TensorFlow 1 y TensorFlow 2?
En TensorFlow 1 era necesario declarar variables globales, crear sesiones y limpiarlas cada vez que se generaba un nuevo modelo, lo que hacía el proceso tedioso y propenso a errores [1:15]. TensorFlow 2 introdujo el concepto de eager execution, que permite ejecutar operaciones de forma inmediata sin necesidad de construir grafos estáticos primero [1:35]. Esto hizo que el código fuera mucho más legible y directo.
Para proyectos complejos, TensorFlow 2 no sacrifica potencia: ofrece la API funcional, que permite diseñar arquitecturas de redes neuronales avanzadas con múltiples entradas, salidas y ramificaciones [1:45].
¿Qué papel juega Keras dentro de TensorFlow?
Keras es un framework de alto nivel creado por François Chollet en 2015 mientras trabajaba en Google [3:25]. Fue escrito en Python y su propósito es ocultar la complejidad matemática detrás de las operaciones con tensores, multiplicaciones de matrices y funciones de activación, permitiendo construir modelos con pocas líneas.
Un dato relevante: aunque Keras puede funcionar con otros frameworks, anunció que TensorFlow sería su aliado principal y su fuente de documentación oficial [3:55]. Esto garantiza que las actualizaciones lleguen de forma integrada, como si fueran un único proyecto.
¿Cómo se extiende el ecosistema de TensorFlow más allá del entrenamiento?
TensorFlow no se limita a entrenar modelos. Su ecosistema permite llevarlos a múltiples entornos [4:22]:
Esta versatilidad significa que un modelo entrenado en Python puede terminar funcionando en un celular, un servidor web o un microcontrolador sin cambiar de ecosistema.
Si ya trabajas con otro framework o estás comenzando en deep learning, vale la pena explorar la documentación oficial y unirte a comunidades como TensorFlow Colombia, activa para toda Latinoamérica. ¿Con qué framework has trabajado y qué experiencia has tenido? Comparte tu opinión en los comentarios.
Elegir el framework adecuado para trabajar con deep learning puede marcar la diferencia entre un proyecto exitoso y uno lleno de fricciones. TensorFlow 2 se posiciona como una de las herramientas más robustas, con la mayor comunidad de soporte a nivel mundial y una curva de aprendizaje mucho más amigable que su versión anterior. A continuación se desglosan los puntos esenciales para entender por qué es una elección sólida y cómo se integra en un ecosistema completo.
El panorama de frameworks para deep learning es amplio: Caffe, PyTorch, Gluon, CNTK de Microsoft, entre otros. Cada uno ofrece ventajas particulares, pero TensorFlow 2 destaca por tres razones principales [0:22]:
Esa combinación de poder y accesibilidad lo convierte en la opción preferida tanto para quienes inician como para equipos que necesitan llevar modelos a producción.
El nombre revela su lógica interna. Las redes neuronales operan mediante nodos, aristas y grafos [1:52]. Cada nodo representa una operación matemática —desde una regresión hasta una función de activación—. Los datos recorren esas operaciones en forma de tensores, estructuras multidimensionales que transportan la información capa a capa. El flujo (flow) es ese recorrido a través del modelo. Así, tensor + flow = TensorFlow: el flujo de tensores a lo largo de una red neuronal [2:18].
En TensorFlow 1 era necesario declarar variables globales, crear sesiones y limpiarlas cada vez que se generaba un nuevo modelo, lo que hacía el proceso tedioso y propenso a errores [1:15]. TensorFlow 2 introdujo el concepto de eager execution, que permite ejecutar operaciones de forma inmediata sin necesidad de construir grafos estáticos primero [1:35]. Esto hizo que el código fuera mucho más legible y directo.
Para proyectos complejos, TensorFlow 2 no sacrifica potencia: ofrece la API funcional, que permite diseñar arquitecturas de redes neuronales avanzadas con múltiples entradas, salidas y ramificaciones [1:45].
Keras es un framework de alto nivel creado por François Chollet en 2015 mientras trabajaba en Google [3:25]. Fue escrito en Python y su propósito es ocultar la complejidad matemática detrás de las operaciones con tensores, multiplicaciones de matrices y funciones de activación, permitiendo construir modelos con pocas líneas.
Un dato relevante: aunque Keras puede funcionar con otros frameworks, anunció que TensorFlow sería su aliado principal y su fuente de documentación oficial [3:55]. Esto garantiza que las actualizaciones lleguen de forma integrada, como si fueran un único proyecto.
TensorFlow no se limita a entrenar modelos. Su ecosistema permite llevarlos a múltiples entornos [4:22]:
Esta versatilidad significa que un modelo entrenado en Python puede terminar funcionando en un celular, un servidor web o un microcontrolador sin cambiar de ecosistema.
Si ya trabajas con otro framework o estás comenzando en deep learning, vale la pena explorar la documentación oficial y unirte a comunidades como TensorFlow Colombia, activa para toda Latinoamérica. ¿Con qué framework has trabajado y qué experiencia has tenido? Comparte tu opinión en los comentarios.
Interesante el ecosistema de TensorFlow 😏

Y claro, me uniré a la comunidad de TensorFlow Colombia :)
++RESUMEN DE LA CLASE++
Existen 5 principales frameworks (o librerías) de deep learning:
1. Tensorflow // El que se usará en el curso
2. Caffe
3. Pytorch
4. Microsoft CNTK
5. Gluon
Puedes programar en 3 lenguajes:
Python y C++ con Tensorflow JavaScript con Tensorflow.js
¿Cómo funciona la lógica de Tensorflow?
Por medio del flujo de las redes neuronales
// Recordemos que las redes tienen:
0 => "nodos de entrada (donde entra la información) y donde se realizan operaciones matemáticas",
1 => "Capas intermedias donde los datos de entrada se empienza a transformar y a realizar operaciones matemáticas también que no vemos",
2 => "nodo de salida donde obtenemos el resultado esperado, bien sea la predicción de un número o el número exacto que esperamos aprenda a retornar la IA"
Estos elemento se grafican en un modelo llamado GRAFO con dos elementos (nodos y aristas)

{
nodo: "Cada uno de los puntos por donde fluyen los datos de entrada que se procesan",
arista: "Son las flechas que indican el flujo de dirección de un nodo",
grafos: "Se le llama al conjunto de nodos y aristas",
}
Los datos que fluyen a través del grafo se representan en tensores Tensor: Estructuras similares a los vectores o matrices
++Las diferencias entre Tensorflow I y Tensorflow II son:++
- Que el grafo (el modelo) se tenía que programar y definirse
- Se generaba muchas líneas de código dificil de entender
- Por lo anterior un ex-empleado (Francois Chollet) de Google en 2015 creó Keras, una sublibrería de Tensorflow donde puedes ahorrarte largas líneas de código para crear grafos (modelos)
Ecosistema de Tensorflow
- Google Cloud
- Arduino
- Google Machine Learning API
- Flask
- Tensorflow Extended
- Tensorflow Lite
- Tensorflow JS
- Y más
Muy recomendada la comunidad de TensorFlow Colombia. 10/10
TensorFlow es una biblioteca de software de código abierto que se utiliza para desarrollar y entrenar modelos de aprendizaje automático y redes neuronales. Fue desarrollado por Google Brain Team y es una de las herramientas más populares para el aprendizaje automático en la actualidad.
Las ventajas de TensorFlow frente a otras bibliotecas de aprendizaje automático son las siguientes:
Flexibilidad: TensorFlow es altamente flexible y se puede utilizar para crear una amplia variedad de modelos de aprendizaje automático, desde redes neuronales convolucionales hasta modelos de procesamiento de lenguaje natural.
Escalabilidad: TensorFlow se puede utilizar para desarrollar modelos en una amplia gama de tamaños, desde pequeños hasta enormes, lo que lo hace ideal para proyectos de cualquier escala.
Portabilidad: TensorFlow es una biblioteca de software de código abierto, lo que significa que se puede utilizar en cualquier plataforma o sistema operativo, lo que lo hace muy portátil.
Comunidad: TensorFlow tiene una gran comunidad de usuarios y desarrolladores que comparten conocimientos y contribuyen con nuevos proyectos y características a la biblioteca.
Integración: TensorFlow se integra fácilmente con otras bibliotecas de software de aprendizaje automático, como Keras y scikit-learn, lo que lo hace más fácil de usar para el desarrollo de modelos.
En Noviembre de 2026... el curso es de 2021... tal vez hablar de Tensor Flow 1 no tiene mucho sentido...
¿Por qué Platzi no actualiza el contenido?
esto funciona mejor con opencode? o openclaw? o ollama? o debe de ser mediante terminal?
TensorFlow 2 pasó de exigir variables globales y sesiones a armar un modelo con la API secuencial en pocas líneas, y esa menor fricción pesa cuando el equipo es pequeño. Un caso típico en una entidad pública con poco personal técnico: elegir el framework con más comunidad importa tanto como su rendimiento, porque las dudas se resuelven más rápido.
Hola! 🖐 Saben si existe Comunidad de TensorFlow en Argentina? Algun enlace o contacto que puedan compartir?
Si entreno un modelo con tensorflow en C++ en vez de Python, el modelo va a tener un rendimiento mejor?
**TensorFlow 2.0** es una versión renovada de la biblioteca TensorFlow, diseñada para simplificar el desarrollo y la implementación de modelos de aprendizaje automático. Fue lanzado con el objetivo de ser más intuitivo, accesible y fácil de usar. TensorFlow 2.0 se basa en la integración profunda con **Keras**, una API de alto nivel para construir y entrenar modelos, y enfatiza el uso del modo de ejecución **Eager** (evaluación inmediata) para un desarrollo más interactivo y depuración más rápida.
Aquí te doy una introducción a los conceptos clave, los beneficios, y un ejemplo básico de uso de TensorFlow 2.0.
### Principales Características de TensorFlow 2.0
1. **API Keras Integrada**: TensorFlow 2.0 adopta Keras como su API de alto nivel, lo que facilita la creación de modelos de redes neuronales con una sintaxis más limpia y organizada. Esto permite definir modelos de forma secuencial o funcional de manera sencilla.
2. **Eager Execution (Ejecución Ansiosa)**: A diferencia de TensorFlow 1.x, que requería la construcción de gráficos estáticos, TensorFlow 2.0 permite la ejecución inmediata de operaciones. Esto simplifica la depuración, ya que puedes ejecutar y ver los resultados de cada operación en tiempo real.
3. **Autodiferenciación con tf.GradientTape**: TensorFlow 2.0 permite calcular gradientes de manera más intuitiva con tf.GradientTape, un entorno para la diferenciación automática útil para entrenar modelos y calcular derivadas complejas.
4. **Compatibilidad Mejorada con tf.compat**: Aunque hay muchos cambios en TensorFlow 2.0, aún puedes usar código de TensorFlow 1.x gracias al módulo tf.compat, que asegura una transición más sencilla para desarrolladores que migran sus modelos de versiones anteriores.
5. **Modelos Distribuidos y Escalabilidad**: TensorFlow 2.0 facilita el entrenamiento distribuido y la implementación en la nube, permitiendo escalar desde una GPU o CPU a múltiples dispositivos y servidores.
### Ejemplo Práctico con TensorFlow 2.0
A continuación, te muestro cómo construir y entrenar un modelo de red neuronal básico utilizando TensorFlow 2.0 en el conjunto de datos MNIST.
#### Paso 1: Instalación de TensorFlow 2.0
Para asegurarte de que estás utilizando TensorFlow 2.0 o superior, puedes instalarlo con el siguiente comando:
pip install tensorflow
#### Paso 2: Importar TensorFlow y Cargar los Datos
TensorFlow 2.0 incluye muchos conjuntos de datos populares en su API tf.keras.datasets, lo que facilita el acceso a ellos sin tener que descargarlos manualmente.
import tensorflow as tf
\# Cargar el conjunto de datos MNIST (dígitos escritos a mano)
(x\_train, y\_train), (x\_test, y\_test) = tf.keras.datasets.mnist.load\_data()
\# Normalizar los datos de entrada
x\_train, x\_test = x\_train / 255.0, x\_test / 255.0
#### Paso 3: Definir el Modelo
En este caso, utilizaremos la **API secuencial** de Keras para construir una red neuronal densa con capas Dense.
model = tf.keras.Sequential(\[
  tf.keras.layers.Flatten(input\_shape=(28, 28)), # Aplanar la imagen 28x28 en un vector de 784 elementos
  tf.keras.layers.Dense(128, activation='relu'), # Capa oculta con 128 neuronas
  tf.keras.layers.Dense(10, activation='softmax') # Capa de salida con 10 neuronas (una por cada dígito)
])
#### Paso 4: Compilar el Modelo
Al compilar, se especifican el optimizador, la función de pérdida y las métricas de evaluación.
model.compile(
  optimizer='adam',
  loss='sparse\_categorical\_crossentropy',
  metrics=\['accuracy']
)
#### Paso 5: Entrenar el Modelo
Entrenamos el modelo en el conjunto de entrenamiento utilizando el método fit.
model.fit(x\_train, y\_train, epochs=5, validation\_split=0.2)
#### Paso 6: Evaluar el Modelo
Finalmente, evaluamos el rendimiento del modelo en el conjunto de prueba.
test\_loss, test\_accuracy = model.evaluate(x\_test, y\_test)
print(f"Precisión en el conjunto de prueba: {test\_accuracy}")
### Explicación del Ejemplo
- **Capa Flatten**: Convierte la imagen 2D en un vector 1D para que pueda ser procesada por capas densas.
- **Capas Dense**: Estas capas son completamente conectadas, donde cada neurona se conecta con todas las neuronas de la capa anterior.
- **Función de Activación relu**: Agrega no linealidad al modelo, lo que permite aprender patrones complejos.
- **Función de Activación softmax**: En la capa de salida, produce una distribución de probabilidad sobre las clases posibles (0-9 para los dígitos).
### Visualización de los Resultados del Entrenamiento
TensorFlow 2.0 facilita la visualización de métricas como precisión y pérdida durante el entrenamiento. Aquí te muestro cómo hacerlo con matplotlib.
import matplotlib.pyplot as plt
\# Graficar precisión
plt.plot(history.history\['accuracy'], label='Precisión en entrenamiento')
plt.plot(history.history\['val\_accuracy'], label='Precisión en validación')
plt.xlabel('Épocas')
plt.ylabel('Precisión')
plt.legend()
plt.show()
\# Graficar pérdida
plt.plot(history.history\['loss'], label='Pérdida en entrenamiento')
plt.plot(history.history\['val\_loss'], label='Pérdida en validación')
plt.xlabel('Épocas')
plt.ylabel('Pérdida')
plt.legend()
plt.show()
### Beneficios de TensorFlow 2.0
1. **Desarrollo más Rápido**: La ejecución ansiosa facilita la prueba de ideas rápidamente.
2. **Facilidad para Nuevos Usuarios**: La API de Keras en TensorFlow 2.0 es muy intuitiva y fácil de aprender.
3. **Escalabilidad**: TensorFlow 2.0 permite escalar el entrenamiento en múltiples dispositivos y la implementación en la nube.
4. **Versatilidad**: Soporta tanto investigación como producción, siendo una biblioteca completa para construir, entrenar y desplegar modelos.
### Migración de TensorFlow 1.x a 2.0
TensorFlow 2.0 introdujo grandes cambios, pero incluye el módulo tf.compat.v1, que permite ejecutar código escrito en TensorFlow 1.x en la nueva versión. Sin embargo, es recomendable actualizar el código a TensorFlow 2.0 para aprovechar las mejoras.
import tensorflow.compat.v1 as tf
tf.disable\_v2\_behavior()
Esto desactiva las funciones de TensorFlow 2.0, permitiendo ejecutar código de la versión 1.x en la versión 2.x.
### Resumen
TensorFlow 2.0 marca una evolución significativa en la biblioteca, haciéndola más accesible y amigable. Con su ejecución ansiosa, API integrada de Keras y mejor compatibilidad para la producción, TensorFlow 2.0 es una herramienta poderosa tanto para principiantes como para expertos en aprendizaje automático.
Este ejemplo y flujo te ayudarán a empezar a construir modelos de redes neuronales en TensorFlow 2.0. A medida que avances, puedes explorar temas más avanzados como redes convolucionales, redes recurrentes y aprendizaje profundo en TensorFlow.