DISCOVERY: Análisis de alternativas y conceptualización del framework

01/03/2023 –

En el marco de trabajo del proyecto DISCOVERY y dentro de las actividades del primer paquete de trabajo (WP01. Análisis y diseño del framework DISCOVERY) estamos realizando el análisis de alternativas y estado del arte, para empezar a conceptualizar el framework del proyecto. Estos trabajos lo está realizando CENIT junto con el grupo de investigación ES3 de la Universidad de Sevilla.

Apoyo Financiero

Este proyecto tiene el apoyo financiero de la Unión Europea a través de los fondos Next Generation EU en el marco de la convocatoria de ayudas 2021 destinadas a proyectos de investigación y desarrollo en inteligencia artificial y otras tecnologías digitales y su integración en las cadenas de valor (C005/21-ED).

Análisis de Alternativas

En el análisis de alternativas estamos recopilando todas las necesidades surgidas en etapas tempranas del proyecto DISCOVERY para la elaboración del framework, realizando de una forma estructurada el análisis de las diferentes necesidades tecnológicas y sus respectivas alternativas.

En primer lugar, se ha realizado un análisis de las herramientas de desarrollo necesarias y evaluando diversas opciones, se ha optado por usar Visual Studio Code para el desarrollo habitual programático, y Jupyter Notebook/JupyterLab para la parte de ciencia de datos.

Como framework base para la construcción y diseño de DISCOVERY, se decidió finalmente por la utilización de Django ya que, en este caso, se busca crear un proyecto con cierta envergadura.

Una parte importante de todo el proyecto son las herramientas de tratamiento y extracción de log de la operación del usuario (captura de UI Log ScreenActionLogger). Estos eventos capturados en logs por los loggers proporcionan una visión detallada de cómo las personas interactúan con los sistemas y aplicaciones en un entorno digital. Esto incluye cada acción realizada por el usuario, como los clics de ratón, las entradas de teclado. Estos registros actúan como una especie de «caja negra» que permite a los analistas y desarrolladores observar con precisión qué está sucediendo dentro de los procesos destinados a ser automatizados. De entre las opciones analizadas, se ha seleccionado la herramienta SmartRPA, por ser la que aporta mayor calidad que aborda las limitaciones de RPA actuales e implementa un logger de forma eficaz, lo cual suponer ser una solución bastante completa de la cual puede servir como punto de partida.

En cuanto a los sistemas de extracción de características, se ha decidido implementar OpenCV combinadas con modelos de clasificación CNN para una extracción más rápida, como SAM y modelos YOLO entrenados en conjunto de datos de elementos de interfaz de usuario para una extracción más precisa.

Uno de los retos del proyecto son la gran cantidad de datos recopilados y extraídos al monitorear los comportamientos de los usuarios, que pueden resultar inmanejables. Este problema se intensifica al considerar el contenido de los UI Logs, lo que típicamente genera un gran número de características proporcional a los elementos de la UI. Actualmente, las aproximaciones existentes utilizan todas las características visibles en la pantalla, complicando así el proceso de análisis ya que la presencia de información irrelevante o ruido puede hacer que se pierdan perspectivas significativas. Para abordar este reto se utilizarán en el proyecto DISCOVERY técnicas de eye-tracking. Tras la realización de un análisis de las herramientas disponibles, se decidió la utilización de la herramienta Webgazer.js, debido a su buen funcionamiento, a la disponibilidad de la calibración específica que conlleva, a la facilidad de integrarse con el ecosistema del proyecto DISCOVERY y su naturaleza Open Source.

Posteriormente, se realizó un análisis para encontrar los modelos de Inteligencia Artificial (IA) y Machine Learning (ML) para desvelar cuales son las condiciones que se toman en un proceso mediante modelos explicables/interpretables y técnicas de explicabilidad. Es importante combinar técnicas con modelos para una comprensión profunda y detallada de cómo funciona el modelo en sí, así como una explicación clara de las predicciones individuales. Los modelos árboles de decisión como los Gradient Boosting Trees (GBT) , junto con la técnica de explicabilidad SHAP, han sido los modelos de aprendizaje elegidos para las distintas aplicaciones en el proyecto DISCOVERY.

Finalmente, una vez estudiadas todas las opciones y alternativas de plataforma RPA, se ha decidido recurrir a la solución Robocorp.

Conceptualización del framework DISCOVERY

Se propone una arquitectura inicial para el framework DISCOVERY, que se estructura y desarrolla para cumplir con la función de explicar el porqué de las decisiones que se toman en procesos de trabajo a partir de los datos obtenidos en un UI log y capturas de pantalla asociados al UI log.

Los modelos de procesos descubiertos pueden contener puntos de decisión cuya comprensión podría ser complicada. Para solucionar esto, se incluye un paso para extraer información de las interfaces de usuario e incorporarla en el UI log. Algunos enfoques para el descubrimiento de modelos de procesos se benefician de esta información ampliada, y es por eso por lo que el paso de extracción de características se establece antes del paso de descubrimiento de procesos en el framework. Una vez que se descubre el modelo de proceso, el UI log extendido se utiliza como entrada para aprender el árbol de decisión (es decir, las reglas) detrás de cada punto de decisión. Finalmente, estos árboles de decisión se procesan para rastrear sus reglas hasta la información gráfica en las capturas de pantalla. Esto ayuda a dar sentido a los árboles de decisión.

Arquitectura Software

A nivel de arquitectura software, DISCOVERY se conformará como una aplicación web que utiliza el potencial de Python, sus librerías y el framework Django para el desarrollo backend y frontend; junto con NGINX para servir la aplicación web. 

La base de datos empleada será PostgreSQL, conocida por su robustez y capacidad para manejar grandes volúmenes de datos. La solución final se podrá desplegar «on-premise» utilizando un contenedor Docker, lo que facilitará la instalación, gestión y escalabilidad de la aplicación en diferentes entornos. 

Además, el framework DISCOVERY contará con un sistema de gestión de usuarios que permitirá la autenticación y autorización para acceder a las diferentes vistas de la aplicación, así como la obtención de datos específicos para cada usuario en la ejecución de diversos casos de estudio.



Resumen de privacidad
Cenit

Esta web utiliza cookies para que podamos ofrecerte la mejor experiencia de usuario posible. La información de las cookies se almacena en tu navegador y realiza funciones tales como reconocerte cuando vuelves a nuestra web o ayudar a nuestro equipo a comprender qué secciones de la web encuentras más interesantes y útiles.

Cookies estrictamente necesarias

Las cookies estrictamente necesarias tiene que activarse siempre para que podamos guardar tus preferencias de ajustes de cookies.