Supervised learning: Kunstmatige intelligentie blogreeks: De magie van datalabels
Welkom bij het twaalfde artikel in de blogreeks “Kunstmatige intelligentie”. Het elfde deel heeft als titel “Reinforcement learning: al doende leert men”. In dit deel wordt ingegaan op hoofdstuk 12: Supervised learning: De magie van datalabels.
SUPERVISED LEARNING: DE MAGIE VAN DATALABELS
Supervised learning is één van de drie categorieën van machine learning. In deze variant leert de computer van veel voorbeelden van data met gegeven uitkomsten. Op basis daarvan kan de machine bepalen wat de belangrijkste eigenschappen zijn die tot die uitkomsten leiden. Zo kan de computer die eigenschappen gebruiken om een voorspelling te maken voor nieuwe datapunten waar de uitkomst nog niet van bekend is.
CAPTCHA’s en reCAPTCHA’s
Het is weer zover: je hebt op een website je gebruikersnaam en wachtwoord ingevuld. Vervolgens, vóórdat je echt kan inloggen, krijg je de vraag om aan te geven op welke foto’s stoplichten te zien zijn. Herken je deze situatie? Dan kan je jezelf naast je dagelijkse taken en beroep ook een heuse data-labelaar noemen.
De website wil uitsluiten dat jij een bot bent. Een bot, een computer, zou bijvoorbeeld automatisch websiteformulieren in kunnen vullen en daardoor voor zoveel verkeer op je website kunnen zorgen dat de website uit de lucht gaat. De stoplichtenopdracht is een voorbeeld van een CAPTCHA, Completely Automated Public Turing test totell Computers and Humans Apart. Er wordt aangenomen dat een computer de stoplichten niet kan herkennen en dat een mens dat wel kan. Op die manier kun je de twee dus onderscheiden.
CAPTCHA’s worden al jaren veelvuldig gebruikt door allerlei webhosts, de beheerders van websites. Op een gegeven moment werden er per dag 200 miljoen CAPTCHA’s ingevuld. De ontwikkeling van CAPTCHA’s heeft sindsdien een bijzonder slimme wending genomen. Vanaf het jaar 2007 plaatsen veel websites de nieuwe variant, genaamd reCAPTCHA. Een reCAPTCHA zorgt er niet alleen voor dat mensen van computers worden onderscheiden, maar gebruikt de informatie die jij geeft door de plaatjes aan te klikken ook nog voor iets anders. Jouw noeste arbeid wordt gebruikt voor de ontwikkeling van kunstmatige intelligentie technieken.
Pas na ‘labels’ volgt leren (supervised, dan)
Bij elke klik geef je een plaatje namelijk een label (“stoplicht” of “geen stoplicht”). Gelabelde data is zeer waardevol voor AI technieken en zelfs essentieel als het gaat om de AI-techniek supervised learning. Een bekende toepassing van een supervised learning-techniek is het herkennen van spam mail in je inbox. Het herkennen van spam is supervised, omdat de techniek voor elke email de input (de tekst in de mail, het tijdstip van de mail, de afzender, etc.) moet vertalen naar een output (“spam” of “geen spam”). De output kun je zien als een label. We zeggen dan ook wel dat supervised learning gebruik maakt van gelabelde data. Door data aan te leveren waarvan we weten of de mails spam of geen spam zijn, leert het systeem wat de eigenschappen zijn van spam mails en kan het nieuwe spam vervolgens herkennen.
Dat gelabelde data onmisbaar is voor deze techniek is eigenlijk heel logisch. Stel je eens voor dat je honderd foto’s krijgt, met daarop lama’s of alpaca’s, en de opdracht om te leren herkennen wat een lama is en wat een alpaca. Met de kleine moeilijkheid: van de foto’s die je krijgt, wordt niet verteld welke foto’s lama’s zijn, en welke alpaca’s. Nu zou het toevallig zo kunnen zijn dat je expert bent op het gebied van kameelachtige zoogdieren uit Zuid-Amerika. De kans is echter groter dat je het heel lastig gaat krijgen. Hoe kun je in hemelsnaam de dieren onderscheiden? Het verhaal wordt een stuk makkelijker als je van de eerste negentig foto’s verteld wordt welke lama’s zijn en welke alpaca’s. In dat geval kun je op basis daarvan waarschijnlijk een gerichte inschatting maken van de laatste tien foto’s. We kunnen dus wel stellen dat het onmogelijk is om te leren welk dier de lama is en welke de alpaca zonder van beide dieren een aantal voorbeelden te hebben gezien. In AI-termen: zonder de beschikbaarheid van gelabelde data is het onmogelijk om een supervised learningtechniek toe te passen.
De menselijke hand in labeling
Vervolgens luidt de vraag: hoe kom je aan gelabelde data? Het verzamelen van deze labels is een heel interessant en soms ingewikkeld proces. In sommige situaties is een label overduidelijk doordat de toekomst het uitwijst. Denk bijvoorbeeld aan het voorspellen of iemand iets gaat kopen binnen een websitebezoek. Of iemand wel of niet iets heeft gekocht wordt automatisch geregistreerd. Er zijn echter veel voorbeelden te bedenken waarbij het voor een computer niet duidelijk is welk labeltje bij de data hoort. Tot deze categorie behoren de ongewenste email spam en de stoplichtenplaatjes. Een computer heeft niet zelf verzonnen wat de term spam inhoudt of wat een stoplicht is. Hier is een handmatige, menselijke labeling voor nodig. In het geval van de mails wil dat zeggen dat iemand (of eigenlijk heel veel iemanden) voor elke mail apart aan zal moeten geven of de mail wel of geen spam is.
Het klinkt minder betoverend dan we geneigd zijn ons voor te stellen bij de wondere wereld van kunstmatige intelligentie en technologie. De ontwikkelingen in dit vakgebied hebben de potentie veel banen overbodig te maken en hebben wel degelijk niet te onderschatten gevolgen voor onze samenleving. Toch blijft er in sommige gevallen ook veel handwerk bij kijken. Op dit moment zijn er bijvoorbeeld moderne fabriekshallen in lageloonlanden zoals China en India waar mensen onder slechte omstandigheden hele dagen data labelen. Alleen door menselijke input kan de machine uitvinden wat de eigenschappen zijn van een spammail om vervolgens de mails in de toekomst te kunnen herkennen.