Quando dovrei usare MinDiff?
Applica MinDiff nei casi in cui il tuo modello funziona bene in generale, ma produce errori dannosi più frequentemente su esempi appartenenti a un gruppo sensibile e desideri colmare il divario di prestazioni. I gruppi di interesse sensibili possono variare a seconda del caso d'uso, ma spesso includono classi protette, come razza, religione, genere, orientamento sessuale e altro ancora. In questo documento utilizzeremo il termine “gruppo sensibile” per fare riferimento a qualsiasi insieme di esempi appartenenti a una classe protetta.
Esistono due condizioni principali per utilizzare MinDiff per risolvere porzioni di dati con prestazioni inferiori:
- Hai già messo a punto e valutato il tuo modello, identificando le metriche che mostrano porzioni di dati con prestazioni inferiori. Questa operazione deve essere eseguita prima di applicare la riparazione del modello.
- Hai, o puoi ottenere, un numero sufficiente di esempi etichettati pertinenti appartenenti al gruppo con prestazioni inferiori (maggiori dettagli di seguito).
MinDiff è una delle tante tecniche per rimediare a comportamenti ineguali. In particolare, potrebbe essere una buona scelta quando si tenta di equalizzare direttamente le prestazioni tra i gruppi. MinDiff può essere utilizzato insieme ad altri approcci, come l'aumento dei dati e altri, che possono portare a risultati migliori. Tuttavia, se devi stabilire la priorità in quale tecnica investire, dovresti farlo in base alle esigenze del tuo prodotto.
Quando applichi MinDiff, potresti notare un peggioramento o un leggero cambiamento delle prestazioni dei gruppi con i rendimenti migliori, mentre i gruppi con rendimento inferiore migliorano. Questo compromesso è previsto e deve essere valutato nel contesto dei requisiti del prodotto. In pratica, abbiamo spesso visto che MinDiff non fa scendere le sezioni con le prestazioni migliori al di sotto dei livelli accettabili, ma questo è specifico dell'applicazione e una decisione che deve essere presa dal proprietario del prodotto.
Su quali tipi di modello posso applicare MinDiff?
MinDiff ha dimostrato di essere costantemente efficace se applicato ai classificatori binari. È possibile adattare il metodo ad altre applicazioni, ma non è stato completamente testato. È stato svolto del lavoro per dimostrare il successo nei compiti di classificazione e classificazione multipla 1 , ma qualsiasi utilizzo di MinDiff su questi o altri tipi di modelli dovrebbe essere considerato sperimentale.
Su quali metriche posso applicare MinDiff?
MinDiff può essere una buona soluzione quando la metrica che stai tentando di equalizzare tra i gruppi è il tasso di falsi positivi (FPR) o il tasso di falsi negativi (FNR) , ma potrebbe funzionare per altri parametri. Come regola generale, MinDiff potrebbe funzionare quando la metrica scelta come target è il risultato di differenze nella distribuzione dei punteggi tra esempi appartenenti a un gruppo sensibile ed esempi non appartenenti a un gruppo sensibile.
Costruisci il tuo set di dati MinDiff
Quando ti prepari per l'addestramento con MinDiff, dovrai preparare tre set di dati separati. Come per la formazione regolare, i set di dati MinDiff dovrebbero essere rappresentativi degli utenti serviti dal modello. MinDiff potrebbe funzionare senza questo, ma in questi casi è necessario prestare particolare attenzione.
Supponendo che tu stia cercando di migliorare l'FPR del tuo modello per esempi appartenenti a una classe sensibile, avrai bisogno di:
- Il set di training originale: il set di dati originale utilizzato per il training del modello di base
- Il set sensibile MinDiff: un set di dati di esempi appartenenti alla classe sensibile con solo etichette di verità fondate negative. Questi esempi verranno utilizzati solo per calcolare la perdita MinDiff.
- Il set non sensibile MinDiff: un set di dati di esempi non appartenenti alla classe sensibile con solo etichette di verità fondate negative. Questi esempi verranno utilizzati solo per calcolare la perdita MinDiff.
Quando utilizzi la libreria, combinerai tutti e tre questi set di dati in un unico set di dati, che fungerà da nuovo set di addestramento.
Esempi di scelta per MinDiff
Potrebbe essere sembrato controintuitivo nell'esempio precedente ritagliare serie di esempi etichettati negativamente se si è interessati principalmente alle disparità nel tasso di falsi positivi . Tuttavia, ricorda che una previsione falsa positiva deriva da un esempio etichettato negativamente e classificato erroneamente come positivo.
Quando raccogli i dati per MinDiff, dovresti scegliere esempi in cui la disparità di prestazioni è evidente. Nel nostro esempio sopra, ciò significava scegliere esempi etichettati negativamente per affrontare la FPR. Se fossimo stati interessati a prendere di mira la FNR, avremmo dovuto scegliere esempi etichettati positivamente.
Di quanti dati ho bisogno?
Bella domanda: dipende dal caso d'uso! In base all'architettura del modello, alla distribuzione dei dati e alla configurazione MinDiff, la quantità di dati necessari può variare in modo significativo. Nelle applicazioni precedenti, abbiamo visto MinDiff funzionare bene con 5.000 esempi in ciascun set di training MinDiff (set 2 e 3 nella sezione precedente). Con meno dati, aumenta il rischio di prestazioni ridotte, ma questo potrebbe essere minimo o accettabile entro i limiti dei vincoli di produzione. Dopo aver applicato MinDiff, dovrai valutare attentamente i risultati per garantire prestazioni accettabili. Se non sono affidabili o non soddisfano le aspettative in termini di prestazioni, potresti comunque prendere in considerazione la raccolta di più dati.
Quando MinDiff non è adatto a me?
MinDiff è una tecnica potente che può fornire risultati impressionanti, ma ciò non significa che sia il metodo giusto per tutte le situazioni. Applicarlo a casaccio non garantisce che si otterrà una soluzione adeguata.
Oltre ai requisiti discussi sopra, ci sono casi in cui MinDiff può essere tecnicamente fattibile, ma non adatto. Dovresti sempre progettare il tuo flusso di lavoro ML in base alle pratiche consigliate note. Ad esempio, se l'attività del modello non è definita correttamente, le esigenze del prodotto non sono chiare o le etichette di esempio sono eccessivamente distorte, dovresti dare priorità alla risoluzione di questi problemi. Allo stesso modo, se non si dispone di una definizione chiara del gruppo sensibile o non si è in grado di determinare in modo affidabile se gli esempi appartengono al gruppo sensibile, non sarà possibile applicare MinDiff in modo efficace.
A un livello superiore, dovresti sempre considerare se il tuo prodotto è un uso appropriato per il machine learning. Se lo è, considera i potenziali vettori di danni agli utenti che crea. Il perseguimento del riciclaggio responsabile è uno sforzo multiforme che mira ad anticipare un’ampia gamma di potenziali danni; MinDiff può aiutare a mitigare alcuni di questi, ma tutti i risultati meritano un'attenta considerazione.
1 Beutel A., Chen, J., Doshi, T., Qian, H., Wei, L., Wu, Y., Heldt, L., Zhao, Z., Hong, L., Chi, E., Goodrow, C. (2019). Equità nella classifica delle raccomandazioni attraverso confronti a coppie.