La Inteligencia Artificial (IA) permite automatizar tareas que hasta ahora se consideraban características de los humanos, como la visión, el aprendizaje o el habla. Es una disciplina que lleva décadas con nosotros pero que, en los últimos años, ha despuntado especialmente la capacidad de computación, la disponibilidad de datos y los nuevos algoritmos y herramientas. Pero, hay otro avance tecnológico que facilita la explotación de estos factores y lleva a la Inteligencia Artificial a otro nivel: el cloud (la nube).
Los servicios cloud comercializados a través de Amazon, Google o Microsoft, nos ofrecen, de una manera sencilla y flexible, una serie de opciones que van desde la creación de máquinas virtuales hasta el uso de productos como servicio, por ejemplo, las bases de datos. Fueron inicialmente concebidos para proveer infraestructura pero, poco a poco, han ido cubriendo otras necesidades como el almacenaje y procesado Big Data, Business Intelligence o, incluso, Internet de las Cosas. Esta evolución ha hecho que los proveedores también hayan incluido uno de los temas tecnológicos más candentes hoy en día: la IA.
El cloud ha devenido el escenario perfecto para la IA ya que, para el desarrollo de estas aplicaciones, no sólo es necesaria una importante capacidad de cálculo durante el aprendizaje, sino que también hay que facilitar su produccionalización o uso en producción. Gracias a la IA, se están consiguiendo hitos como controlar una casa con la voz (Google Home o Alexa), aprender a ganar al campeón del mundo del juego chino de estrategia Go o predecir la demanda de energía para una compañía eléctrica. El cloud ha sido un dinamizador determinante en la consecución de estos logros de la IA pero, su mayor contribución ha sido su democratización, haciéndola accesible no solo a los grandes sino a todo el mundo mediante servicios cada vez más variados y sencillos.
Los servicios cloud se pueden dividir en tres tipos:
- Servicios cognitivos: Como visión, procesado de lenguaje natural, reconocimiento de voz, etc. Se caracterizan por la facilidad de uso, normalmente accesible vía API REST.
- IA como servicio: Facilitan la creación de modelos de aprendizaje automático, ofreciendo la plataforma, el entrenamiento y la exposición del modelo como servicio de una manera sencilla y escalable.
- Infraestructura como servicio: Ofrecen infraestructura optimizada para la IA, como GPU (Graphics Processing Unit) o TPU (Tensor Processing Units) de forma que el usuario no tenga que poseer esta tecnología tan especializada y cara.
Cada uno tiene sus ventajas y desventajas, pero la principal variable sería la sencillez de uso versus la personalización, siendo los servicios cognitivos los más sencillos de usar pero menos personalizables y la infraestructura como servicio la más complicada pero la más personalizable.
Ventajas de los servicios de IA en el cloud
La experiencia de GFT nos dice que todos estos servicios son potencialmente útiles y que, incluso en ocasiones, la solución a ofrecer a nuestros clientes será una combinación de varios. Pero, ¿qué ventajas nos ofrecen los servicios de IA en cloud? Se podrían resumir en las siguientes:
- Flexibilidad: Permite utilizar solo los recursos que hacen falta y cuando hacen falta, de forma que no requerimos de una infraestructura especializada “en casa”.
- Potencia: Con los servicios especializados de infraestructura (GPUs, TPUs, etc.) se consigue entrenar modelos de forma mucho más eficiente y tener resultados mucho más rápido.
- Sencillez: La mayoría de servicios cloud están pensados pare requerir una mínima administración, ofreciendo APIs sencillas e interfaces intuitivas para acceder a ellas.
- Integración: Los proveedores cloud ofrecen muchos otros servicios útiles en proyectos de IA que son fácilmente integrables, como servicios de ingestión de datos, Internet de las Cosas, de procesado en tiempo real o de almacenamiento y analítica.
Recientemente, en GFT hemos realizado un proyecto 100% en cloud para detección de anomalías y mantenimiento predictivo de máquinas. Para este proyecto, se utilizó la plataforma de Google Cloud dado que se adaptaba mejor a los requerimientos del cliente, cubriendo todo el ciclo del proyecto. ¿Qué nos aportó el hacerlo en cloud? Facilitar el entrenamiento de modelos, escalabilidad para soportar el incremento de dispositivos, exposición del modelo de IA como servicio y la aplicación del mismo en tiempo real, según llegan los datos.
En definitiva, la IA está resolviendo cada vez más problemas y cada vez más complejos, permitiendo hacer servicios que hace unos años serían impensables. Tenemos la tecnología a nuestra disposición y el cloud nos proporciona muchas ventajas que hacen de la IA un producto más fácil de usar, más flexible y potente, democratizando su uso y permitiendo hacer aplicaciones cada vez más avanzadas. No sabemos qué nos deparará el futuro pero, lo que está claro es que la IA, con la ayuda del cloud, tendrá un papel destacado.