Elaborado por Materia para OpenMind Recomendado por Materia
6
Inicio Sistemas de IA explicables: comprender las decisiones de las máquinas
11 octubre 2017

Sistemas de IA explicables: comprender las decisiones de las máquinas

Innovación | Inteligencia artificial
Tiempo estimado de lectura Tiempo 6 de lectura

Introducción

La Agencia de proyectos de investigación avanzada de defensa (DARPA por sus siglas en inglés) es una división del Departamento de Defensa de Estados Unidos que investiga nuevas tecnologías. Desde hace algún tiempo viene considerando que la generación actual de tecnologías de Inteligencia Artificial (IA) será importante en el futuro. Ha estado a la vanguardia de la investigación de IA en reconocimiento de imágenes, reconocimiento y generación de voz, robótica, vehículos autónomos, sistemas de diagnóstico médico, etc. No obstante, DARPA es muy consciente de que a pesar de que los programas de IA tienen un nivel de capacidades de resolución de problemas elevado, les falta capacidad de explicación. Los algoritmos de aprendizaje profundo de la IA utilizan matemáticas complejas que son muy difíciles de entender o comprender para los usuarios humanos. En definitiva, los sistemas de IA, que utilizan las tecnologías actuales, son manifiestamente inadecuados para explicar y hacer fácilmente transparente el razonamiento de toma de decisiones para los seres humanos. Esto podría ser un impedimento en sistemas como las aplicaciones militares o los vehículos autónomos, en especial cuando es necesario entender decisiones inesperadas.

A pesar de que los programas de IA tienen un nivel de capacidades de resolución de problemas elevado, les falta capacidad de explicación.
A pesar de que los programas de IA tienen un nivel de capacidades de resolución de problemas elevado, les falta capacidad de explicación. / Imagen: Pixabay

En este contexto, DARPA anunció en agosto de 2016 que financiaría una serie de proyectos nuevos llamada Inteligencia artificial explicable (XAI). Dicen que el objeto de estos proyectos es crear herramientas que permitan que un humano que recibe información o una decisión del programa de IA entienda el razonamiento que subyace a dicha decisión. Como dicen: “La búsqueda de una IA explicable refleja la necesidad del ejército de EE. UU. de poder tener plena confianza en los sistemas robóticos del campo de batalla del futuro”. Los exitosos proyectos de DARPA se iniciaron en mayo de 2017 y tienen cuatro años para completarse. Los proyectos elegidos abarcan desde la adición de nuevos sistemas de aprendizaje automático adaptados a la explicación hasta el desarrollo de nuevos enfoques de aprendizaje automático que incorporan una explicación por diseño

No obstante, el uso de capacidades de explicación en los sistemas de IA no es un concepto nuevo. Una generación de IA anterior, llamada IA simbólica, las utilizó con éxito moderado. En este trabajo describo brevemente cómo su arquitectura estaba mejor adaptada a la explicación que la generación actual y cómo estas tecnologías se han combinado en el pasado para facilitar la explicación. Describo algunos de los factores que podrían mejorar la calidad de las explicaciones y esbozo un posible enfoque hacia una IA explicable.

Capacidades de explicación que utilizan la IA simbólica

Los sistemas de IA simbólica almacenan conocimientos acerca de sus materias utilizando símbolos explícitamente y manipulan estos símbolos mediante operativos lógicos. Muchos sistemas expertos utilizan la IA simbólica para manipular el conocimiento almacenado en forma de reglas. Las explicaciones se derivarían directamente de estas reglas y proporcionarían un efecto colateral útil. Estas explicaciones podrían activarse durante o después de una consulta con el sistema. La Fig. 1 proporciona un marco conceptual que muestra la forma en que las capacidades de explicación funcionan con arquitecturas de sistema experto simbólico. Los usuarios finales se comunicarían con el sistema a través de una interfaz de usuario y de una capacidad de explicación que interactuaría con un motor de inferencia de sistema experto. El motor de inferencia utilizaría el conocimiento del área almacenado en la base de conocimiento (almacenado a menudo en forma de reglas) y controlaría la consulta determinando qué preguntas hay que hacer para conseguir sus objetivos y sacar conclusiones o especificar las acciones a realizar. El componente de explicación se combinaría con la interfaz de usuario y la base de conocimiento para proporcionar explicaciones. Estas explicaciones podrían tomar la forma del usuario que quiere saber cómo se ha dado el asesoramiento del sistema o por qué el sistema necesita la respuesta de un usuario a una pregunta. Por ejemplo, hay que tener en cuenta la regla siguiente tomada de un sistema experto sanitario:

 

REGLA 1

Si el consumo de alcohol es alto 

Y la ingesta de sal del paciente es alta

También es probable que la presión arterial sea alta.

 

Este sencillísimo ejemplo se puede utilizar para ilustrar cómo la explicación facilita el trabajo. Si el sistema experto anterior llegara a la conclusión de que el riesgo de insuficiencia cardiaca es elevado, el usuario podría descubrir “cómo” ha llegado el sistema experto a esa conclusión. El sistema experto podría responder (todas las respuestas del sistema se muestran en cursiva) algo como lo siguiente:

 

He encontrado que el consumo de alcohol del paciente es alto en los datos de entrada del usuario

También he encontrado que la ingesta de sal del paciente es alta en los datos de entrada del usuario

POR TANTO es probable que la tensión arterial sea alta partiendo de la activación de la REGLA 1.

 

Los usuarios podrían averiguar por qué se hace una determinada pregunta. Por ejemplo, si al usuario se le hace la pregunta: ¿Cuántas unidades de alcohol consume el paciente por semana?

El usuario puede utilizar las capacidades de explicación para averiguar por qué se le hace esta pregunta. Así que el usuario podría responder: ¿Por qué?

El sistema experto podría responder: Estoy tratando de comprobar la REGLA 1, para averiguar si es probable que la presión arterial sea alta. Para hacerlo necesito saber si el consumo de alcohol es alto.

Fig. 1. Relación entre un sistema experto y un componente de explicación / Fuente: autor

Capacidades de explicación que usan la IA de aprendizaje automático

En mi última contribución a OpenMind, describí cómo el paradigma principal del aprendizaje automático usa predominantemente redes neuronales, un paradigma de IA no simbólico que no utiliza el conocimiento explícito almacenado como reglas de operación. Las redes neuronales (RN) funcionan aprendiendo a partir de grandes cantidades de datos de formación. El conocimiento implícito se codifica en parámetros numéricos –denominados pesos– y se distribuye en todo el sistema. Sin embargo, este paradigma de aprendizaje no es muy adecuado para la explicación debido a la complejidad matemática de la red. No obstante, se han ideado varios modelos de investigación para incorporar la explicación. Algunos utilizan un enfoque de desglose para la extracción de reglas a partir de redes. Este enfoque descompone la red en unidades individuales y, a continuación, extrae las reglas para describir un comportamiento de la unidad. El proyecto de IA explicable es más ambicioso en el sentido de que busca integrar el problema, resolver el comportamiento con capacidad de explicación utilizando la misma tecnología de aprendizaje automático. Un método posible sería entrenar la red neuronal para asociar atributos semánticos con nodos de capas ocultas, con el fin de permitir el aprendizaje de características explicables modificando las técnicas de aprendizaje automático. Por ejemplo, al aprender a explicar una red neuronal para identificar aves a partir de fotografías, los atributos semánticos serían por ejemplo “puede volar”, “construye nidos”, etc.

Características de una buena explicación

La justificación de DARPA para una IA explicable se basa en toda la investigación empírica que se ha hecho hasta la fecha. Esto demuestra que se pueden dar argumentos de peso para la inclusión de capacidades de explicación (Dhaliwal 93, Darlington 2013). Sin embargo, los diseñadores de capacidades de explicación de sistemas deben tener en cuenta los factores que se ha demostrado que afectan al uso de la explicación. Los más importantes son:

  • El tipo de usuario: de forma simplificada, el usuario podría clasificarse según sea novato o experto en la materia. Los usuarios novatos podrían utilizar las capacidades de explicación para entender la materia y mejorar su rendimiento en resolución de problemas. Los expertos, por otro lado, podrían utilizar las capacidades de explicación para entender, quizá, alguna discordancia que puedan tener con el asesoramiento de los sistemas o quizá para obtener una segunda opinión en un diagnóstico médico.
  • El mecanismo de acceso. Esto hace referencia a la forma en que la explicación se presenta al usuario durante una consulta al sistema. Podría adoptar la forma de una explicación integrada en la pantalla de consulta del usuario, presentarse a través de una ventana emergente o bien podría invocarla el usuario cuando necesitara una explicación.
  • El tipo de conocimiento que se requiere en la explicación. Podría adoptar varias formas. El usuario podría requerir una explicación del conocimiento de resolución de problemas invocado durante una consulta, los fundamentos del conocimiento que explican por qué el conocimiento está presente en un sistema experto o incluso el conocimiento terminológico que explica cómo se relacionan entre sí los conceptos de una materia.

Otros factores a tener en cuenta deben ser la longitud de la explicación y la orientación: si es posterior al asesoramiento o se presenta durante una consulta.

Conclusiones

En los sistemas de aprendizaje de redes neuronales hay una clara dicotomía entre un alto rendimiento y una capacidad de explicación deficiente. En el pasado, las técnicas de extracción ofrecían una posible forma en que las tecnologías opacas pueden ofrecer capacidades de explicación asignando datos de salida a reglas, haciéndolas así más aptas para una explicación natural. Sin embargo, este enfoque no es probable que se tenga en cuenta debido a que requiere mucho tiempo y resulta tedioso añadir esta capa extra de trabajo en cada sistema de aprendizaje automático. La ventaja del proyecto de IA explicable es que se podrían desarrollar nuevas técnicas o metodologías que eludieran la necesidad de esta capa extra desarrollando métodos de aprendizaje automático vinculados directamente para mejorar las capacidades de explicación.

Keith Darlington

Referencias

[1] Dhaliwal, J. S.,(1993). An Experimental Investigation of the Use of Explanations Provided by Knowledge-based Systems, Unpublished Doctoral Dissertation, University of British Columbia, 1993.

[2] Darlington. K, (2013). Aspects of Intelligent Systems Explanation. Universal Journal of Control and Automation 1(2): 40-51, 2013.

 

Publicaciones relacionadas

Comentarios sobre esta publicación

Escribe un comentario aquí…* (Máximo de 500 palabras)
El comentario no puede estar vacío
*Tu comentario será revisado antes de ser publicado
La comprobación captcha debe estar aprobada