Monitorar imparcialidade e viés para modelos de classificação
Com o monitoramento databricks lakehouse , você pode monitorar as previsões de um modelo de classificação para ver se o modelo funciona de forma semelhante em dados associados a diferentes grupos. Por exemplo, você pode investigar se um classificador dedefault gera a mesma taxa de falsos positivos para candidatos de diferentes grupos demográficos.
Trabalhe com métricas de imparcialidade e viés
Para monitorar a imparcialidade e o viés, você cria uma expressão de fatia Boolean . O grupo definido pela expressão de fatia avaliada como True
é considerado o grupo protegido (ou seja, o grupo contra o qual você está verificando a tendência). Por exemplo, se você criar slicing_exprs=["age < 25"]
, a fatia identificada por slice_key
= “idade < 25” e slice_value
= True
será considerada o grupo protegido e a fatia identificada por slice_key
= “idade < 25 ” e slice_value
= False
é considerado o grupo desprotegido.
O monitor compute automaticamente as métricas que comparam o desempenho do modelo de classificação entre os grupos. As seguintes métricas são relatadas na tabela de métricas de perfil:
predictive_parity
, que compara a precisão do modelo entre os grupos.predictive_equality
, que compara as taxas de falsos positivos entre os grupos.equal_opportunity
, que mede se um rótulo é previsto igualmente bem para ambos os grupos.statistical_parity
, que mede a diferença nos resultados previstos entre os grupos.
Essas métricas são calculadas apenas se o tipo de análise for InferenceLog
e problem_type
for classification
.
Para definições dessas métricas, consulte as seguintes referências:
Artigos da Wikipédia sobre justiça no machine learning:
https://en.wikipedia.org/wiki/Fairness_(machine_learning)
Definições de imparcialidade explicadas, Verma e Rubin, 2018
Saídas de métricas de imparcialidade e viés
Consulte a referência da API para obter detalhes sobre essas métricas e como view -las nas tabelas de métricas. Todas as métricas de imparcialidade e viés compartilham o mesmo tipo de dados conforme mostrado abaixo, mostrando as pontuações de imparcialidade compute em todas as classes previstas de maneira "um contra todos" como valor- keypar.
Você pode criar um alerta nessas métricas. Por exemplo, o proprietário do modelo pode configurar um alerta quando o indicador de imparcialidade exceder algum limite e, em seguida, encaminhar esse alerta para uma pessoa ou equipe de plantão para investigação.