En la época actual, en un mundo hiperconectado y basado en las tecnologías de la información, cada vez son más comunes los desarrollos de inteligencia artificial (AI) que tienen que ver con el aprendizaje automático de modelos entrenados para resolver problemas en los que subyacen tareas de predicción (clasificación, regresión o detección, por ejemplo) aprovechando la cantidad creciente de datos que se generan cada instante. A menudo, estos desarrollos son fruto tanto de un complejo diseño conceptual como de una cantidad importante de pruebas con diferentes conjuntos de datos de entrenamiento, preprocesado de los datos y parámetros de entrenamiento —llamados hiperparámetros— gracias a los cuáles se materializan diferentes modelos. Luego, una serie de métricas de acierto permiten estimar la calidad de funcionamiento de los modelos y, por tanto, del sistema de predicción. Finalmente, una vez se ha validado uno o varios modelos, estos se ponen en producción o inferencia y pueden resultar útiles para generar predicciones sobre datos nuevos, nunca vistos antes por el sistema.
Figura 1: Estructura básica del pipeline de aprendizaje automático (recuperada de https://valohai.com/machine-learning-pipeline/)
Todo este proceso que se acaba de describir se conoce como pipeline de aprendizaje automático y permite automatizar el flujo de datos que genera modelos para resolver tareas concretas del mundo real a partir de un conjunto de datos de entrada tomados o medidos de la realidad. En la actualidad, existen multitud de herramientas que facilitan estos desarrollos: algunas librerías que nos pueden sonar son Jupyter, Pandas, Scikit-Learn, TensorFlow, Keras o PyTorch, por ejemplo. Si bien las opciones son enormes, lo cierto es que a menudo se sigue confiando en soluciones ad-hoc en cuanto a preprocesado, entrenamiento y validación de los modelos, de manera que estos entrenamientos resultan difíciles de registrar, replicar o recuperar. Debido a ello, la posibilidad de control y reutilización de conjuntos de datos, hiperparámetros, código de entrenamiento, modelos y métricas de evaluación suele recaer en el buen hacer del científico de datos y, por ello, convendría disponer de herramientas que permitan llevar a cabo un control de versiones integral y sistematizado de los datos y de la configuración de cada experimento o escenario [1].
En este contexto, el proyecto AITANA-MOVEC tiene como objetivo desarrollar un conjunto de herramientas y librerías que permitirán la gestión y el control de versiones de experimentos de inteligencia artificial bajo la premisa de facilidad y flexibilidad de uso. En particular, la herramienta se integrará en la solución AITANA existente y permitirá el versionado de modelos y experimentos de IA guardando iterativamente las diferentes versiones y modificaciones realizadas, así como los resultados obtenidos en cada modelo e iteración. Esta forma de gestionar las versiones permitirá a los desarrolladores recuperar, examinar, modificar y poner en producción diferentes versiones de los modelos y experimentos lanzados, así como poder visualizar las métricas asociadas para poder comparar su desempeño.
Figura 2: La trazabilidad y la explicabilidad de la IA son claves para su adopción (recuperada de https://www.digitales.es/blog-post/la-explicabilidad-clave-para-la-inteligencia-artificial/)
Todo el desarrollo va encaminado a garantizar la reproducibilidad y la repetibilidad de los experimentos versionados, con lo que se potenciará la capacidad investigadora y productiva en inteligencia artificial, y se allanará el camino para su uso generalizado dada la importancia que toman la trazabilidad y la explicabilidad de los algoritmos para su adopción en tareas automatizadas sin supervisión humana [2] —pensemos en diagnóstico de enfermedades, concesión de créditos o conducción autónoma, por ejemplo—, en las que existe el riesgo de que la responsabilidad de una decisión errónea se pueda llegar a diluir.
Referencias
[1] Anjos, A. [André], Günther, M. [Manuel], de Freitas Pereira, T. [Tiago], Korshunov, P. [Pavel], Mohammadi, A. [Amir] y Marcel, S. [Sébastien]. (2017). Continuously reproducing toolchains in pattern recognition and machine learning experiments. OpenReview.net. https://openreview.net/pdf?id=BJDDItGX-
[2] Adadi, A. [Amina] y Berrada, M. [Mohammed]. (2018). Peeking inside the black-box: a survey on explainable artificial intelligence (XAI). IEEE access, 6, 52138-52160. https://doi.org/10.1109/ACCESS.2018.2870052