Mischa Masthoff (Realtime) over machine learning binnen finance
Wat hebben een bitterbal, cervelaat en een kabouter met elkaar gemeen? Antwoord: het is alledrie ‘eten’. Althans volgens een eerste proof of concept van het machine learning taalmodel dat het bedrijf Realtime aan het ontwikkelen is.
De opkomst van big data heeft gezorgd voor een sterke opleving van kunstmatige intelligentie. Binnen de wereld van kunstmatige intelligentie is machine learning één van die termen die vaak langskomt.
Toch bestaat er nog veel onduidelijkheid rondom machine learning. En wat is de potentie van de technologie? Een gesprek met Mischa Masthoff, mede-oprichter van Realtime, een bedrijf dat machine learning toepast binnen de financiële bedrijfsvoering.
Om te beginnen, wat is een machine learning taalmodel?
Ik zal je de technische details besparen, maar een taalmodel is software waarmee ‘de computer’ taal in zekere zin ‘begrijpt’. De platte – en gebrekkige – variant is dat je een taalmodel maakt puur op basis van vooraf ingevoerde lijstjes.
Bijvoorbeeld: je maakt een lijst met alle straatnamen van Nederland. Die lijst vergelijk je vervolgens met je boekingsteksten. Staat er een straatnaam in, dan is het vast een reisdeclaratie. Dat kan werken tot op zekere hoogte. Komt er een nieuwe straatnaam bij, dan is je analyse niet meer actueel.
Een ander nadeel van werken met vooraf ingevoerde lijstjes is dat je in veel gevallen niet volledig bent. Maak maar eens een lijst met begrippen die duiden op IT-kosten. Voor je het weet vergeet je de woorden ‘proxy’, ‘VMware’ of ‘SSL-certificaat’. Wat je nodig hebt is machine learning. Met machine learning zorg je er voor dat de computer (op basis van grote hoeveelheden trainingsdata) zelf dingen bij gaat leren.
Wat kan het gebruik van machine learning opleveren?
Om de potentie daarvan te snappen is het goed om een keer door de oogharen naar consulting te kijken. Het consultingvak bestaat kort door de bocht uit twee onderdelen: goed kunnen rekenen en informatie kunnen duiden. Wat zien we in de cijfers? Worden bepaalde ratio’s en/of kpi’s gehaald? Maar ook: de inhoud snappen. Vergelijk het met een adviesrapport op basis van een rondgestuurde vragenlijst.
De gegevens die de consultant verwerkt bestaan uit cijfers (“gemiddeld scoort de organisatie op vraag x...”) en uit “inhoud” (welke lijn zien we in de open vragen?).
Het eerste onderdeel is makkelijk te automatiseren (via Excel of een andere rekentool). Het tweede onderdeel is waar de echte uren in gaan zitten (lezen, samenvatten, een lijn ontdekken). Met een taalmodel op basis van machine learning kun je ook dat onderdeel gaan automatiseren. Dat bespaart uren en daarmee kosten.
Aan wat voor toepassingen kunnen we allemaal denken?
Wat het model precies moet kunnen hangt af van de toepassing. Afhankelijk van de toepassing moet het model goed overweg kunnen met de betekenis van woorden (“als een appel fruit is en een peer lijkt op een appel, dan is een peer ook fruit”), de structuur van een zin (“4 laptops maart 2022” is iets anders dan “laptops 4 maart 2022”) of beiden.
Realtime richt zich vooralsnog op het automatisch opsporen van fouten en risico’s in de financiële administraties van haar klanten.
Het huidige model van Realtime kan bij de invoer van 560.000 boekingen en 170 grootboekrekeningnummers in 84% van de gevallen op basis van de boekingstekst het juiste grootboekrekeningnummer voorspellen.
Als de computer de inhoud van een boekingstekst snapt, dan gaat er een wereld open van waardevolle te automatiseren analyses. Een paar voorbeelden: het detecteren van onterechte afschrijvingen (bijvoorbeeld op grond), ontrechte declaraties, verkeerde WKR-classificaties (“lunch” in plaats van “zakelijke lunch”), enzovoorts.
Het verschil tussen taal wel of niet snappen wordt mooi duidelijk als we kijken naar een geautomatiseerde analyse op dubbele facturen. Begrijpt je softwaretaal niet, dan kun je een potentieel dubbele factuur opsporen door te kijken naar (een combinatie van) overeenkomsten in bedrag, crediteurnummer en factuurdatum.
Maar heb je twee facturen van dezelfde crediteur, met een verschillende factuurdatum en een verschillend bedrag, dan kunnen de facturen nog steeds dubbel zijn. Maar daar kom je pas achter als je softwaretaal begrijpt.
Bijvoorbeeld als je twee facturen hebt, waarbij de boekingstekst van de eerste factuur luidt “werkzaamheden week 43 t/m 45” en de boekingstekst van de tweede factuur luidt “werkzaamheden wk 44 t/m wk 46”. Als een taalmodel begrijpt dat “week 43 t/m 45” duidt op een periode en “wk 44 t/m wk 46” ook, dan kan het model de overlap in de werkzaamheden (en dus de dubbel in rekening gebrachte weken) geautomatiseerd ontdekken.
Hoe nu verder met jullie machine learning-model?
Als bedrijf zijn we heel tevreden over de voortgang die de ontwikkeling van ons taalmodel laat zien. We begonnen met een droom en na heel veel hard werk (zoals het handmatig labelen van 25.000 boekingsteksten en ontelbare andere records) zien de resultaten er met een betrouwbaarheid van 84% goed uit.
We zijn er nog niet (het kan altijd beter), maar de komende tijd gaan we met onze klanten en partners volop de mogelijkheden ontdekken. Geïnteresseerde partijen die willen mee-innoveren, mogen zich altijd melden.