AI wordt steeds vaker ingezet om gezichten te herkennen. Niet alleen als veiligheidsmaatregel, maar bijvoorbeeld ook op universiteiten om fraude te voorkomen. En dat gaat niet altijd goed.
📰 Het verhaal
Tijdens de coronapandemie gebruikte de Universiteit van Amsterdam de surveillancesoftware Proctorio die draait op de computer van de student. De software controleert of studenten niet frauderen. Want toen zij tentamens vanuit huis maakten, was spieken anders wel érg gemakkelijk.
Naomi Appelman, Jill Toh en Hans Zwart schreven er een kritisch stuk over in het Parool. “Studenten worden verplicht een soort spyware te installeren die via de webcam en microfoon hun gedrag controleert en in de gaten houdt of er geen andere programma’s open staan dan de tentamensoftware. Nadat een student zichzelf met de camera heeft geïdentificeerd en heeft laten zien dat er in de kamer niets is dat zou kunnen helpen bij het tentamen, mag er niet meer weg worden gekeken van het scherm. Nadenkend naar buiten staren is er niet meer bij. Studenten plassen soms bijna in hun broek omdat ze tijdens het tentamen niet naar de wc mogen”, aldus Appelman, Toh en Zwart.
“Het is belangrijk te beseffen dat hierbij geen menselijke surveillanten zijn”, gaan zij verder. “De kunstmatige intelligentie monitort honderden studenten tegelijkertijd. Een algoritmische waakhond kent aan het einde van het tentamen elke student een score toe voor ‘afwijkend’ gedrag. Beelden van een student met een hoge score kunnen naderhand door een mens worden beoordeeld.”
Studenten van de UvA waren hierover zo ontevreden, dat ze naar de rechter stapten om af te dwingen dat het gebruik van Proctorio zou stoppen. Maar, zo schrijven Appelman, Toh en Zwart, niemand vroeg zich af of de software alle studenten wel gelijkwaardig behandelde.
Toch doken al snel de verhalen op van zwarte studenten die alleen met grote moeite en het gebruik van extra lampen door de software werden herkend.
Remote learning software, like most software, can be biased.
— Mozilla (@mozilla) February 7, 2022
Here’s what happened one student, Amaya, used a test proctoring app to take her lab quiz. #AIBIas pic.twitter.com/ECuUnqORkM
Gelukkig was daar onderzoeker Akash Satheesan, die ontdekte dat Proctorio OpenCV gebruikt, een grote online bibliotheek met gratis software. Satheesan deed een experiment en ontdekte dat de gezichtsherkenning van OpenCV slechter werkt bij mensen met een donkere huidskleur. Het levert zwarte studenten extra stress op in hun tentamentijd, en leidt er in sommige gevallen zelfs toe dat ze worden uitgesloten van deelname.
Inmiddels heeft het College van de Rechten van de Mens geoordeeld dat de anti-spieksoftware inderdaad discrimineert, meldt NPO Radio 1.
📈 De data
Dit voorbeeld laat zien hoe makkelijk er een vooroordeel in AI-systemen kan sluipen. Vaak gaat dit ongemerkt, en zonder dat het de bedoeling van de programmeurs was. Om te begrijpen hoe dat komt, leggen we je eerst kort uit hoe gezichtsherkenning in zijn werk gaat.
Voor je AI een taak kan laten uitvoeren, zoals het herkennen van gezichten, heb je data nodig waarmee je het systeem kan trainen. In het geval van gezichtsherkenningssoftware, heb je dus eerst enorm veel beelden van gezichten nodig. Procotorio haalde deze beelden en de benodigde software gratis uit OpenCV, een gratis online softwarebibliotheek.
🦾 De AI
Een computer herkent gezichten op een andere manier dan wij dat doen. Wij mensen herkennen iemand doordat het geheel van ogen, oren, haar en vorm van gezicht ons bekend voorkomt. Dat lukt zelfs als we maar een half gezicht zien, bijvoorbeeld doordat iemand een mondkapje draagt. Best knap, als je erover nadenkt.
Gezichtsherkenningssoftware werkt anders. Voor de software zijn gezichten geen visueel geheel, maar een verzameling datapunten: de afstand tussen beide ogen wordt bijvoorbeeld gemeten, net als de ligging van de jukbeenderen en de breedte van de neus.

Gezichtsherkenning valt onder de AI-noemer ‘Computer Vision’. Dat is het vakgebied dat als doel heeft om computers digitaal beeld te laten begrijpen. Computer vision speelt ook een grote rol bij zelfrijdende auto’s. Software die gezichten herkent, doorloopt doorgaans vier stappen om een gezicht te herkennen:
1. Eerst maakt de software een stilstaand beeld van een gezicht. Zo kan bijvoorbeeld één gezicht uit een video van een groep mensen worden gehaald.
2. Vervolgens analyseert de software de geometrie van het gezicht aan de hand van 68 oriëntatiepunten die essentieel zijn om jouw gezicht te herkennen. Daarmee leest het systeem de vorm van de ogen, mond, wenkbrauwen en jukbeenderen.
3. Dan maakt de gezichtsherkenningssoftware een formule van alle opgeslagen oriëntatiepunten. Deze vatten het gezicht samen.
4. Tot slot vergelijkt de software de formule met de overige formules (gezichten dus) die het systeem in het verleden heeft geanalyseerd. Bij een overeenkomstige formule zal de software aangeven dat het een gezicht heeft herkend.
In dit proces wordt Machine Learning toegepast.
Maar het systeem werkt niet volledig op basis van Machine Learning; het volgt daarnaast simpele regels op die programmeurs hebben opgesteld. Zo zal het bijvoorbeeld altijd eerst checken of een foto rechtop staat. Stel dat de student zijn hoofd schuin houdt, dan moet de software dit herkennen en corrigeren. Ook moet soms het contrast van de afbeelding verhoogd worden, zodat een gezicht makkelijker te herkennen is. Dit soort randvoorwaarden worden van tevoren door programmeurs opgesteld als regels.
Bijvoorbeeld: ‘Als de afbeelding gekanteld is: zet hem recht’
In dit soort gevallen start de software met het simpelweg volgen van die regels. Zodra de afbeelding gebruiksklaar is (rechtop, met genoeg contrast, etc.), komt de Machine Learning pas uit de kast om het gezicht daadwerkelijk te identificeren.
⚖️ Ethiek en betrouwbaarheid
Terug naar het voorbeeld van Proctorio, dat zwarte studenten minder goed herkent. Nu je weet hoe gezichtsherkenning werkt, kunnen we je uitleggen hoe zo’n vooroordeel (ook wel bias genoemd) in de software kan sluipen. Hoe goed AI-model functioneert, hangt namelijk volledig af van hoe goed je het traint. Als je Proctorio leert gezichten herkennen, maar daarbij voornamelijk foto’s van witte mensen gebruikt, heeft het systeem geen kans om ook te ‘oefenen’ op zwarte mensen. Wanneer je een AI-model gebruikt, is het daarom essentieel om te weten hoe het getraind is. Die informatie is echter niet altijd openbaar. Soms blijkt pas in de praktijk dat de AI vreemde dingen doet. En daarom moet je als journalist scherp blijven. Als waakhond van de samenleving, moet je ook kritisch kunnen kijken naar de invloed van AI.
📚 Lesmateriaal
Opdracht: Train je eigen beeldherkenningsmodel
💡 Leerdoel: Je stelt kritische vragen over gezichtherkenningssoftware, maakt zelf een dataset en traint je eigen AI-model om je bewust te worden van de werking van bias
Het verhaal over Proctorio laat zien waarom het belangrijk is dat journalisten het gebruik van AI in de samenleving bevragen, en waarom je als journalist en inzicht moet hebben in de manier waarop AI-modellen getraind worden.
Proctorio lijkt dit op een klassiek geval van ‘garbage in = garbage out. Met andere woorden: als je een AI-model traint met onvolledige data (bijvoorbeeld door het model niet te laten oefenen met zwarte gezichten), gaat het nooit goed werken.
De software herkende zwarte studenten niet goed omdat het model onvoldoende is getraind op zwarte gezichten. Dit probleem kwam pas aan het licht toen er praktische problemen ontstonden en sommige zwarte studenten hun tentamen niet konden maken. Zo zie je maar weer hoe belangrijk het is om ML-modellen goed te trainen.
Om als journalist kritisch naar tools te kunnen kijken, is het handig om zelf eens een model te trainen. Daarvoor kan je de tool Teachable Machine van Google gebruiken, om zelf in korte tijd een model trainen.
Volg onderstaande stappen:
- Ga naar: Teachable Machine
- Klik op het tabblad links in beeld en open een nieuw project (tabblad links in beeld)
- Kies vervolgens met welke data je wil werken. Dit kan een afbeelding zijn, audio of een fysieke houding (hierbij kan je het model trainen om te herkennen of iemand bijvoorbeeld staat, zit of danst). Het meest laagdrempelig, en meest handig om mee te beginnen, is een afbeelding.
- Vervolgens vul je bij ‘class 1’ en ‘class 2’ de labels in die je de machine wil leren. Enkele voorbeelden waar studenten uit kunnen kiezen:
- Is deze banaan rijp (class 1) of is deze banaan niet rijp? (class 2)
- Heb ik een bril op (class 1) of heb ik geen bril op? (class 2)
- Heb ik een rode trui aan (class 1) of heb ik geen rode trui aan? (class 2)
- Heb ik een pen vast (class 1) of heb ik geen pen vast? (class 2)
Het staat je vrij om creatief te zijn met de beelden die je gebruikt. Zolang je voorbeelden vindt waaraan je tegengestelde labels kunt koppelen (zoals hierboven), moet het werken.
- Neem vervolgens met je camera voorbeelden op van, bijvoorbeeld, een pen vasthouden of niet . Hoe meer afbeeldingen je uploadt, en hoe diverser deze afbeeldingen zijn, hoe beter je het model kan trainen en des te beter het model zal werken.
- Neem bij ‘class 2’ alle beelden op die de computer moet gaan herkennen als zijnde ‘geen pen’. Technisch gezien is dit dus álles, behalve de pen. Gezichten, tafels, muren, potloden, takjes. Hoe meer beelden worden ingevoerd, hoe beter het model zal herkennen wat wel en géén pen is.
- Klik vervolgens op ‘model trainen’. De tool zal nu alle geüploade data (de afbeeldingen die je hebt ingevoerd) gaan verwerken.
- Nu kun je gaan testen hoe goed je model werkt. Hou een pen in beeld (of een banaan, rode trui, of ander voorwerp dat je gekozen hebt). Kan de machine je vertellen of er een pen te zien is of niet? Probeer verschillende hoeken en houdingen uit.
- Probeer vervolgens ook elkaars model uit. Hoe goed werken ze? Waarschijnlijk heeft elk model mankementen. Waar komt dat door? Welke informatie mist er in mijn trainingsdata (de geüploade beelden)? Hoe zou je dat kunnen oplossen?
🧰 Materiaal
- Laptops of telefoons met werkende camera.
⏱ Tijdsindicatie
Vanaf 35 minuten, waarvan:
- 10 minuten om het verhaal te lezen
- 10 minuten om je model te trainen
- 5 minuten om je model te testen
- 5 minuten om elkaars model te testen
- 5 minuten om te bespreken
Opdracht: Kritische vragen
💡 Leerdoel: Je leert kritische vragen stellen over gezichtsherkenningssoftware
Lees het verhaal over Proctorio. Bedenk welke kritische vragen je als journalist zou kunnen stellen aan de makers van de software. Neem vijf minuten om je vragen op te schrijven, en tien minuten om te vergelijken met een medestudent. Welke overeenkomsten en verschillen zijn er? Bedenk ook hoe je kunt doorvragen.
💭 Bespreking
Studenten kunnen bijvoorbeeld focussen op de data die gebruikt zijn om het model te trainen. Ook kunnen ze vragen of en hoe het model getest wordt, wat de rolverdeling is tussen mens en machine, in hoeverre het team van programmeurs divers is, etc.
🧰 Materiaal
- Studenten moeten een laptop en/of pen en papier hebben.
- Optioneel: een geprinte versie van het verhaal over Proctorio.
⏱ Tijdsindicatie
20 minuten, waarvan:
- 10 minuten voor het lezen van het verhaal
- 10 minuten voor het opstellen van vragen
- 10 minuten voor het bespreken van de vragen