Applicazione dei test di equità agli esperimenti di " AutoAI "

Valuta l'equità di un esperimento per assicurarti che i risultati non siano distorti a favore di un gruppo rispetto a un altro.

Limitazioni

Le valutazioni di equità non sono supportate per gli esperimenti su serie temporali.

Valutazione di esperimenti e modelli in termini di equità

Quando si definisce un esperimento e si crea un modello di apprendimento automatico, è importante assicurarsi che i risultati siano affidabili e imparziali. In un modello di apprendimento automatico, il bias può verificarsi quando il modello apprende informazioni errate durante l'addestramento. Questa situazione può verificarsi quando l'insufficienza dei dati o una raccolta o gestione inadeguata degli stessi porta a risultati insoddisfacenti nella generazione delle previsioni da parte del modello. È importante valutare un esperimento per individuare eventuali segni di distorsione, al fine di correggerli se necessario e rafforzare la fiducia nei risultati del modello.

AutoAI include i seguenti strumenti, tecniche e funzionalità per aiutarti a valutare e correggere eventuali distorsioni in un esperimento.

Definizioni e termini

Attributo di equità - Il pregiudizio o l'equità vengono solitamente misurati utilizzando un attributo di equità quale il genere, l'etnia o l'età.

Gruppo monitorato/di riferimento - Il gruppo monitorato è costituito dai valori dell'attributo di equità per i quali si desidera misurare la distorsione. I valori del gruppo monitorato vengono confrontati con quelli del gruppo di riferimento. Ad esempio, se Fairness Attribute=Gender viene utilizzato per misurare la discriminazione nei confronti delle donne, il valore del gruppo monitorato è «Donne» e quello del gruppo di riferimento è «Uomini».

Risultato favorevole/sfavorevole - Un concetto importante nell'individuazione dei bias è quello di risultato favorevole e sfavorevole del modello. Ad esempio, Claim approved potrebbe essere considerato un esito favorevole, mentre Claim denied potrebbe essere considerato un esito sfavorevole.

Impatto disparato - Indicatore utilizzato per misurare la distorsione (calcolato come rapporto tra la percentuale di esiti favorevoli per il gruppo monitorato e la percentuale di esiti favorevoli per il gruppo di riferimento). Si ritiene che sussista una discriminazione se il valore dell’impatto disparato è inferiore a una soglia prestabilita.

Ad esempio, se l'80% delle richieste di risarcimento presentate da uomini viene approvato, mentre solo il 60% di quelle presentate da donne viene approvato, l'impatto discriminatorio è: 60/80 = 0.75. In genere, il valore di soglia per la distorsione è pari a 0.8. Poiché questo indice di impatto disparato è inferiore a 0.8, il modello è considerato distorto.

Si noti che quando il rapporto di impatto disparato è superiore a 1.25 [il valore inverso ( 1/disparate impact) è inferiore alla soglia 0.8 ], viene considerato comunque come distorto.

Guarda un video sulla valutazione e il miglioramento dell'equità

Guarda questo video per scoprire come valutare l'equità di un modello di apprendimento automatico e assicurarti che i tuoi risultati non siano distorti.

Questo video offre un approccio visivo per apprendere i concetti e le operazioni descritti in questa documentazione.

Applicazione del test di equità per un esperimento " AutoAI " nell'interfaccia utente

  1. Apri le impostazioni dell'esperimento.

  2. Fai clic sulla scheda "Equità".

  3. Attiva le opzioni per garantire l'equità. Le opzioni sono le seguenti:

    • Valutazione dell'equità: abilitare questa opzione per verificare la presenza di distorsioni in ciascuna pipeline calcolando il rapporto di impatto disparato. Questo metodo consente di verificare se una procedura tende a produrre un risultato favorevole (preferito) per un gruppo più spesso rispetto a un altro.
    • Soglia di equità: impostare una soglia di equità per determinare se in una pipeline sia presente una distorsione, in base al valore del rapporto di impatto disparato. Il valore predefinito è 80, che corrisponde a un rapporto di impatto diseguale inferiore a 0.80.
    • Risultati positivi: indica il valore della colonna delle previsioni che verrebbe considerato positivo. Ad esempio, il valore potrebbe essere "approvato", "accettato" o qualsiasi altro termine adatto al tipo di previsione.
    • Metodo automatico degli attributi protetti: scegliere come valutare le caratteristiche che potrebbero costituire una fonte di distorsione. È possibile impostare il rilevamento automatico; in tal caso, AutoAI rileva gli attributi comunemente protetti, tra cui: sesso, etnia, stato civile, età e codice postale. All'interno di ciascuna categoria, AutoAI cerca di individuare un gruppo protetto. Ad esempio, per la sex categoria, il gruppo monitorato sarebbe female.
    Nota: in modalità automatica, è probabile che una caratteristica non venga identificata correttamente come attributo protetto se presenta valori atipici, ad esempio se è redatta in una lingua diversa dall'inglese. Il rilevamento automatico è supportato solo per l'inglese.
    • Metodo manuale per gli attributi protetti: specificare manualmente un risultato e selezionare l'attributo protetto da un elenco di attributi. Si noti che quando si inseriscono manualmente gli attributi, è necessario definire un gruppo e specificare se è probabile che esso presenti i risultati attesi (il gruppo di riferimento) o se debba essere sottoposto a revisione per individuare eventuali scostamenti dai risultati attesi (il gruppo monitorato).

Ad esempio, questa immagine mostra una serie di gruppi di attributi specificati manualmente ai fini del monitoraggio.

Valutazione di un gruppo per individuare eventuali pregiudizi

Salva le impostazioni per applicarle ed esegui l'esperimento per applicare la valutazione dell'equità alle tue pipeline.

Note:

  • Per i modelli multiclasse, è possibile selezionare più valori nella colonna delle previsioni per classificarli come favorevoli o meno.
  • Per i modelli di regressione, è possibile specificare una serie di risultati considerati favorevoli o meno.
  • Al momento non sono disponibili valutazioni di equità per gli esperimenti su serie temporali.

Elenco degli attributi rilevati automaticamente per la valutazione dell'equità

Quando il rilevamento automatico è abilitato, AutoAI rileverà automaticamente i seguenti attributi, qualora fossero presenti nei dati di addestramento. Gli attributi devono essere in inglese.

  • età
  • status di cittadino
  • colore
  • incapacità
  • etnicità
  • sesso
  • informazioni genetiche
  • handicap
  • lingua
  • coniugale
  • convinzione politica
  • gravidanza
  • religione
  • status_veterano

Applicazione del test di equità a un esperimento di tipo " AutoAI " in un notebook

È possibile eseguire test di equità in un esperimento di " AutoAI " addestrato in un notebook ed estendere le funzionalità oltre quelle offerte dall'interfaccia utente.

Esempio di rilevamento del bias

In questo esempio, utilizzando l'API " Watson Machine Learning " (ibm-watson-machine-learning) di Python, la configurazione dell'ottimizzatore per il rilevamento del bias viene impostata con i seguenti dati di input, dove:

  • nome - nome dell'esperimento
  • prediction_type - tipo di problema
  • prediction_column - nome della colonna di destinazione
  • fairness_info - Configurazione del rilevamento dei pregiudizi
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
   )

Valutazione dei risultati

È possibile visualizzare i risultati della valutazione per ciascuna pipeline.

  1. Nella pagina di riepilogo dell'esperimento, clicca sull'icona del filtro relativa alla classifica della pipeline.
  2. Scegli gli indicatori di impatto discriminatorio per il tuo esperimento. Questa opzione valuta un parametro generale e un parametro per ciascun gruppo monitorato.
  3. Esamina le metriche della pipeline relative all'impatto differenziale per stabilire se sussiste un problema di parzialità o semplicemente per individuare quale pipeline offre prestazioni migliori ai fini di una valutazione dell'equità.

In questo esempio, la pipeline che si è classificata al primo posto in termini di accuratezza presenta anche un punteggio relativo al divario di reddito che rientra nei limiti accettabili.

Visualizzazione dei risultati relativi all'equità

Riduzione dei pregiudizi

Se in un esperimento viene rilevata una distorsione, è possibile mitigarla ottimizzando l'esperimento tramite l'uso di "valutatori combinati": accuracy_and_disparate_impact o r2_and_disparate_impact, entrambi definiti dal pacchetto open source LALE.

I punteggi combinati vengono utilizzati nel processo di ricerca e ottimizzazione per ottenere modelli equi e accurati.

Ad esempio, per ottimizzare il rilevamento del bias in un esperimento di classificazione:

  1. Apri le impostazioni dell'esperimento.
  2. Nella pagina "Previsioni ", seleziona l'opzione per ottimizzare la precisione e l'impatto diseguale nell'esperimento.
  3. Ripeti l'esperimento.

Il parametro di accuratezza e impatto discriminatorio genera un punteggio combinato che tiene conto sia dell'accuratezza che dell'equità negli esperimenti di classificazione. Un punteggio più alto indica migliori risultati in termini di prestazioni e equità. Se il punteggio relativo all'impatto discriminatorio è compreso tra 0.9 e 1.11 (un livello accettabile), viene restituito il punteggio di accuratezza. In caso contrario, viene restituito un valore di impatto disparato inferiore al punteggio di accuratezza; un valore più basso (negativo) indica un divario in termini di equità.

Leggi questo articolo pubblicato sul blog Medium dal titolo «Rilevamento dei pregiudizi nell’ AutoAI ».

Passi successivi

Risoluzione dei problemi relativi agli esperimenti di " AutoAI "