Depois que uma fonte de viés é identificada nos dados de treinamento, podemos tomar medidas preventivas para mitigar os efeitos. Há duas estratégias principais que os engenheiros de machine learning (ML) normalmente usam para corrigir a viés:
- Aumente os dados de treinamento.
- Ajustar a função de perda do modelo.
Como aumentar os dados de treinamento
Se uma auditoria dos dados de treinamento tiver revelado problemas com dados ausentes, incorretos ou distorcidos, a maneira mais direta de resolver o problema é, geralmente, coletar mais dados.
No entanto, embora aumentar os dados de treinamento seja ideal, a desvantagem dessa abordagem é que ela também pode ser inviável devido à falta de dados disponíveis ou restrições de recursos que impedem a coleta de dados. Por exemplo, coletar mais dados pode ser muito caro, demorado ou inviável devido a restrições legais/de privacidade.
Como ajustar a função de otimização do modelo
Nos casos em que a coleta de dados de treinamento adicionais não é viável, outra abordagem para reduzir a viés é ajustar a forma como a perda é calculada durante o treinamento do modelo. Normalmente, usamos uma função de otimização, como a perda de registro, para penalizar previsões de modelo incorretas. No entanto, a perda de registro não considera a associação a subgrupos. Em vez de usar a perda de registro, podemos escolher uma função de otimização projetada para penalizar erros de forma justa, que contrapõe os desequilíbrios identificados nos dados de treinamento.
A biblioteca Model Remediation do TensorFlow fornece utilitários para aplicar duas técnicas diferentes de mitigação de viés durante o treinamento de modelo:
MinDiff: o objetivo do MinDiff é equilibrar os erros de duas fatias diferentes de dados (alunos do sexo masculino/feminino em comparação com alunos não binários) adicionando uma penalidade por diferenças nas distribuições de previsão dos dois grupos.
Pareamento de logit contrafactual: o objetivo do pareamento de logit contrafactual (CLP, na sigla em inglês) é garantir que a alteração de um atributo sensível de um determinado exemplo não altere a previsão do modelo para esse exemplo. Por exemplo, se um conjunto de dados de treinamento tiver dois exemplos com valores de recursos idênticos, exceto que um tem um valor
genderdemalee o outro tem um valorgenderdenonbinary, o CLP vai adicionar uma penalidade se as previsões desses dois exemplos forem diferentes.
As técnicas escolhidas para ajustar a função de otimização dependem dos casos de uso do modelo. Na próxima seção, vamos analisar como abordar a tarefa de avaliar a imparcialidade de um modelo considerando esses casos de uso.