Definir as configurações de visualização para classificação de imagens do AutoML

A Explainable AI oferece recursos integrados de visualização para dados de imagem. É possível configurar visualizações para modelos de classificação de imagem do AutoML.

Ao solicitar uma explicação sobre um modelo de classificação de imagens, você recebe a classe prevista junto com uma sobreposição de imagem mostrando quais pixels (gradientes integrados) ou regiões (gradientes integrados ou XRAI) contribuíram com a previsão.

As imagens a seguir mostram visualizações em uma imagem do tipo husky. A visualização à esquerda usa o método de gradientes integrados e destaca áreas de atribuição positiva. A visualização à direita usa um método XRAI com um gradiente de cor indicando áreas de influência menor (azul) e maior (amarelo) para fazer uma previsão positiva.

Uma visualização de atribuição de recursos de um husky siberiano usando gradientes integrados
Uma visualização de atribuição de recursos de um husky siberiano usando XRAI

O tipo de dados usado para trabalhar pode influenciar se você usa uma abordagem de gradientes integrados ou de XRAI para visualizar suas explicações.

  • O XRAI tende a ser melhor com imagens naturais e fornece um resumo de alto nível de insights, como mostrar que a atribuição positiva está relacionada à forma do rosto de um cachorro.
  • Gradientes integrados (IG, na sigla em inglês) tendem a fornecer detalhes no nível de pixel e são úteis para descobrir atribuições mais granulares.

Saiba mais sobre os métodos de atribuição na página de visão geral do Explainable AI.

Primeiros passos

Configure a visualização ao treinar um modelo do AutoML que ofereça suporte à Vertex Explainable AI e ative as explicações ao implantar o modelo.

Opções de visualização

As configurações padrão e recomendadas dependem do método de atribuição (gradientes integrados ou XRAI). A lista a seguir descreve as opções de configuração e como é possível usá-las. Para uma lista completa de opções, consulte a referência da API para a mensagem Visualization.

  • type: o tipo de visualização usado: OUTLINES ou PIXELS. Especifique esse campo somente se estiver usando gradientes integrados; não será possível especificá-lo se você estiver usando XRAI.

    Para gradientes integrados, o campo tem como padrão OUTLINES, que mostra as regiões de atribuição. Para mostrar a atribuição por pixel, defina o campo como PIXELS.

  • polarity: a direcionalidade das atribuições destacadas. positive é definido por padrão, o que destaca as áreas com as atribuições positivas mais altas. Isso significa destacar os pixels que mais influenciaram a previsão positiva do modelo. Definir a polaridade como negative destaca as áreas que levam o modelo a não prever a classe positiva. Usar uma polaridade negativa pode ser útil para depurar seu modelo identificando regiões negativas falsas. Também é possível definir a polaridade como both, que mostra atribuições positivas e negativas.

  • clip_percent_upperbound: exclui as atribuições acima do percentil especificado das áreas destacadas. Usar os parâmetros de corte juntos pode ser útil para filtrar ruídos e facilitar a visualização de áreas de atribuição forte.

  • clip_percent_lowerbound: exclui atribuições abaixo do percentil especificado das áreas destacadas.

  • color_map: o esquema de cores usado para as áreas destacadas. O padrão é pink_green para gradientes integrados, que mostra as atribuições positivas em verde e as negativas em rosa. Para visualizações XRAI, o mapa de cores é um gradiente. O padrão XRAI é viridis, que destaca as regiões mais influentes em amarelo e as menos influentes em azul.

    Para uma lista completa de valores possíveis, consulte a referência da API para a mensagem Visualization.

  • overlay_type: como a imagem original é exibida na visualização. Ajustar a sobreposição poderá ajudar a aumentar a clareza visual se a imagem original dificultar a visualização.

    Para uma lista completa de valores possíveis, consulte a referência da API para a mensagem Visualization.

Exemplos de configurações

Para começar, abaixo estão alguns exemplos de configurações do Visualization que podem ser usados como ponto de partida e imagens que mostram várias configurações aplicadas.

Gradientes integrados

Para gradientes integrados, poderá ser necessário ajustar os valores de corte se as áreas de atribuição tiverem excesso de ruído.

visualization: {
  "type": "OUTLINES",
  "polarity": "positive",
  "clip_percent_lowerbound": 70,
  "clip_percent_upperbound": 99.9,
  "color_map": "pink_green",
  "overlay_type": "grayscale"
}

Veja abaixo duas visualizações usando os tipos outlines e pixels. As colunas "Apenas altamente previsível", "Moderadamente previsível" e "Quase todos" são exemplos de corte em diferentes níveis que podem ajudar a focar sua visualização.

Uma atribuição de recurso, a seguir, com contornos para atribuição de IG

Uma atribuição de recurso, a seguir, com pixels para atribuição de IG

XRAI

Para visualizações XRAI, recomendamos começar sem valores de corte para XRAI porque a sobreposição usa um gradiente para mostrar áreas de atribuição alta e baixa.

visualization: {
  "clip_percent_lowerbound": 0,
  "clip_percent_upperbound": 100,
  "color_map": "viridis",
  "overlay_type": "grayscale"
}

A imagem abaixo é uma visualização XRAI usando o mapa de cores padrão viridis e um intervalo de tipos de sobreposição. As áreas em amarelo indicam as regiões mais influentes que contribuíram de maneira positiva com a previsão.

Uma visualização de atribuição de recurso para atribuição XRAI

A seguir