○ unseen · kind concept · level 0 · 0h

Shapley Value es un concepto de la teoría de juegos cooperative que se adapta a ML para atribuir la predicción de un modelo a las características individuales de manera justa y consistente.

Mecanismo: Dado un modelo f(x) y un input x con features x₁…xₙ, el Shapley value φᵢ de la feature i es:

φᵢ = Σ_{S ⊆ N{i}} (|S|! × (n-|S|-1)! / n!) × [f(S ∪ {i}) - f(S)]

Donde:

  • S es un subconjunto de features (coalición)
  • f(S) es la predicción del modelo usando solo las features en S
  • La fórmula promedia la diferencia marginal de añadir i a todas las coaliciones posibles

Intuitivamente: el Shapley value mide cuánto contribuye la feature i a la predicción, promedio sobre todos los órdenes posibles en que las features pueden ser añadidas.

SHAP (SHapley Additive exPlanations): Package que implementa Shapley values para ML práctico:

  • KernelSHAP: Usa muestreo pesado para aproximar los valores sin evaluar todas las coaliciones (2ⁿ es intractable para n grande)
  • TreeSHAP: Algoritmo eficiente O(T·L·2^D) para árboles (decision trees, random forest, XGBoost)
  • DeepSHAP: Para redes neuronales, usa reglas de propagación similares a backpropagation

Pitfall: Los Shapley values no miden causalidad — miden contribución a la predicción bajo un modelo específico, dado el conjunto de datos de entrenamiento. Dos modelos diferentes pueden dar valores diferentes para la misma feature. También son computacionalmente costosos para modelos no tree-based y muchos features.

Temas relacionados: Model Evaluation, Explainability, Feature Importance, Tree-based Models, Game Theory.

Enlaces

Fuentes