SHAP

SHAP
Información general
Tipo de programa Software
Desarrollador Scott M. Lundberg y Su-In Lee
Lanzamiento inicial 2018
Idiomas Inglés

SHAP es una librería para realizar inteligencia artificial explicable (XAI por sus siglas en inglés eXplainable Artificial Intelligence). Utiliza cálculos del campo de la teoría de juegos para averiguar qué variables tienen más influencia en las predicciones de las técnicas de machine learning.

SHAP (Descripción)

Este framework permite que cualquier algoritmo de Aprendizaje Automático sea esencialmente “explicado” “Al proporcionar visualizaciones intuitivas e interactivas que apuntan a mostrar qué características son más relevantes para una determinada predicción y para el modelo en su conjunto.

El objetivo de SHAP es explicar la predicción de una instancia x calculando la contribución de cada característica a la predicción. El método de explicación SHAP calcula los valores de Shapley a partir de la teoría de juegos de coalición. Los valores de características de una instancia de datos actúan como jugadores en una coalición. Los valores de Shapley nos dicen cómo distribuir equitativamente el "pago" (= la predicción) entre las funciones. Un jugador puede ser un valor de característica individual, p. Ej. para datos tabulares. Un jugador también puede ser un grupo de valores de características. Por ejemplo, para explicar una imagen, los píxeles se pueden agrupar en superpíxeles y la predicción se distribuye entre ellos. Una innovación que SHAP trae a la mesa es que la explicación del valor de Shapley se representa como un método de atribución de características aditiva, un modelo lineal. Esa vista conecta LIME y Shapley Values.

Ventajas

Dado que SHAP calcula los valores de Shapley, se aplican todas las ventajas de los valores de Shapley: SHAP tiene una base teórica sólida en la teoría de juegos. La predicción se distribuye equitativamente entre los valores de las características. Obtenemos explicaciones contrastivas que comparan la predicción con la predicción promedio.

SHAP conecta los valores de LIME y Shapley. Esto es muy útil para comprender mejor ambos métodos. También ayuda a unificar el campo del aprendizaje automático interpretable.

SHAP tiene una implementación rápida para modelos basados en árboles. Creo que esto fue clave para la popularidad de SHAP, porque la mayor barrera para la adopción de los valores de Shapley es el cálculo lento.

El rápido cálculo permite calcular los muchos valores de Shapley necesarios para las interpretaciones del modelo global. Los métodos de interpretación global incluyen la importancia de las características, la dependencia de las características, las interacciones, la agrupación y los gráficos de resumen. Con SHAP, las interpretaciones globales son consistentes con las explicaciones locales, ya que los valores de Shapley son la "unidad atómica" de las interpretaciones globales. Si usa LIME para explicaciones locales y gráficos de dependencia parcial más la importancia de la característica de permutación para las explicaciones globales, no tiene una base común.

Desventajas

KernelSHAP es lento. Esto hace que KernelSHAP no sea práctico de usar cuando desea calcular valores de Shapley para muchas instancias. Además, todos los métodos SHAP globales, como la importancia de la característica SHAP, requieren calcular los valores de Shapley para muchas instancias.

KernelSHAP ignora la dependencia de funciones. La mayoría de los otros métodos de interpretación basados en permutación tienen este problema. Al reemplazar los valores de las características con valores de instancias aleatorias, generalmente es más fácil muestrear al azar de la distribución marginal. Sin embargo, si las características son dependientes, p. Ej. correlacionado, esto lleva a poner demasiado peso en puntos de datos poco probables. TreeSHAP resuelve este problema modelando explícitamente la predicción esperada condicional.

TreeSHAP puede producir atribuciones de características poco intuitivas. Si bien TreeSHAP resuelve el problema de extrapolar a puntos de datos poco probables, presenta un nuevo problema. TreeSHAP cambia la función de valor basándose en la predicción esperada condicional. Con el cambio en la función de valor, las entidades que no tienen influencia en la predicción pueden obtener un valor TreeSHAP diferente de cero.

Las desventajas de los valores de Shapley también se aplican a SHAP: los valores de Shapley pueden malinterpretarse y se necesita acceso a los datos para calcularlos para datos nuevos (excepto para TreeSHAP).

Software

Los autores implementaron SHAP en el paquete shap Python. Esta implementación funciona para modelos basados en árboles en la biblioteca de aprendizaje automático scikit-learn para Python. El paquete shap también se usó para los ejemplos de este capítulo. SHAP está integrado en los marcos de refuerzo de árboles xgboost y LightGBM. En R, están los paquetes shapper y fastshap. SHAP también se incluye en el paquete R xgboost.

Referencias

Scott M. Lundberg, Su-In Lee. (2018). A Unified Approach to Interpreting Model Predictions. University of Washington

Enlaces externos

https://shap.readthedocs.io/en/latest/

https://christophm.github.io/interpretable-ml-book/shap.html

https://towardsdatascience.com/a-novel-approach-to-feature-importance-shapley-additive-explanations-d18af30fc21b

Content Disclaimer

Informasi ini disarikan dari Wikipedia dan disajikan kembali untuk tujuan edukasi. Konten tersedia di bawah lisensi CC BY-SA 3.0. Kami tidak bertanggung jawab atas ketidakakuratan data yang bersumber dari kontribusi publik tersebut.

  1. The information displayed on this website is sourced in part or in whole from Wikipedia and has been adapted for the purpose of restating it. We strive to provide accurate and relevant information, however:
  2. There is no guarantee of absolute accuracy. Wikipedia is an open, collaborative project that can be edited by anyone, so information is subject to change.
  3. It is not intended to constitute professional advice. The content displayed is for informational and educational purposes only. For important decisions (e.g., medical, legal, or financial), please consult a professional.
  4. Content copyright. Wikipedia is licensed under the Creative Commons Attribution-ShareAlike License (CC BY-SA). This means that content may be reused with appropriate attribution and shared under a similar license.
  5. Responsible use. Any risk arising from the use of information from this website is entirely the responsibility of the user.