Entender los valores de Shapley
Marko Cotra
27 de oct de 2019·9 min de lectura
La primera vez que escuché sobre los valores de Shapley fue cuando estaba leyendo sobre la interpretabilidad del modelo. Encontré SHAP, un marco para comprender mejor por qué su modelo de aprendizaje automático se comporta de la manera en que lo hace. Resulta que los valores de Shapley han existido por un tiempo, se originaron por primera vez en el campo de la teoría de juegos en 1953 con el propósito de resolver el siguiente escenario:
Un grupo de participantes con habilidades diferentes están cooperando entre sí para obtener una recompensa colectiva. ¿Cómo debería ser la recompensa? equitativamente dividido entre el grupo?
Es gracioso ver cómo un «viejo« El concepto puede cobrar nueva vida cuando se aplica a otro campo como el aprendizaje automático. En el aprendizaje automático, los participantes son los características de su entrada y el pago colectivo es el modelo predicción. En ese contexto, los valores de Shapley se utilizan para calcular cuánto contribuye cada característica individual a la salida del modelo.
¿Cómo se calculan los valores de Shapley? La mayoría de las veces, tiende a ver esta ecuación en la literatura:
Analicémoslo un poco. en un juego de coalición (el escenario descrito anteriormente) tenemos un conjunto norte de norte jugadores. También tenemos una función v que da el valor (o pago) para cualquier subconjunto de esos jugadores, es decir, deje S ser un subconjunto de norte, luego v (S) le da el valor de ese subconjunto. Entonces, para un juego de coalición (norte, v) podemos usar la ecuación para calcular el pago para el jugador I, es decir, el valor de Shapley.
Ahora no sé ustedes, pero cuando me encontré con esa ecuación por primera vez, mi reacción inmediata fue algo parecido a «¿¿¿Qué demonios es esto???»
Me costó entender por qué se ve como lo hace. Tomó algo de tiempo, pero después de jugar un poco con él, finalmente comenzó a tener algún sentido. ¡Vamos a por ello!