Por Javier González, socio y director de IT de MBD. No sé si muchos de vosotros conocéis la famosa canción de los Buggles, la de Video Killed The Radio Star, que hablaba de cómo la popularización de los formatos con imagen afectó a la que hasta entonces era el medio de comunicación estrella en todos los hogares, la radio. Pues a mí este 2020, en medio de toda esta pandemia que vivimos, me ha recordado algo similar y es, que la Covid-19, nos ha mostrado algunas de las carencias del Machine Learning (ML) actual y podríamos decir que “Covid-19 Killed The Machine Learning Star”.
El ML actualmente se aplica prácticamente en todos los ámbitos de nuestras vidas, tanto en el personal como en el entorno empresarial. Por ejemplo, está presente en los correctores ortográficos de nuestros teléfonos que predicen la siguiente palabra que queremos escribir; en Netflix y Spotify para recomendarnos los contenidos que más nos gustan; en los bancos para detectar posibles operaciones de fraude con nuestras tarjetas de crédito; e incluso en las cadenas de supermercados para adaptar el stock a la demanda.
Para que todo esto funcione, se crean modelos que se entrenan con ingentes cantidades de datos; cuantos más datos y de mayor calidad, mejor funcionará nuestro modelo. Simplificando mucho, podemos decir que nuestros modelos aprenden de lo que pasó en el pasado, para intentar “predecir” el futuro: cuanto más sepamos del pasado, más probabilidades tenemos de que el resultado de nuestro modelo sea el correcto.
¿Por qué en la pandemia se agotaban los productos de los supermercados?
El problema que nos ha traído la pandemia es que algunos de estos modelos se están enfrentando a una situación desconocida de la noche a la mañana: lejos de ser un cambio de tendencia gradual que les hubiera permitido adaptarse, se han encontrado con un nuevo escenario que no tenían contemplado en los datos históricos de los que han aprendido y, por lo tanto, sus predicciones en algunos casos no han sido tan acertadas como lo eran antes de la pandemia.
Para explicar esto usemos un ejemplo que a todos nos resultará conocido: ¿por qué no había suficiente papel higiénico en los supermercados en los primeros días de la pandemia? ¿Por qué después se agotaba la levadura y la harina? Pues simplemente porque los modelos de ML que gestionan los stocks de los supermercados no fueron capaces de predecir esa sobredemanda. Estos modelos están entrenados con datos históricos relativos a oferta y demanda de productos pero, entre esos datos, no los había relativos a una situación de “pánico” como la que hemos vivido, es decir, a los modelos nada les indicaba que la demanda fuera a cambiar en el corto plazo.
En este contexto, los resultados que arrojaron estos modelos han tenido que ser supervisados por humanos, bien para corregir estos resultados, o bien para introducirles ajustes automáticos que, temporalmente, hagan que los modelos se adapten lo más posible a la situación que estamos viviendo.
Con todo esto, se han puesto de manifiesto algunos retos que los modelos de ML tienen que afrontar a corto/medio plazo:
La adaptabilidad de los modelos
¿Cómo podemos hacer que los modelos se adapten rápidamente a nuevos escenarios?
Los humanos tenemos la capacidad de, ante una situación totalmente desconocida para nosotros, “intuir” qué puede pasar en dicha situación. Esto es así gracias a que nuestro cerebro se basa en la información que tiene sobre experiencias que considera similares para generarnos estas “intuiciones”. Integrar esta capacidad en los modelos podría hacer que, como mínimo, “intuyeran” que algo está pasando y que tienen que adaptarse.
La tecnología actual ya nos permite, a través del Big Data, manejar con soltura grandísimos volúmenes de datos con información de todo tipo, fácilmente actualizable, rápidamente accesible y que además en muchos casos es pública. Para hacer que estos modelos sean más adaptables, deberíamos entrenarlos incluyendo datos que, a priori, no tienen nada que ver con el negocio para el que los vamos a usar.
Por ejemplo, (volviendo al ejemplo de la pandemia) imaginemos que, para dimensionar el número de pedidos online, los supermercados hubieran podido usar datos actualizados en tiempo real sobre la movilidad de las personas. Antes del confinamiento, al ir disminuyendo la movilidad de las personas por el miedo al contagio, los modelos podrían haber ido “preparándose” e ir ajustando sus resultados o al menos alertar de que un cambio brusco se estaba produciendo. Conseguir unos días de colchón para adaptarse mejor a la demanda puede suponer muchos millones de euros para las grandes cadenas de supermercados. A su vez, a medida que avanzaban los días podían basarse en datos de contagios, hospitalizados o fallecidos (datos que no tienen nada que ver con una cadena de supermercados) para “intuir” si la situación iba mejorando o empeorando. Todo esto sólo podría hacerse si las fuentes de datos además de ser fácilmente manejables, son de calidad y están permanentemente actualizadas, si no, no podrían usarse para tal fin.
Los tiempos de desarrollo de un proyecto de ML
¿Qué podemos hacer para que los modelos estén operativos en menos tiempo?
Actualmente, y siempre en el mejor de los casos, el tiempo comprendido desde que se comienza un proyecto para desarrollar un modelo de ML hasta que este está en producción lleva entre 2 y 4 meses de los cuales, la mayor parte del tiempo se lo lleva la “limpieza” de los datos con los que entrenaremos el modelo. Aparte de utilizar metodologías “Agile”, que pueden optimizar los tiempos de desarrollo de cualquier proyecto, las empresas u organizaciones deberían poner foco en la calidad de los datos que tienen almacenados. Cada vez es más importante que los datos sean de “calidad”, es decir, que sean homogéneos, precisos, completos, fiables y utilizables en cuanto sea necesario. Invirtiendo en políticas de “Calidad del dato” se obtendrán importantes ahorros tanto económicos como en tiempos de desarrollo a la hora de utilizar y analizar dichos datos.
Por último, decir que creo que los modelos cada vez van a estar más y más presentes en nuestro día a día y que, ni una pandemia ni nada que se me ocurra ahora mismo, va a acabar con ellos. Lo que sí ha hecho la pandemia es que problemas y limitaciones que ya eran conocidos, ahora cobren más importancia y se trabaje en buscarles una pronta solución para hacer que nuestros modelos sean mejores y puedan seguir ayudándonos a mejorar nuestras vidas.