Anwendung von Fairness-Tests auf Experimente im Rahmen von „ AutoAI “
Überprüfen Sie ein Experiment auf Fairness, um sicherzustellen, dass Ihre Ergebnisse nicht zugunsten einer Gruppe gegenüber einer anderen verzerrt sind.
Einschränkungen
Fairness-Bewertungen werden bei Zeitreihen-Experimenten nicht unterstützt.
Bewertung von Experimenten und Modellen hinsichtlich ihrer Fairness
Wenn Sie ein Experiment definieren und ein Modell für maschinelles Lernen erstellen, möchten Sie sicher sein, dass Ihre Ergebnisse zuverlässig und unverzerrt sind. Verzerrungen in einem Modell für maschinelles Lernen können entstehen, wenn das Modell während des Trainings falsche Schlussfolgerungen zieht. Dieses Szenario kann eintreten, wenn unzureichende Daten oder eine mangelhafte Datenerhebung bzw. -verwaltung dazu führen, dass das Modell ungenaue Vorhersagen liefert. Es ist wichtig, ein Experiment auf Anzeichen von Verzerrungen zu überprüfen, um diese gegebenenfalls zu beheben und Vertrauen in die Modellergebnisse zu schaffen.
AutoAI enthält die folgenden Werkzeuge, Techniken und Funktionen, die Ihnen dabei helfen, ein Experiment auf Verzerrungen zu überprüfen und diese zu beheben.
Begriffe und Definitionen
Fairness-Merkmal – Voreingenommenheit oder Fairness wird in der Regel anhand eines Fairness-Merkmals wie Geschlecht, ethnische Zugehörigkeit oder Alter gemessen.
Beobachtete Gruppe/Referenzgruppe – Die beobachtete Gruppe umfasst jene Werte des Fairness-Attributs, für die Sie die Verzerrung messen möchten. Die Werte der Beobachtungsgruppe werden mit den Werten der Referenzgruppe verglichen. Wenn beispielsweise zur Messung der Fairness Attribute=Gender Voreingenommenheit gegenüber Frauen verwendet wird, lautet der Wert der beobachteten Gruppe „Frauen“ und der Wert der Referenzgruppe „Männer“.
Günstiges/ungünstiges Ergebnis – Ein wichtiger Begriff bei der Erkennung von Verzerrungen ist der des günstigen und ungünstigen Ergebnisses des Modells. Beispielsweise Claim approved könnte als günstiges Ergebnis und als ungünstiges Ergebnis Claim denied angesehen werden.
Disparate Auswirkungen – Der zur Messung von Verzerrungen verwendete Indikator (berechnet als Verhältnis des prozentualen Anteils positiver Ergebnisse für die untersuchte Gruppe zum prozentualen Anteil positiver Ergebnisse für die Referenzgruppe). Es wird von einer Verzerrung gesprochen, wenn der Wert für die ungleiche Auswirkung unter einem festgelegten Schwellenwert liegt.
Wenn beispielsweise 80 % der von Männern eingereichten Versicherungsansprüche genehmigt werden, aber nur 60 % der von Frauen eingereichten Ansprüche, dann beträgt die ungleiche Auswirkung: 60/80 = 0.75. In der Regel beträgt der Schwellenwert für die Verzerrung 0.8. Da dieser Disparity-Index unter 0.8 liegt, gilt das Modell als verzerrt.
Beachten Sie: Wenn der Disparate-Impact-Koeffizient größer als 1.25 ist [wobei der Kehrwert (der 1/disparate -Impact) unter dem Schwellenwert 0.8 liegt], gilt dies ebenfalls als Verzerrung.
Sehen Sie sich ein Video zur Bewertung und Verbesserung der Fairness an
Sehen Sie sich dieses Video an, um zu erfahren, wie Sie ein Modell des maschinellen Lernens auf Fairness überprüfen können, damit Ihre Ergebnisse nicht verzerrt sind.
Dieses Video bietet eine anschauliche Möglichkeit, die Konzepte und Aufgaben in dieser Dokumentation kennenzulernen.
Anwendung des Fairness-Tests für ein „ AutoAI “-Experiment in der Benutzeroberfläche
Öffnen Sie die Experimentseinstellungen.
Klicken Sie auf die Registerkarte „Fairness “.
Optionen für Fairness aktivieren. Es stehen folgende Optionen zur Verfügung:
- Bewertung der Fairness: Aktivieren Sie diese Option, um jede Pipeline auf Verzerrungen zu überprüfen, indem die Disparate-Impact-Quote berechnet wird. Mit dieser Methode lässt sich feststellen, ob eine Pipeline dazu neigt, für eine Gruppe häufiger ein günstiges (bevorzugtes) Ergebnis zu liefern als für eine andere.
- Fairness-Schwellenwert: Legen Sie einen Fairness-Schwellenwert fest, um anhand des Werts der Disparate-Impact-Quote zu ermitteln, ob in einer Pipeline eine Verzerrung vorliegt. Der Standardwert ist 80, was einem Disparity-Impact-Verhältnis von weniger als 0.80 entspricht.
- Günstige Ergebnisse: Geben Sie den Wert aus Ihrer Vorhersagespalte an, der als günstig angesehen würde. Der Wert könnte beispielsweise „genehmigt“, „akzeptiert“ oder ein anderer Begriff sein, der zu Ihrer Vorhersageart passt.
- Methode für automatisch geschützte Attribute: Wählen Sie aus, wie Merkmale ausgewertet werden sollen, die eine potenzielle Verzerrungsquelle darstellen. Sie können die automatische Erkennung aktivieren. In diesem Fall erkennt „ AutoAI “ häufig geschützte Merkmale, darunter: Geschlecht, ethnische Zugehörigkeit, Familienstand, Alter sowie Postleitzahl. Innerhalb jeder Kategorie versucht „ AutoAI “, eine geschützte Gruppe zu ermitteln. Beispielsweise wäre für die
sexKategorie diefemaleüberwachte Gruppe.
Hinweis: Im automatischen Modus kann es vorkommen, dass ein Merkmal nicht korrekt als geschütztes Attribut erkannt wird, wenn es untypische Werte aufweist, beispielsweise wenn es in einer anderen Sprache als Englisch verfasst ist. Die automatische Erkennung wird nur für Englisch unterstützt.- Methode zur manuellen Festlegung des geschützten Attributs: Geben Sie das Ergebnis manuell an und wählen Sie das geschützte Attribut aus einer Liste von Attributen aus. Beachten Sie: Wenn Sie Attribute manuell eingeben, müssen Sie anschließend eine Gruppe definieren und angeben, ob diese voraussichtlich die erwarteten Ergebnisse erzielen wird (die Referenzgruppe) oder ob sie überprüft werden sollte, um Abweichungen von den erwarteten Ergebnissen festzustellen (die überwachte Gruppe).
Dieses Bild zeigt beispielsweise eine Reihe von manuell festgelegten Attributgruppen für die Überwachung.

Speichern Sie die Einstellungen, um sie zu übernehmen, und führen Sie das Experiment aus, um die Fairness-Bewertung auf Ihre Pipelines anzuwenden.
Hinweise:
- Bei Mehrklassenmodellen können Sie in der Vorhersagespalte mehrere Werte auswählen, um sie als günstig oder ungünstig einzustufen.
- Bei Regressionsmodellen können Sie einen Bereich von Ergebnissen festlegen, die als günstig oder ungünstig angesehen werden.
- Für Zeitreihen-Experimente liegen derzeit keine Fairness-Bewertungen vor.
Liste der automatisch erkannten Merkmale zur Messung der Fairness
Wenn die automatische Erkennung aktiviert ist, erkennt „ AutoAI “ automatisch die folgenden Attribute, sofern sie in den Trainingsdaten vorhanden sind. Die Attribute müssen auf Englisch sein.
- Alter
- Staatsangehörigkeit
- Farbe
- Behinderung
- Ethnizität (ethnicity)
- Geschlecht
- genetische Informationen
- Handicap
- Sprache
- ehelich
- politische Überzeugung
- Schwangerschaft
- Religion
- Veteranenstatus
Durchführung eines Fairness-Tests für ein „ AutoAI “-Experiment in einem Notebook
Sie können Fairness-Tests in einem „ AutoAI “-Experiment durchführen, das in einem Notebook trainiert wurde, und die Funktionen über die in der Benutzeroberfläche bereitgestellten Möglichkeiten hinaus erweitern.
Beispiel für die Erkennung von Verzerrungen
In diesem Beispiel wird mithilfe der Watson Machine Learning Python API (ibm-watson-machine-learning) die Konfiguration des Optimierers zur Bias-Erkennung mit folgender Eingabe konfiguriert:
- Name – Name des Experiments
- prediction_type – Art des Problems
- prediction_column – Name der Zielspalte
- fairness_info – Konfiguration der Bias-Erkennung
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
)
Auswertung der Ergebnisse
Sie können die Auswertungsergebnisse für jede Pipeline einsehen.
- Klicken Sie auf der Seite „Experimentübersicht“ auf das Filtersymbol für die Pipeline-Rangliste.
- Wählen Sie die Kennzahlen für die ungleiche Auswirkung für Ihr Experiment aus. Diese Option wertet eine allgemeine Kennzahl und eine Kennzahl für jede überwachte Gruppe aus.
- Überprüfen Sie die Pipeline-Kennzahlen auf ungleiche Auswirkungen, um festzustellen, ob ein Problem mit Verzerrungen vorliegt, oder um im Rahmen einer Fairness-Bewertung zu ermitteln, welche Pipeline die bessere Leistung erbringt.
In diesem Beispiel liegt auch der Disparity-Score der Pipeline, die hinsichtlich der Genauigkeit den ersten Platz belegte, innerhalb der akzeptablen Grenzen.

Verringerung von Verzerrungen
Wenn in einem Experiment eine Verzerrung festgestellt wird, können Sie diese durch die Optimierung Ihres Experiments mithilfe von „kombinierten Bewertungsfunktionen“ abmildern: accuracy_and_disparate_impact oder r2_and_disparate_impact, die beide im Open -Source-Paket LALE definiert sind.
Im Such- und Optimierungsprozess werden kombinierte Bewertungsfunktionen verwendet, um faire und präzise Modelle zu erhalten.
Beispielsweise zur Optimierung der Bias-Erkennung für ein Klassifizierungsexperiment:
- Öffnen Sie die Experimentseinstellungen.
- Wählen Sie auf der Seite „Vorhersagen“ die Option zur Optimierung der Genauigkeit und der unterschiedlichen Auswirkungen im Experiment.
- Wiederholen Sie das Experiment.
Die Metrik für Genauigkeit und ungleiche Auswirkungen ermittelt einen kombinierten Wert für Genauigkeit und Fairness bei Klassifizierungsexperimenten. Eine höhere Punktzahl steht für bessere Leistungs- und Fairnesskennzahlen. Liegt der Wert für die ungleiche Auswirkung zwischen 0.9 und 1.11 (ein akzeptables Niveau), wird der Genauigkeitswert zurückgegeben. Andernfalls wird ein Wert für die ungleiche Auswirkung zurückgegeben, der unter dem Genauigkeitswert liegt; ein niedrigerer (negativer) Wert deutet dabei auf eine Fairnesslücke hin.
Lesen Sie diesen Medium-Blogbeitrag zum Thema „Bias Detection“ unter AutoAI.