0 / 0
Torna alla versione inglese della documentazione
Applicazione del test di correttezza agli esperimenti AutoAI
Ultimo aggiornamento: 28 nov 2024
Applicazione del test di correttezza agli esperimenti AutoAI

Valutare un esperimento di correttezza per assicurarsi che i risultati non siano distorti a favore di un gruppo rispetto a un altro.

Limitazioni

Le valutazioni di correttezza non sono supportate per gli esperimenti di serie temporali.

Valutazione di esperimenti e modelli per la correttezza

Quando definisci un esperimento e produci un modello di machine learning, vuoi essere sicuro che i risultati siano affidabili e non distorti. La distorsione in un modello di machine learning può verificarsi quando il modello apprende le lezioni sbagliate durante l'addestramento. Questo scenario può verificarsi quando dati insufficienti o la raccolta o la gestione di dati insufficienti risultano in un risultato scadente quando il modello genera previsioni. È importante valutare un esperimento per individuare i segni di distorsione e correggerli quando necessario e per creare fiducia nei risultati del modello.

AutoAI include i seguenti strumenti, tecniche e funzioni per aiutarti a valutare e correggere un esperimento per la distorsione.

Definizioni e termini

Attributo di correttezza - La distorsione o la correttezza viene generalmente misurata utilizzando un attributo di correttezza come sesso, etnia o età.

Gruppo monitorato/di riferimento - Il gruppo monitorato sono i valori dell'attributo di correttezza per cui si desidera misurare la distorsione. I valori nel gruppo monitorato vengono confrontati con i valori nel gruppo di riferimento. Ad esempio, se Fairness Attribute=Gender viene utilizzato per misurare la distorsione rispetto alle femmine, il valore del gruppo monitorato è "Femmina" e il valore del gruppo di riferimento è "Maschio".

Risultato favorevole / sfavorevole - Un concetto importante nel rilevamento della distorsione è quello del risultato favorevole e sfavorevole del modello. Ad esempio, Claim approved potrebbe essere considerato un risultato favorevole e Claim denied potrebbe essere considerato un risultato sfavorevole.

Impatto sparso - La metrica utilizzata per misurare la distorsione (calcolata come il rapporto tra la percentuale di risultato favorevole per il gruppo monitorato e la percentuale di risultato favorevole per il gruppo di riferimento). Si dice che la distorsione esiste se il valore di impatto disparato è inferiore a una soglia specificata.

Ad esempio, se l'80% delle richieste di assicurazione presentate dagli uomini viene approvato, ma solo il 60% delle richieste presentate dalle donne viene approvato, l'impatto disparato è: 60/80 = 0.75. Generalmente, il valore di soglia per la distorsione è 0.8. Poiché questo rapporto di impatto disparato è inferiore a 0.8, il modello viene considerato distorto.

Notare che quando il rapporto di impatto disparato è maggiore di 1.25 [ il valore inverso (impatto1/disparate ) è inferiore alla soglia 0.8], viene considerato anche come distorto.

Guarda un video sulla valutazione e il miglioramento della correttezza

Guarda questo video per vedere come valutare un modello di machine learning per la correttezza per garantire che i risultati non siano distorti.

Questo video fornisce un metodo visivo per apprendere i concetti e le attività in questa documentazione.

Applicazione del test di correttezza per un esperimento AutoAI nell'IU

  1. Aprire Impostazioni esperimento.

  2. Fare clic sulla scheda Correttezza .

  3. Abilitare opzioni per la correttezza. Le opzioni sono le seguenti:

    • Valutazione della correttezza: abilitare questa opzione per controllare ogni pipeline per la distorsione calcolando la relazione di impatto disparata. Questo metodo traccia se una pipeline tende a fornire un risultato favorevole (preferito) per un gruppo più spesso di un altro.
    • Soglia di correttezza: impostare una soglia di correttezza per determinare se esiste una distorsione in una pipeline in base al valore della razione di impatto disparata. Il valore predefinito è 80, che rappresenta un rapporto di impatto disparato minore di 0.80.
    • Risultati favorevoli: specificare il valore della colonna di previsione da considerare favorevole. Ad esempio, il valore potrebbe essere "approvato", "accettato" o quello che si adatta al tipo di previsione.
    • Metodo attributo protetto automatico: scegliere come valutare le funzioni che sono una potenziale fonte di distorsione. È possibile specificare il rilevamento automatico, nel qual caso AutoAI rileva gli attributi comunemente protetti, inclusi: sesso, etnia, stato civile, età e codice postale. All'interno di ogni categoria, AutoAI tenta di determinare un gruppo protetto. Ad esempio, per la categoria sex , il gruppo monitorato sarà female.
    Nota: in modalità automatica, è probabile che una funzione non venga identificata correttamente come attributo protetto se presenta valori non tipici, ad esempio, in una lingua diversa dall'inglese. Il rilevamento automatico è supportato solo per l'inglese.
    • Metodo attributo protetto manuale: specificare manualmente un risultato e fornire l'attributo protetto scegliendo da un elenco di attributi. Notare che quando si forniscono manualmente gli attributi, è necessario definire un gruppo e specificare se è probabile che abbia i risultati previsti (il gruppo di riferimento) o che debba essere riesaminato per rilevare la varianza dai risultati previsti (il gruppo monitorato).

Ad esempio, questa immagine mostra una serie di gruppi di attributi specificati manualmente per il monitoraggio.

Valutazione di un gruppo per potenziali distorsioni

Salvare le impostazioni da applicare ed eseguire l'esperimento per applicare la valutazione della correttezza alle pipeline.

Note:

  • Per i modelli multiclasse, è possibile selezionare più valori nella colonna di previsione per classificarli come favorevoli o meno.
  • Per i modelli di regressione, è possibile specificare un intervallo di risultati che sono considerati favorevoli o meno.
  • Le valutazioni di correttezza non sono attualmente disponibili per gli esperimenti di serie temporali.

Elenco di attributi rilevati automaticamente per la misurazione della correttezza

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

  • età
  • stato_cittadino
  • colore
  • incapacità
  • etnicità
  • sesso
  • informazioni_genetiche
  • handicap
  • lingua
  • coniugale
  • credenza politica
  • pregnancy
  • religione
  • stato_veterano

Applicazione del test di correttezza per un esperimento AutoAI in un notebook

È possibile eseguire test di correttezza in un esperimento AutoAI addestrato in un notebook ed estendere le funzionalità oltre a quanto fornito nell'IU.

Esempio di rilevamento della distorsione

In questo esempio, utilizzando l'API Python del runtime di watsonx.ai (ibm-watson-machine-learning), la configurazione dell'ottimizzatore per il rilevamento dei bias viene configurata con il seguente input, dove:

  • name - nome esperimento
  • prediction_type - tipo del problema
  • prediction_column - nome colonna di destinazione
  • fairness_info - configurazione rilevamento distorsione
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 ogni pipeline.

  1. Dalla pagina Riepilogo esperimento , fare clic sull'icona del filtro per la classifica della pipeline.
  2. Scegliere le metriche di impatto Disparate per l'esperimento. Questa opzione valuta una metrica generale e una metrica per ciascun gruppo monitorato.
  3. Esamina le metriche della pipeline per un impatto disparato per determinare se hai un problema con la distorsione o solo per determinare quale pipeline funziona meglio per una valutazione della correttezza.

In questo esempio, la pipeline che è stata classificata per prima per l'accuratezza ha anche un punteggio di reddito disparato che rientra nei limiti accettabili.

Visualizzazione dei risultati di correttezza

Attenuazione della distorsione

Se viene rilevato un bias in un esperimento, è possibile attenuarlo ottimizzando l'esperimento con l'uso di "marcatori combinati": accuracy_and_disparate_impact o 'r2_and_disparate_impact, entrambi definiti dall'open source 'Pacchetto LALE.

I punteggi combinati vengono utilizzati nel processo di ricerca e ottimizzazione per restituire modelli corretti e precisi.

Ad esempio, per ottimizzare il rilevamento della distorsione per un esperimento di classificazione:

  1. Aprire Impostazioni esperimento.
  2. Nella pagina Previsioni , scegliere di ottimizzare Accuratezza e impatto disparato nell'esperimento.
  3. Eseguire nuovamente l'esperimento.

La metrica Precisione e impatto disparato crea un punteggio combinato per l'accuratezza e la correttezza degli esperimenti di classificazione. Un punteggio più alto indica migliori prestazioni e misure di correttezza. Se il punteggio di impatto disparato è compreso tra 0.9 e 1.11 (un livello accettabile), viene restituito il punteggio di precisione. Altrimenti, viene restituito un valore di impatto disparato inferiore al punteggio di precisione, con un valore inferiore (negativo) che indica un divario di correttezza.

Leggete questo post sul blog di Medium sul rilevamento delle distorsioni in AutoAI.

Passi successivi

Risoluzione dei problemi degli esperimenti AutoAI

Argomento principale: Panoramica diAutoAI

Ricerca e risposta AI generativa
Queste risposte sono generate da un modello di lingua di grandi dimensioni in watsonx.ai basato sul contenuto della documentazione del prodotto. Ulteriori informazioni