Ich will, wenn ich irgendwann mit dem Training fertig bin, libpostal eigentlich einsetzen um mit Hilfe von Donut [2] Rechnungen zu parsen und anschließend die Adressen aufzuarbeiten.
Wozu braucht man die Adressen von Rechnungen? Wenn ich eine Rechnung ausstelle, kenn ich die Adresse, da ich sie selbst draufgeschrieben haben. Wenn ich eine Rechnung empfange, kenne ich die Adresse auch. Denn es ist meine eigene.
Im Grunde geht es um die automatische Verarbeitung von Dokumenten. Modelle wie Donut, Layoutlm, lilit und noch einige mehr können, entsprechendes Training vorrausgesetzt, die Inhalten von Dokumenten klassifizieren.
Also
Kunde->Hans Joerg Vasold, Schäferspforte....
Verkäufer->Amazon, Koblenz ....
Iban->DE 97 ....
TaxId->
Brutto-> 1189,00
Netto-> 1189,00
Steuer->0
Währung->€
usw.
Dabei fasst man (oder ich) die Daten zu Gruppen zusammen, also beispielsweise die Adresse(n), die Zeile(n) eine Rechnung, den Kopf oder Fuß usw. Das hat Vorteile beim Auszeichnen der Trainingsdaten, insbesondere das ich viel weniger Auszeichnen muss, ist zunächst weniger Fehleranfällig und lässt sich auch leichter trainieren.
Es hat aber unter anderem den Nachteil das ich die Gruppen später mit anderen Modellen (die ich ebenfallss trainieren muss) wieder aufsplitten muss.
Der Plan ist letztendlich ein Programm zu haben mit dem ich Dokumente (in diesem Fall Rechnungen) verarbeite, ein weiteres Programm zu haben, welches ein verarbeitetes Dokument zusammen mit den erkannten Daten präsentiert (und auch zur Korrektur verwendet werden kann) um anschließend einen Export der erkannten und korrigierten Daten durchzuführen.
cu Ha Joe