Viele Unternehmen unterschiedlicher Größe und Branche sind für ihre täglichen Abläufe immer noch auf große Mengen an Dokumenten angewiesen. Um diese geschäftliche Herausforderung zu lösen, nutzen Kunden intelligente Dokumentenverarbeitungsdienste von AWS, wie z Amazontext und Amazon verstehen zu helfen Extraktion und Prozessautomatisierung. Bevor Sie Text, Schlüssel-Wert-Paare, Tabellen und Entitäten extrahieren können, müssen Sie in der Lage sein, mehrseitige PDF-Dokumente aufzuteilen, die häufig heterogene Formulartypen enthalten. Bei der Hypothekenbearbeitung muss beispielsweise ein Makler oder eine Kreditbearbeitungsperson möglicherweise ein konsolidiertes PDF-Kreditpaket aufteilen, das den Hypothekenantrag (Fannie Mae-Formular 1003), W2s, Einkommensnachweise, 1040-Steuerformulare und mehr enthält.
Um dieses Problem anzugehen, verwenden Unternehmen eine regelbasierte Verarbeitung: Sie identifizieren Dokumenttypen anhand von Formulartiteln, Seitenzahlen, Formularlängen usw. Diese Ansätze sind fehleranfällig und schwierig zu skalieren, insbesondere wenn die Formulartypen mehrere Variationen aufweisen können. Dementsprechend scheitern diese Workarounds in der Praxis schnell und erhöhen den Bedarf an menschlichem Eingreifen.
In diesem Beitrag zeigen wir, wie Sie mit wenig Code für beliebige Formularsätze Ihre eigene Lösung zur Dokumentenaufteilung erstellen können, ohne benutzerdefinierte Regeln oder Verarbeitungsworkflows zu erstellen.
Lösungsüberblick
In diesem Beitrag verwenden wir eine Reihe gängiger Hypothekenantragsformulare, um zu zeigen, wie Sie mit Amazon Textract und Amazon Comprehend einen intelligenten Dokumentensplitter erstellen können, der robuster ist als frühere Ansätze. Bei der Bearbeitung von Dokumenten für Hypothekenanträge reicht der Kreditnehmer ein mehrseitiges PDF ein, das aus heterogenen Dokumenttypen unterschiedlicher Seitenlänge besteht; Um Informationen zu extrahieren, muss der Benutzer (z. B. eine Bank) dieses PDF aufschlüsseln.
Obwohl wir ein spezifisches Beispiel für Hypothekenformulare zeigen, können Sie diesen Ansatz im Allgemeinen skalieren und auf nahezu jeden Satz mehrseitiger PDF-Dokumente anwenden.
Wir verwenden Amazon Textract, um Daten aus dem Dokument zu extrahieren und einen mit Amazon Comprehend kompatiblen Datensatz zu erstellen, um a zu trainieren Dokumentenklassifizierungsmodell. Als Nächstes trainieren wir das Klassifizierungsmodell und erstellen einen Klassifizierungsendpunkt, der eine Dokumentenanalyse in Echtzeit durchführen kann. Beachten Sie, dass für die Klassifizierungsendpunkte Amazon Textract und Amazon Comprehend Gebühren anfallen Preisgestaltung für Amazon Textract und Amazon Preisgestaltung verstehen für mehr Informationen. Abschließend zeigen wir, wie wir Dokumente mit diesem Endpunkt klassifizieren und Dokumente basierend auf den Klassifizierungsergebnissen aufteilen können.
Diese Lösung nutzt die folgenden AWS-Dienste:
Voraussetzungen:
Sie müssen die folgenden Voraussetzungen erfüllen, um diese Lösung zu erstellen und bereitzustellen:
- Installieren Python 3.8.x.
- Installieren jq.
- Installieren die AWS SAM CLI.
- Installieren Docker.
- Upewnij się, że pip installiert.
- Installieren und konfigurieren AWS-Befehlszeilenschnittstelle (AWS-CLI).
- Einrichtung Ihre AWS-Anmeldeinformationen.
Die Lösung ist so konzipiert, dass sie optimal funktioniert us-east-1
und us-west-2
Regionen sollen von höheren Standardkontingenten für Amazon Textract profitieren. Informationen zu spezifischen regionalen Workloads finden Sie unter Amazon Textract-Endpunkte und -Kontingente. Stellen Sie sicher, dass Sie für die gesamte Lösung eine einzige Region verwenden.
Klonen Sie das Repo
Klonen Sie zunächst das Repository, indem Sie den folgenden Befehl ausführen: dann wechseln wir in das Arbeitsverzeichnis:
Lösungsworkflows
Die Lösung besteht aus drei Workflows:
- Workflow1_endpointbuilder – Nimmt die Schulungsunterlagen und erstellt einen benutzerdefinierten Klassifizierungsendpunkt auf Amazon Comprehend.
- Workflow2_docsplitter – Fungiert als Dokumentenaufteilungsdienst, bei dem Dokumente nach Klasse aufgeteilt werden. Es verwendet den in erstellten Klassifizierungsendpunkt
workflow1
. - Workflow3_local – Ist für Kunden gedacht, die in stark regulierten Branchen tätig sind und keine Daten in Amazon S3 speichern können. Dieser Workflow enthält lokale Versionen von
workflow1
undworkflow2
.
Lassen Sie uns einen tiefen Einblick in jeden Workflow und seine Funktionsweise werfen.
Arbeitsablauf 1: Erstellen Sie einen Amazon Comprehend-Klassifikator aus PDF-, JPG- oder PNG-Dokumenten
Der erste Workflow nimmt auf Amazon S3 gespeicherte Dokumente und sendet sie durch eine Reihe von Schritten, um die Daten über Amazon Textract aus den Dokumenten zu extrahieren. Anschließend werden die extrahierten Daten verwendet, um einen benutzerdefinierten Amazon Comprehend-Klassifizierungsendpunkt zu erstellen. Dies wird im folgenden Architekturdiagramm veranschaulicht.
Starten workflow1
benötigen Sie den Amazon S3-URI des Ordners, der die Trainingsdatensatzdateien enthält (dies können Bilder, einseitige PDFs oder mehrseitige PDFs sein). Die Struktur des Ordners muss wie folgt sein:
Alternativ kann die Struktur zusätzlich verschachtelte Unterverzeichnisse haben:
Die Namen der Klassenunterverzeichnisse (zweite Verzeichnisebene) werden zu den Namen der Klassen, die im benutzerdefinierten Klassifizierungsmodell von Amazon Comprehend verwendet werden. In der folgenden Dateistruktur ist beispielsweise die Klasse für form123.pdf
is tax_forms
:
Um den Workflow zu starten, führen Sie die folgenden Schritte aus:
- Laden Sie den Datensatz in einen S3-Bucket hoch, der Ihnen gehört.
Die Empfehlung lautet, über 50 Stichproben für jede Klasse zu haben, nach der Sie klassifizieren möchten. Der folgende Screenshot zeigt ein Beispiel dieser Dokumentklassenstruktur.
- Baue die
sam-app
indem Sie die folgenden Befehle ausführen (ändern Sie die bereitgestellten Befehle nach Bedarf):
Die Ausgabe des Builds ist ein ARN für eine Step Functions-Zustandsmaschine.
- Wenn der Build abgeschlossen ist, navigieren Sie zu Zustandsautomaten Seite auf der Step Functions-Konsole.
- Wählen Sie den von Ihnen erstellten Zustandsautomaten aus.
- Auswählen Starten Sie die Ausführung.
- Geben Sie die folgenden erforderlichen Eingabeparameter ein:
Die Zustandsmaschine startet den Workflow. Dies kann je nach Größe des Datensatzes mehrere Stunden dauern. Der folgende Screenshot zeigt unseren Zustandsautomaten im laufenden Betrieb.
Wenn die Zustandsmaschine abgeschlossen ist, ist jeder Schritt im Diagramm grün, wie im folgenden Screenshot dargestellt.
Sie können zur Amazon Comprehend-Konsole navigieren, um den bereitgestellten Endpunkt anzuzeigen.
Sie haben jetzt Ihren benutzerdefinierten Klassifikator anhand Ihrer Dokumente erstellt. Dies markiert das Ende von workflow1
.
Workflow 2: Erstellen Sie einen Endpunkt
Der zweite Workflow verwendet den Endpunkt, den Sie erstellt haben workflow1
und teilt die Dokumente basierend auf den Klassen auf, mit denen das Modell trainiert wurde. Dies wird im folgenden Architekturdiagramm veranschaulicht.
Starten workflow2
, wir bauen das sam-app
. Ändern Sie die bereitgestellten Befehle nach Bedarf:
Nachdem der Stack erstellt wurde, erhalten Sie einen Load Balancer-DNS auf dem Ausgänge Registerkarte des CloudFormation-Stacks. Sie können damit beginnen, Anfragen an diesen Endpunkt zu stellen.
Eine Musteranfrage finden Sie im workflow2_docsplitter/sample_request_folder/sample_s3_request.py
Datei. Die API benötigt drei Parameter: den S3-Bucket-Namen, den Amazon S3-URI des Dokuments und den Amazon Comprehend-Klassifizierungsendpunkt-ARN. Workflow2 unterstützt nur die PDF-Eingabe.
Für unseren Test verwenden wir ein 11-seitiges Hypothekendokument mit fünf verschiedenen Dokumenttypen.
Die Antwort für die API ist ein Amazon S3-URI für eine ZIP-Datei mit allen geteilten Dokumenten. Sie finden diese Datei auch in dem Bucket, den Sie in Ihrem API-Aufruf bereitgestellt haben.
Laden Sie das Objekt herunter und überprüfen Sie die nach Klasse aufgeteilten Dokumente.
Dies markiert das Ende von workflow2
. Wir haben nun gezeigt, wie wir einen benutzerdefinierten Amazon Comprehend-Klassifizierungsendpunkt verwenden können, um Dokumente zu klassifizieren und aufzuteilen.
Workflow 3: Lokale Dokumentenaufteilung
Unser dritter Workflow verfolgt einen ähnlichen Zweck wie workflow1
und workflow2
um einen Amazon Comprehend-Endpunkt zu generieren; Die gesamte Verarbeitung erfolgt jedoch über Ihren lokalen Computer, um eine mit Amazon Comprehend kompatible CSV-Datei zu generieren. Dieser Workflow wurde für Kunden in stark regulierten Branchen entwickelt, in denen die Beibehaltung von PDF-Dokumenten auf Amazon S3 möglicherweise nicht möglich ist. Das folgende Architekturdiagramm ist eine visuelle Darstellung des lokalen Endpunkt-Builder-Workflows.
Das folgende Diagramm veranschaulicht die lokale Dokument-Splitter-Architektur.
Der gesamte Code für die Lösung ist im verfügbar workflow3_local/local_endpointbuilder.py
Datei zum Erstellen des Amazon Comprehend-Klassifizierungsendpunkts und workflow3_local/local_docsplitter.py
um Dokumente zur Aufteilung zu versenden.
Zusammenfassung
Die Dokumentenaufteilung ist der Schlüssel zum Aufbau eines erfolgreichen und intelligenten Dokumentenverarbeitungsworkflows. Dies ist immer noch ein sehr relevantes Problem für Unternehmen, insbesondere für Organisationen, die für ihre täglichen Abläufe mehrere Dokumenttypen zusammenfassen. Einige Beispiele umfassen die Bearbeitung von Versicherungsanspruchsdokumenten, Versicherungsanträgen, SEC-Dokumenten, Steuerformularen und Formularen zur Einkommensüberprüfung.
In diesem Beitrag haben wir eine Reihe gängiger Dokumente, die für die Kreditbearbeitung verwendet werden, genommen, die Daten mit Amazon Textract extrahiert und einen benutzerdefinierten Amazon Comprehend-Klassifizierungsendpunkt erstellt. Mit diesem Endpunkt haben wir eingehende Dokumente klassifiziert und nach ihrer jeweiligen Klasse aufgeteilt. Sie können diesen Prozess auf nahezu jeden Dokumentensatz mit Anwendungen in einer Vielzahl von Branchen anwenden, beispielsweise im Gesundheitswesen und im Finanzdienstleistungsbereich. Um mehr über Amazon Textract zu erfahren, Besuchen Sie die Webseite.
Über die Autoren
Aditi Rajnisch ist Student im ersten Jahr Software Engineering an der University of Waterloo. Ihre Interessen umfassen Computer Vision, Natural Language Processing und Edge Computing. Sie engagiert sich auch leidenschaftlich für Community-basierte MINT-Aufklärung und Interessenvertretung. In ihrer Freizeit findet man sie beim Klettern, Klavierspielen oder lernt, wie man den perfekten Scone backt.
Raj Pathak ist Lösungsarchitekt und technischer Berater für Fortune-50- und mittelständische FSI-Kunden (Banken, Versicherungen, Kapitalmärkte) in Kanada und den Vereinigten Staaten. Raj ist spezialisiert auf maschinelles Lernen mit Anwendungen in den Bereichen Dokumentenextraktion, Contact Center Transformation und Computer Vision.
- '
- 100
- 7
- Zusätzliche
- Vorteil
- Berater
- Advocacy
- Alle
- Amazon
- Amazon verstehen
- Amazontext
- Analyse
- Bienen
- Anwendung
- Anwendungen
- Architektur
- Argumente
- AWS
- Balancer
- Bank
- Bankinggg
- Makler
- bauen
- Baumeister
- Building
- Geschäft
- Unternehmen
- rufen Sie uns an!
- Kanada
- Hauptstadt
- Kapitalmärkte
- challenges
- Gebühren
- aus aller Welt
- Einstufung
- Code
- gemeinsam
- Computer Vision
- Computing
- Erstellen
- Referenzen
- Kunden
- technische Daten
- dns
- Docker
- Unterlagen
- Edge
- Edge-Computing
- Endpunkt
- Entwicklung
- Extrahieren Sie die Daten
- Extraktion
- Endlich
- Revolution
- Finanzdienstleistungen
- Vorname
- unten stehende Formular
- Git
- GitHub
- Grün
- Gesundheitswesen
- Ultraschall
- Hilfe
- HTTPS
- IAM
- Einkommen
- Erhöhung
- Branchen
- Energiegewinnung
- Information
- Versicherung
- IT
- Wesentliche
- Sprache
- grosse
- starten
- LERNEN
- lernen
- Niveau
- Line
- Belastung
- Darlehen
- aus einer regionalen
- Maschinelles Lernen
- Märkte
- Modell
- Darlehen
- Namen
- Natürliche Sprache
- Verarbeitung natürlicher Sprache
- Zahlen
- Einkauf & Prozesse
- Organisationen
- Datenschutzrichtlinien
- Python
- Echtzeit
- Downloads
- Antwort
- Die Ergebnisse
- Überprüfen
- Ohne eine erfahrene Medienplanung zur Festlegung von Regeln und Strategien beschleunigt der programmatische Medieneinkauf einfach die Rate der verschwenderischen Ausgaben.
- Führen Sie
- Laufen
- Skalieren
- SEK
- Modellreihe
- Leistungen
- kompensieren
- Größe
- So
- Software
- Softwareentwicklung
- Lösungen
- LÖSEN
- spezialisiert
- gespalten
- begonnen
- Bundesstaat
- Staaten
- Vorbau
- Schüler und Studenten
- erfolgreich
- Unterstützt
- Schalter
- Steuer
- Technische
- Test
- Der Graph
- Zeit
- Ausbildung
- Transformation
- Vereinigt
- USA
- Universität
- URI
- Verification
- Seh-
- WHO
- Arbeiten
- Arbeitsablauf.
- X