Importância / impacto de recursos para previsões individuais

8

No nível do modelo, para avaliar a contribuição / importância do preditor, podemos usar:

  • Técnicas específicas do modelo - por exemplo, pureza (Índice de Gini) para um modelo baseado em árvore, coeficientes do modelo, quando aplicável, etc.
  • Técnicas independentes de modelo - por exemplo, importância da característica de permutação, dependência parcial etc.

O que isso não transmite é para uma previsão específica (digamos, uma classificação binária que fornece 92% de probabilidade de pertencer à classe 1) quais preditores foram mais "influentes" na produção dessa previsão.

Tendo pensado um pouco sobre esse problema, parece-me que existem algumas abordagens que podem ser adotadas:

Parece-me que a abordagem mais valiosa seria uma técnica independente de modelo, dada a natureza um tanto "de caixa-preta" de muitos algoritmos, e fornecendo a capacidade de interpretar novos e novos algoritmos e técnicas.

Um método ingênuo, descrito aqui ( http://amunategui.github.io/actionable-instights/index.html ) é pegar cada preditor, "neutralizar" seu impacto, digamos, imputando a média da "população" e executar a previsão novamente. obtendo uma diferença entre a previsão original e a versão neutralizada, fornecendo uma medida de importância. Este parece ser um caso especial de um tipo de método de "perturbação", sugerido acima. Algumas falhas que vejo nelas são: 1) parece implicar que uma previsão que tenha o "médio" (ou equivalente) de cada recurso seja necessariamente uma previsão "média", talvez, e 2) que os recursos que são "meios ”(Ou equivalente) são necessariamente sem impacto?

De maneira mais geral, qualquer técnica teria que explicar:

  • Como lidar com diferentes tipos de dados (numéricos, categóricos etc.)
  • Como lidar com dados ausentes
  • Como lidar com a importância condicional, talvez (ou seja, que os preditores podem ser importantes apenas em pares, etc.)
  • Eficiência computacional (é realmente prático executar uma predição vezes em que é o número de preditores ou para um método de perturbação que é o número de predições por preditor etc.)p k p kppkpk

Com aqueles pensamentos soltos e talvez incorretos sobre o assunto exposto, pergunto-me que abordagens ao problema as pessoas estão cientes, consideraram, usaram, recomendariam etc.?

abrindo a caixa preta
fonte

Respostas:

8

O tópico que você está abordando é conhecido como explicação ou interpretação de modelo e um tópico bastante ativo na pesquisa. A idéia geral é descobrir quais recursos contribuíram para o modelo e quais não.

Você já mencionou algumas técnicas populares, como Parcelas de dependência parcial (PDP) ou LIME. Em um PDP, a influência do valor de um recurso na saída do modelo é exibida através da criação de novas instâncias a partir dos dados que possuem um valor de recurso modificado e as prevê pelo modelo. O LIME cria uma aproximação local do modelo, amostrando instâncias em torno de uma instância solicitada e aprendendo um modelo mais simples e mais interpretável.

No método ingênuo que você descreveu, o impacto de um recurso é neutralizado, definindo-o como a média da população. Você está absolutamente certo de que este não é um método apropriado, pois a previsão do valor médio provavelmente não é a previsão média. Além disso, ele não reflete a distribuição do recurso e não funciona para atributos categóricos.

Robnik-Sikonja e Kononenko [1] abordaram esse problema. A idéia básica deles é a mesma: a diferença de previsão entre a instância inalterada e uma instância com um recurso neutralizado. No entanto, em vez de usar o valor médio para se livrar do impacto dos recursos, eles criam várias cópias de instância, cada uma com um valor diferente. Para valores categóricos , eles repetem todas as categorias possíveis; para valores numéricos , eles discretizam os dados em compartimentos. As instâncias decompostas são ponderadas pela frequência do valor do recurso nos dados. Os dados ausentes podem ser ignorados usando classificadores que podem lidar com eles ou imputando-os, por exemplo, definindo os valores para a média. Importância condicionalfoi abordada em uma segunda publicação de Strumbelj et al [2]. Eles estenderam a abordagem original, criando não apenas instâncias decompostas de um único recurso, mas observaram como a previsão muda para cada subconjunto do conjunto de valores de recursos. É claro que isso é computacionalmente muito caro (como eles se mencionam e tentam melhorar com amostras mais inteligentes em Strumbelj e Kononenko [3]).

A propósito: para dados binários, esse problema se torna muito mais fácil, pois você só precisa comparar a previsão entre o atributo presente e o presente . Martens e Provost [4] discutiram isso para classificação de documentos.

Outra abordagem para encontrar grupos de características significativas foi proposta por Andreas Henelius em [5] e [6]. A idéia de seu algoritmo GoldenEye é permutar os dados dentro da classe e do grupo de recursos. Imagine uma tabela de dados em que cada linha represente uma instância e cada coluna seja um recurso. Em cada coluna, todas as linhas que compartilham a mesma classe são permutadas. Os recursos são agrupados, ou seja, permutados juntos. Se a classificação nos dados permutados for muito diferente (pior) que os dados originais, o agrupamento atual não refletirá o agrupamento verdadeiro. Confira as publicações, é melhor descrito lá. Essa abordagem também se torna computacionalmente cara .

Eu também gostaria de me referir às publicações de Josua Krause [7], [8]. Ele desenvolveu fluxos de trabalho de análise visual interativa para a análise de problemas de classificação baseados em instâncias binárias, incluindo um PDP aprimorado. Eles são bem escritos e uma leitura interessante.


[1] Robnik-Šikonja, M. (2004, setembro). Melhorando florestas aleatórias. Na conferência européia sobre aprendizado de máquina (pp. 359-370). Springer, Berlim, Heidelberg.

[2] Štrumbelj, E., Kononenko, I. & Šikonja, MR (2009). Explicando as classificações da instância com interações de subconjuntos de valores de recursos. Engenharia de Dados e Conhecimento, 68 (10), 886-904.

[3] Štrumbelj, E. e Kononenko, I. (2014). Explicar modelos de previsão e previsões individuais com contribuições de recursos. Sistemas de conhecimento e informação, 41 (3), 647-665.

[4] Martens, D. e Provost, F. (2013). Explicando as classificações de documentos orientadas a dados.

[5] Henelius, A., Puolamäki, K., Boström, H., Asker, L. e Papapetrou, P. (2014). Uma espiada na caixa preta: explorando os classificadores por randomização. Mineração de dados e descoberta de conhecimento, 28 (5-6), 1503-1529. #

[6] Henelius, A., Puolamäki, K., Karlsson, I., Zhao, J., Asker, L., Boström, H., & Papapetrou, P. (2015, abril). Goldeneye ++: Um olhar mais atento à caixa preta. No Simpósio Internacional de Aprendizagem Estatística e Ciências dos Dados (pp. 96-105). Springer, Cham.

[7] Krause, J., Perer, A. & Ng, K. (2016, maio). Interagindo com as previsões: inspeção visual dos modelos de aprendizado de máquina da caixa preta. Em Anais da Conferência CHI de 2016 sobre fatores humanos em sistemas de computação (pp. 5686-5697). ACM.

[8] Krause, J., Dasgupta, A., Swartz, J., Aphinyanaphongs, Y., & Bertini, E. (2017). Um fluxo de trabalho para diagnóstico visual de classificadores binários usando explicações em nível de instância. pré-impressão do arXiv arXiv: 1705.01968.

tsabsch
fonte
Que resposta brilhante, e está de acordo com muitos dos meus pensamentos sobre este tópico. Muito obrigado pelo seu tempo e experiência. As referências são particularmente úteis.
abrindo a caixa-preta
2
+1 O artigo de 2014 da Štrumbelj & Kononenko não recebe remotamente o reconhecimento que merece. Sua abordagem da teoria de jogos é como " WOW! "
usεr11852
0

Dois outros métodos que vale a pena mencionar aqui são:

1) O algoritmo SHAP de Lundberg & Lee , uma extensão da abordagem teórica dos jogos de Štrumbelj & Kononenko, que eles alegam unificar o LIME e várias outras medidas de importância local; e

2) O método contrafactual de Wachter et al. , Baseado em redes adversárias generativas.

Ambos os métodos têm vantagens e desvantagens. O SHAP é muito rápido e vem com uma implementação Python fácil de usar . Infelizmente, no entanto, ele sempre compara pontos com o centróide de dados, que pode não ser o contraste relevante em alguns casos. Além disso, como LIME e vários outros algoritmos, ele assume (ou reforça) a linearidade local, o que pode levar a resultados instáveis ​​ou pouco informativos quando nosso caso de interesse estiver próximo a uma região distintamente não linear do limite de decisão ou da superfície de regressão.

A solução de Wachter et al. É mais flexível a esse respeito, um desvio refrescante do que Lundberg & Lee chamam de paradigma "atribuição de recurso aditivo". No entanto, não conheço nenhuma implementação de código aberto. A sobrecarga adicional do treinamento da GAN também pode ser extremamente onerosa para alguns conjuntos de dados.

dswatson
fonte