fairAITools assessBias

Standard-Bias-Analyse für ein Kredit-Scoring-Modell

Scénario de test & Cas d'usage

Geschäftskontext

Eine Bank möchte sicherstellen, dass ihr neues Modell zur Kreditgenehmigung nicht aufgrund des Familienstandes (`EHESTATUS`) der Antragsteller voreingenommen ist. Sie müssen die Fairness-Metriken zwischen verschiedenen Gruppen vergleichen, um die Einhaltung regulatorischer Anforderungen zu gewährleisten.
Über das Set : fairAITools

Erkennung und Minderung von Verzerrungen in KI-Modellen.

Entdecken Sie alle Aktionen von fairAITools
Datenaufbereitung

Erstellt eine simulierte Kundentabelle `Kreditantraege` mit 10.000 Zeilen. Die Tabelle enthält demografische und finanzielle Informationen, eine Zielvariable `KREDIT_GENEHMIGT` und eine sensible Variable `EHESTATUS` mit drei Stufen: 'Ledig', 'Verheiratet', 'Geschieden'.

Kopiert!
1DATA casuser.Kreditantraege(keep=KUNDE_ID KREDIT_GENEHMIGT EHESTATUS ALTER EINKOMMEN KREDITHOEHE LAUFZEIT);
2call streaminit(123);
3DO KUNDE_ID = 1 to 10000;
4 ALTER = 20 + int(rand('UNIFORM')*50);
5 EINKOMMEN = 30000 + rand('NORMAL', 15000, 5000);
6 KREDITHOEHE = 5000 + rand('UNIFORM')*45000;
7 LAUFZEIT = 12 + 12*int(rand('UNIFORM')*7);
8
9 seed = rand('UNIFORM');
10 IF seed < 0.4 THEN EHESTATUS = 'Ledig';
11 ELSE IF seed < 0.85 THEN EHESTATUS = 'Verheiratet';
12 ELSE EHESTATUS = 'Geschieden';
13 
14 score = -2.5 + (ALTER/10) + (EINKOMMEN/20000) - (KREDITHOEHE/30000);
15 IF EHESTATUS = 'Ledig' THEN score = score - 0.5; /* Bias einführen */
16 IF EHESTATUS = 'Geschieden' THEN score = score + 0.2;
17 
18 prob = 1 / (1 + exp(-score));
19 KREDIT_GENEHMIGT = (rand('UNIFORM') < prob);
20 OUTPUT;
21END;
22RUN;

Étapes de réalisation

1
Training eines Gradient Boosting Modells zur Vorhersage der Kreditgenehmigung und Speicherung als Astore.
Kopiert!
1PROC CAS;
2SIMPLE.gbtreeTrain
3 TABLE={name='Kreditantraege'},
4 target='KREDIT_GENEHMIGT',
5 inputs={'ALTER', 'EINKOMMEN', 'KREDITHOEHE', 'LAUFZEIT'},
6 nominals={'EHESTATUS', 'KREDIT_GENEHMIGT'},
7 savestate={name='gbtree_kredit_model', replace=true};
8RUN;
2
Ausführung der Bias-Bewertung mit 'Verheiratet' als Referenzgruppe und Speicherung der bewerteten Tabelle.
Kopiert!
1PROC CAS;
2fairAITools.assessBias
3 TABLE={name='Kreditantraege'},
4 response={'name'='KREDIT_GENEHMIGT'},
5 sensitiveVariable={'name'='EHESTATUS'},
6 modelTable={name='gbtree_kredit_model'},
7 predictedVariables={{name='P_KREDIT_GENEHMIGT1'}, {name='P_KREDIT_GENEHMIGT0'}},
8 responseLevels={'1', '0'},
9 event='1',
10 referenceLevel='Verheiratet',
11 cutoff=0.5,
12 scoredTable={name='scored_kredit', replace=true};
13RUN;

Erwartetes Ergebnis


Die Aktion generiert erfolgreich mehrere Ergebnistabellen (Bias-Metriken, ROC, Lift usw.). Diese Tabellen ermöglichen einen direkten Vergleich der Modellleistung für ledige, verheiratete und geschiedene Antragsteller im Verhältnis zur Referenzgruppe 'Verheiratet'. Die Ausgabetabelle `scored_kredit` wird erstellt und enthält die Vorhersagen für jeden Antragsteller.