Introduction to Explainable AI (ML Tech Talks)
Introdução à IA Explicável
O que é IA Explicável?
- Doug Kelly, engenheiro de soluções em aprendizado de máquina e instrutor no Google Cloud, introduz o conceito de IA explicável, focando na compreensão e confiança nas previsões dos modelos de ML.
- A apresentação abordará a diferença entre interpretabilidade e explicabilidade, além de técnicas de interpretabilidade e um método específico chamado gradientes integrados.
Importância da Interpretabilidade
- A interpretabilidade é crucial para entender como os modelos tomam decisões. Um exemplo prático é a identificação correta de uma imagem de um barco de incêndio.
- Gradientes integrados ajudam a destacar pixels importantes na decisão do modelo, permitindo insights sobre o que o modelo "vê".
Aplicações Práticas da IA Explicável
Diagnóstico Preventivo
- A aplicação da IA explicável pode melhorar diagnósticos preventivos, como na retinopatia diabética, ao incorporar pontuações confiáveis do modelo e mapas térmicos de atribuição.
- Isso aumenta a precisão dos médicos ao classificar imagens, destacando características frequentemente negligenciadas.
Construindo Confiança com Stakeholders
- A IA explicável visa construir confiança com stakeholders ao traduzir previsões do modelo em termos compreensíveis para humanos.
- As técnicas se baseiam em diversas disciplinas como ciência da computação, matemática e psicologia comportamental.
Desafios e Direções Futuras
Evolução da Pesquisa em IA Explicável
- Embora não seja um campo novo, houve um ressurgimento desde 2015 devido à crescente adoção de sistemas complexos de aprendizado profundo.
- Modelos mais complexos apresentam novos desafios para engenheiros e stakeholders quanto à sua interpretabilidade.
Grupos Interessados
- Existem três grupos principais: engenheiros (focando em técnicas não interpretáveis), consumidores (buscando entender as previsões do modelo), e reguladores (assegurando conformidade legal).
- Explicações interpretáveis ajudam reguladores a rastrear previsões inesperadas até suas entradas.
Integração da Explicabilidade nos Fluxos de Trabalho
Casos Comuns no Fluxo de Trabalho
- A compreensão do modelo é crítica para várias tarefas no desenvolvimento e operação dos sistemas de aprendizado de máquina.
Exemplos Práticos:
- Apoio à Decisão: Explicar previsões ajuda na tomada informada por humanos.
- Depuração: Oferece insights detalhados sobre camadas do modelo para ações corretivas.
- Refinamento: Identifica problemas comuns como desvio ou mudança nos dados durante a coleta.
A Importância da Interpretabilidade em Modelos de Machine Learning
O que é Interpretabilidade?
- Explicações interpretáveis permitem que reguladores identifiquem previsões inesperadas e informem ações corretivas.
- A interpretabilidade se refere à capacidade do modelador de prever o que acontecerá com mudanças nos parâmetros de entrada ou do algoritmo.
Visualizações e Ferramentas
- Exemplos como árvores de decisão e redes neurais no TensorFlow ajudam a entender como os modelos geram suas previsões.
- Embora essas visualizações sejam úteis, elas não são significativas para todos os stakeholders, sendo necessário um interface de tradução entre explicações do modelo e humanas.
Desafios da Inteligência Artificial Explicável
- Desde 2012, o sucesso do deep learning trouxe desafios em termos de explicabilidade, resultando em falhas notórias na implementação de ML.
- Modelos opacos podem reforçar preconceitos indesejados, levando a resultados ruins para muitos stakeholders.
Métodos de Interpretabilidade
- Desde 2015, houve uma mudança significativa para métodos interpretáveis em ML para descompactar modelos complexos.
- Não existe um único método; há várias abordagens disponíveis dependendo das necessidades específicas.
Critérios para Boas Explicações
- As explicações devem ser completas, precisas, significativas e consistentes. Cada método deve fornecer evidências claras sobre as saídas do modelo.
- É importante considerar o contexto mais amplo ao escolher um método interpretável.
Taxonomia dos Métodos de Interpretabilidade
Intrínseca vs. Pós-hoc
- A interpretabilidade intrínseca refere-se a modelos simples (ex: árvores de decisão), enquanto a pós-hoc analisa modelos após o treinamento (ex: importância das características por permutação).
Local vs. Global
- A interpretação local foca em previsões individuais; já a global abrange todo o espaço preditivo do modelo.
Específico vs. Agnóstico ao Modelo
Métodos de Interpretação em IA Explicável
Exemplos e Métodos de Interpretação
- Exemplos como SHAP e Line são portáteis entre diferentes tipos de modelos, incluindo árvores aumentadas e redes neurais. A decisão sobre qual método usar é mais uma fronteira difusa.
- Métodos de interpretação diferem na saída das explicações; alguns retornam estatísticas de características, enquanto outros extraem conceitos, regras de decisão ou visualizações resumidas.
Gradientes Integrados
- Agora que os conceitos em IA explicável estão claros, vamos explorar a técnica chamada gradientes integrados.
- Gradientes integrados visam explicar a relação entre as previsões do modelo e suas características, sendo útil para entender importâncias das características e identificar distorções nos dados.
Funcionamento dos Gradientes Integrados
- É um método pós-hoc que funciona com qualquer modelo diferenciável, principalmente explicando previsões individuais. Utiliza gradientes como medida de importância no espaço das características.
- As atribuições dos gradientes integrados podem ser agregadas (por exemplo, média ou mediana), permitindo uma visão global da importância das características do modelo.
Comparação com Métodos Anteriores
- Métodos iniciais para interpretar redes neurais usavam gradientes que indicam quais características têm a maior inclinação local em relação à previsão do modelo.
- No entanto, os gradientes podem saturar à medida que o modelo aprende relações complexas, tornando-se pequenos ou até zero mesmo quando críticos para a previsão.
Visualização e Intuição dos Gradientes
- A visualização mostra que os gradientes integrados identificam melhor as bordas importantes do objeto analisado em comparação aos gradientes padrão.
- O modelo é uma função aprendida que mapeia valores de entrada (pixels da imagem) para probabilidades definidas por classes entre 0 e 1.
Aplicação Prática dos Gradientes Integrados
- A aplicação prática envolve acumular os gradientes locais para criar um escore global sobre como cada pixel impacta a probabilidade total da saída do modelo.
- O tutorial pode ser seguido sem entender todos os detalhes matemáticos; ainda assim, isso pode agregar valor ao trabalho realizado.
Implementação Técnica
- Os gradientes integrados podem ser aplicados a qualquer modelo diferenciável usando versões pré-treinadas disponíveis no TensorFlow Hub.
- O tutorial também aborda o carregamento e pré-processamento de imagens utilizando utilitários do TensorFlow.
Equação Original dos Gradientes Integrados
- A equação original será traduzida da notação matemática para código em cinco etapas detalhadas nas próximas partes da apresentação.
Cálculo de Gradientes e Interpolação em Imagens
Interpolação Linear e Importância dos Gradientes
- O processo envolve calcular gradientes a cada passo para representar a importância, seguido pela média desses gradientes. A interpolação linear é gerada entre uma imagem base e a imagem original.
- A constante na equação aumenta consistentemente a intensidade das imagens interpoladas, criando tensores de imagens com brilho crescente entre as imagens base e de entrada.
Cálculo de Gradientes
- Os gradientes medem a relação entre as características de entrada e as previsões do modelo. Para imagens, eles indicam quais pixels afetam mais as probabilidades previstas pelo modelo.
- O objeto TensorFlow 2 gradient tape registra os gradientes entre as probabilidades previstas e cada imagem interpolada, utilizando derivadas parciais representadas pela letra grega delta.
Visualização dos Gradientes
- As imagens "fantasmas" representam pequenas mudanças no espaço das características, destacando pixels ao redor dos olhos de um panda gigante.
- Um gráfico mostra como a confiança do modelo na classe "fireboat" varia com diferentes valores de alpha. Observa-se que os gradientes se estabilizam antes de atingir uma probabilidade preditiva final.
Aprendizado do Modelo
- O modelo aprende principalmente com os gradientes em valores baixos de alpha, focando nos pixels relevantes para fazer previsões corretas enquanto ainda apresenta incerteza em alguns casos.
Aproximação Numérica dos Gradientes Integrados
- É possível implementar operações que calculam uma média dos gradientes locais entre previsões e imagens interpoladas como uma aproximação da função preditiva do modelo.
- Métodos populares para essa aproximação incluem somas de Riemann. A implementação do método trapezoidal é apresentada para calcular áreas sob a função preditiva.
Implementação da Função de Gradiente Integrado
- Uma função integrada é proposta para uso em fluxos de trabalho de aprendizado de máquina, requerendo parâmetros como um modelo TensorFlow, uma imagem base e um parâmetro m para controle da precisão.
- A função também inclui um parâmetro para o tamanho do lote (batch size), permitindo escalabilidade nas etapas futuras ao lidar com grandes tensores.
Geração e Processamento das Imagens Interpoladas
- Alphas são gerados usando a função TF lenspace, criando um vetor com valores espaçados uniformemente. Isso garante inclusão dos pontos finais da função.
Gradientes Integrados: Interpretação e Visualização
Método de Scatter e Normalização
- O método scatter de um tensor é comparável ao método extend de listas em Python, permitindo a manipulação eficiente de dados.
- A média dos gradientes totais é calculada para aproximar a função preditiva do modelo, essencial para entender o comportamento do modelo.
Visualização dos Gradientes Integrados
- A função de gradientes integrados retorna um tensor que representa as atribuições IG na mesma forma da imagem original, facilitando a visualização.
- Um método eficaz para visualizar os gradientes integrados é somar os valores absolutos das atribuições IG através dos canais de cor da imagem, resultando em uma massa de atribuição em escala de cinza.
- Uma nova abordagem visual preserva a direção do sinal do gradiente (positivo ou negativo), permitindo uma representação mais precisa das combinações de características.
Comparação e Precisão das Atribuições IG
- As primeiras atribuições IG são completas; a soma das atribuições corresponde à diferença entre as saídas do modelo com características específicas e uma linha base.
- As atribuições IG são sensíveis e refletem todas as características que diferem entre as entradas, garantindo que pixels importantes sejam destacados.
Propriedades Desejáveis dos Gradientes Integrados
- As atribuições IG são consistentes entre modelos funcionalmente equivalentes, assegurando reprodutibilidade nas interpretações.
- Os gradientes integrados se destacam pela eficiência computacional e podem ser aplicados a qualquer modelo diferenciável, incluindo aqueles que utilizam texto ou dados estruturados.
Limitações dos Gradientes Integrados
- Apesar da popularidade, os gradientes integrados não fornecem explicações significativas para todos os stakeholders devido à sua natureza local.
- As atribuições IG focam em características individuais e não em interações complexas entre elas, limitando a expressividade das explicações.
Aplicações Práticas dos Gradientes Integrados
- É desafiador selecionar boas linhas base para os gradientes integrados; imagens pretas ou vetores zero são padrões comuns mas têm suas limitações.
- Os gradientes integrados podem ser utilizados para identificar importâncias das características no contexto da detecção de objetos.
Estudo de Caso: Importância das Características
- Ao analisar as importâncias atribuídas aos pixels na imagem de um golden retriever versus um labrador amarelo, observa-se que áreas como rosto e patas são destacadas como diferenciais chave.
- Essa análise visual permite insights sobre estruturas causais subjacentes sem conhecimento prévio sobre as raças caninas.
Refinamento do Modelo com Base nos Insights Obtidos
Análise de Importância de Recursos em Modelos de Aprendizado de Máquina
Monitoramento da Importância dos Recursos ao Longo do Tempo
- O rastreamento da importância dos recursos (IG) ao longo do tempo e em divisões de dados, como as divisões para o dia seguinte e os conjuntos de treino, validação e teste, permite um monitoramento significativo do viés e desvio no treinamento.
- O modelo Inception V1 foi treinado com cerca de 1.000 imagens por classe, incluindo uniformes militares, mas a representação varia significativamente entre países; por exemplo, os uniformes militares dos EUA estão super-representados.
Desempenho do Modelo em Diferentes Contextos
- A inspeção visual das atribuições futuras mostra que o modelo identifica corretamente elementos como colarinho e insígnias militares na imagem da almirante Grace Hopper, mas falha ao identificar uniformes mais antigos.
- A análise sugere que o modelo se concentra mais no comprimento do casaco do que nas insígnias militares; isso indica uma oportunidade para melhorar o desempenho através da adição de dados variados.
Melhoria da Performance do Modelo
- A previsão errônea do uniforme militar grego pelo Inception V1 destaca a falta de representação suficiente nos dados de treinamento; isso é comum em muitos domínios no aprendizado de máquina.
- As atribuições IG oferecem um caminho orientado para coletar conjuntos de dados mais diversos, melhorando assim a performance do modelo.
Perguntas-Chave para Depuração com Atribuições IG
- Ao usar atribuições IG para depuração, é importante investigar quais características são importantes e como elas generalizam no aprendizado do modelo.
- Comparações lado a lado entre previsões corretas e incorretas podem fornecer insights valiosos sobre as limitações do modelo.
Ferramentas e Direções Futuras
- O Google AI What If Tool pode ser utilizado para inspecionar interativamente conjuntos de dados e modelos enquanto incorpora atribuições IG para uma visão mais profunda das características.
- O Google Cloud oferece serviços gerenciados como Explainable AI que suportam métodos interpretáveis incluindo gradientes integrados.
Seleção Baseline em Gradientes Integrados
- A seleção da baseline é crucial na interpretação dos gradientes integrados; uma imagem preta padrão pode levar à perda de informações importantes sobre pixels relevantes.
Melhorias na Interpretação de Modelos de Aprendizado de Máquina
Problemas com Atribuições de Gradientes Integrados (IG)
- A média entre múltiplas linhas de base aleatórias e a desfocagem dos inputs afetam a interpretabilidade das atribuições IG, como demonstrado na imagem do "fireboat".
- A mudança da linha de base para uma imagem branca corrige a interpretação das atribuições IG, mostrando que a seleção da linha de base é crucial para resultados precisos.
Introdução ao Método XRAI
- O método XRAI, desenvolvido pela Google Research, aborda o problema da seleção da linha de base em atribuições explicáveis.
- Ao invés de identificar pixels individualmente importantes, o XRAI destaca regiões inteiras da imagem original que são relevantes para a previsão.
Funcionamento do XRAI
- O processo do XRAI envolve quatro etapas:
- Dividir a imagem em pequenas regiões sobrepostas.
- Calcular as atribuições IG para imagens com linhas de base preta e branca.
- Classificar as regiões com base nas atribuições positivas.
- Retornar as regiões mais importantes para a previsão.
Desempenho do XRAI
- O XRAI supera técnicas existentes em benchmarks industriais padrão, apresentando melhor desempenho e precisão na identificação de objetos relevantes nos conjuntos de dados.
Previsões Futuras sobre IA Explicável
- Espera-se que IA explicável se torne um componente padronizado em pipelines automatizados e monitoramento operacional nos próximos anos.
- Métodos agnósticos ao modelo continuarão sendo o foco principal da pesquisa em IA explicável, enquanto modelos intrínsecos ainda terão sua importância.