Aprendizaje automático en Windows y sin GPU, lo nuevo de Tensorflow

Publicado el

robot en ventana

Antes de adentrarnos en las actualizaciones y características de TensorFlow, es crucial entender qué es esta herramienta y cómo surgió. TensorFlow es una biblioteca de código abierto para aprendizaje automático desarrollada por el equipo de Google. Desde su lanzamiento en 2015, se ha convertido en una de las bibliotecas más populares y versátiles para una variedad de tareas en aprendizaje automático, procesamiento de lenguaje natural, y más.

TensorFlow 2.15 se presenta como una actualización bastante relevante en el aprendizaje automático. Con mejoras en rendimiento, funcionalidades y manejo de datos, esta versión promete ser un recurso invaluable para desarrolladores y científicos de datos.

Una de las actualizaciones más notables es la optimización de oneDNN para CPUs en plataformas Windows x64 y x86. Esto es especialmente relevante para aquellos que no cuentan con GPUs y dependen de CPUs para sus cálculos. La optimización se activa automáticamente en CPUs X86 y puede ser ajustada mediante una variable de entorno.

Imagina que estás ejecutando un modelo de aprendizaje profundo en una CPU X86. Antes, quizás tenías que esperar horas para obtener resultados. Con esta optimización, esos tiempos podrían reducirse significativamente.

TensorFlow 2.15 introduce nuevas capacidades en su sistema de funciones, conocido como tf.function. Se han añadido nuevos tipos como tf.types.experimental.TraceType, tf.types.experimental.FunctionType y tf.types.experimental.AtomicFunction. Supongamos que estás desarrollando una función personalizada en TensorFlow para un nuevo tipo de capa neuronal. Ahora podrás tener un control más detallado sobre los tipos de datos que acepta tu función, gracias a tf.types.experimental.TraceType.

El manejo de datos también ha recibido una mejora significativa. La opción warm_start se ha trasladado a tf.data.Options, lo que simplifica la gestión de pipelines de datos. Esto es útil si estás trabajando en un proyecto que requiere el procesamiento de grandes volúmenes de datos, la nueva estructura te permitirá hacerlo de manera más eficiente, ahorrando tanto tiempo como recursos.

Entre otros cambios, se incluye el TensorFlow Quantizer, que facilita la cuantización de modelos, y nuevas opciones para hacer que la salida del gradiente de ciertas funciones sea dispersa en lugar de densa.

TensorFlow Lite, la versión ligera de TensorFlow, también ha recibido actualizaciones importantes, como el soporte para broadcasting en ciertas operaciones.

Finalmente, Keras, la API de alto nivel para redes neuronales, ha incorporado nuevas operaciones y argumentos que facilitan el entrenamiento y almacenamiento de modelos.

Estas actualizaciones no solo mejoran la eficiencia y flexibilidad de TensorFlow, sino que también abren nuevas puertas para la innovación en el campo del aprendizaje automático. Es un paso más hacia un futuro donde la inteligencia artificial es más accesible y eficiente.

Más información en GitHub de TensorFlow.

Ampliemos algo de información para los que están comenzando:

¿Qué es TensorFlow?

TensorFlow es una biblioteca de programación que facilita el diseño, entrenamiento y despliegue de modelos de aprendizaje automático (ML). Aunque inicialmente se centró en tareas de aprendizaje profundo, su flexibilidad y extensibilidad le han permitido abarcar una amplia gama de algoritmos de ML. La biblioteca proporciona un conjunto completo de herramientas, librerías y recursos comunitarios que permiten a los investigadores crear modelos de ML sofisticados, y a los desarrolladores implementarlos fácilmente.

Si estás interesado en sumergirte en el mundo del aprendizaje automático, TensorFlow es una excelente puerta de entrada. Esta biblioteca de código abierto ofrece una amplia gama de herramientas y recursos que te permitirán experimentar con modelos de aprendizaje automático desde la comodidad de tu hogar.

Antes de instalar TensorFlow, asegúrate de tener instalado Python en tu sistema. TensorFlow es compatible con Python 3.5 o superior. También es recomendable tener un conocimiento básico de programación en Python y conceptos fundamentales de aprendizaje automático.

Orígenes de TensorFlow

TensorFlow nació en el equipo de Google Brain, un proyecto de investigación de inteligencia artificial de Google. Originalmente, Google desarrolló una herramienta interna llamada DistBelief para satisfacer sus necesidades de aprendizaje automático. Sin embargo, DistBelief tenía varias limitaciones, incluida la falta de flexibilidad y la dificultad para adaptarse a nuevas investigaciones. Para abordar estos problemas, Google Brain decidió crear una herramienta más flexible y robusta, que finalmente se convirtió en TensorFlow.

DistBelief era excelente para entrenar grandes modelos en clusters de servidores, pero no era tan bueno para experimentación rápida o adaptación a nuevas áreas de investigación en aprendizaje automático. TensorFlow fue diseñado para ser flexible y extensible, permitiendo a los investigadores probar nuevas ideas más rápidamente.

Espero que con esta información tengas suficiente para dar tus primeros pasos en este mundillo.

 

Comparte en: