in

Una descripción general de la explicabilidad del modelo en el aprendizaje automático moderno

0zbrJo8PFqyoRgGMB

Una descripción general de la explicabilidad del modelo en el aprendizaje automático moderno

Hacia una mejor comprensión de por qué los modelos de aprendizaje automático toman las decisiones que toman y por qué es importante

Rui Aguiar

5 de diciembre de 2019·10 min de lectura

0*zbrJo8PFqyoRgGMB

La explicabilidad del modelo es uno de los problemas más importantes del aprendizaje automático en la actualidad. A menudo ocurre que ciertos modelos de «caja negra», como las redes neuronales profundas, se implementan en producción y ejecutan sistemas críticos, desde todo en las cámaras de seguridad de su lugar de trabajo hasta su teléfono inteligente. Es un pensamiento aterrador que ni siquiera los desarrolladores de estos algoritmos entiendan por qué exactamente los algoritmos toman las decisiones que toman, o peor aún, cómo evitar que un adversario los explote.

Si bien hay muchos desafíos que enfrenta el diseñador de un algoritmo de «caja negra», no es completamente inútil. En realidad, hay muchas formas diferentes de iluminar las decisiones que toma un modelo. Incluso es posible comprender qué características son las más destacadas en las predicciones de un modelo.

En este artículo, ofrezco una descripción general completa de la explicabilidad del modelo para modelos más profundos en el aprendizaje automático. Espero explicar cómo los modelos más profundos que tradicionalmente se consideran «cajas negras» pueden ser sorprendentemente explicables. Usamos métodos independientes del modelo para aplicar la interpretabilidad a todos los diferentes tipos de modelos de caja negra.

Gráficos de dependencia parcial

Una gráfica de dependencia parcial muestra el efecto de una característica en el resultado de un modelo ML.

1*4NqTFl7CP8ovbgcajWXH3Q

La dependencia parcial funciona al marginar la salida del modelo de aprendizaje automático sobre la distribución de las características que no nos interesan (indicadas por características en el conjunto C). Esto hace que la función de dependencia parcial muestre la relación entre las características que nos interesan (que denotamos comprando en el conjunto S) y el resultado predicho. Al marginar las otras características, obtenemos una función que depende solo de las características en S. Esto facilita la comprensión de cómo la variación de una característica específica influye en las predicciones del modelo. Por ejemplo, aquí hay 3 gráficos PDP para Temperatura, Humedad y Velocidad del viento en relación con las ventas de bicicletas previstas por un modelo lineal.

1*FU H LsjeDF3Qnpr0ug9ig

Los PDP incluso se pueden utilizar para funciones categóricas. Aquí hay uno para el efecto de la temporada en el alquiler de bicicletas.

1*ZifN7Gy6LGWbNJWgvVw9KA

Para la clasificación, la gráfica de dependencia parcial muestra la probabilidad de una determinada clase dados diferentes valores para las características. Una buena forma de lidiar con problemas de clases múltiples es tener un PDP por clase.

El método de la gráfica de dependencia parcial es útil porque es global. Destaca la relación global entre una determinada característica y un resultado objetivo en todos los valores de esa característica.

Ventajas

Los gráficos de dependencia parcial son muy intuitivos. La función de dependencia parcial para una característica en un valor representa la predicción promedio si todos los puntos de datos asumen ese valor de característica.

Desventajas

Realmente solo puede modelar un máximo de dos características utilizando la función de dependencia parcial.

Supuesto de independencia: está asumiendo que las características que está trazando no están correlacionadas con ninguna otra característica. Por ejemplo, si predice la presión arterial a partir de la altura y el peso, debe asumir que la altura no está correlacionada con el peso. La razón por la que este es el caso es que debe promediar la distribución marginal del peso si está trazando la altura (o viceversa). Esto significa, por ejemplo, que puede tener pesos muy pequeños para alguien que es bastante alto, lo que probablemente no vea en su conjunto de datos real.

¡Excelente! Quiero implementar un PDP para mi modelo. ¿Dónde empiezo?

Aquí hay una implementación con scikit-learn.

Importancia de la característica de permutación

La importancia de la característica de permutación es una forma de medir la importancia de una característica calculando el cambio en el error de predicción de un modelo después de permutar la característica. Una característica es «importante» si la permutación de sus valores aumenta el error del modelo y «no importante» si la permutación de los valores deja el error del modelo sin cambios.

El algoritmo funciona de la siguiente manera:

input: a model f, feature matrix X, target vector Y and error measure L(y, f)1. Estimate the original model error e⁰ = L(Y, f(x))2. For each feature j:- Generate feature matrix X' by permuting feature j in the original feature matrix X.- Estimate the new error e¹=L(Y, f(X')) based off the model's predictions for the new data X'- Calculate the permutation feature importance FI=e¹/e⁰. You can also use e¹-e⁰.3. Sort the features by descending FI.

Después de haber ordenado las características por FI descendente, puede trazar los resultados. Aquí está la trama de importancia de la característica de permutación para el problema del alquiler de bicicletas.

1*ovPWFMNpZu5wQ1ABLIVIcg

Ventajas

Interpretabilidad: la importancia de la característica es cuánto aumenta el error cuando una característica se distorsiona. Esto es fácil de explicar y visualizar.

La importancia de la característica de permutación proporciona una visión global del comportamiento del modelo.

La importancia de la característica de permutación no requiere entrenar un nuevo modelo o reentrenar un modelo existente, simplemente cambiar las características.

Desventajas

No está claro si debe usar datos de entrenamiento o de prueba para su parcela.

Si las características están correlacionadas, puede obtener muestras poco realistas después de permutar características, sesgando el resultado.

Agregar una característica correlacionada a su modelo puede disminuir la importancia de otra característica.

¡Excelente! Quiero implementar la importancia de la característica de permutación para mi modelo. ¿Dónde empiezo?

Aquí hay una implementación con el modelo eli5 en Python.

Gráfico de efectos locales acumulados

Las parcelas ALE son una alternativa más rápida e insesgada a las parcelas de dependencia parcial. Miden cómo las características influyen en la predicción de un modelo. Debido a que son imparciales, manejan las características correlacionadas mucho mejor que los PDP.

Si las características de un modelo de aprendizaje automático están correlacionadas, no se puede confiar en la gráfica de dependencia parcial, porque puede generar muestras que son muy poco probables en la realidad variando una sola característica. Los gráficos ALE resuelven este problema calculando, también basándose en la distribución condicional de las características, diferencias en las predicciones en lugar de promedios. Una forma de interpretar esto es pensar en el ALE como diciendo

«Déjame mostrarte cómo cambian las predicciones del modelo en una pequeña» ventana «de la función».

Aquí hay una interpretación visual de lo que está sucediendo en una trama ALE.

1*6rRd3dssKs HRXh77RJJew

Esto también se puede hacer con dos funciones.

1*VJnFuP1w1im0NJklAyfqqA

Una vez que haya calculado las diferencias en las predicciones en cada ventana, puede generar un gráfico ALE.

1* u1KolgiM NPHoOFhSz0Cw

Los gráficos ALE también se pueden realizar para características categóricas.

1*5ueJv KunHvR4layTSYoWA

Ventajas

Los gráficos ALE son insesgados, lo que significa que funcionan con características correlacionadas.

Los gráficos ALE son computacionalmente rápidos de calcular.

La interpretación del gráfico ALE es clara.

Desventajas

La implementación de gráficos ALE es complicada y difícil de entender.

La interpretación sigue siendo difícil si las características están fuertemente correlacionadas.

Los gráficos ALE de segundo orden o 2D pueden ser difíciles de interpretar.

Generalmente, es mejor usar ALE en lugar de PDP, especialmente si espera características correlacionadas.

¡Excelente! Quiero implementar ALE para mi modelo. ¿Dónde empiezo?

Aquí hay una biblioteca que proporciona una implementación ALE.

Expectativa condicional individual

Los gráficos de expectativa condicional individual (ICE) muestran una línea por punto de datos. Produce un gráfico que muestra cómo cambia la predicción del modelo para un punto de datos a medida que una característica varía en todos los puntos de datos de un conjunto. Para el gráfico a continuación, puede ver los gráficos ICE para variar la temperatura, la humedad y la velocidad del viento en todas las instancias en los datos de alquiler de bicicletas del conjunto de entrenamiento.

1*FiwaK4qDb VjVj5 EGqA

Al observar este gráfico, puede preguntarse: ¿cuál es el punto de mirar un gráfico ICE en lugar de un PDP? Parece mucho menos interpretable.

Los PDP solo pueden mostrarle cuál es la relación promedio entre el aspecto de una característica y una predicción. Esto solo funciona bien si las interacciones entre las características para las que se calcula el PDP y las otras características no están correlacionadas, pero en el caso de interacciones fuertes y correlacionadas, la gráfica ICE será más reveladora.

Ventajas

Al igual que los diagramas de PDP, los diagramas de ICE son muy intuitivos de entender.

Las parcelas ICE pueden descubrir relaciones heterogéneas mejor que las parcelas PDP.

Desventajas

Las curvas ICE solo pueden mostrar una característica a la vez.

Las parcelas generadas por este método pueden ser difíciles de leer y estar superpobladas.

¡Excelente! Quiero implementar ICE para mi modelo. ¿Dónde empiezo?

Aquí hay una descripción general de la interpretabilidad con una implementación de ICE.

Modelos sustitutos

Un modelo sustituto es un modelo interpretable (como un árbol de decisión o un modelo lineal) que está entrenado para aproximarse a las predicciones de una caja negra. Podemos entender mejor la caja negra interpretando las decisiones del modelo sustituto.

El algoritmo para generar un modelo sustituto es sencillo.

1. Select a dataset X that you can run your black box model on.2. For the selected dataset X, get the predictions of your black box model. 3. Select an interpretable model type (e.g. linear model or decision tree)4. Train the interpretable model on the dataset X and the black box's predictions. 5. Measure how well the surrogate model replicates the predictions of the black box model. 6. Interpret the surrogate model.

Una forma de medir qué tan bien el sustituto replica la caja negra a través de la métrica R-cuadrado:

1*C17hdeZMuifgAkdM2VjkHw

La métrica R cuadrado es una forma de medir la varianza capturada por el modelo sustituto. Un valor de R cuadrado cercano a 1 implica que el modelo sustituto captura bien la varianza, y cercano a 0 implica que está capturando muy poca varianza y no explica bien el modelo de caja negra.

Ventajas

Este enfoque es intuitivo: está aprendiendo lo que el modelo de caja negra cree que es importante al aproximarlo.

Fácil de medir: está claro qué tan bien se desempeña el modelo interpretable al aproximar la caja negra a través de la métrica R-cuadrado.

Desventajas

Es posible que el modelo lineal no se aproxime bien al modelo de caja negra.

Está sacando conclusiones sobre el modelo de caja negra y no sobre los datos reales, ya que está utilizando las predicciones del modelo de caja negra como etiquetas sin ver la verdad básica.

Incluso si se aproxima bien al modelo de caja negra, es posible que la explicabilidad del modelo «interpretable» no represente realmente lo que ha aprendido el modelo de caja negra.

Puede ser…

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

mesa dj fiesta 13351

Cómo descargar e instalar la aplicación ‘Audacity’ o APK en Android – Editor de audio gratuito

Java más eficaz con Joshua Bloch de Google