Een strakke, redactionele illustratie van een knowledge graph-structuur over het concept van werving heen — die vaardigheden met functies verbindt via zichtbare, traceerbare paden, en transparantie tegenover ondoorzichtigheid plaatst.
Artificial IntelligenceHiringMachine Learning

Amazon bouwde een AI-recruiter die zichzelf aanleerde vrouwen te haten. Ik bouwde er een die dat niet kan.

Ashutosh SinghalAshutosh Singhal11 februari 202612 min

In 2014 ging een team van machine learning-engineers in Edinburgh om de tafel zitten om werving op Amazon-schaal op te lossen. Voer het systeem 100 cv's in, krijg de top vijf terug, gerangschikt van één tot vijf sterren — net als het beoordelen van producten. Elegant. Efficiënt. En binnen drie jaar ontdekten ze dat het systeem zichzelf had aangeleerd dat vrouw zijn een diskwalificerend kenmerk was.

De AI bestrafte cv's die het woord "women's" bevatten — zoals in "Women's Chess Club Captain." Het waardeerde afgestudeerden van twee vrouwencolleges lager. Niet omdat iemand het dat opdroeg. Maar omdat wanneer je een model traint op tien jaar aan wervingsdata uit een door mannen gedomineerde sector, "man zijn" statistisch gezien een van de sterkste voorspellers van "aangenomen worden" wordt.

Ik herinner me dat ik de onthulling van Reuters las toen die naar buiten kwam. Ik was bij Veriprajna al diep verwikkeld in het bouwen van knowledge graph-systemen, en mijn eerste reactie was geen schok — het was herkenning. Ik betoogde al maandenlang dat statistische correlatiemachines niets te zoeken hadden in beslissingen over menselijk potentieel. Het Amazon-verhaal was geen anomalie. Het was een wiskundige onvermijdelijkheid. En het radicaliseerde me tot de overtuiging dat de hele architecturale aanpak van AI-werving gebroken was — niet aan de randen, maar in het fundament.

Het probleem is niet de bias. Het is de architectuur.

Dit is wat de meeste mensen verkeerd begrijpen aan het Amazon-debacle: ze denken dat de engineers slordig waren. Dat waren ze niet. Ze behoorden tot de beste ML-engineers ter wereld. Toen ze de gender-bias ontdekten, probeerden ze die te verhelpen. Ze programmeerden het model expliciet om gender-specifieke termen te negeren. En het model vond omwegen.

Dit is het concept van proxyvariabelen, en het is het ding dat me 's nachts wakker houdt. Deep learning-modellen zijn meedogenloze patroonzoekers. Verwijder het woord "vrouw" uit de invoer, en het model grijpt zich vast aan zinsstructuur. Studies tonen aan dat mannelijke cv's vaker werkwoorden gebruiken als "uitgevoerd" en "veroverd", terwijl vrouwelijke cv's neigen naar meer verbindende taal. Het model ziet "uitgevoerd" correleren met "aangenomen" en reconstrueert stilletjes de gender-bias louter via de taalkunde.

De engineers van Amazon konden de bias niet chirurgisch verwijderen zonder het voorspellende vermogen van het model te vernietigen. Dus staakten ze het hele project.

Je kunt een systeem dat per ongeluk discrimineert niet repareren. Je moet er een bouwen dat door ontwerp niet kán discrimineren.

Die zin is al drie jaar mijn noorderster. En het is de reden dat we de wervingsengine van Veriprajna hebben gebouwd op knowledge graphs in plaats van op neurale netwerken.

Waarom leert elke AI-recruiter uiteindelijk te discrimineren?

Ik heb je nodig om iets te begrijpen over hoe deep learning werkt bij werving, want de faalmodus is contra-intuïtief.

Een neuraal netwerk begrijpt niet wat "Python" betekent. Het weet niet dat Python een programmeertaal is die nuttig is voor data science. Het weet alleen dat de tekenreeks "Python" veelvuldig voorkwam in de cv's van mensen die werden aangenomen. Als "Lacrosse" ook vaak voorkwam — misschien vanwege sociaaleconomische correlaties tussen bepaalde sporten en bepaalde scholen die doorstromen naar bepaalde bedrijven — dan zou het model "Lacrosse" net zo zwaar kunnen wegen als "Python."

Dit is correlatie die zich voordoet als intelligentie. Het model redeneert niet over oorzaak en gevolg. Het vindt patronen en optimaliseert ervoor. En hier zit het verraderlijke deel: bias-amplificatie betekent dat deze modellen historische biases niet alleen repliceren — ze overdrijven ze. Als mannen 60% van het personeelsbestand in de trainingsdata uitmaakten, zou het model kunnen aandringen op het aannemen van 80% of 90% mannen om zijn nauwkeurigheidsscore te maximaliseren.

Ik had vroeg in het traject een gesprek met een potentiële investeerder die me vertelde: "Gebruik gewoon GPT-4 voor cv-screening. Iedereen doet het." Ik vroeg hem: als je hetzelfde cv twee keer in GPT-4 invoert, krijg je dan dezelfde score? Hij aarzelde. Het antwoord is nee — LLM's zijn stochastisch. Ze zijn niet-deterministisch. Voer dezelfde invoer twee keer uit, en je krijgt twee verschillende uitkomsten. In een auditscenario is dat geen eigenaardigheid. Dat is een nalevingsfout.

De regelgevende muren komen dichterbij

Dit is niet langer theoretisch. Overheden hebben het Amazon-verhaal gezien en ze wetgeven.

NYC Local Law 144, van kracht sinds juli 2023, vereist dat elke werkgever die een geautomatiseerd instrument voor werkgelegenheidsbeslissingen gebruikt, jaarlijks een onafhankelijke bias-audit ondergaat. Geen vage "we hebben op eerlijkheid gecontroleerd"-audit — een specifieke, kwantitatieve. De wet schrijft de berekening voor van selectiepercentages en impactratio's voor elke categorie van ras, etniciteit en geslacht. Als het selectiepercentage voor een beschermde groep gedeeld door het percentage voor de meest geselecteerde groep onder de 0,8 zakt — de "vier-vijfden-regel" — dan is dat op het eerste gezicht bewijs van ongelijke impact.

De EU AI Act gaat verder. Ze classificeert AI-systemen die voor werving worden gebruikt als Hoog Risico — dezelfde categorie als medische hulpmiddelen en kritieke infrastructuur. Artikel 13 eist dat deze systemen "voldoende transparant zijn om gebruikers in staat te stellen de uitvoer van het systeem te interpreteren." Artikel 14 vereist menselijk toezicht — de mogelijkheid om AI-beslissingen te overrulen. Maar je kunt een beslissing die je niet begrijpt niet op zinvolle wijze overrulen.

En onder de AVG verleent Artikel 15(1)(h) betrokkenen het recht op toegang tot "nuttige informatie over de onderliggende logica" van geautomatiseerde beslissingen. Overweging 71 vermeldt expliciet het recht om "een uitleg van het bereikte besluit te verkrijgen."

Probeer de beslissing van een neuraal netwerk uit te leggen. Ga je gang. "Neuron 4.502 vuurde met intensiteit 0,8" is geen zinvolle uitleg. En "het model bepaalde dat je een match van 73% was" zonder verdere details ook niet.

De kloof tussen technische complexiteit en de wettelijke eis van een eenvoudige uitleg is de centrale crisis van moderne HR-Tech.

Ik schreef uitgebreider over dit regelgevende landschap in de interactieve versie van onze whitepaper, die precies doorloopt hoe elke regelgeving van toepassing is op verschillende AI-architecturen.

Wat als de AI helemaal geen geslacht kon zien?

Dit is het moment waarop ik je moet vertellen over de nacht waarop alles voor mij op zijn plek viel.

We hadden geëxperimenteerd met verschillende benaderingen om bias te verwijderen — adversarial training, contrafeitelijke augmentatie, de gebruikelijke gereedschapskist. En ik zat om 23:00 uur op kantoor te staren naar een grafiekvisualisatie op mijn scherm, toen ik een van die achteraf-voor-de-hand-liggende inzichten kreeg: we probeerden het model te leren om bias te negeren. Wat als we een architectuur bouwden waarin bias letterlijk niet in de redeneerengine kón binnendringen?

In een knowledge graph wordt data opgeslagen als knopen (entiteiten) en verbindingen (relaties). Een Persoon-knoop verbindt met Vaardigheid-knopen. Vaardigheid-knopen verbinden met andere Vaardigheid-knopen via semantische relaties. De graph weet dat "PyTorch" een bibliotheek is voor "Deep Learning," wat een deelverzameling is van "Kunstmatige Intelligentie." Dus als een baan "AI-ervaring" vereist en een kandidaat "PyTorch" vermeldt, traceert de graph het pad en vindt een match — zelfs zonder dat het trefwoord "AI" ergens op het cv voorkomt.

Hier is de cruciale architecturale beslissing: wanneer ons matchingalgoritme draait, werkt het op een beperkte subgraaf. Deze inferentiegraaf bevat Vaardigheden, Rollen, Ervaringsniveaus en Certificeringen. Ze sluit expliciet knopen uit voor Naam, Geslacht, Etniciteit, Adres en afstudeerdata.

De bias wordt niet onderdrukt. Ze wordt structureel doorgesneden. Er is geen pad van "Kandidaat" naar "Geslacht" naar "Rol", omdat de Geslacht-knoop niet bestaat in de graph die het algoritme kan zien.

Vergelijk dit met een deep learning-model, dat de volledige ruwe tekst inneemt. Zelfs als je het veld "Geslacht" verwijdert, leest het model "Women's Chess Club" en leidt geslacht af. In ons systeem koppelt de LLM die het cv parseert "Women's Chess Club" aan een geneutraliseerde knoop: (:Activity {type: "Strategy Club", role: "Leadership"}). De gegenderde bepaling wordt gestript voordat ze de redeneerengine binnengaat.

Ik herinner me de teamdiscussie hierover. Een van mijn engineers verzette zich fel — hij dacht dat we waardevol signaal verloren door context te strippen. "Wat als de Women's Chess Club eigenlijk competitiever is dan de gewone?" Terecht punt. Maar we optimaliseerden niet voor maximale informatie-extractie. We optimaliseerden voor eerlijkheid onder juridische toetsing. En ik mis liever een marginaal signaal dan dat ik een systeem bouw dat leert om de helft van de bevolking te bestraffen.

Hoe meet je eigenlijk talent zonder bias?

Een gelabeld fragment van een knowledge graph dat laat zien hoe vaardigheden semantisch met elkaar verbonden zijn, met een concreet voorbeeld van het Docker-naar-Kubernetes-pad en het concept van skill distance-scoring.

We voorspellen niet wie zal slagen. We meten skill distance — de geometrische kloof tussen wat een kandidaat heeft en wat een baan vereist. Dit verplaatst werving van subjectieve waarschijnlijkheid naar objectieve meting.

Traditionele applicant tracking-systemen gebruiken Booleaanse logica: bevat het cv het trefwoord "Java"? Ja of nee. Dit is broos en dom. Het mist iedereen die andere terminologie gebruikt voor dezelfde competentie.

We gebruiken graph embeddings — algoritmen zoals Node2Vec die een vectorrepresentatie leren voor elke vaardigheid in onze ontologie. Vaardigheden die vaak samen voorkomen in de graph (zoals "Python" en "Pandas") komen dicht bij elkaar te liggen in de vectorruimte. Vaardigheden die niet gerelateerd zijn (zoals "Python" en "Flebotomie") komen ver uit elkaar te liggen.

Om een kandidaat te scoren, berekenen we cosinusgelijkenis tussen de vaardigheidsvectorset van de kandidaat en de vereistenvectorset van de baan. Dit levert ons deelscores op. Een kandidaat die "Tableau" mist maar wel "Power BI" heeft, krijgt een hoge gelijkenisscore omdat die knopen semantische buren zijn in het "Business Intelligence"-cluster. Een trefwoordzoekopdracht zou hen een nul geven.

We voegen daar Jaccard-gelijkenis aan toe voor pure vaardigheidsoverlap en geodetische afstand — kortstepad-berekeningen door de graph — voor gapanalyse. Als een baan Kubernetes vereist en een kandidaat Docker heeft, vindt de graph het pad: Docker → Containerisatie → Orkestratie → Kubernetes. Afstand: 3 stappen. Interpretatie: trainbaar. Als de afstand 6+ stappen is, is het een harde kloof.

De uiteindelijke skill distance-score is een puur competentiegebaseerde metriek, volledig blind voor demografie. We raden niet wie goed is. We meten hoe dichtbij ze zijn.

Voor de volledige technische uiteenzetting van deze algoritmen — inclusief de wiskunde achter cosinusgelijkenis en ons samengestelde scoringmodel — zie onze onderzoekspublicatie.

Het "Ontbrekende SQL"-moment

Laat me dit concreet maken met iets dat gebeurde tijdens het testen.

We voerden een kandidaatprofiel door zowel een standaard black box-recruiter als ons systeem. De black box wees de kandidaat af. Geen reden opgegeven. (We bepaalden later dat de kandidaat een kleine, minder bekende hogeschool had bezocht — een klassieke afkomst-strafpunt.)

Ons systeem gaf dit terug: "Kandidaat mist expliciete SQL-ervaring. Grafiekanalyse toont echter uitgebreide ervaring met Pandas DataFrames en R dplyr. De grafiekafstand tussen DataFrames en SQL is kort (gedeeld concept: Data Manipulation). Aanbeveling: Interview. Hoge overdraagbaarheid."

Die kandidaat — degene die de black box weggooide — had elke vaardigheid die de baan nodig had. Ze gebruikten er alleen andere woorden voor. En ze gingen naar een school waar de black box in zijn trainingsdata niet genoeg van had gezien om als "succesvol" te beschouwen.

Dit is wat ik bedoel wanneer ik zeg dat knowledge graphs de talentenpool vergroten. Ze vinden mensen die de competenties hebben maar niet de afkomst of het exacte vocabulaire. En dat verbetert op natuurlijke wijze de diversiteit — niet via quota of aanpassingen, maar via betere meting.

Wat gebeurt er wanneer het systeem een probleem markeert?

Mensen vragen me: "Wat als jouw systeem toch bevooroordeelde uitkomsten produceert?" Het is een terechte vraag, en ik zou wantrouwig zijn tegenover iedereen die beweert dat zijn systeem perfect is.

Dit is het verschil: wanneer een black box bevooroordeelde uitkomsten produceert, zit je vast. Je kunt de ongelijke impact in de cijfers zien, maar je kunt niet zien waarom. Zijn het de namen van universiteiten? De postcodes? De schrijfstijl? Je debugt een systeem met miljoenen parameters en geen leesbare logica.

Wanneer ons systeem een statistische anomalie produceert — bijvoorbeeld een impactratio onder de 0,8 voor een bepaalde demografische groep — kunnen we die traceren. We kunnen de specifieke grafiekknopen identificeren die de ongelijkheid veroorzaken. Misschien vereist een functieomschrijving een bepaalde dure certificering die correleert met sociaaleconomische status. Dat kunnen we zien, markeren, en het wervingsteam kan beslissen of die certificering echt noodzakelijk is of gewoon een verouderde eis die niemand ooit in twijfel trok.

De glass box betekent niet dat het systeem altijd gelijk heeft. Het betekent dat wanneer het fout zit, je kunt achterhalen waarom en het kunt herstellen.

De LLM heeft nog steeds een taak — alleen niet de belangrijke

Architectuurdiagram dat vergelijkt hoe data door een black box-neuraal netwerk stroomt versus door het knowledge graph-systeem van Veriprajna, en laat zien waar bias binnenkomt en waar deze structureel wordt geblokkeerd.

Laat me duidelijk zijn: we gebruiken LLM's. We zijn geen Luddieten. Maar we gebruiken ze zoals je een vertaler zou gebruiken — voor lezen en schrijven, niet voor oordelen.

Onze architectuur handhaaft een strikte scheiding van verantwoordelijkheden. De LLM verzorgt de waarneming: hij leest ongestructureerde cv-tekst en extraheert entiteiten. "Ik orkestreerde een team van 5 ontwikkelaars om een React Native-app te bouwen" wordt gestructureerde data — Vaardigheid: React Native, Vaardigheid: Teamleiderschap, Context: Mobiele Ontwikkeling. De LLM normaliseert synoniemen: "ReactJS" en "React.js" koppelen beide aan dezelfde knoop.

Maar de LLM neemt nooit een wervingsbeslissing. Alle matching, scoring en rangschikking gebeurt via deterministische graftraversal. Dezelfde graph plus dezelfde query is gelijk aan hetzelfde resultaat, elke keer weer. We gebruiken de LLM ook aan de uitvoerkant — hij genereert door mensen leesbare uitleg, maar alleen op basis van door de graph geverifieerde feiten. Hij kan geen vaardigheidsmatch hallucineren die de graph niet ondersteunt.

Ik zie het als de LLM die de ogen en de mond van het systeem is, terwijl de knowledge graph het brein is. Je zou je mond geen beslissingen voor je laten nemen. (Nou ja, de meesten van ons niet.)

Waar kiezen we eigenlijk tussen?

Zoals ik het zie, staat de sector op een tweesprong. Het ene pad leidt naar grotere modellen, meer parameters, meer ondoorzichtigheid — en een eindeloos mep-de-mol-spel met bias die steeds nieuwe proxyvariabelen vindt om uit te buiten. Het andere pad leidt naar gestructureerd redeneren, semantische meting en systemen die zichzelf kunnen uitleggen aan een toezichthouder, een recruiter of een afgewezen kandidaat.

Ik heb gesproken met HR-leiders bij bedrijven die nog steeds black box-screeningstools gebruiken. Ze kennen het risico. Ze hebben over Amazon gelezen. Maar van architectuur wisselen voelt duur en onzeker, dus blijven ze lapmiddelen toepassen. Ze voegen "bias-mitigatielagen" toe bovenop fundamenteel bevooroordeelde systemen. Ze huren consultants in om jaarlijkse audits uit te voeren die hen vertellen wat er kapot is zonder hun de middelen te geven om het te repareren.

Data is een spiegel. Als je een model op het verleden traint, repliceer je het verleden. In een wereld die naar gelijkheid streeft, is het repliceren van het verleden een faalconditie.

Ik ga dit niet afsluiten met een slag om de arm. Ik heb er jaren aan gebouwd, ik heb het alternatief spectaculair zien falen, en ik ben overtuigd van de conclusie: de toekomst van wervings-AI gaat niet over het voorspellen wie zal slagen op basis van wie eerder slaagde. Het gaat over het meten van de werkelijke afstand tussen wat iemand kan doen en wat een baan vereist — en die meting transparant, deterministisch en structureel onmogelijk te discrimineren maken.

Je kunt het verleden blijven voorspellen. Of je kunt de toekomst gaan meten.

Related Research

Also Published On