Veldextractie en veldtoewijzing

Voltooid

Opmerking

Zie het tabblad Tekst en afbeeldingen voor meer informatie.

Veldextractie is het proces van het ophalen van tekstuitvoer van OCR en het toewijzen van afzonderlijke tekstwaarden aan specifieke, gelabelde gegevensvelden die overeenkomen met zinvolle bedrijfsgegevens. Hoewel OCR aangeeft welke tekst er in een document bestaat, vertelt veldextractie u wat die tekst betekent en waar deze hoort in uw bedrijfssystemen.

De pijplijn voor veldextractie

Veldextractie volgt een systematische pijplijn die OCR-uitvoer transformeert in gestructureerde gegevens.

Diagram van de pijplijn voor veldextractie.

De fasen in het veldextractieproces zijn:

  1. OCR-uitvoeropname.
  2. Velddetectie en kandidaat-identificatie.
  3. Veldtoewijzing en koppeling.
  4. Normalisatie en standaardisatie van gegevens.
  5. Integratie met bedrijfsprocessen en systemen.

Laten we deze fasen nader bekijken.

Fase 1: OCR-uitvoeropname

Het proces begint met de gestructureerde uitvoer van de OCR-pijplijn, waaronder:

  • Onbewerkte tekstinhoud: de werkelijke tekens en woorden die uit het document zijn geëxtraheerd
  • Positiemetagegevens: Coördinaten van begrenzingsvak, paginalocaties en leesvolgordegegevens
  • Betrouwbaarheidsscores: betrouwbaarheidsniveaus van OCR-engine voor elk tekstelement
  • Indelingsinformatie: Documentstructuur, regeleinden, alineagrenzen

Opmerking

In tegenstelling tot eenvoudige tekstverwerking is veldextractie sterk afhankelijk van waar tekst in het document wordt weergegeven, niet alleen wat het zegt. De positie van '12345' kan helpen bepalen of het een factuurnummer, klant-id of telefoonnummer is.

Fase 2: Velddetectie en kandidaat-identificatie

In deze fase wordt de potentiële veldwaarde in de OCR-uitvoer geïdentificeerd. Er zijn meerdere benaderingen die onafhankelijk of in combinatie kunnen worden gebruikt om de waarschijnlijke velden in de OCR-resultaten te bepalen.

Detectie op basis van sjablonen

Sjablonen voor velddetectie zijn afhankelijk van patroonkoppeling op basis van regels. Veldidentificatie kan worden uitgevoerd met behulp van technieken zoals:

  • Vooraf gedefinieerde documentindelingen met bekende veldposities en ankertrefwoorden.
  • Zoekt naar label-waardeparen zoals 'Factuurnummer:', 'Datum:', 'Totaal:'.
  • Reguliere expressies en overeenkomende tekenreeksalgoritmen.

Voordelen van een op sjablonen gebaseerde benadering zijn onder andere hoge nauwkeurigheid voor bekende documenttypen, snelle verwerking en uitlegbare resultaten.

Beperkingen van de aanpak omvatten de vereiste voor het handmatig maken van sjablonen en complexiteit die wordt veroorzaakt door indelingsvariaties of inconsistenties voor veldnamen.

Detectie op basis van machine learning

In plaats van in code vastgelegde logica om velden te extraheren op basis van bekende namen en locaties, kunt u een verzameling voorbeelddocumenten gebruiken om een machine learning-model te trainen waarmee de velden worden geëxtraheerd op basis van geleerde relaties. Met name op transformatiemodellen gebaseerde modellen zijn goed in het toepassen van contextuele aanwijzingen om patronen te identificeren, en daarom vormen ze vaak de basis van een oplossing voor velddetectie.

Trainingsmethoden voor machine learning-modellen voor velddetectie zijn onder andere:

  • Leren onder supervisie: getraind op gelabelde gegevenssets met bekende veldlocaties.
  • Zelfgestuurd leren: vooraf getraind op grote document corpora om inzicht te hebben in indelingspatronen.
  • Multimodaal leren: combineert tekst, visual en positionele functies.
  • Geavanceerde modelarchitecturen, zoals:
    • Graph Neural Networks (GNN's) die ruimtelijke relaties tussen tekstelementen modelleren als grafiekverbindingen.
    • Aandachtsmechanismen die zich richten op relevante documentregio's bij het voorspellen van veldwaarden.
    • Reeks-naar-reeksmodellen waarmee ongestructureerde tekstreeksen worden getransformeerd in gestructureerde veldtoewijzingen.

Generatieve AI voor op schema gebaseerde extractie

Recente ontwikkelingen in grote taalmodellen (LLM's) hebben geleid tot de opkomst van generatieve ai-gebaseerde velddetectietechnieken, die efficiëntere en effectieve velddetectie mogelijk maken via:

  • Extractie op basis van prompts waarin u de LLM voorziet van documenttekst en een schemadefinitie, en het de tekst afstemt op de velden binnen het schema.
  • Few-shot learning waarmee u de modellen kunt trainen met minimale voorbeelden om aangepaste velden te extraheren.
  • Gedachtekroniek die modellen begeleidt bij logica voor stapsgewijze veldidentificatie.

Fase 3: Veldtoewijzing en koppeling

Nadat kandidaatwaarden zijn geïdentificeerd, moeten ze worden toegewezen aan specifieke schemavelden:

Sleutel-waardekoppelingstechnieken

In veel gevallen zijn gegevensvelden in een document of formulier discrete waarden die kunnen worden toegewezen aan sleutels, bijvoorbeeld de naam van de leverancier, de datum en het totale bedrag in een ontvangst- of factuurbedrag. Veelgebruikte technieken voor sleutel-waardekoppeling zijn:

  • Nabijheidsanalyse:

    • Ruimtelijke clustering: Groepeer tekstelementen in de buurt met behulp van afstandsalgoritmen.
    • Analyse van leesvolgorde: volg de natuurlijke tekststroom om labels aan waarden te koppelen.
    • Geometrische relaties: Gebruik uitlijnings-, inspringings- en positioneringspatronen.
  • Taalkundig patroonherkenning:

    • Benoemde entiteitsherkenning (NER):identificeer specifieke entiteitstypen (datums, bedragen, namen).
    • Woordsoortmarkering: Begrijp de grammaticale relaties tussen labels en waarden.
    • Afhankelijkheid parseren: Syntactische relaties in tekst analyseren.

Verwerking van tabel- en gestructureerde inhoud

Sommige documenten bevatten complexere structuren van tekst, zoals tabellen. Een ontvangstbewijs of factuur kan bijvoorbeeld een tabel met regelitems bevatten met kolommen voor de itemnaam, prijs en de gekochte hoeveelheid.

De aanwezigheid van een tabel kan worden bepaald met behulp van verschillende technieken, waaronder:

  • Gespecialiseerde CNN-architecturen (convolutionele neurale netwerken) voor tabelstructuurherkenning.
  • Methoden voor objectdetectie die zijn aangepast voor de identificatie van tabelcellen.
  • Op grafieken gebaseerde parseringsmethoden die tabelstructuur modelleren als grafiekrelaties tussen cellen.

Als u de waarden in de cellen in een tabel wilt toewijzen aan velden, kan de oplossing voor veldextractie een of meer van de volgende technieken gebruiken:

  • Rijkolomkoppeling om tabelcellen toe te wijzen aan specifieke veldschema's.
  • Headerdetectie om kolomkoppen te identificeren en veldbetekenissen te begrijpen.
  • Hiërarchische verwerking voor het verwerken van geneste tabelstructuren en subtotalen.

Betrouwbaarheidsscore en validatie

Nauwkeurigheid van veldextractie is afhankelijk van veel factoren en de algoritmen en modellen die worden gebruikt om de oplossing te implementeren, zijn onderhevig aan mogelijke fouten met onjuiste identificatie of interpretatie van waarde. Hiervoor worden verschillende technieken gebruikt om de nauwkeurigheid van de voorspelde veldwaarden te evalueren; inclusief:

  • OCR-betrouwbaarheid: betrouwbaarheidsscores overnemen van de onderliggende tekstherkenning.
  • Betrouwbaarheid van patroonkoppeling: Scoren op basis van hoe goed extractie overeenkomt met verwachte patronen.
  • Contextvalidatie: controleren of veldwaarden zinvol zijn in documentcontext.
  • Validatie voor meerdere velden: Relaties tussen geëxtraheerde velden controleren (bijvoorbeeld om te controleren of de subtotalen van regelitems zijn opgeteld bij het totale factuurtotaal).

Fase 4: Normalisatie en standaardisatie van gegevens

Onbewerkte geëxtraheerde waarden worden over het algemeen omgezet in consistente notaties (bijvoorbeeld om ervoor te zorgen dat alle geëxtraheerde datums worden uitgedrukt in dezelfde datumnotatie) en gecontroleerd op geldigheid.

Standaardisatie opmaken

Voorbeelden van indelingsstandaardisatie die kunnen worden geïmplementeerd, zijn:

  • Datumnormalisatie:

    • Formaatdetectie: Identificeer verschillende datumnotaties (MM/DD/JJJJ, DD-MM-JJJJ, enzovoort).
    • Algoritmen parseren: converteren naar gestandaardiseerde ISO-indelingen.
    • Ambiguïteitsoplossing: omgaan met gevallen waarin datumnotatie onduidelijk is.
  • Valuta en numerieke verwerking:

    • Symboolherkenning: Het verwerken van verschillende valutasymbolen en duizendtal-scheidingstekens.
    • Decimaalnormalisatie: Standaardiseer de decimale puntweergave in landinstellingen.
    • Eenheidsconversie: converteer naar behoefte tussen verschillende maateenheden.
  • Standaardisatie van tekst:

    • Casenormalisatie: Consistente hoofdlettergebruiksregels toepassen.
    • Standaardisatie van codering: verschillende tekencoderingen en speciale tekens verwerken.
    • Uitbreiding van afkortingen: algemene afkortingen converteren naar volledige formulieren.

Gegevensvalidatie en kwaliteitsgarantie

Naast het opmaken van de geëxtraheerde velden, maakt het standaardisatieproces verdere validatie mogelijk van de waarden die zijn geëxtraheerd via technieken zoals:

  • Validatie op basis van regels:

    • Opmaakcontrole: Controleer of geëxtraheerde waarden overeenkomen met de verwachte patronen (telefoonnummers, e-mailadressen).
    • Bereikvalidatie: zorg ervoor dat numerieke waarden binnen redelijke grenzen vallen.
    • Verplichte veldcontrole: Controleer of alle verplichte velden aanwezig zijn.
  • Statistische validatie:

    • Uitbijterdetectie: Identificeer ongebruikelijk hoge of lage waarden die kunnen duiden op extractiefouten.
    • Distributieanalyse: Geëxtraheerde waarden vergelijken met historische patronen.
    • Validatie voor meerdere documenten: consistentie controleren in gerelateerde documenten.

Fase 5: Integratie met bedrijfsprocessen en systemen

De laatste fase van het proces omvat meestal het integreren van de geëxtraheerde veldwaarden in een bedrijfsproces of systeem:

Schematoewijzing

De geëxtraheerde velden moeten mogelijk verder worden getransformeerd of opnieuw worden opgemaakt, zodat ze zijn afgestemd op toepassingsschema's die worden gebruikt voor gegevensopname in downstreamsystemen. Voorbeeld:

  • Databaseschema's: geëxtraheerde velden toewijzen aan specifieke databasekolommen en -tabellen.
  • API-nettoladingen: gegevens opmaken voor REST API-verbruik door downstreamsystemen.
  • Berichtenwachtrijen: gestructureerde berichten voorbereiden voor asynchrone verwerking.

Het schematoewijzingsproces kan bestaan uit transformaties zoals:

  • Veldnamen hernoemen: Geëxtraheerde veldnamen afstemmen op doelsysteemconventies.
  • Gegevenstypeconversie: Zorg ervoor dat waarden overeenkomen met de verwachte gegevenstypen in doelsystemen.
  • Voorwaardelijke logica: Pas bedrijfsregels toe voor de transformatie en afleiding van velden.

Metrische gegevens en rapportage van kwaliteit

Een andere veelvoorkomende taak nadat het extractieproces is voltooid, is het evalueren en rapporteren van de kwaliteit van de geëxtraheerde gegevens. Het rapport kan informatie bevatten zoals:

  • Betrouwbaarheidsscores op veldniveau: Afzonderlijke betrouwbaarheidsclassificaties voor elk geëxtraheerd veld.
  • Kwaliteitsevaluatie op documentniveau: Algemene metrische gegevens over geslaagde extractie.
  • Foutcategorisatie: Classificeer extractiefouten op type en oorzaak.