Ga naar hoofdinhoud Ga naar aanvullende inhoud

Bias detecteren in machine learning-modellen

U kunt bias identificeren in machine learning-modellen die u traint in ML-experimenten. Aangetoonde bias aanpakken door scheve functies te verwijderen, onjuiste gegevensverzameling te corrigeren of de structuur van uw trainingsdataset te wijzigen.

Inzicht in bias

In machine learning is bias een ongewenst fenomeen waarbij modellen bepaalde groepen bevoordelen, of zouden kunnen bevoordelen, boven andere. Bias beïnvloedt eerlijkheid negatief en heeft ethische implicaties voor voorspellingen en de beslissingen die ze beïnvloeden. Bias kan worden geïntroduceerd in trainingsgegevens, in de uitkomsten die door getrainde modellen worden voorspeld, of beide.

Voorbeelden van bias—en de gevolgen daarvan voor besluitvorming—zijn onder andere:

  • Modellen trainen op gegevens die onevenredig bepaalde inkomensniveaus of gezondheidsstatussen vertegenwoordigen, wat resulteert in oneerlijke beslissingen voor verzekeringsclaims.

  • Modellen trainen op scheve gegevens met betrekking tot ras en geslacht van kandidaten, wat van invloed is op aanwervingsbeslissingen.

  • Modellen trainen die postcodes associëren met kredietwaardigheid.

Gegevensbias

Data bias treedt op wanneer de gegevens die worden gebruikt om een model te trainen, zodanig zijn vertekend dat ze bepaalde groepen bevoordelen boven andere. Data bias wordt veroorzaakt door ongelijke representatie tussen groepen in de trainingsgegevens.

Een dataset voor het voorspellen van aanstellingsresultaten zou bijvoorbeeld gegevens kunnen bevatten die één geslacht als succesvoller dan andere weergeven.

Data bias kan op verschillende manieren in trainingsgegevens worden geïntroduceerd, waaronder:

  • Onjuiste gegevensverzameling waarbij bepaalde groepen ondervertegenwoordigd of oververtegenwoordigd zijn.

  • Gegevens die historische patronen nauwkeurig weergeven, maar de onderliggende vooringenomenheid in deze trends en praktijken blootleggen.

De gegevens in de onderstaande visualisatie duiden op gegevensvooringenomenheid.

Een voorbeeld van gegevensvooringenomenheid, gevisualiseerd door een staafdiagram. In de brongegevens zijn bepaalde burgerlijke staten oververtegenwoordigd vergeleken met andere met betrekking tot inkomensniveaus.

Bevooroordeelde gegevens die gegevensbias zouden introduceren indien gebruikt in een machine learning-model.

Modelbias

Modelbias, of algoritmische bias, treedt op wanneer de voorspellingen gedaan door een machine learning-model sommige groepen bevoordelen boven andere. Bij modelbias leggen modellen verbanden tussen bepaalde groepen en uitkomsten, wat andere groepen negatief beïnvloedt. Modelbias kan worden veroorzaakt door onjuist verzamelde of scheve gegevens, evenals gedragingen die specifiek zijn voor het trainingsalgoritme dat wordt gebruikt.

Bijvoorbeeld zou een model disproportionair negatieve aanstellingspercentages kunnen voorspellen voor bepaalde leeftijdsgroepen vanwege oneerlijke verbanden die door het model zijn gelegd.

Visualisatie van het tabblad Analyseren in een ML-experiment, waarbij modelbias wordt benadrukt. De visualisatie toont aan dat een model hogere inkomensvoorspellingen doet voor bepaalde burgerlijke staten dan voor andere.

Tabblad 'Analyseren' in ML-experiment dat modelbias toont.

Databiasmetrieken

In Qlik Predict wordt databias gemeten door te analyseren:

  • Representatiegraad: Vergelijkt de distributie van gegevens die tot elke groep in de functie behoren, in vergelijking met alle gegevens in de functie. De berekende metriek is de pariteitsverhouding van de representatiegraad.

  • Verhouding voorwaardelijke distributiepariteit: Vergelijkt de balans tussen gegevens voor elke groep in de functie, met betrekking tot de waarden van de doelkolom. De berekende metriek is de verhouding voorwaardelijke distributiepariteit.

Voor meer informatie over de acceptabele waarden voor deze metrieken, zie Acceptabele waarden voor bias-statistieken.

Modelbiasstatistieken

In Qlik Predict, modelbiasstatistieken kunnen het best worden begrepen in de context van het modeltype voor het experiment. Grofweg zijn er de volgende biasstatistiekcategorieën:

  • Classificatiemodelstatistieken

  • Regressie- en tijdreeksmodelstatistieken

Voor meer informatie over de acceptabele waarden voor deze metrische gegevens, zie Acceptabele waarden voor bias-statistieken.

Classificatie-modellen

In binaire en multiclass classificatiemodellen wordt bias gemeten door voorspelde doelwaarden (uitkomsten) te analyseren. In het bijzonder worden verschillen in positieve en negatieve uitkomstpercentages voor groepen vergeleken ('positief' en 'negatief' verwijzen hier naar uitkomsten die gunstig versus ongunstig zijn — bijvoorbeeld een waarde van ja of nee voor een Aangenomen doelkolom). Deze modellen hebben de volgende bias-metrische gegevens:

  • Ongelijke impact

  • Verschil statistische pariteit

  • Verschil gelijke kansen

Ongelijke impact

De disparate impact ratio (DI) beoordeelt of groepen in een gevoelige functie worden bevoordeeld of benadeeld in de voorspelde uitkomsten van het model. Het wordt gemeten door te berekenen hoe vaak elke groep wordt geselecteerd als de voorspelde waarde, en dit te vergelijken met de selectiesnelheid voor de meest bevoordeelde groep in de functie.

Verschil statistische pariteit

Vergelijkbaar met ongelijke impact, beoordeelt statistische pariteitsverschil (SPD) modelvoorspellingen om te bepalen of deze individuele groepen bevoordelen of benadelen. De metriek wordt berekend door de positieve uitkomstpercentages tussen de grootste en kleinste groepen te vergelijken.

Verschil gelijke kansen

Gelijkekansenverschil (EOD) is vergelijkbaar met de andere twee bias-metrieken voor classificatiemodellen. EOD vergelijkt de hoogste en laagste ware positieve percentages tussen groepen in een functie.

Regressie- en tijdreeksmodellen

In regressie- en tijdreeksmodellen wordt bias gemeten door te vergelijken hoe vaak modellen fouten maken in hun voorspellingen, waarbij pariteitsverhoudingen worden gebruikt om de eerlijkheid van voorspelde uitkomsten te bepalen.

De volgende bias-metrics worden berekend, met behulp van foutmetrics die vaak worden gebruikt voor het evalueren van modelnauwkeurigheid:

  • MAE pariteitverhouding

    MAE

  • MSE pariteitverhouding

    MSE

  • RMSE pariteitverhouding

    RMSE

  • R2-kloof

    R2

  • MASE pariteitverhouding

    MASE

  • MAPE pariteitverhouding

    MAPE

  • SMAPE pariteitverhouding

    SMAPE

Acceptabele waarden voor bias-statistieken

Bias-statistieken—acceptabele bereiken en waarden
Bias-statistiek Bias-categorie Toepasselijke modeltypen Acceptabele waarden
Pariteitverhouding representatiepercentage Gegevensbias Alles

Ideale waarde: tussen 0,8 en 1.

Een lagere verhouding duidt op disproportionele representatie.

Verhouding voorwaardelijke distributiepariteit Gegevensbias Alles

Ideale waarde: tussen 0,8 en 1.

Een lagere verhouding duidt op disproportionele vertegenwoordiging.

Verschil statistische pariteit (SPD) Modelbias Binaire classificatie, multiclass-classificatie

Ideale waarde: 0.

Een waarde boven 0,2 is een sterk signaal van onbillijkheid.

Ongelijke impact (DI) Modelbias Binaire classificatie, multiclass-classificatie

Ideale waarde: 1.

Een waarde onder 0,8 duidt op onbillijkheid.

Verschil gelijke kansen (EOD) Modelbias Binaire classificatie, multiclass-classificatie

Ideale waarde: 0.

Een waarde boven 0,1 duidt op onbillijkheid.

MAE pariteitverhouding Modelbias Regressie

Ideale waarde: tussen 0,8 en 1.

Een waarde boven 1,25 duidt op onbillijkheid.

MSE pariteitverhouding Modelbias Regressie

Ideale waarde: tussen 0,8 en 1.

Een waarde boven 1,25 duidt op onbillijkheid.

RMSE pariteitverhouding Modelbias Regressie

Ideale waarde: tussen 0,8 en 1.

Een waarde boven 1,25 duidt op onbillijkheid.

R2-kloof Modelbias Regressie

Ideale waarde: 0.

Een waarde boven 0,2 duidt op onbillijkheid.

MASE pariteitverhouding Modelbias Tijdreeks Een waarde boven 1,25 duidt op onbillijkheid.
MAPE pariteitverhouding Modelbias Tijdreeks Een waarde boven 1,25 duidt op onbillijkheid.
SMAPE pariteitverhouding Modelbias Tijdreeks Een waarde boven 1,25 duidt op onbillijkheid.

Biasdetectie configureren

Biasdetectie wordt geconfigureerd per trainingsfunctie in de experimentversie.

  1. Vouw in een ML-experiment Bias uit in het configuratiepaneel voor training.

  2. Selecteer de functies waarop u biasdetectie wilt uitvoeren.

Als alternatief schakelt u biasdetectie in voor de gewenste functies in Rijen Schemweergave.

Snelle analyse van biasresultaten

Nadat de training is voltooid, krijgt u een snel overzicht van de biasdetectieresultaten op het tabblad Modellen.

Scrol omlaag door de snelle analyse-items om Biasdetectie te vinden. Vouw secties uit met de Vervolgkeuzepijl omlaag pictogrammen. U kunt functies analyseren met mogelijke gegevens- en modelbias.

Gegevensbias analyseren met de Biasdetectie sectie in het Modellen tabblad.

Gegevensbias analyseren met behulp van de sectie Biasdetectie op het tabblad Modellen.

Opmerkingen

  • Bevoordeelde groepen zijn de doelwaarden of -bereiken die oververtegenwoordigd zijn in de gegevens of geprojecteerde uitkomsten van het doel, gebaseerd op de bias-meetwaarden. Benadeelde groepen zijn de doelwaarden of -bereiken die ondervertegenwoordigd zijn in de gegevens of geprojecteerde uitkomsten van het doel, gebaseerd op de bias-meetwaarden.

    Voor informatie over hoe de bias-meetwaarden worden gebruikt, zie Acceptabele waarden voor bias-statistieken.

    De getallen tussen haakjes beschrijven de criteria die worden gebruikt om de meeteenheid te berekenen. Als de metriek bijvoorbeeld 'equal opportunity difference' (EOD) is, vrouw (10%) en man (80%) geeft dit aan dat de 'true positive rates' 80% zijn voor mannen en 10% voor vrouwen.

  • Doeluitkomst verwijst naar de waarde van de doelkolom die door het model wordt voorspeld.

  • Niet alle biasmetrieken en -waarden worden weergegeven op het Modellen tabblad vanwege beperkte ruimte. Bijvoorbeeld:

    • Afhankelijk van het type metriek en model, kunnen sommige metrieken en groepen alleen minimum- en maximumwaarden bevatten.

    • Als meerdere metrieken de biasdrempel voor een functie overschrijden, wordt de metriek weergegeven die de hoogste mate van onbillijkheid aangeeft.

    • Voor bevooroordeelde functies in multiclass classificatiemodellen wordt alleen de metriek weergegeven die de hoogste mate van onbillijkheid aangeeft.

  • Meer gedetailleerde informatie is beschikbaar op het tabblad Analyseren en in het modeltrainingsrapport. Zie: Gedetailleerde analyse van biasresultaten.

  • Voor meer informatie over terminologie in deze sectie, zie Terminologie op deze pagina.

Gedetailleerde analyse van biasresultaten

U kunt dieper ingaan op biasresultaten op het tabblad Analyseren.

  1. Selecteer in een ML-experiment een model en ga naar het tabblad Analyseren.

  2. Open het Bias-werkblad.

  3. Kies tussen Gegevensbias en Modelbias, afhankelijk van de gewenste analyse.

  4. Selecteer in de tabel Functies met potentiële bias één functie.

Grafieken en metrische gegevens die mogelijke bias aangeven, worden weergegeven met een rode achtergrond. U kunt functies selecteren door te klikken en te tekenen in visualisaties.

Metrieken in de tabel zijn statisch voor biasmetrieken die overeenkomen met standaardfuncties. Voor toekomstige functies veranderen biasmetrieken dynamisch afhankelijk van tijdreeksgroep selectie.

Analyseren tabblad met een analyse van modelbias voor de geselecteerde functie. Mogelijke bias wordt aangegeven door rode achtergronden voor diagrammen en metrieken.

Modelbias op gedetailleerde wijze analyseren met behulp van het werkblad Bias op het tabblad Analyseren.

Zie Gedetailleerde modelanalyse uitvoeren voor meer informatie over het navigeren door gedetailleerde modelanalyses.

Biasresultaten in trainingsrapporten

Biasstatistieken worden ook gepresenteerd in ML-trainingsrapporten.Ze zijn opgenomen in een speciale Bias-sectie in het rapport.

Voor meer informatie over trainingsrapporten, zie ML-trainingsrapporten downloaden.

Bias aanpakken

Nadat u de resultaten van de biasdetectie voor uw modellen hebt geanalyseerd, wilt u mogelijk een van de volgende doen:

Terminologie op deze pagina

Op deze pagina, en in Qlik Predict, heeft 'groepen' een verschillende betekenis, afhankelijk van de context:

  • 'Groepen' verwijst naar de waarden of bereiken in functies die worden geanalyseerd op bias. Een functie voor Burgerlijke staat kan bijvoorbeeld vier mogelijke groepen hebben in de trainingsgegevens: Getrouwd, Gescheiden, Gescheiden van tafel en bed, of Weduwe/weduwnaar.

  • In tijdreeksexperimenten verwijst 'groepen' naar functionaliteit waarmee doeluitkomsten kunnen worden bijgehouden voor specifieke waarden van compatibele functies. Op deze pagina worden deze groepen 'tijdreeksgroepen' genoemd. Zie Groepen voor meer informatie over deze groepen.

Beperkingen

  • U kunt geen biasdetectie activeren voor:

    • De doelfunctie.

    • Vrije tekstfuncties (zelfs als het functietype wordt gewijzigd in categorisch).

    • Datumfuncties die worden gebruikt als datumindex in tijdreeks experimenten.

    • Automatisch gegenereerde datumfuncties. U kunt biasdetectie uitvoeren op deze functies, maar u activeert ze niet onafhankelijk. Activeer in plaats daarvan de bovenliggende datumfunctie voor biasdetectie en zorg ervoor dat de automatisch ontwikkelde datumfuncties worden meegenomen voor training.

Was deze pagina nuttig?

Als u problemen ervaart op deze pagina of de inhoud onjuist is – een tikfout, een ontbrekende stap of een technische fout – laat het ons weten!