Aplicando testes de imparcialidade para experimentos do AutoAI
Avalie um experimento para equidade para garantir que seus resultados não sejam tendutos a favor de um grupo sobre outro.
Limitações
As avaliações de justiça não são suportadas para experimentos de séries temporais.
Avaliando experimentos e modelos quanto a imparcialidade
Ao definir um experimento e produz um modelo de aprendizado de máquina, você quer ter certeza de que seus resultados sejam confiáveis e imparciais. A propensão em um modelo de aprendizado de máquina pode resultar quando o modelo aprende as lições erradas durante o treinamento Esse cenário pode resultar quando dados insuficientes ou coleta ou gerenciamento de dados insatisfatórios resultam em um resultado ruim quando o modelo gera predições. É importante avaliar um experimento para sinais de viés para corrigi-los quando necessário e construir confiança nos resultados do modelo.
O AutoAI inclui as ferramentas, técnicas e recursos a seguir para ajudar a avaliar e corrigir um experimento para propensão.
Definições e termos
Equitativo Atributo -Bias ou Fairness é tipicamente medido usando-se um atributo de justiça como gênero, etnia ou idade.
Grupo monitorado/de referência - Um grupo monitorado são aqueles valores do atributo de imparcialidade para o qual você deseja medir o viés. Os valores no grupo monitorado são comparados a valores no grupo de referência. Por exemplo, se Fairness Attribute=Gender for usado para medir o viés contra pessoas do sexo feminino, então o valor do grupo monitorado é "Feminino" e o valor do grupo de referência é "Masculino".
Resultado favorável / Desfavorável -Um conceito importante na detecção de viés é o de resultado favorável e desfavorável do modelo. Por exemplo, Claim approved pode ser considerado um resultado favorável e Claim denied pode ser considerado como um resultado desfavorável.
Impacto disparado -A métrica usada para medir viés (computada como a proporção de porcentagem de resultado favorável para o grupo monitorado para a porcentagem de resultado favorável para o grupo de referência). A propensão é considerada existente se o valor de impacto diferente for menor que um limite especificado.
Por exemplo, se 80% das solicitações de seguro feitas por homens forem aprovadas, mas apenas 60% das solicitações feitas por mulheres forem aprovadas, o impacto díspar será: 60/80 = 0.75. Geralmente, o valor limite para viés é de 0,8. Como essa razão de impacto díspar é menor que 0,8, o modelo é considerado ser parcial.
Observe que quando a proporção de impacto diferente é maior que 1.25 [o valor inverso (impacto1/disparate ) está abaixo do limite 0.8] ele também é considerado como propenso.
Assista a um vídeo sobre avaliar e melhorar a justiça
Assista a este vídeo para ver como avaliar um modelo de aprendizado de máquina para a equidade para garantir que seus resultados não sejam tendóbios.
Este vídeo fornece um método visual para aprender os conceitos e tarefas nesta documentação.
Aplicando teste de imparcialidade para um experimento de AutoAI na IU
Abra Configurações do experimento.
Clique na guia Imparcialidade.
Ative as opções para imparcialidade. As opções são as seguintes:
- Avaliação de imparcialidade: ative essa opção para verificar cada pipeline quanto a viés calculando a razão de impacto díspar. Esse método controla se um pipeline tem uma tendência de fornecer um resultado favorável (preferencial) para um grupo mais frequentemente do que outro.
- Limiar de Equidade: Definir um limite de equidade para determinar se o viés existe em um pipeline com base no valor da ração de impacto díspares. O padrão é 80, o que representa uma proporção de impacto diferente menor que 0.80
- Resultados favoráveis: especifique o valor a partir de sua coluna de predição que seria considerado favorável. Por exemplo, o valor pode ser "aprovado", "aceito" ou o que se ajustar ao seu tipo de predição.
- Método automático de atributo protegido: Escolha como avaliar recursos que são uma fonte potencial de viés. É possível especificar a detecção automática, em cujo caso o AutoAI detecta atributos comumente protegidos, incluindo: sexo, etnia, estado civil, idade e CEP. Dentro de cada categoria, o AutoAI tenta determinar um grupo protegido. Por exemplo, para a categoria
sex, o grupo monitorado seriafemale.
Nota: no modo automático, é provável que um recurso não seja identificado corretamente como um atributo protegido se tiver valores atípicos, por exemplo, estar em um idioma diferente do inglês. O auto-detectar é suportado apenas para o inglês.- Método manual de atributo protegido: Especifique manualmente um resultado e forneça o atributo protegido, escolhendo de uma lista de atributos. Observe que quando você fornece atributos manualmente, deve-se definir um grupo e especificar se é provável que ele tenha os resultados esperados (o grupo de referência) ou deve ser revisado para detectar a variação dos resultados esperados (o grupo monitorado).
Por exemplo, esta imagem mostra um conjunto de grupos de atributos especificados manualmente para monitoramento.

Salve as configurações para aplicar e execute o experimento para aplicar a avaliação de imparcialidade em seus pipelines.
Notas:
- Para modelos multiclasse, é possível selecionar diversos valores na coluna de predição para classificar como favoráveis ou não.
- Para modelos de regressão, é possível especificar um intervalo de resultados considerados favoráveis ou não.
- As avaliações de justiça não estão atualmente disponíveis para experimentos de séries temporais.
Lista de atributos detectados automaticamente para medir a justiça
Quando a detecção automática estiver ativada, o AutoAI detectará automaticamente os atributos a seguir se eles estiverem presentes nos dados do treinamento Os atributos devem estar em inglês.
- age
- cidad_status
- cor
- deficiência
- etnia
- sexo
- informações genéticas
- deficiência
- idioma
- Conjugal
- political_crença
- gravidez
- religião
- status de veterano
Aplicando teste de imparcialidade para um experimento de AutoAI em um bloco de notas
É possível executar o teste de justiça em um experimento do AutoAI que é treinado em um bloco de notas e estender os recursos além do que é fornecido na IU.
Exemplo de detecção de viés
Neste exemplo, ao usar a API Python de tempo de execução watsonx.ai (ibm-watson-machine-learning), a configuração do otimizador para detecção de viés é configurada com a seguinte entrada, onde:
- name - nome do experimento
- prediction_type - tipo do problema
- prediction_column - nome da coluna de destino
- fairness_info - configuração da detecção de viés
fairness_info = {
"protected_attributes": [
{
"feature": "personal_status",
"reference_group": ["male div/sep", "male mar/wid", "male single"],
"monitored_group": ["female div/dep/mar"]
},
{
"feature": "age",
"reference_group": [[26, 100]],
"monitored_group": [[1, 25]]}
],
"favorable_labels": ["good"],
"unfavorable_labels": ["bad"],
}
from ibm_watson_machine_learning.experiment import AutoAI
experiment = AutoAI(wml_credentials, space_id=space_id)
pipeline_optimizer = experiment.optimizer(
name='Credit Risk Prediction and bias detection - AutoAI',
prediction_type=AutoAI.PredictionType.BINARY,
prediction_column='class',
scoring='accuracy',
fairness_info=fairness_info,
retrain_on_holdout=False
)
Avaliando resultados
É possível visualizar os resultados da avaliação para cada pipeline.
- Na página Resumo do experimento, clique no ícone de filtro para a tabela de classificação de pipeline.
- Escolha as métricas de impacto díspar para o seu experimento. Essa opção avalia uma métrica geral e uma para cada grupo monitorado.
- Revise as métricas de pipeline para impacto díspar para determinar se você tem um problema com viés ou apenas para determinar qual pipeline tem o melhor desempenho para uma avaliação de imparcialidade.
Neste exemplo, o pipeline que foi classificado primeiro quanto à precisão também tem uma pontuação de renda díspar que está dentro dos limites aceitáveis.

Mitigação de viés
Se for detectada uma tendência em um experimento, você poderá atenuá-la otimizando o experimento com o uso de "pontuadores combinados": accuracy_and_disparate_impact ou ' r2_and_disparate_impact, ambos definidos pelo código aberto ' Pacote LALE.
Pontuadores combinados são usados no processo de procura e otimização para retornar modelos justos e precisos.
Por exemplo, para otimizar a detecção de viés para um experimento de classificação:
- Abra Configurações do experimento.
- Na página Previsões , escolha otimizar Precisão e impacto diferente no experimento.
- Execute o experimento novamente
A Métrica Precisão e impacto díspar cria uma pontuação combinada para precisão e equidade para experimentos de classificação. Uma pontuação superior indica melhores medidas de desempenho e equidade. Se a pontuação de impacto diferente estiver entre 0.9 e 1.11 (um nível aceitável), a pontuação de precisão será retornada. Caso contrário, um valor de impacto diferente inferior à pontuação de precisão será retornado, com um valor inferior (negativo) que indica uma diferença de justiça.
Leia esta postagem do blog Medium sobre detecção de viés no AutoAI.