Cálculo de métricas para modelos de ML com o SDK do Python

Você pode monitorar, gerenciar e controlar modelos de aprendizado de máquina de forma programática. {: .shortdesc} Use o SDK Python para calcular métricas de avaliação e algoritmos em um ambiente de tempo de execução de notebook ou descarregados como tarefas Spark em IBM Analytics Engine para aprendizado de máquina e avaliações.

O SDK do ibm_watson_openscalePython suporta as seguintes métricas e algoritmos de explicação para modelos de ML.

transformador FairScore

Você pode usar o transformador de polarização de tensão ( FairScore ) como uma técnica de mitigação de polarização pós-processamento. Essa técnica transforma estimativas de probabilidade ou pontuações de modelos de classificação binária probabilística em relação a metas de equidade. Para usar um transformador d FairScore, você deve treinar um transformador de pontuação Fair.

Pós-processador de equidade individual

O pós-processador de equidade individual é um algoritmo transformador de pós-processamento que transforma pontuações individuais para alcançar a equidade individual. Você pode usá-lo com o SDK Python para oferecer suporte à classificação de texto em várias classes. Você deve treinar esse algoritmo antes de poder usá-lo para transformar os resultados do modelo.

Redução de entrada

Você pode usar o algoritmo de redução de entrada para calcular o conjunto mínimo de recursos que deve especificar para manter as previsões do modelo consistentes. O algoritmo exclui os recursos que não afetam as previsões do modelo.

Compensação de probabilidade

A compensação de probabilidade (LC) é uma estrutura para explicar os desvios da previsão de um modelo de caixa preta em relação à verdade fundamental. Com os dados de teste e a função de predição de um modelo caixa preta, a LC pode identificar as anomalias nos dados do teste e explicar o que fez com que a amostra se tornar uma anomalia. A explicação LC é fornecida como deltas, que ao serem somadas aos dados de teste originais ou anomalia, converge a predição do modelo para a verdade absoluta. A LC fornece explicações locais e é suportada apenas para modelos de regressão.

Explicações locais interpretáveis independentes do modelo (LIME)

O LIME identifica quais características são mais importantes para um ponto de dados específico, analisando até 5.000 outros pontos de dados próximos. Em uma configuração ideal, os recursos com alta importância na LIME são os recursos que são mais importantes para esse ponto de dados específico. Você pode gerar explicações LIME para modelos com dados multimodais que contêm recursos com dados estruturados e não estruturados. Os dados estruturados podem conter dados numéricos e categóricos. Os dados não estruturados podem conter uma coluna de texto.

Disparidade média individual

Você pode usar a disparidade média individual para verificar se o seu modelo gera previsões ou pontuações semelhantes para amostras semelhantes. Essa métrica calcula a diferença nas estimativas de probabilidade de modelos de classificação multiclasse para amostras semelhantes.

Varredura multidimensional de subconjuntos

Você pode usar o algoritmo de varredura de subconjunto multidimensional como um método geral de varredura de viés. Este método detecta e identifica quais subgrupos de características têm viés preditivo estatisticamente significativo para um classificador binário probabilístico. Este algoritmo ajuda você a decidir quais recursos são os atributos protegidos e quais valores desses recursos são o grupo privilegiado para avaliações de monitoramento.

Extração de atributos protegidos

O algoritmo de extração de atributos protegidos transforma conjuntos de dados de texto em conjuntos de dados estruturados. O algoritmo tokeniza os dados de texto, compara os dados com os padrões especificados e extrai o atributo protegido do texto para criar dados estruturados. Você pode usar esses dados estruturados para detectar preconceitos contra o atributo protegido com um algoritmo de detecção de preconceitos.

O algoritmo de extração de atributos protegidos só suporta o gênero como atributo protegido.

Perturbação de atributos protegidos

O algoritmo de perturbação de atributos protegidos gera afirmações contrafactuais através da identificação de padrões de atributos protegidos em conjuntos de dados de texto. Ele também tokeniza o texto e perturba as palavras-chave nos dados de texto para gerar declarações. Você pode usar os conjuntos de dados originais e perturbados para detectar viés contra o atributo de proteção com um algoritmo de detecção de viés. O algoritmo de perturbação de atributos protegidos só suporta o gênero como atributo protegido.

explicador Protodash

O explicador protodash identifica os dados de entrada de um conjunto de referência que precisam de explicações. Este método minimiza a discrepância média máxima (MMD) entre os pontos de dados de referência e uma série de instâncias selecionadas a partir dos dados de treinamento. Para ajudar você a entender melhor as previsões do seu modelo, as instâncias dos dados de treinamento imitam uma distribuição semelhante à dos pontos de dados de referência.

Explicador aditivo de Shapley (SHAP)

SHAP é uma abordagem baseada na teoria dos jogos que explica os resultados dos modelos de aprendizado de máquina. Conecta a alocação de crédito ideal com explicações locais usando valores Shapley e suas extensões relacionadas.

O SHAP atribui a cada característica do modelo um valor de importância para uma previsão específica, chamado valor de Shapley. O valor Shapley é a contribuição marginal média de um valor de recurso em todos os grupos possíveis de recursos. Os valores SHAP das características de entrada são as somas da diferença entre a linha de base ou a saída esperada do modelo e a saída atual do modelo para a previsão que está sendo explicada. A saída do modelo de linha de base pode se basear no resumo dos dados de treinamento ou em qualquer subconjunto de dados para o qual as explicações devem ser geradas.

Os valores Shapley de um conjunto de transações podem ser combinados para obter explicações globais que fornecem uma visão geral de quais recursos de um modelo são mais importantes. Você pode gerar explicações SHAP para modelos de texto não estruturados para entender como os resultados são previstos.

Diferencial empírico suavizado (SED)

O SED é uma métrica de equidade que você pode usar para descrever a equidade das previsões do seu modelo. O SED quantifica a diferença na probabilidade de resultados favoráveis e desfavoráveis entre grupos que se cruzam e são divididos por características. Todos os grupos em cruzamento são iguais, portanto, não há grupos desprivilegiados ou privilegiados. Este cálculo produz um valor SED que é a proporção mínima da probabilidade suavizada Dirichlet para resultados favoráveis e desfavoráveis entre grupos em cruzamento no conjunto de dados. O valor está no intervalo de 0 a 1, excluindo 0 e 1, e um valor maior especifica um resultado melhor.