TensorFlow: la biblioteca de código abierto de Google para acelerar la adopción de la IA
TensorFlow es una biblioteca 'open source' para aprendizaje automático creada por Google, una de las más usadas a nivel mundial para ayudar a entrenar redes neuronales. Empresas como BBVA la emplean en el desarrollo de sus capacidades de IA y para ofrecer funcionalidades novedosas a sus clientes.
TensorFlow es una biblioteca de 'software' gratuita y de código abierto para el aprendizaje automático o 'machine learning' (ML), empleada en el entrenamiento de modelos de aprendizaje profundo ('deep learning'), un tipo más concreto del anterior. Esta biblioteca permite diseñar, entrenar y evaluar el rendimiento de redes neuronales, los modelos computacionales capaces de "pensar" como lo haría un humano para detectar patrones y extraer conclusiones en base a datos.
Fue desarrollada por Google Brain, el equipo de investigación en IA de aprendizaje profundo de la división Google AI, como un sistema propietario para uso interno de Google en el desarrollo de redes neuronales. En 2015, el gigante tecnológico lanzó TensorFlow como un 'software' de código abierto; y en 2019 hizo pública la versión TensorFlow 2.0, con mayor foco en la facilidad de uso. Desde entonces la compañía ha actualizado periódicamente la herramienta (a agosto de 2024, la versión más reciente es Tensor Flow 2.17).
¿Qué ofrece TensorFlow?
"TensorFlow permite crear modelos adaptados a diferentes entornos y casos de uso desde cero, además de la utilización de modelos preentrenados que pueden adaptarse fácilmente a necesidades específicas ('transfer learning')", explica David Muelas, científico de datos en BBVA AI Factory.
Por su naturaleza abierta, "TensorFlow cuenta con una amplia comunidad que contribuye con modelos, herramientas y soluciones, facilitando el acceso a recursos avanzados y actualizaciones constantes", añade Álvaro Ibraín, también científico de datos en BBVA AI Factory. Ofrece acceso a numerosas API y a bibliotecas de recursos como Keras, que permiten a los desarrolladores crear y entrenar modelos de aprendizaje automático de manera eficiente.
"Es muy flexible, así que se adapta muy bien a las necesidades particulares de las organizaciones o productos que se quieren desarrollar. Además, TensorFlow está ampliamente soportado y se puede integrar fácilmente con los elementos más habituales del ecosistema de desarrollo de soluciones de aprendizaje automático e inteligencia artificial. Por todo ello, es una biblioteca muy versátil para el desarrollo de soluciones para distintos tipos de problemas (por ejemplo, análisis predictivo, personalización, automatización, procesamiento de lenguaje natural, visión artificial, entre otros), mejorando la eficiencia y competitividad empresarial", concluye Muelas.
¿Cómo puede ayudar a las empresas?
La IA y el ML son poderosos aliados para mejorar las capacidades de analítica avanzada de datos, predicción de tendencias y automatización de tareas. Las herramientas como TensorFlow, que amplían las capacidades de las empresas para desarrollar modelos de aprendizaje automático, son por tanto un facilitador y acelerador de la adopción de la IA en los negocios.
Por ejemplo, TensorFlow permite entrenar modelos para el reconocimiento de imágenes. Entre los múltiples casos de éxito que recoge en su web, destacan algunos tempranos como el de Coca-Cola, que utilizó el reconocimiento de imágenes basado en redes neuronales convolucionales (CNN, por sus siglas en inglés) de TensorFlow para analizar las fotografías enviadas por los usuarios como prueba de compra para optar a premios.
Los modelos entrenados con TensorFlow también pueden analizar el lenguaje natural. Además de impulsar productos como los 'chatbots' o el análisis de sentimiento para mejorar la atención al cliente, compañías como la plataforma de videoconferencias InSpace han empleado esta funcionalidad para implementar filtros de contenido que detectan mensajes ofensivos en los comentarios de su chat.
TensorFlow también tiene prometedoras aplicaciones en el ámbito de la medicina: permite acompañar el diagnóstico temprano de enfermedades como la retinopatía diabética y ayuda a interpretar los resultados de análisis, radiografías y otras pruebas médicas.
Eso sí, a la hora de implementar esta herramienta en una compañía, "el uso de TensorFlow tiene una curva de aprendizaje inicial (aunque suavizada por las últimas actualizaciones añadidas por Google) que hace que, para sacar el máximo rendimiento de su uso, sea necesario un periodo de formación", recuerda Muelas, de BBVA AI Factory.
El caso de BBVA
BBVA AI Factory, la unidad de desarrollo y creación de nuevas capacidades de inteligencia artificial de BBVA, emplea TensorFlow como parte de su labor para poner la IA al servicio de una banca mejor; junto a otras bibliotecas como PyTorch o Mercury, una librería de código desarrollada de forma interna. "En BBVA AI Factory desarrollamos productos de datos que dan respuesta a distintas necesidades de negocio. Hemos incorporado TensorFlow para la implementación de varios modelos basados en redes neuronales artificiales", explica Ibraín.
"Sin duda, la potencia y versatilidad de TensorFlow es una de las razones principales por la que hemos utilizado esta biblioteca", destaca el 'data scientist'. "En BBVA AI Factory apostamos por la reutilización, ya que ayuda a reducir los tiempos y costes de desarrollo, así que las bibliotecas 'open source' juegan un papel muy relevante en nuestro trabajo. De hecho, en 2023 compartimos la librería Mercury con la comunidad de desarrolladores 'open source'".
En concreto, los 'data scientists' de BBVA AI Factory ya utilizan TensorFlow para desarrollar modelos predictivos que dan capacidades a los clientes de BBVA para contar con un mayor control sobre eventos que pueden afectar a su situación financiera. "Tenemos un modelo que proporciona estimaciones sobre la evolución futura del saldo en las cuentas de los clientes, dando además rangos de incertidumbre. Este modelo, basado en una red neuronal recurrente, se aplica para avisar a los clientes cuando se detecta que su saldo ha cambiado de forma diferente a lo esperado", indica Muelas. Esto hace posible, por ejemplo, la funcionalidad de la 'app' de BBVA que estima el saldo que estará disponible en la cuenta de un usuario a final de mes. BBVA también utiliza este tipo de modelos para predecir movimientos futuros. De esta forma, el banco puede avisar con anticipación a los usuarios de la posibilidad de incurrir en descubiertos en sus cuentas.
Otro producto útil en el que trabajan actualmente los científicos de datos de BBVA AI Factory con ayuda de TensorFlow es el modelo de categorización de agregados, que permite a los usuarios agrupar sus movimientos financieros para llevar un mejor control de estos. Así, los clientes de BBVA cuentan con una vista panorámica de todas sus finanzas a través de la 'app' (incluso de movimientos en cuentas de otras entidades bancarias). Esto les ayuda a entender con un solo golpe de vista sus ingresos y gastos; por ejemplo, en qué categoría —moda, ocio, alimentación…— han gastado más; conocer sus capacidades de ahorro o incluso obtener información sobre su huella de carbono.
"También hemos utilizado TensorFlow para el desarrollo de modelos de personalización y recomendación de contenidos", añade Muelas. "Al final, la flexibilidad que proporciona esta biblioteca al definir el objetivo del modelo (a través de la configuración de las funciones de error que se utilizan) hace que se pueda aplicar a numerosos casos de uso".
Así, las herramientas como TensorFlow son claves para el desarrollo de nuevas capacidades de IA basadas en el aprendizaje profundo, con múltiples funcionalidades para las empresas y los particulares. En el caso de la banca, puede ser un poderoso aliado para ayudar a los usuarios a conocer y mejorar su salud financiera, comprender de forma transversal sus finanzas y actuar de forma anticipada para prevenir riesgos.