- Super Vision
- Posts
- Super Vision #5 - Labelen voor AI
Super Vision #5 - Labelen voor AI
Hi! Vandaag gaat het over het annoteren van teksten, documenten of afbeeldingen. Kort gezegd: labeling.
Laten we starten met een gedachte-experiment. Doe je mee? Je hoeft maar twee dingen te doen. Allereerst: beantwoord in gedachten de volgende vraag:
Waar werd je de afgelopen week blij van?
Denk er even over na. Je hebt vast iets in gedachten! Verder met de volgende vraag: Hoe zou je die blijheid classificeren? Je kunt kiezen uit een van deze 7 categorieën:
Prestatie
Affectie
Binding
Genieten van het moment
Beweging / sport
Vrije tijd
Natuur
Lukt dat? Was het moeilijk of makkelijk om een hokje te kiezen? Of miste je een categorie?
Laten we ook eens met een blij moment van een ander oefenen:
"Ik ging op een succesvolle date."
Hoe zou je deze categoriseren? Je mag weer slechts een van de zeven bovenstaande redenen toekennen.
Je voelt de discussie al aankomen he?! "Ja maar wat nou als de persoon ging wandelen, op de hei, met die date? En het hun eerste date in jaaaaaren was?”
Met een beetje goede wil kruis je voor deze succesvolle date vrijwel alle opties aan. Maar ja, het model dwingt je te interpreteren en te kiezen. (🧪 Een aantal lezers heeft dit al ervaren door middel van een experiment. 👉🏽 Wil jij ook meedoen, dan kan dat hier. De resultaten vind je daar.)
Zie hier, mijn beste blije lezer, in een notendop het machine learning 'moeras’ waar je inloopt wanneer je met supervised learning aan de slag gaat.
1. Ik wil zelf gaan labelen. Waar begin ik?
Ben jij de designer, journalist, mediamaker, creatief die:
geen uitleg meer nodig heeft over single-label classificatie;
de data al ter beschikking heeft;
die data heeft gecheckt op variëteit en vooroordelen;
onderscheid weet te maken tussen alle type voorbeelden;
intersubjectief een annotatieschema heeft opgesteld;
weet hoe en met wie je annoteert;
een ML-model als oplossing voor een vraagstuk kan 'verkopen'?
Ja?! Dan ben jij perfectly in staat om direct je eerste trainingsset te gaan aanmaken met een van de vier volgende gereedschappen. Nee, ga dan verder naar punt 2. Wat is labeling?
A Text Annotation tool for Humans. Open source. Geschikt voor tekst (en sentiment en NER) en beeld.
Werkt met afbeeldingen, objecten binnen afbeeldingen en video. Voor je browser.
SuperAnnotate | Annotation Automation Platform for Computer Vision (Win, Mac, Linux) — app.superannotate.com
Geschikt voor beeldannotatie: afbeeldingen en video. Zowel in de browser als voor desktop beschikbaar.
Alleen geschikt voor beeld. Kan ook gezichten in video's automatisch blurren. 'Object Detection and Semantic Segmentation ML Models without code. Use models in iOS or Android applications.'
Tip: Je kunt voor tekstannotatie ook prima Microsoft Excel gebruiken of Google Sheets, met een extra kolom voor je labels.
Succes met annoteren, en tot volgende week! Dan wil ik het hebben over vooroordelen, oftewel bias.
2. Wat is labeling?
Het Blije Moment-onderzoekje heb ik geleend van de Happy Database: a Corpus of 100,000 Crowdsourced Happy Moments. Het is een goed voorbeeld van labeling: het proces van het toewijzen van labels aan een tekstdocument of verschillende elementen van de inhoud ervan.
Binnen machine learning valt het Happy Moments project onder de zogeheten single-label classificatie (SLC) vraagstukken. Dat betekent dat dingen slechts in een enkel ('single') hokje mogen. SLC klinkt vertaald redelijk duidelijk en eenvoudig, maar is het in de praktijk niet.
Aan goede labeling gaan de volgende stappen vooraf:
selectie van gevarieerde, relevante, realistische voorbeelden;
explicitering van de doorslaggevende kenmerken daarin;
overeenstemming over de interpretatie van de kenmerken.
Alleen zo kun je met annotatoren onderling bepalen wanneer iets wel of niet tot een bepaalde class behoort en welk label ieder item krijgt.
3. Waarom moet je iets weten over labeling?
Voor zogeheten supervised learning (een veelgebruikte aanpak om machines iets te leren) is het labelen van data essentieel. De term 'supervised' zegt het al: als supervisor kies je de juiste voorbeelden om een ander te tonen waar je naar op zoek bent; hoe 'iets' moet, werkt of hoort, en -minstens zo belangrijk- hoe niet, wat het niet is.
Afgelopen maart zijn Beeld en Geluid, NPO en RTL in Nederland begonnen met een gezamenlijk labelingproject:
"Om de ontwikkeling van AI in de mediasector te stimuleren. Tijdens de pilot zullen tien werkzoekenden videomateriaal gaan labelen zodat die content geschikt is voor het trainen van AI-modellen. "
Over de redenen en het doel zeggen de initiatiefnemers:
"Voor het ontwikkelen van AI bij mediaorganisaties zijn grote hoeveelheden goed gelabelde content nodig. Daarbij gaat het bijvoorbeeld om het kwalificeren van videobeelden als ‘racistisch’ of ‘romantisch’. Als mensen iets als dusdanig bestempelen, kan een AI-model in die data patronen herkennen. Zo kan kunstmatige intelligentie voortaan zelf aangeven of er een racistische of juist romantische scène voorkomt in een video."
Labelen is arbeidsintensief
Om de AI te trainen, moet je per label honderden voorbeelden verzamelen; 100 romantische scenes, 100 gewelddadige, 100 racistische, und so weiter. Al die voorbeelden samen vormen straks de trainingsset die het model gaat gebruiken om van te leren.
Het vinden van voorbeelden alleen al is een tijdrovende klus. Pas daarna komt het labelen.
AI = handwerk
Iedereen kan van eigen teksten, beelden, documenten en andere soorten data specifieke analyses maken d.m.v. machine learning. Dat dit zo simpel, goedkoop en goed is, heeft met drie ontwikkelingen te maken:
Opkomst van labeling-tools om je data eenvoudig mee te classificeren en te exporteren voor training (zie punt 1);
Trainingtools voor labelclassificatie zijn steeds meer 🍎🥚'tje te gebruiken; 👉🏽Lobe.ai voor beeld en Google Cloud AutoML Natural Language voor tekstgebaseerde data;
Interoperabiliteit: jouw custom getrainde ML-model kun je eenvoudig exporteren, online laten draaien en via het web of een app aanroepen.
En: AI = verantwoordelijkheid nemen
Hoe greater je power wordt door deze democratisering van AI, hoe belangrijker het is om vooraf een goed begrip en consensus te hebben over wat je waarom zoekt in welke data. En hoe de machine straks de onbekende beelden of teksten gaat interpreteren.
De verantwoordelijkheid is on you, on us humans en ligt zeker niet -oh, de misvatting!- bij de machine, bij de werking van je model of bij de resultaten die het algoritme teruggeeft!
Zolang we het niet eens zijn over dingen (en dat zijn er anno 2021 nogal wat) zal machine learning in elk geval daar niet de oplossing voor zijn.
4. Wanneer ga je labeling gebruiken?
Gebruik single-label classificatie wanneer je verschillende voorbeelden langs een zelfde meetlat kunt leggen. En dan alleen wanneer je die meetlat zelf hebt ontworpen en daar consensus met anderen over hebt verkregen. Je kunt dan vervolgens:
Snel dingen sorteren;
Nieuwe content monitoren;
De schaal van iets aantonen;
Zien hoe de verdeling is binnen jouw dataset;
De aard van veel- of juist weinig voorkomende cases achterhalen;
Veel items processen, tegelijk.
Een praktisch voorbeeld
John Keefe (New York Times, ex-Quartz AI Studio) onderzocht aangiftes van discriminatie in de VS. Zijn vraag: als je uit de aangiftetekst in politiedatabases kunt opmaken om welk soort discriminatie het per geval gaat (ras, religie, etniciteit, geaardheid), kun je daar dan ook een ML-model op trainen? Zodat je daarmee journalistiek onderzoek kunt doen en kunt schrijven: 'de meeste hatecrimes afgelopen jaar waren x en z gemotiveerd'.
Andere toepassingen zijn:
Onderzoek in Telegramgroepen met duizenden deelnemers en +100.000 berichten naar (semi-)illegale oproepen en hun verspreiders;
In comments of op social zoeken naar bepaalde attitudes rondom merken en producten.
5. Waar zie je labeling al / kun je het verwachten?
DEUS.AI bouwde voor de Reclame Code Commissie een AI-model om online advertenties (in tekst en beeld) mee te analyseren op overtredingen van de reclamecode:
"The solution screens thousands of online ads and 100+ online media channels where no screening took place earlier."
Waar mensen zaken beoordelen
'Geplaceerd evenement', de Toeslagenaffaire, de Happy Moments en ook toekenningen van kunstsubsidies, filmprijzen of het eindcijfer voor je bachelorscriptie - ze hebben om tot hun oordeel te komen allemaal met criteria te maken. De score op die criteria is dan doorslaggevend voor een groene of rode vlag achter je naam, voor toekenning of niet, voor een 4,5 een 7 of een 10.
Je zou eens kunnen kijken welke start-ups doorgaans hoog scoren op Product Hunt. Of welke inzendingen (en voor welke categorie) een Webby hebben gekregen de afgelopen jaren. Daarmee bouw je een model dat niet per se voorspelt of je gaat winnen; wel een die inzicht geeft waardoor je een andere productie of in een andere categorie inzendt.
Een aantal voorbeelden uit eerdere nieuwsbrieven waarbij content is gelabeld om een AI-model te trainen en in te zetten:
LAist - tekstclassificatie van lockdownvragen van lezers;
Misogynie als politiek wapen - single-label tekstclassificatie van tweets;
Leprosy of the Land - single-label beeldclassificatie van satellietfoto's.
✅ Dit was 'm voor deze week. Ik ben benieuwd wat jij gaat labelen deze week. Laat het me weten! Groet, Laurens.
Nog een minuut over? Zo kom je tot labeling consensus
By now heb je wel door dat jouw individuele interpretatie en categoriseringsvermogen nogal verschilt met die van anderen. Gelukkig is dit probleem al filosofisch en praktisch opgelost.
Intersubjectiviteit
Toen ik lesgaf aan de Hogeschool Utrecht spraken we ook wel van intersubjectiviteit bij betrouwbaar en eerlijk beoordelen. Dit houdt in dat je goede en slechte voorbeelden verzamelt en gezamenlijk bespreekt. Op basis daarvan stel je een maatstaf op en stem je de interpretatie ervan met elkaar af. Vervolgens gebruik je die maatstaf om nieuwe, onbekende voorbeelden onafhankelijk van elkaar te beoordelen. Die beoordelingen bespreek je weer met elkaar. De uitkomst van dat gesprek is levert een verdere fine tuning op van de maatstaf en haar interpretatie.
Inter annotator agreement
In de machine learning praktijk wordt het probleem opgelost door de zogeheten inter annotator agreement; een maatstaf voor hoe goed twee (of meer) annotatoren dezelfde annotatiebeslissing kunnen nemen voor een bepaalde categorie. Dit komt in de praktijk neer op: als twee van de drie annotatoren tot eenzelfde label komen, wordt dat het definitieve label voor dat voorbeeld.
Further reading
Deelnemer Eline over proefproject rondom AI: ‘De bazen bij RTL waren heel positief over het werk dat wij hadden gedaan’ - Media Perspectives — mediaperspectives.nl
Eline over haar deelname aan de annotatiepilot, waarin werk zoekenden aan de slag gaan met het labelen van videocontent voor AI toepassingen
🏷🥊 The Fight Against Labeled Dataset Dependencies - by Ksenia Semenova - TheSequence — thesequence.substack.com
The Scope covers the most relevant ML papers, real-world ML use cases, cool tech releases, and $ in AI. Weekly