Train je eigen beeldherkenning

Deze opdracht hoort bij het verhaal:

Anti-spieksoftware herkent zwarte student niet

💡 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

⏱ 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