Wat is machine learning eigenlijk, hoe werkt het en hoe kunnen we de kwaliteit ervan controleren?
Logische vragen die een eerlijk antwoord verdienen! Ten eerste even een misverstand uit de wereld helpen: De computer leert niet uit zichzelf en de computer heeft ook geen notie van bewustzijn; dat zie je alleen in Hollywood films over Artificial Intelligence.
Bij de algoritmes die gebruikt zijn voor de ontwikkeling van de Review Robot wordt alleen gebruik gemaakt van zogenaamde ‘supervised machine learning’. Dat zijn algoritmes die aan de hand van een groot aantal voorbeelden (zowel positieve als negatieve) een bepaalde categorie documenten leren herkennen. Deze algoritmes hebben ook een zekere robuustheid, wat wil zeggen dat als ze verkeerde trainingsdata krijgen, deze voor een groot deel genegeerd worden. Zo hebben we bij wijze van experiment bewust 30% van de trainingsdata verkeerd gelabeld en het negatieve effect op de kwaliteit van de classificatie was slechts een paar procent. Maar in principe geldt dat de algoritmes het zo goed doen als de data zijn, dus: garbage in leads to garbage out.
De algoritmes, die ZyLAB gebruikt worden al jaren gebruikt en zijn uitvoerig getest in diverse omstandigheden bij zeer veel wetenschappelijk onderzoek. In alle gevallen presenteerden deze algoritmes beter dan mensen. In de meeste gevallen zelfs veel beter dan mensen (>50%), en in sommige gevallen heel veel beter (aantal malen beter). We maken gebruik van verschillende soorten algoritmes, die allemaal zo hun voor- en nadelen hebben in bepaalde situaties afhankelijk van de beschikbaarheid van veel of weinig trainingsdata, de noodzaak om classifiers te hergebruiken op andere datasets of de beschikbare rekencapaciteit. Als gebruiker hoeft u zich hier geen zorgen om te maken, want de keuzes worden automatisch ‘onder de motorkap’ voor u gemaakt.
Voor het trainen worden de documenten eerst door de computer geanalyseerd. Hierbij wordt bepaald wat de meest onderscheidende woorden, syntactische of semantische structuren zijn binnen de documentenset. Hiervoor worden zowel statistische als linguïstische technieken gebruikt. Als een van de weinig bedrijven in de wereld ondersteunen wij ook volledig de Nederlandse taal. Veel andere producten kunnen vaak alleen met (VS) Engelstalige documenten omgaan. Vervolgens zoekt de gebruiker een aantal relevante documenten voor een bepaalde categorie. Dit kan met behulp van een zogenaamde validatieset die eerst met de hand wordt gereviewd, of met een fulltext zoekprogramma, of door middel van zogenaamde ‘unsupervised clustering’ technieken die automatisch documenten aan de hand van de inhoud organiseren en waar de gebruiker interessante categorieën uit selecteert. Het maakt voor de snelheid van het trainingsproces niet echt uit op welke manier gestart wordt.
Daarna worden uit de verzameling trainingsdocumenten, tien willekeurige sets van 90% trainings- en 10% testdocumenten gegenereerd. De 90% wordt gebruikt om de algoritmes te trainen en de 10%, die de computer dus niet eerder heeft gezien, wordt gebruikt om het leerproces te testen. Dit proces wordt op de tien verschillende sets toegepast (dit heet 10-fold cross validation in machine learning) en de uiteindelijke kwaliteit van de classifier wordt bepaald aan de hand van het gemiddelde van deze tien willekeurige sets. De kwaliteit wordt uitgedrukt in ‘precision’ (het percentage dat goed is na een classificatie) en ‘recall’ (het percentage van alle relevante documenten dat van een bepaalde klasse in een documentenset gevonden is).
Vervolgens wordt een aantal nieuwe documenten met de computer geclassificeerd en aan de gebruiker gepresenteerd. De gebruiker zal dan aangeven wat goede classificaties zijn en wat verkeerde classificaties zijn. Op deze manier kan het aantal trainingsdocumenten worden vergroot en kan bij voldoende aanwas een volgende trainingscyclus gestart worden. Dit proces gaat door tot de kwaliteit van de classifier goed genoeg is; vaak is dat als zowel de precision als recall boven de 80% zijn. Op dat moment is het belangrijk om de verdedigbaarheid van het gehele proces goed vast te leggen. Dat gebeurt aan de hand van een zogenaamd defensibility report. Hierin zullen alle details van het trainingsproces worden vastgelegd: welke trainingsdocumenten zijn er, heeft er een review plaatsgevonden en door wie-waar-wanneer en hoelang, hoeveel trainingscycli zijn er geweest, wat was de ontwikkeling van de kwaliteit van de classifiers, etc? Al deze informatie wordt opgeslagen in één rapport.
Als laatste zal dan nog een onafhankelijke test van de kwaliteit van de classifier gemaakt moeten worden door middel van een handmatig reviewproces van een willekeurige selectie (vaak 1-5%) van documenten, die de computer in die categorie wil classificeren. Als ook die goed genoeg is, kan de automatische classificatie van de rest van de documenten plaatsvinden. Deze test kunt u later ook zo vaak doen als u wilt om continu de kwaliteit van de automatische classificatie te testen. Het is vanzelfsprekend ook heel belangrijk om de rapportage van deze testen goed vast te leggen.
Hoe zit het met juridische risico’s en aansprakelijkheid voor het onderzoek?
Onafhankelijke en continue validatie van de resultaten en verdedigbaarheid van het geautomatiseerde proces is een van de meest belangrijke onderdelen van het gehele proces. Net zoals bij advocatenkantoren nu ook de kwaliteit van het werk onderling gecontroleerd wordt aan de hand van steekproeven, zo zal dat ook moeten gebeuren met werkzaamheden die geautomatiseerd zijn uitgevoerd. Door een willekeurige steekproef te nemen en die door specialisten of senior advocaten te laten controleren kan de kwaliteit van het proces continu in de gaten gehouden worden. In de nieuwe situatie kunnen dus precies dezelfde kwaliteitsstandaarden gebruikt worden. Hierdoor zal de risicocontrole en beheersing van de aansprakelijkheid dus niet anders zijn dan bij een traditionele afhandeling van de projecten. Ook is het zaak de onderliggende stappen en beslismomenten van het automatische proces goed te documenteren en via een audit-trail en met gedetailleerde rapportages vast te leggen.
Hoe goed werkt het?
Wel, meestal heel goed en in bijna alle gevallen dus veel beter, consistenter en sneller dan een menselijke review! Maar in een aantal hele specifieke gevallen zal deze technologie niet werken doordat bijvoorbeeld de beslissing, een document of email uit een bepaalde categorie, niet gemaakt wordt aan de hand van de inhoud van het document maar op basis van externe informatie.
Vanzelfsprekend werkt machine learning niet als de documenten geen tekst bevatten, zoals plaatjes, geluidsopnames of video’s. In dat geval zijn andere technieken uit de AI nodig om de documenten eerst van tekst te voorzien of door direct met de geluids- of beeldinformatie te werken[1].
Omdat machine learning werkt op basis van taalkundige eigenschappen, heeft dat ook invloed op de kwaliteit. Bijvoorbeeld, als een document bijna alleen uit getallen bestaat en onvoldoende uit woorden en natuurlijke menselijke taal, dan kan machine learning daar geen goede documentrepresentatie van maken. Omdat deze representatie ook afhankelijk is van de verdeling van de woorden over de onderwerpen die in een document besproken worden, kan machine learning ook minder werken als er veel verschillende talen in een document staan of over veel verschillende onderwerpen gaan (wat vaak het geval is bij hele lange documenten).
Als slechts een heel klein deel van een document (bijvoorbeeld één zin) over een bepaald onderwerp gaat, werkt het alleen als machine learning ook kan werken met tekstdelen in plaats van gehele documenten.
Noot
[1] Plaatjes die geschreven tekst als beelden bevatten zoals TIFF of PDF, kunnen van tekst worden voorzien met behulp van Optical Character Recognition (OCR) technologie. Geluidsopnames kunnen voorzien worden van een fonetische annotatie, waarop gezocht kan worden met behulp van Audio Search technologie. Voor andere plaatjes en video opnames zijn zogenaamde ‘visual classification technieken’ nodig. Deze technieken presteren vaak op een veel lager niveau en zijn nog redelijk experimenteel. Echter deze technologie ontwikkelt zich heel snel en er worden ieder jaar grote stappen gemaakt.
Auteur
Prof. dr. ir. Jan C. Scholtes, bijzonder hoogleraar Text mining bij de vakgroep Artificial Intelligence van de afdeling Data Science and Knowledge Engineering aan de Universiteit van Maastricht. Hij is tevens Chief Strategy Officer bij ZyLAB.