Arve parse – arvete andmete ekstraheerimine PDF-ide ja skannitud dokumentide jaoks PlatoBlockchain Data Intelligence. Vertikaalne otsing. Ai.

Arvete sõelumine – PDF-ide ja skannitud dokumentide arveandmete ekstraheerimine

Kui olete kunagi pidanud arvet käsitsi töötlema, teate, kui aeganõudev ja tüütu see protsess võib olla. Rääkimata sellest, et see teeb vigu, sest kõike käsitsi tehes on lihtne millestki ilma jääda.

Siin tulevadki appi arveparserid. Need tööriistad automatiseerivad arvetelt andmete hankimise protsessi, muutes vajaliku teabe hankimise kiireks ja lihtsaks. See võib säästa palju aega ja vaeva ning tagada, et teie arveid töödeldakse täpselt.

Selles artiklis käsitletakse arvete andmete ekstraheerimise protsessi arveparserite abil, käsitledes mõningaid selle parimaid meetodeid, sealhulgas tabeli väljavõtmist, täiustatud OCR-i ja süvaõpet.

Uurime ka automatiseeritud arveandmete ekstraheerimise eeliseid võrreldes käsitsi töötlemisega. Sukeldume otse sisse.

Mis on arveparser?

Arveparser on teatud tüüpi tarkvara, mis on loodud arvedokumentide lugemiseks ja tõlgendamiseks. See võib hõlmata PDF-e, pilte ja muud tüüpi faile.

Arveparseri eesmärk on eraldada arvelt põhiteavet, nagu arve ID, tasumisele kuuluv kogusumma, arve kuupäev, kliendi nimi jne. Arve parserid aitavad tagada täpsust, vältides vigu, mis võivad tekkida andmete käsitsi ekstraheerimisel.

Seda teavet saab seejärel kasutada erinevatel eesmärkidel, nt AP automaatika, kuu lõpu raamatupidamise sulgemise protsessja arvete haldamine.

Arveparserid võivad olla eraldiseisvad programmid või integreeritud suurematesse äritarkvarasüsteemidesse. Need tööriistad hõlbustavad meeskondadel aruannete loomist või andmete eksportimist teistesse rakendustesse, näiteks Excelisse, ja neid kasutatakse sageli koos muude ärijuhtimisrakendustega.

Turul on palju erinevaid arvete parsimise tarkvaralahendusi, seega on oluline valida üks, mis vastab teie konkreetsetele vajadustele.

Kuidas arveparser töötab?

Arveparserite tööpõhimõtete mõistmiseks on oluline omada parserite tööalaseid teadmisi.

Parsereid kasutatakse konkreetses märgistuskeeles kirjutatud dokumentide tõlgendamiseks ja töötlemiseks. Nad jagavad dokumendi väiksemateks tükkideks, mida nimetatakse märkideks, ja analüüsivad seejärel iga märki, et teha kindlaks selle tähendus ja kuidas see sobib dokumendi üldisesse struktuuri.

Selleks peavad parseritel olema kasutatud märgistuskeele grammatika tugev arusaam. See võimaldab neil tuvastada üksikud märgid ja mõista õigesti nendevahelisi seoseid. Olenevalt parserist võib see protsess olla kas käsitsi või automaatne. Käsitsi sõelujad nõuavad, et keegi astuks läbi dokumendi ja tuvastaks iga märgi, samas kui automaatsed parserid kasutavad lubade automaatseks tuvastamiseks ja töötlemiseks algoritme. Mõlemal juhul on parseritel oluline roll märgistuskeeltes kirjutatud dokumentide mõtestamises.

Andmete ekstraheerimisel saab arvete analüüsimisel arve dokumenti analüüsida ja asjakohast teavet eraldada.

Mõelge näiteks juhtumile, kus teile on esitatud palju arveid ja soovite salvestada nende andmeid struktureeritud vormingus. Arve sõelumine võimaldab laadida kõik failid ja käivitada optilise märgituvastuse (OCR), et andmeid saaks lugeda ja kõik võtme-väärtuste paarid eraldada mõne minuti jooksul. Järgmisena saate kasutada mõningaid järeltöötlusalgoritme, et salvestada need loetavamatesse vormingutesse, nagu JSON või CSV. Sa saad ka luua protsesse ja töövooge kasutades arvete parsimist, et automatiseerida arvete väljavõtmist teie ettevõtte kirjetest.

Arve parsimine Pythoniga

Python on programmeerimiskeel erinevate andmete eraldamiseks, sealhulgas arvete parsimiseks. See jaotis õpetab teile, kuidas kasutada Pythoni teeke arvetelt andmete eraldamiseks.

Üldise tipptasemel arveparseri loomine, mis töötab kõigi andmetüüpidega, on keeruline, kuna see sisaldab mitmesuguseid ülesandeid, nagu teksti lugemine, keelte, fontide käsitlemine, dokumentide joondamine ja võtme-väärtuste paaride eraldamine. Kuid avatud lähtekoodiga projektide ja mõningase leidlikkuse abil saaksime vähemalt mõned neist probleemidest lahendada ja alustada.

Näiteks kasutame näidisarvel tööriista nimega tabula – pythoni teeki, et ekstraheerida tabeleid arvete sõelumiseks. Alloleva koodilõigu käitamiseks veenduge, et kohalikku masinasse on installitud nii Python kui ka tabula/tabulate.

näidis-arve.pdf.

from tabula import read_pdf
from tabulate import tabulate
# PDF file to extract tables from
file = "sample-invoice.pdf"

# extract all the tables in the PDF file
#reads table from pdf file
df = read_pdf(file ,pages="all") #address of pdf file
print(tabulate(df[0]))
print(tabulate(df[1]))

Väljund

-  ------------  ----------------
0  Order Number  12345
1  Invoice Date  January 25, 2016
2  Due Date      January 31, 2016
3  Total Due     $93.50
-  ------------  ----------------

-  -  -------------------------------  ------  -----  ------
0  1  Web Design                       $85.00  0.00%  $85.00
      This is a sample description...
-  -  -------------------------------  ------  -----  ------

Võiksime tabelid mõne koodireaga PDF-failist välja võtta. Põhjus on selles, et PDF-fail oli hästi vormindatud, joondatud ja elektrooniliselt loodud (mitte kaameraga jäädvustatud). Seevastu, kui dokument oleks jäädvustatud kaameraga, selle asemel, et seda elektrooniliselt toota, oleks nende algoritmide jaoks olnud andmete eraldamine palju raskem – siin tuleb mängu optiline märgituvastus.

Kasutame tesserakt, pythoni jaoks populaarne OCR-mootor, mida arve abil sõeluda.

import cv2
import pytesseract
from pytesseract import Output

img = cv2.imread('sample-invoice.jpg')

d = pytesseract.image_to_data(img, output_type=Output.DICT)
print(d.keys())

See peaks andma teile järgmise väljundi -

dict_keys(['level', 'page_num', 'block_num', 'par_num', 'line_num', 'word_num', 'left', 'top', 'width', 'height', 'conf', 'text'])

Seda sõnaraamatut kasutades saame tuvastada iga sõna, nende piirdekasti teabe, neis oleva teksti ja nende usaldusskoori.

Saate kastid joonistada, kasutades allolevat koodi -

n_boxes = len(d['text'])
for i in range(n_boxes):
    if float(d['conf'][i]) > 60:
        (x, y, w, h) = (d['left'][i], d['top'][i], d['width'][i], d['height'][i])
        img = cv2.rectangle(img, (x, y), (x + w, y + h), (0, 255, 0), 2)

cv2.imshow('img', img)
cv2.waitKey(0)

Näete järgmist väljundit:

Nii saame kasutada ja tuvastada arve piirkondi. Võtme-väärtuste paari ekstraheerimiseks tuleb aga luua kohandatud algoritmid. Lisateavet selle kohta leiate järgmistest jaotistest.

Probleemid pärandarveparseritega (reeglipõhine hõivamine)

Tänapäeval tuginevad paljud organisatsioonid arvete andmete väljavõtmiseks endiselt pärandsüsteemidele.

Need "reeglipõhised" süsteemid analüüsivad arvete iga rea ​​kirjet ja võrdlevad neid reeglistikuga, et teha kindlaks, kas teave tuleks nende andmebaasi lisada.

Seda meetodit on kasutatud pikka aega, kuid sellel on mitmeid puudusi. Vaatame mõningaid levinumaid probleeme, millega pärandarveparseritel kokku puutuvad.

  • Lehekülje kallutamine skannimise ajal: Üks reeglipõhiste arveparseritega seotud probleem on see, et neil võib olla raskusi lehe kallutamisega. See juhtub siis, kui arve väljad ei paikne sirgjooneliselt, mistõttu on parseril raske andmeid täpselt tuvastada ja eraldada. Selle põhjuseks võivad sageli olla printerid, mis ei prindi ühtlaselt, või andmete käsitsi sisestamine, mis ei pruugi olla õigesti joondatud.
  • Vormingu muutmine: Üks levinumaid probleeme, millega ettevõte silmitsi seisab, on arved, mis ei ole standardvormingus. See võib põhjustada probleeme arvelt andmete hankimisel. Näiteks võib kasutada erinevaid fonte ja arve kujundus võib kuu lõikes muutuda. Andmeid on raske sõeluda ja määrata, mida iga veerg esindab. Näiteks võib arvele lisada mõned uued väljad või paigutada mõned olemasolevad väljad erinevatele kohtadele. Või võib olla täiesti uus struktuur, mille tõttu tavaline reeglipõhine parser ei suuda arveid õigesti tuvastada.
  • Tabeli ekstraheerimine: Reeglipõhised tabeliekstraktorid on sageli kõige otsesem ja lihtsam viis tabelist andmete eraldamiseks. Siiski on neil oma piirangud tabelite puhul, mis ei sisalda päiseid ega sisalda konkreetsetes veergudes nullväärtusi, kuna need stsenaariumid põhjustavad töötlemise ajal lõpmatu tsükli, mille tulemuseks on aja raiskamine lõputult pikkade ridade mällu laadimisele (või mitte midagi väljastamisele). üldse), kui oleks ka neid atribuute hõlmavaid sõltuvaid väljendeid. Lisaks, kui tabelid hõlmavad mitut lehekülge, käsitlevad reeglipõhised parserid neid ühe tabeli asemel erinevate tabelitena ja eksitavad seega ekstraheerimisprotsessi.

Koostage nanonetsidega tehisintellektil põhinev arveparser

Optilise märgituvastuse (OCR) ja süvaõppega arveparserid saavad skannitud või PDF-failideks teisendatud arvetelt andmeid eraldada. Need andmed võivad seejärel täita raamatupidamistarkvara, jälgida kulusid ja koostada aruandeid.

Süvaõppe algoritmid võivad õppida, kuidas tuvastada arvel konkreetseid elemente, nagu kliendi nimi, aadress ja tooteteave. See võimaldab täpsemat andmete eraldamist ja võib vähendada aega, mis kulub andmete käsitsi sisestamiseks süsteemi. Selliste algoritmide loomine nõuab aga palju aega ja teadmisi, kuid ärge muretsege; Nanonets on teie seljataga!

Nanonets on OCR-tarkvara, mis kasutab tehisintellekti, et automatiseerida tabelite ekstraheerimist PDF-dokumentidest, piltidest ja skannitud failidest. Erinevalt teistest lahendustest ei nõua see iga uue dokumenditüübi jaoks eraldi reegleid ja malle. Selle asemel tugineb see poolstruktureeritud ja nähtamatute dokumentide käsitlemisel kognitiivsele intelligentsusele, parandades samal ajal aja jooksul. Samuti saate väljundit kohandada nii, et ekstraktida ainult teile huvipakkuvad tabelid või andmekirjed.

See on kiire, täpne, hõlpsasti kasutatav, võimaldab kasutajatel luua nullist kohandatud OCR-mudeleid ja sellel on mõned kenad Zapieri integratsioonid. Digiteerige dokumente, eraldage tabeleid või andmevälju ja integreerige oma igapäevaste rakendustega lihtsa ja intuitiivse liidese kaudu API-de kaudu.

[Varjatud sisu]

Miks on Nanonets parim PDF-i parser?

  • Nanonetid saavad eraldada lehel olevaid andmeid, samas kui käsurea PDF-i parserid ekstraktivad ainult objekte, päiseid ja metaandmeid, näiteks (pealkiri, #leheküljed, krüptimise olek jne)
  • Nanonetsi PDF-i sõelumistehnoloogia ei ole mallipõhine. Lisaks eelkoolitatud mudelite pakkumisele populaarseteks kasutusjuhtudeks, saab Nanonetsi PDF-i sõelumisalgoritm hakkama ka seninägematute dokumenditüüpidega!
  • Lisaks natiivsete PDF-dokumentide käsitlemisele võimaldavad Nanoneti sisseehitatud OCR-funktsioonid tal käsitleda ka skannitud dokumente ja pilte!
  • Tugevad automatiseerimisfunktsioonid AI ja ML võimalustega.
  • Nanonetid käitlevad hõlpsalt struktureerimata andmeid, levinud andmepiiranguid, mitmeleheküljelisi PDF-dokumente, tabeleid ja mitmerealisi üksusi.
  • Nanonets on koodita tööriist, mis saab pidevalt õppida ja kohandatud andmetega ümber koolitada, et pakkuda väljundeid, mis ei vaja järeltöötlust.

Arvete automaatne sõelumine Nanonetsiga – täiesti puutevabade arvete töötlemise töövoogude loomine

Integreerige oma olemasolevad tööriistad Nanonetsiga ning automatiseerige andmete kogumine, ekspordi salvestamine ja raamatupidamine.

Nanonetid võivad aidata ka arvete parsimise töövooge automatiseerida, tehes järgmist.

  • Arvete andmete importimine ja koondamine mitmest allikast – meilid, skannitud dokumendid, digifailid/pildid, pilvesalvestus, ERP, API jne.
  • Arvete andmete intelligentne hõivamine ja ekstraheerimine arvetest, kviitungitest, arvetest ja muudest finantsdokumentidest.
  • Tehingute kategoriseerimine ja kodeerimine ärireeglite alusel.
  • Automaatsete kinnituste töövoogude seadistamine sisemiste kinnituste saamiseks ja erandite haldamiseks.
  • Kõikide tehingute vastavusse viimine.
  • Sujuv integreerimine ERP-de või raamatupidamistarkvaradega, nagu Quickbooks, Sage, Xero, Netsuite ja palju muud.

Ajatempel:

Veel alates Tehisintellekt ja masinõpe