Entiteitsextractie is het automatisch uithalen van specifieke stukjes informatie uit lopende tekst. In plaats van dat iemand een document leest en de belangrijke delen in een systeem typt, vindt de software de namen, datums, bedragen en referentienummers en geeft ze terug als schone data.

Stel je een stapel leveranciersfacturen voor in allerlei verschillende lay-outs. Een mens zou elke factuur afzoeken op het bedrijf, het totaal en de vervaldatum en die in de boekhoudsoftware tikken. Entiteitsextractie doet dat lezen automatisch, met natural language processing om te herkennen wat elke waarde is. Onder de motorkap leunt het op named entity recognition om te labelen wie een persoon is, wat een datum is en wat geld is.

De uitkomst zijn gestructureerde velden die je kunt opslaan, doorzoeken en gebruiken. Dat is het verschil tussen een document dat stof ligt te verzamelen en een document dat je systemen voedt.

Het lastige zit in dubbelzinnigheid. Een datum als 03/04 betekent maart op de ene factuur en april op de volgende, een totaal kan schuilgaan tussen verzend- en btw-regels, en dezelfde leverancier schrijft zijn naam soms op drie manieren. De praktische zet is daarom extractie koppelen aan een betrouwbaarheidsscore: alles waar het model zeker van is gaat direct door, terwijl de twijfelgevallen naar een mens gaan voor een snelle check. Die controledata is op termijn precies wat de volgende ronde nauwkeuriger maakt.

Komen de documenten als scans of foto’s binnen in plaats van als schone tekst, dan rijdt de extractie meestal bovenop OCR, en elke fout die de OCR maakt wordt een fout in de uitgehaalde data. Een vage 8 die als 3 wordt gelezen maakt van een echt totaal een verkeerd totaal, en daarom telt beeldkwaliteit net zo zwaar als het model zelf.

Bij TopDevs bouwen we entiteitsextractie in documentzware workflows, zodat een klant niet steeds dezelfde informatie met de hand overtypt maar die direct op de juiste plek krijgt.