Importancia / impacto de características para predicciones individuales

8

A nivel de modelo, para evaluar la contribución / importancia del predictor podemos usar:

  • Técnicas específicas del modelo: por ejemplo, pureza (índice de Gini) para un modelo basado en árboles, coeficientes del modelo cuando corresponda, etc.
  • Técnicas independientes del modelo, por ejemplo, importancia de la característica de permutación, dependencia parcial, etc.

Lo que esto no transmite es para una predicción particular (digamos una clasificación binaria que proporciona una probabilidad de 92% de pertenencia a la clase 1) qué predictores fueron los más "influyentes" en la producción de esa predicción.

Habiendo pensado un poco en este problema, me parece que hay algunos enfoques que podrían tomarse:

Me parece que el enfoque más valioso sería una técnica independiente del modelo dada la naturaleza algo "caja negra" de muchos algoritmos, y que proporciona la capacidad de interpretar nuevos y nuevos algoritmos y técnicas.

Un método ingenuo, descrito aquí ( http://amunategui.github.io/actionable-instights/index.html ) es tomar cada predictor, "neutralizar" su impacto, por ejemplo imputando la media de "población", y ejecutar la predicción nuevamente obteniendo una diferencia entre la predicción original y la versión neutralizada que proporciona una medida de importancia. Este parece un caso especial de un tipo de método de "perturbación" insinuado anteriormente. Un par de defectos que veo en esto son que 1) parece implicar que una predicción que tiene la "media" (o equivalente) de cada característica es necesariamente una predicción "media", y 2) que las características que son "significa" "(O equivalente) no son necesariamente impactantes?

Más generalmente, cualquier técnica debería tener en cuenta:

  • Cómo manejar diferentes tipos de datos (numéricos, categóricos, etc.)
  • Cómo manejar datos faltantes
  • Tal vez cómo manejar la importancia condicional (es decir, que los predictores solo pueden ser importantes en pares, etc.)
  • Eficiencia computacional (¿es realmente práctico hacer una predicción? pags tiempos donde pags es el número de predictores, o para un método de perturbación kpags dónde k es el número de predicciones por predictor, etc.)

Con esos pensamientos sueltos y tal vez incorrectos sobre el asunto establecidos, me pregunto qué enfoques del problema conocen, consideran, utilizan, aconsejan, etc.

abriendo la caja negra
fuente

Respuestas:

8

El tema que está abordando se conoce como explicación del modelo o interpretación del modelo y es un tema bastante activo en la investigación. La idea general es averiguar qué características contribuyeron al modelo y cuáles no.

Ya mencionó algunas técnicas populares, como las Parcelas de dependencia parcial (PDP) o LIME. En un PDP, la influencia del valor de las características en la salida del modelo se muestra creando nuevas instancias a partir de los datos que tienen un valor de característica modificado y las predice por el modelo. LIME crea una aproximación local del modelo mediante el muestreo de instancias alrededor de una instancia solicitada y el aprendizaje de un modelo más simple e interpretable.

En el método ingenuo que describió, el impacto de una característica se neutraliza al establecerlo en la media de la población. Tiene toda la razón, que este no es un método apropiado, ya que la predicción del valor medio probablemente no sea la predicción media. Además, no refleja la distribución de características y no funciona para atributos categóricos.

Robnik-Sikonja y Kononenko [1] abordaron este problema. Su idea básica es la misma: la diferencia de predicción entre la instancia sin cambios y una instancia con una característica neutralizada. Sin embargo, en lugar de tomar el valor medio para deshacerse del impacto de las características, crean varias copias de instancia, cada una con un valor diferente. Para valores categóricos , iteran sobre todas las categorías posibles; para valores numéricos , discretizan los datos en contenedores. Las instancias descompuestas se ponderan por la frecuencia del valor de la característica en los datos. Los datos faltantes se pueden ignorar mediante el uso de clasificadores que puedan manejarlos, o imputarlos, por ejemplo, estableciendo los valores en la media. Importancia condicionalha sido abordado en una segunda publicación por Strumbelj et al [2]. Extendieron el enfoque original no solo creando instancias descompuestas de una sola característica, sino que observaron cómo cambia la predicción para cada subconjunto del conjunto de potencia de los valores de la característica. Por supuesto, esto es computacionalmente muy costoso (como se mencionan a sí mismos y trataron de mejorar mediante un muestreo más inteligente en Strumbelj y Kononenko [3]).

Por cierto: para los datos binarios, este problema se vuelve mucho más fácil, ya que solo tiene que comparar la predicción entre el atributo está presente y no está presente . Martens y Provost [4] discutieron esto para la clasificación de documentos.

Andreas Henelius ha propuesto otro enfoque para encontrar grupos de características significativas en [5] y [6]. La idea de su algoritmo GoldenEye es permutar los datos dentro de la clase y el grupo de características. Imagine una tabla de datos donde cada fila representa una instancia y cada columna es una característica. En cada columna, todas las filas que comparten la misma clase están permutadas. Las características están agrupadas, es decir, permutadas juntas. Si la clasificación en los datos permutados es muy diferente (peor) que los datos originales, la agrupación actual no refleja la agrupación verdadera. Echa un vistazo a las publicaciones, se describe mejor allí. Este enfoque también se vuelve computacionalmente costoso .

También me gustaría referirme a las publicaciones de Josua Krause [7], [8]. Desarrolló flujos de trabajo de análisis visual interactivo para el análisis de problemas de clasificación basados ​​en instancias binarias, incluido un PDP mejorado. Están bien escritos y son una lectura interesante.


[1] Robnik-Šikonja, M. (2004, septiembre). Mejora de bosques al azar. En conferencia europea sobre aprendizaje automático (pp. 359-370). Springer, Berlín, Heidelberg.

[2] Štrumbelj, E., Kononenko, I. y Šikonja, MR (2009). Explicando las clasificaciones de instancias con interacciones de subconjuntos de valores de características. Ingeniería de Datos y Conocimiento, 68 (10), 886-904.

[3] Štrumbelj, E. y Kononenko, I. (2014). Explicando modelos de predicción y predicciones individuales con contribuciones de características. Sistemas de conocimiento e información, 41 (3), 647-665.

[4] Martens, D. y Provost, F. (2013). Explicación de clasificaciones de documentos basados ​​en datos.

[5] Henelius, A., Puolamäki, K., Boström, H., Asker, L. y Papapetrou, P. (2014). Un vistazo al recuadro negro: explorar clasificadores por aleatorización. Minería de datos y descubrimiento de conocimiento, 28 (5-6), 1503-1529. #

[6] Henelius, A., Puolamäki, K., Karlsson, I., Zhao, J., Asker, L., Boström, H., y Papapetrou, P. (2015, abril). Goldeneye ++: Una mirada más cercana a la caja negra. En Simposio internacional sobre aprendizaje estadístico y ciencias de datos (pp. 96-105). Springer, Cham.

[7] Krause, J., Perer, A. y Ng, K. (mayo de 2016). Interactuando con predicciones: inspección visual de modelos de aprendizaje automático de caja negra. En Actas de la Conferencia CHI 2016 sobre Factores Humanos en Sistemas de Computación (pp. 5686-5697). ACM

[8] Krause, J., Dasgupta, A., Swartz, J., Aphinyanaphongs, Y., y Bertini, E. (2017). Un flujo de trabajo para el diagnóstico visual de clasificadores binarios utilizando explicaciones de nivel de instancia. preimpresión arXiv arXiv: 1705.01968.

tsabsch
fuente
Qué respuesta tan brillante, y está en línea con muchos de mis pensamientos sobre este tema. Muchas gracias por su tiempo y experiencia. Las referencias son particularmente útiles.
apertura de la caja negra
2
+1 El artículo 2014 de Štrumbelj & Kononenko no obtiene ni remotamente el reconocimiento que merece. Su enfoque teórico del juego es como " ¡GUAU! "
usεr11852
0

Otros dos métodos que vale la pena mencionar aquí son:

1) El algoritmo SHAP de Lundberg y Lee , una extensión del enfoque teórico del juego de Štrumbelj y Kononenko que, según ellos, unifica LIME y una serie de otras medidas de importancia local; y

2) Wachter et al. Método contrafactual de , Basado en redes generativas de confrontación.

Ambos métodos tienen ventajas y desventajas. SHAP es muy rápido y viene con un fácil de usar implementación de Python . Lamentablemente, sin embargo, siempre compara los puntos con el centroide de datos, que puede no ser el contraste relevante en algunos casos. Además, al igual que LIME y una serie de otros algoritmos, asume (o impone) linealidad local, lo que puede conducir a resultados inestables o poco informativos cuando nuestro caso de interés está cerca de una región claramente no lineal del límite de decisión o superficie de regresión.

La solución de Wachter et al. Es más flexible a este respecto, una desviación refrescante de lo que Lundberg y Lee llaman el paradigma de "atribución de características aditivas". Sin embargo, no conozco ninguna implementación de código abierto. La sobrecarga adicional de la capacitación GAN también puede ser extremadamente onerosa para algunos conjuntos de datos.

dswatson
fuente