Revisando as transações debiased

Você pode detectar a parcialidade direta e indireta com a remoção ativa e passiva. A despropensão passiva revela viés, enquanto a despropensão ativa evita viés ao mudar o modelo em tempo real.

O algoritmo aplica um método chamado perturbação para avaliar as diferenças nos resultados esperados nos dados Para obter mais informações sobre como a propensão é calculada, consulte Calculando a justiça.

Ao avaliar a equidade das implantações, são detectadas as transações diretas e viés indireto da tabela de registro de carga útil.

Remoção de propensão passiva

O debiasing passivo ocorre automaticamente, a cada hora. Ela é considerada passiva porque acontece sem a intervenção do usuário. Quando a parcialidade é analisada, ela também desvirtua os dados. Ele analisa o comportamento do modelo e identifica os dados em que o modelo atua de maneira propensa.

Um modelo de aprendizado de máquina é criado para prever se o modelo provavelmente agirá de forma tendenciosa em um determinado ponto de dados novo. Os dados recebidos pelo modelo são analisados, de hora em hora, para encontrar os pontos de dados que causam distorção. Para esses pontos de dados, o atributo de imparcialidade é perturbado de minoria para maioria e de maioria para minoria e os dados perturbados são enviados para o modelo original para predição. A predição do registro perturbado, juntamente com a predição original, é usada para calcular a propensão.

Os registros tendenciosos identificados que o modelo recebe na última hora são reduzidos. A equidade para a saída com debiased também é calculada e exibida na guia Debiased model (Modelo com debiased ).

Remoção de propensão ativa

A remoção de propensão ativa é uma maneira de você solicitar e trazer resultados em propensão para o seu aplicativo por meio do terminal da API de REST. Você pode invocar ativamente as avaliações de modelo para conhecer a previsão tendenciosa do seu modelo, de modo que possa executar seu aplicativo de forma não tendenciosa. Na remoção de propensão ativa, é possível usar um terminal da API de REST de remoção de propensão de seu aplicativo. Esse terminal da API de REST chama internamente o seu modelo e verifica seu comportamento.

Se o modelo estiver agindo de forma tendenciosa, os dados serão perturbados e enviados de volta ao modelo original. Após a análise interna do ponto de dados perturbado, se o modelo estiver se comportando de forma tendenciosa no ponto de dados, a saída do modelo original nos dados perturbados será retornada como a previsão tendenciosa.

Se o modelo original não estiver agindo de forma tendenciosa, a previsão do modelo original será retornada como a previsão tendenciosa. Assim, ao usar esse terminal da API de REST, é possível assegurar que o seu aplicativo não baseia as decisões no resultado.

Revisando dados para valores sem propensão

Quando a avaliação de equidade é executada, os valores reduzidos são armazenados na tabela de registro de carga útil da implantação do modelo. Todas as transações de pontuação feitas por meio desse terminal são automaticamente sem propensão, conforme aplicável.. É possível acessar o terminal de pontuação sem propensão assim como você faria com o terminal de pontuação normal para seu modelo implementado. Além de retornar a resposta de seu modelo implementado, ele também retorna as colunas debiased_prediction e debiased_probability.

  • A coluna debiased_prediction contém o valor de predição sem propensão.

  • A coluna debiased_probability representa a probabilidade da predição sem propensão. Essa matriz de valores duplos representa a probabilidade da predição sem propensão que pertence a uma das classes de predição.

Ativando o parâmetro debiasing

O debiasing é desativado por padrão quando você configura novas implementações. Você também pode definir o parâmetro perform_debias como true na seção de parâmetros do Python SDK ou especificar o rótulo de ambiente PERFORM_DEBIASING em nível de pod para ativar o debiasingm, conforme mostrado no exemplo a seguir:

wos_client.monitor_instances.update(
            monitor_instance_id=<FAIRNESS_MONITOR_INSTANCE_ID>,
            patch_document=[JsonPatchOperation(
                op=OperationTypes.ADD,
                path='/parameters/perform_debias',
                value=True
            )],update_metadata_only=True
        )

Ao corrigir a instância do monitor, o monitor de justiça executa debiasing durante a próxima avaliação.

Para obter mais informações, consulte a documentação do Python SDK.

Revisando as transações debiased

Você pode usar o terminal de transações debiased para revisar transações debiased para avaliações de equidade. Para obter mais informações, consulte Envio de transações de modelo.

Nota: Idealmente, você chamaria diretamente o terminal de debias de seu aplicativo de produção em vez de chamar o terminal de pontuação do provedor de aprendizado de máquina.

Como o terminal de debias lida com o viés de tempo de execução, ele continua a executar verificações de antecedentes para os dados de pontuação da tabela de registro de carga útil. Ele também mantém a atualização do modelo de mitigação de viés, que debitam os pedidos de pontuação.

Você pode configurar um limite de imparcialidade para indicar quando os dados são aceitáveis e imparciais.

Mitigar o viés com uma nova versão do modelo:

  • É necessário construir uma nova versão do modelo que corrige o problema. Os registros tendenciosos são armazenados na tabela de rotulagem manual. Esses registros tendncios devem ser manualmente rotulados e, em seguida, o modelo é reformado através dos dados adicionais para construir uma nova versão do modelo que é imparcial.

Extraia uma lista dos registros tendciais individuais:

  • Conecte-se à tabela de etiquetagem manual e leia os registros usando as consultas SQL padrão.
Nota: Idealmente, você chamaria diretamente o terminal de debias de seu aplicativo de produção em vez de chamar o terminal de pontuação do provedor de aprendizado de máquina.