Librerías de XAI en Python

La Explicabilidad en Inteligencia Artificial (XAI, por sus siglas en inglés) es un área esencial en el desarrollo de modelos de Machine Learning (ML). Python, siendo uno de los lenguajes más utilizados en ML, cuenta con diversas librerías especializadas en XAI. En esta entrada, exploraremos las principales librerías organizadas en distintas categorías.

Librerías que Implementan una Técnica Específica

Estas librerías se enfocan en técnicas individuales para la explicabilidad de modelos de ML:

  • SHAP (SHapley Additive exPlanations): Basada en valores de Shapley, proporciona explicaciones interpretables de modelos de ML.
  • LIME (Local Interpretable Model-agnostic Explanations): Genera explicaciones locales de predicciones de modelos complejos.
  • Anchors: Implementa el método anchors para dar explicaciones a instancias no vistas por el modelo.
  • TCAV (Testing with Concept Activation Vectors): Explica modelos de Deep Learning mediante la activación de conceptos humanos.

Librerías que Agrupan Varias Técnicas

Estas herramientas ofrecen múltiples enfoques para la interpretabilidad de modelos:

  • DALEX: Permite comparar modelos y técnicas de explicación. Construido a partir del paquete DALEX en R.
  • interpretML: Framework de Microsoft que incluye múltiples métodos de explicabilidad.
  • aix360: Desarrollada por IBM, ofrece diversas estrategias de interpretabilidad.
  • intel-XAI-tools: Conjunto de herramientas de Intel para la explicabilidad en modelos de ML.
  • interpret-Text: Extiende interpretML para el análisis de datos textuales.
  • omniXAI: Framework unificado que soporta más de 10 técnicas de explicación para datos tabulares, imágenes, texto y series temporales​.
  • shapash: Facilita la interpretación visual de predicciones.
  • eli5: Proporciona herramientas para explicar modelos de ML, incluyendo interpretabilidad en modelos de redes neuronales.
  • alibi: Framework para explicabilidad y detección de anomalías.

Librerías que Van Más Allá de la Implementación de Algoritmos

Existen librerías que ofrecen interfaces interactivas y dashboards para facilitar la interpretación de modelos:

  • ExplainerDashboard: Permite desplegar una app web dashboard y generar paneles interactivos para explorar explicaciones de modelos en tiempo real.

Librerías para Interpretabilidad en Imágenes

Cuando trabajamos con modelos de visión por computadora, estas librerías permiten visualizar y entender las predicciones:

  • xaitk-saliency: Implementa métodos para la generación de mapas de saliencia.
  • iNNvestigate: Herramienta para analizar redes neuronales profundas aplicadas a imágenes que recoge la mayoría de métodos de XAI para redes neuronales convolucionales (CNN).
  • tf-keras-vis: Biblioteca basada en TensorFlow/Keras para visualizar capas y activaciones en modelos de CNNs.
  • tf_cnnvis: Proporciona visualización de filtros y activaciones en CNNs de TensorFlow.

Conclusiones

Aunque no existe un estándar unificado para la aplicación de la XAI en Python, la implementación de diversos métodos por parte de grandes empresas deja claro que la interpretabilidad en modelos de ML es fundamental para mejorar la transparencia, confianza y depuración de modelos complejos. Las librerías de XAI en Python ofrecen diversas opciones para comprender el funcionamiento de los modelos y mejorar su usabilidad en entornos críticos como la aeronáutica y el aeroespacio.