Los datos nunca duermen: analítica de datos en tiempo real

Los datos nunca duermen: analítica de datos en tiempo real

12 marzo, 2020 Jesús López Lobo

Compártelo:

4,5M de videos de YouTube son vistos, 511200 usuarios envían tweets, 188M de emails son enviados, 23.1840 usuarios hacen una llamada de Skype, 5.140 fotos de Instagram se postean … ¡cada minuto! Esta es la realidad en la que hemos vivido en 2019.

¿Crees que una inteligencia artificial tradicional es capaz de gestionar este volumen de información? Evidentemente no, y este es el secreto: analítica de datos en tiempo real.

Cuestión de inmediatez y espacio

La IA tradicional tiene un modo muy concreto de proceder. Se basa en el acceso a grandes volúmenes de datos, y en disponer del tiempo que sea necesario para entrenarse y aprender. Da por hecho que toda la información va a estar disponible y es accesible en todo momento. Y esto puede ser cierto mientras que los costes de almacenaje de la información, y el tiempo o coste de procesamiento no exceda de unos valores que se puedan permitir en un escenario de aplicación concreto.

En un mundo en el que la mayoría de sus procesos y aplicaciones se nutren de información en tiempo real, y a los que se le exigen respuestas casi inmediatas, la información a manejar es de tal volumen, y se debe procesar a tal velocidad, que la IA tradicional no sirve.

La solución pasa por la analítica de datos en tiempo real, y por el desarrollo de algoritmos y arquitecturas que permitan que la IA pueda aprender de forma incremental cada vez que la información está disponible. Y sin necesidad de tenerla que almacenar para acceder en el futuro, porque ni va a ser necesario, ni va a ser posible almacenarla ni procesarla. No hay tiempo. No hay sitio. La IA tiene que dar una respuesta ya.

Youtube no puede decir a sus usuarios que paren de generar videos porque su algoritmo necesita 10 minutos para entrenarse con la nueva información. Twitter no puede mandar parar a sus twiteros para procesar y analizar el contenido de los tweets. Amazon no puede parar las compras porque necesita cinco minutos para que sus algoritmos de recomendación tengan que reentrenarse con los nuevos datos, y así ofrecer recomendaciones mejor adaptadas a los gustos. ¿Cómo lo hacen? Usan algoritmos y arquitecturas para procesar datos en tiempo real.

Los datos tienen la mala costumbre de cambiar

Como parte de esta particular forma de hacer analítica, uno de los desafíos más importantes que se presenta es el manejo del efecto denominado concept drift. Este efecto consiste en el cambio repentino y sin previo aviso que se puede producir en la distribución de los datos. Este cambio hace que los algoritmos entrenados y usados hasta el momento queden obsoletos, lo que nos obliga a detectar este cambio en tiempo real y re-entrenar de nuevo los modelos. De lo contrario, el sistema en cuestión, que se basa en las predicciones de estos modelos, perdería (por ejemplo) precisión en sus predicciones.

Pensemos por ejemplo en una red de sensores Wifi-desplegados para monitorizar el estado de un componente o proceso de una planta de producción. El envejecimiento, calentamiento, o simplemente el mal funcionamiento de uno o varios de estos sensores pueden provocar un cambio en la distribución de los datos.  El sistema de monitorización que se alimenta de estos datos podría estar encargado de predecir el momento de fractura de un componente o de establecer el mejor momento para su recambio, y así no interrumpir el proceso productivo. Este sistema de monitorización estaría haciendo una predicción no adecuada basada en modelos generados cuando los datos eran correctos, pero sin considerar el cambio actual en la red de sensores.

Situaciones como estas son las que se pretende evitar con el manejo del concept drift. Su impacto puede ser tan grande, que no tenerlo en cuenta no es una opción. Muchas empresas ven mermadas de forma repentina sus capacidades analíticas en tiempo real y no saben por qué. Este es el principal causante.

Otros casos de uso

Muchas veces, ante una necesidad de gestión y análisis de grandes volúmenes de datos, se piensa en una complicada y costosa arquitectura, que a menudo está sobre dimensionada “por si acaso”. Cuando la realidad dicta que en algunas de estas ocasiones la solución que mejor se adapta pasa por una arquitectura menos pesada y que incluya un tratamiento de los datos en tiempo real.

La analítica de datos en tiempo real no es una necesidad en exclusiva de YouTube, Twitter, Skype, Instagram, Amazon, … grandes empresas. Es una necesidad más cercana de lo que pensamos, y de la que algunas empresas aun no son conscientes de necesitarla.

  • Predicción de la demanda: eléctrica, de comida, de cualquier bien de consumo, etc. Analizar esta demanda en tiempo real y poder predecirla en el corto plazo es una necesidad de muchas empresas. Además, sabiendo que las preferencias y gustos de los usuarios van cambiando y evolucionando (bien de forma repentina o gradual), el tratamiento del cambio (concept drift) resulta primordial.
  • Social media: probablemente uno de los mayores productores de datos en tiempo real que existen. Y seguramente uno de los mayores interesados en lidiar con el concept drift.
  • Gemelo digital: muy de moda últimamente. El desarrollo de gemelos digitales está adquiriendo una relevancia especial en los últimos años por las ventajas que aporta a la hora de simular procesos, realizar testeos, capacitar personal, conocer en tiempo real el comportamiento del sistema simulado, etc. Una de las partes más relevantes de un gemelo digital es su capacidad para tratar y analizar datos en tiempo real.
  • Marketing y comercio digital: analizar las ventas y transacciones en tiempo real es capital para estas empresas, por supuesto es necesaria para detectar el fraude. Y conocer los cambios de gustos, preferencias, necesidades, etc. oro en estado puro.
  • Ciberseguridad: otro término de moda, pero no por ello menos relevante. La detección de amenazas, robos, suplantaciones, intrusos, etc. es el día a día de esta tecnología. Hacerlo en tiempo real … obligatorio. Ser capaces de detectar anomalías o concept drift … cuestión de superviviencia en un entorno con alta competencia.
  • Epidemias y desastres: la analítica de datos en tiempo real ofrece un plus en cuanto a control y prevención en estos casos.
  • Salud: el tratamiento de varias fuentes de datos en tiempo real son una clara línea de investigación en el tratamiento y seguimiento de pacientes.
  • Otros: monitorización y predicción de tráfico, optimización de procesos, IoT, educación online, crimen, finanzas, banca, sistemas de recomendación, industria del entretenimiento, redes móviles, …etc.

En resumen. Si no tratas adecuadamente lo que está pasando, no vas a saber con garantías lo que ha pasado y lo que va a pasar.

“Si parpadeas te lo vas a perder.”

Sobre Jesús López Lobo

Doctor en Inteligencia Artificial por la UPV/EHU: Máster de Inteligencia Artificial Avanzada de la UNED, e Ingeniero en Informática por la Universidad de Deusto. Desde que dio sus primeros pasos como desarrollador de software en 2003, realizó labores de ingeniería del software y gestión de proyectos hasta 2015. En 2012 inició su aprendizaje en Inteligencia Artificial, y hasta el momento no ha parado de aprender y fascinarse por esta especialidad. Comenzó realizando cursos online por su cuenta; se lanzó a estudiar un Máster de Inteligencia Artificial, hasta que finalmente obtuvo su doctorado cum laude con mención internacional. En Nueva Zelanda, durante seis meses estuvo aprendiendo redes neuronales por impulsos.

Su día a día como investigador en el equipo de Inteligencia Artificial de TECNALIA tiene una doble vertiente. Por un lado, participa en la concepción y desarrollo de proyectos de I+D nacionales e internacionales. Por otro, es un activo investigador especializado en algoritmos de aprendizaje en tiempo real, publicando muchos de ellos en revistas y conferencias de alto impacto, y llevando a cabo tareas de divulgación científica.