Berechnung der Fairness
die Konzepte zu verstehen, die zur Berechnung von Fairnessbewertungen verwendet werden
- Berechnung der Verzerrung
- Ausgewogene Daten und absolute Gleichheit
- Perfekte Gleichheit berechnen
- Datentyp einer Vorhersagespalte konvertieren
- Fairness-Score von mehr als 100 Prozent interpretieren
Berechnung der Verzerrung
Der Algorithmus für die Fairness-Überwachung berechnet die Verzerrung stündlich anhand der letzten N
Datensätze, die in der Nutzlastprotokollierungstabelle vorhanden sind, und der Wert von N
wird bei der Konfiguration der Fairness-Überwachung angegeben. Der Algorithmus wendet eine Methode mit dem Namen Perturbation an, um Unterschiede in den erwarteten Ergebnissen in den Daten zu bewerten.
Bei der Perturbation werden die Merkmalswerte der Referenzgruppe in die Überwachungsgruppe geändert oder umgekehrt. Die durch Perturbation geänderten Daten werden an das Modell gesendet, um das Verhalten des Modells zu evaluieren. Der Algorithmus prüft die letzten N
Datensätze in der Nutzdatentabelle und das Verhalten des Modells für die durch Perturbation veränderten Daten, um zu entscheiden, ob die Modellergebnisse das Vorhandensein von Verzerrungen anzeigen.
Ein Modell ist verzerrt, wenn der Prozentsatz günstiger Ergebnisse für die überwachte Gruppe um einen Schwellenwert, den Sie beim Konfigurieren der Fairnessüberwachung angeben, kleiner als der Prozentsatz günstiger Ergebnisse für die Referenzgruppe ist.
Beachten Sie, dass Fairnesswerte mehr als 100% betragen können. Diese Berechnung bedeutet, dass die überwachte Gruppe mehr günstige Ergebnisse empfangen hat als die Referenzgruppe. Wenn keine neuen Scoring-Anforderungen gesendet werden, bleibt der Fairnesswert konstant.
Ausgewogene Daten und absolute Gleichheit
Für ausgeglichene Datasets gelten die folgenden Konzepte:
- Zur Ermittlung des absoluten Gleichheitswerts werden die Referenzgruppentransaktionen synthetisch erstellt, indem der überwachte Merkmalwert für jede überwachte Gruppentransaktion in alle Referenzgruppenwerte geändert wird. Diese neuen, synthetisch erstellten Transaktionen werden zum Satz der Referenzgruppentransaktionen hinzugefügt und von dem Modell ausgewertet.
Wenn die überwachte Funktion beispielsweise SEX
und die überwachte Gruppe FEMALE
ist, werden alle FEMALE
-Transaktionen als MALE
-Transaktionen dupliziert. Alle anderen Merkmalwerte bleiben unverändert. Diese neuen, synthetisch erstellten MALE
-Transaktionen werden zur Gruppe der ursprünglichen MALE
-Referenzgruppentransaktionen hinzugefügt.
- Der Prozentsatz der günstigen Ergebnisse wird für die neue Referenzgruppe ermittelt. Dieser Prozentsatz repräsentiert den absoluten Gleichheitswert für die überwachte Gruppe.
- Die Transaktionen für die überwachte Gruppe werden ebenfalls synthetisch erstellt, indem der Referenzmerkmalwert jeder Referenzgruppentransaktion in den Wert für die überwachte Gruppe geändert wird. Diese neuen, synthetisch erstellten Transaktionen werden zum Satz der überwachten Gruppentransaktionen hinzugefügt und vom Modell ausgewertet.
Wenn die überwachte Funktion SEX
ist und die überwachte Gruppe FEMALE
, werden alle MALE
-Transaktionen als FEMALE
-Transaktionen dupliziert. Alle anderen Merkmalwerte bleiben unverändert. Diese neuen, synthetisch erstellten FEMALE
-Transaktionen werden zur Gruppe der ursprünglichen FEMALE
-Transaktionen für überwachte Gruppen hinzugefügt.
Perfekte Gleichheit berechnen
Die absolute Gleichheit wird anhand der folgenden mathematischen Formel berechnet:
Perfect equality = Percentage of favorable outcomes for all reference transactions,
including the synthesized transactions from the monitored group
Wenn das überwachte Merkmal beispielsweise SEX
ist und die überwachte Gruppe FEMALE
, gibt die folgende Formel die Gleichung für perfekte Gleichheit an:
Perfect equality for `SEX` = Percentage of favorable outcomes for `MALE` transactions,
including the synthesized transactions that were initially `FEMALE` but changed to `MALE`
Wenn Sie Fairnessbewertungen in IBM Watson OpenScalekonfigurieren, können Sie eine Gruppe von Metriken generieren, um die Fairness Ihres Modells zu bewerten. Mithilfe der Fairnessmetriken können Sie ermitteln, ob Ihr Modell verzerrte Ergebnisse erzeugt.
Konvertieren des Datentyps einer Vorhersagespalte
Bei der Konfiguration der Fairnessüberwachung für ein Modell lässt die Spalte für die Vorhersage nur ganzzahlige numerische Werte zu, obwohl die Vorhersage mit der Bezeichnung 'Kategorial' versehen ist. Die Konvertierung des Vorhersagespaltendatentyps ist möglich.
Die Trainingsdaten können beispielsweise Klassenbezeichnungen wie "Loan Denied", "Loan Granted" enthalten. Der Vorhersagewert, der vom Scoring-Endpunkt von IBM Watson Machine Learning zurückgegeben wird, hat Werte wie "0.0", "1.0". Der Scoring-Endpunkt verfügt außerdem über eine optionale Spalte, die die Textdarstellung der Vorhersage enthält. Wenn beispielsweise 'prediction=1.0' lautet, könnte die Spalte 'predictionLabel' (Vorhersagebezeichnung) den Wert 'Loan Granted' aufweisen. Wenn eine derartige Spalte verfügbar ist, können Sie bei der Konfiguration des günstigen und des ungünstigen Ergebnisses für das Modell die Zeichenfolgewerte 'Loan Granted' und 'Loan Denied' angeben. Ist keine derartige Spalte verfügbar, müssen Sie für die Ganzzahl- und Doppelwerte für '1.0', '0.0' für die Klassen 'favourable' bzw. 'unfavourable' angeben.
IBM Watson Machine Learning hat ein Konzept von Ausgabeschema, bei dem das Schema der Ausgabe des IBM Watson Machine Learning-Scoring-Endpunkts und die Rolle für die verschiedenen Spalten definiert wird. Die Rollen werden verwendet, um anzugeben, welche Spalte den Vorhersagewert, welche Spalte die Vorhersagewahrscheinlichkeit und den Klassenbeschriftungswert enthält usw. Das Ausgabeschema wird automatisch für Modelle festgelegt, die mit Model Builder erstellt werden. Das Schema kann auch über den IBM Watson Machine Learning-Python-Client angegeben werden. Benutzer können das Ausgabeschema verwenden, um eine Spalte zu definieren, die die Zeichenfolgedarstellung der Vorhersage enthält. Setzen Sie modeling_role
für die Spalte auf "decoded-target". Die Dokumentation für den IBM Watson Machine Learning Python -Client ist unter https://ibm.github.io/watsonx-ai-python-sdk/core_api.html#repositoryverfügbar. Suchen Sie nach 'OUTPUT_DATA_SCHEMA', um das Ausgabeschema zu verstehen. Der zu verwendende API-Aufruf ist der Aufrufstore_model
für den OUTPUT_DATA_SCHEMA als Parameter angegeben werden kann.
Interpretation eines Fairnesswerts, der größer als 100 Prozent ist
Je nach Fairnesskonfiguration kann der Fairness-Score größer als 100 Prozent sein. Dies bedeutet, dass Ihre überwachte Gruppe relativ mehr "faire" Ergebnisse im Vergleich zur Referenzgruppe erhält. Technisch gesehen bedeutet dies, dass Ihr Modell in der entgegengesetzten Richtung unausgewogen ist.
Weitere Informationen
Fairnessüberwachung für indirekte Verzerrung konfigurieren
Modellinsights mit Watson OpenScaleüberprüfen
Übergeordnetes Thema: Fairnessüberwachung konfigurieren