Outono 2025
Partial Dependence Plot (PDP)
Local Interpretable Model-agnostic Explanations (LIME)
SHAP (SHapley Additive exPlanations)
Exemplos e materiais do livro de Molnar: Interpretable ML
Este dataset contém contagens diárias de bicicletas alugadas pela empresa de aluguel de bicicletas Capital-Bikeshare em Washington D.C., junto com informações climáticas e sazonais. O objetivo é prever quantas bicicletas serão alugadas dependendo do clima e do dia. O dado pode ser baixado do UCI Machine Learning Repository.
Aqui está a lista de features usadas no livro de Molnar:
Mostra o efeito marginal que uma ou duas features têm sobre o resultado previsto de um modelo de machine learning (J. H. Friedman 2001).
Ideia de alto nível: marginalizar o output do modelo de machine learning sobre as distribuições de todas as outras features, para mostrar a relação entre a feature de interesse e o resultado previsto.






Vantagens
Desvantagens
Treinar modelos surrogate locais para explicar predições individuais


A ideia é bastante intuitiva.
Primeiro, esqueça os dados de treinamento e imagine que você só tem o black box model, onde pode inserir pontos de dados e obter as predições do modelo. Você pode sondar a caixa quantas vezes quiser. Seu objetivo é entender por que o modelo de machine learning fez determinada predição. LIME testa o que acontece com as predições quando você fornece variações dos seus dados ao modelo de machine learning.
LIME gera um novo dataset composto por amostras perturbadas e as predições correspondentes do black box model.
Nesse novo dataset, LIME então treina um modelo interpretável, que é ponderado pela proximidade das instâncias amostradas em relação à instância de interesse. O modelo interpretável pode ser qualquer um dos modelos interpretáveis, por exemplo Lasso ou uma árvore de decisão. O modelo aprendido deve ser uma boa aproximação das predições do modelo de machine learning localmente, mas não precisa ser uma boa aproximação global. Esse tipo de precisão também é chamado de local fidelity.

Predições de um random forest dadas as features x1 e x2.
Classes previstas: 1 (escuro) ou 0 (claro).

Instância de interesse (ponto amarelo grande) e dados amostrados de uma distribuição normal (pontos pequenos).

Atribui peso maior aos pontos próximos da instância de interesse. Ou seja, \(weight(p) = \sqrt{\frac{e^{-d^2}}{w^2}}\) onde \(d\) é a distância entre \(p\) e a instância de interesse, e \(w\) é a largura do kernel (definida pelo usuário).

Usa tanto as amostras quanto os pesos das amostras para treinar um classificador linear.
Os sinais na grade mostram as classificações do modelo aprendido localmente a partir das amostras ponderadas. A linha vermelha marca o decision boundary (P(class=1) = 0.5).
A implementação oficial usa um Ridge Classifier como modelo linear para a explicação.
Vamos olhar um exemplo concreto. Voltamos aos dados de bike rental e transformamos o problema de predição em uma classificação: depois de levar em conta a tendência de que o aluguel de bicicletas se tornou mais popular ao longo do tempo, queremos saber, em determinado dia, se o número de bicicletas alugadas ficará acima ou abaixo da linha de tendência. Você também pode interpretar “acima” como estar acima do número médio de bicicletas, mas ajustado pela tendência.
Primeiro treinamos um random forest com 100 árvores na tarefa de classificação. Em que dia o número de bicicletas alugadas ficará acima da média livre de tendência, com base no clima e nas informações de calendário?
As explicações são criadas com 2 features. Os resultados dos modelos lineares locais sparse treinados para duas instâncias com classes previstas diferentes:

Vantagens
Desvantagens
Exemplos e materiais do novo livro de Molnar: https://christophmolnar.com/books/shap/

SHAP (Lundberg and Lee 2017a) é um método inspirado em game theory, criado para explicar predições feitas por modelos de machine learning. SHAP gera um valor por feature de entrada (também conhecido como valor SHAP) que indica como aquela feature contribui para a predição do ponto de dado especificado.
Quem vai pagar aquele táxi?
Alice, Bob, e Charlie jantam juntos e dividem uma corrida de táxi para casa. O custo total é $51. A pergunta é: como eles devem dividir os custos de forma justa?
A contribuição marginal de um jogador para uma coalizão é o valor da coalizão com o jogador menos o valor da coalizão sem o jogador. No exemplo do táxi, o valor de uma coalizão é igual ao custo da corrida, conforme detalhado na tabela acima. Portanto, a contribuição marginal de, por exemplo, Charlie para um táxi que já contém Bob é o custo do táxi com Bob e Charlie, menos o custo do táxi apenas com Bob.
Como calcular a média dessas contribuições marginais por passageiro?
Uma forma de responder a essa pergunta é considerando todas as permutações possíveis de Alice, Bob, e Charlie. Existem 3! = 3 * 2 * 1 = 6 permutações possíveis de passageiros:
Podemos usar essas permutações para formar coalizões, por exemplo, para Alice.
Em dois desses casos, Alice foi adicionada a um táxi vazio, e em um caso ela foi adicionada a um táxi apenas com Bob. Ponderando as contribuições marginais de acordo, calculamos a seguinte média ponderada da contribuição marginal para Alice, abreviando Alice, Bob, e Charlie como A, B, e C:
para Bob:

para Charlie:

O valor de Shapley é a média ponderada das contribuições marginais de um jogador para todas as coalizões possíveis.
Eficiência: A soma das contribuições deve somar exatamente o pagamento total.
Simetria: Se dois jogadores são idênticos, eles devem receber contribuições iguais.
Dummy ou Null Player: O valor de um jogador que não contribui para nenhuma coalizão é zero.
Aditividade: Em um jogo com duas funções de valor, os valores de Shapley para a soma podem ser expressos como a soma dos valores de Shapley.
Esses quatro axiomas garantem a unicidade dos valores de Shapley.
Considere o seguinte cenário: você treinou um modelo de machine learning \(f\) para prever preços de apartamentos.
Queremos avaliar o efeito de cat-banned
Queremos avaliar o efeito de cat-banned
O valor de Shapley pode ser mal interpretado. O valor de Shapley do valor de uma feature não é a diferença do valor previsto após remover a feature do treinamento do modelo. A interpretação do valor de Shapley é: Dado o conjunto atual de valores de features, a contribuição do valor de uma feature para a diferença entre a predição real e a predição média é o valor de Shapley estimado.
O valor de Shapley é o método de explicação errado se você busca explicações sparse (explicações que contêm poucas features). Explicações criadas com o método de valor de Shapley sempre usam todas as features. Humanos preferem explicações seletivas, como as produzidas pelo LIME. LIME pode ser a melhor escolha para explicações que leigos precisam lidar.
(Do livro de Molnar)
Vantagens
Importância de features distribuída de forma justa para uma predição
Explicações contrastivas (é possível comparar uma instância com um subconjunto ou até com um único ponto de dado)
Teoria sólida
Desvantagens