Viele Unternehmen sind von der enormen Menge an Dokumenten überfordert, die sie verarbeiten, organisieren und klassifizieren müssen, um ihre Kunden besser bedienen zu können. Beispiele hierfür können Kreditanträge, Steuererklärungen und Abrechnungen sein. Solche Dokumente werden häufiger in Bildformaten empfangen und sind meist mehrseitig und in einem Format von geringer Qualität. Um wettbewerbsfähiger und kosteneffizienter zu sein und gleichzeitig sicher und konform zu bleiben, müssen diese Unternehmen ihre Dokumentenverarbeitungsfunktionen weiterentwickeln, um die Verarbeitungszeiten zu verkürzen und die Klassifizierungsgenauigkeit auf automatisierte und skalierbare Weise zu verbessern. Diese Unternehmen stehen bei der Verarbeitung von Dokumenten vor folgenden Herausforderungen:
- Durchführen einer Moderation der Dokumente, um unangemessene, unerwünschte oder anstößige Inhalte zu erkennen
- Die manuelle Dokumentenklassifizierung, die von kleineren Unternehmen übernommen wird, ist zeitaufwändig, fehleranfällig und teuer
- OCR-Techniken mit regelbasierten Systemen sind nicht intelligent genug und können sich nicht an Änderungen im Dokumentenformat anpassen
- Unternehmen, die Ansätze für maschinelles Lernen (ML) anwenden, verfügen oft nicht über die Ressourcen, um ihr Modell zu skalieren, um Spitzen im eingehenden Dokumentenvolumen zu bewältigen
Dieser Beitrag befasst sich mit diesen Herausforderungen und stellt eine Architektur bereit, die diese Probleme effizient löst. Wir zeigen, wie Sie es nutzen können Amazon-Anerkennung und Amazontext um den menschlichen Aufwand bei der Verarbeitung von Dokumenten zu optimieren und zu reduzieren. Amazon Rekognition identifiziert Moderationsbezeichnungen in Ihrem Dokument und klassifiziert sie mit Benutzerdefinierte Etiketten von Amazon Rekognition. Amazon Textract extrahiert Text aus Ihren Dokumenten.
In diesem Beitrag behandeln wir den Aufbau von zwei ML-Pipelines (Training und Inferenz), um Dokumente ohne manuellen Aufwand oder benutzerdefinierten Code zu verarbeiten. Zu den übergeordneten Schritten in der Inferenzpipeline gehören:
- Moderieren Sie hochgeladene Dokumente mit Amazon Rekognition.
- Klassifizieren Sie Dokumente mithilfe von Rekognition Custom Labels in verschiedene Kategorien wie W-2s, Rechnungen, Kontoauszüge und Gehaltsabrechnungen.
- Extrahieren Sie mit Amazon Textract Text aus Dokumenten wie gedrucktem Text, Handschriften, Formularen und Tabellen.
Lösungsüberblick
Diese Lösung verwendet die folgenden KI-Dienste, serverlosen Technologien und verwalteten Dienste, um eine skalierbare und kostengünstige Architektur zu implementieren:
- Amazon DynamoDB - Eine Schlüsselwert- und Dokumentendatenbank, die eine einstellige Millisekundenleistung in jeder Größenordnung liefert.
- Amazon EventBridge – Ein serverloser Ereignisbus zum Erstellen ereignisgesteuerter Anwendungen in großem Maßstab unter Verwendung von Ereignissen, die von Ihren Anwendungen, integrierten SaaS-Anwendungen (Software as a Service) und AWS-Services generiert werden.
- AWS Lambda – Ein Serverless-Computing-Dienst, mit dem Sie Code als Reaktion auf Auslöser wie Datenänderungen, Änderungen des Systemstatus oder Benutzeraktionen ausführen können.
- Amazon-Anerkennung – Verwendet ML, um Objekte, Personen, Texte, Szenen und Aktivitäten in Bildern und Videos zu identifizieren sowie unangemessene Inhalte zu erkennen.
- Benutzerdefinierte Etiketten von Amazon Rekognition – Verwendet AutoML für Computer Vision und Transfer Learning, damit Sie benutzerdefinierte Modelle trainieren können, um die Objekte und Szenen in Bildern zu identifizieren, die für Ihre Geschäftsanforderungen spezifisch sind.
- Einfacher Amazon-Speicherdienst (Amazon S3) – Dient als Objektspeicher für Ihre Dokumente und ermöglicht eine zentrale Verwaltung mit fein abgestimmten Zugriffskontrollen.
- Amazon Step-Funktionen – Ein serverloser Funktions-Orchestrator, der es einfach macht, Lambda-Funktionen und mehrere Dienste in geschäftskritische Anwendungen zu sequenzieren.
- Amazontext - Verwendet ML, um Text und Daten aus gescannten Dokumenten in den Formaten PDF, JPEG oder PNG zu extrahieren.
Das folgende Diagramm veranschaulicht die Architektur der Inferenzpipeline.
Unser Workflow umfasst die folgenden Schritte:
- Der Benutzer lädt Dokumente in den Eingabe-S3-Bucket hoch.
- Der Upload löst eine aus Amazon S3-Ereignisbenachrichtigung um Echtzeitereignisse direkt an EventBridge zu liefern. Die Amazon S3-Ereignisse, die mit „
object created
” Filter definiert für ein EventBridge-Regel startet den Step Functions-Workflow. - Der Step Functions-Workflow löst eine Reihe von Lambda-Funktionen aus, die die folgenden Aufgaben ausführen:
- Die erste Funktion führt Vorverarbeitungsaufgaben aus und führt API-Aufrufe an Amazon Rekognition durch:
- Wenn die eingehenden Dokumente im Bildformat vorliegen (z. B. JPG oder PNG), ruft die Funktion die Amazon Rekognition-API auf und stellt die Dokumente als S3-Objekte bereit. Wenn das Dokument jedoch im PDF-Format vorliegt, streamt die Funktion die Bildbytes, wenn sie die Amazon Rekognition-API aufruft.
- Wenn ein Dokument mehrere Seiten enthält, zerlegt die Funktion das Dokument in einzelne Seiten und speichert diese in einem Zwischenordner im Ausgabe-S3-Bucket, bevor sie einzeln verarbeitet werden.
- Wenn die Vorverarbeitungsaufgaben abgeschlossen sind, sendet die Funktion einen API-Aufruf an Amazon Rekognition, um unangemessene, unerwünschte oder anstößige Inhalte zu erkennen, und einen weiteren API-Aufruf an das trainierte Rekognition Custom Labels-Modell, um Dokumente zu klassifizieren.
- Die zweite Funktion sendet einen API-Aufruf an Amazon Textract, um einen Job zum Extrahieren von Text aus dem Eingabedokument und zum Speichern im Ausgabe-S3-Bucket zu initiieren.
- Die dritte Funktion speichert Dokumentmetadaten wie Moderationsbezeichnung, Dokumentklassifizierung, Klassifizierungszuverlässigkeit, Amazon Textract-Job-ID und Dateipfad in einer DynamoDB-Tabelle.
- Die erste Funktion führt Vorverarbeitungsaufgaben aus und führt API-Aufrufe an Amazon Rekognition durch:
Sie können den Workflow Ihren Anforderungen entsprechend anpassen, beispielsweise können Sie diesem Workflow mithilfe von eine Funktion zur Verarbeitung natürlicher Sprache (NLP) hinzufügen Amazon verstehen Einblicke in den extrahierten Text zu gewinnen.
Trainingspipeline
Bevor wir diese Architektur bereitstellen, trainieren wir ein benutzerdefiniertes Modell, um Dokumente mit Rekognition Custom Labels in verschiedene Kategorien zu klassifizieren. In der Trainingspipeline kennzeichnen wir die Dokumente mit Amazon Sagemaker Ground Truth. Anschließend verwenden wir die beschrifteten Dokumente, um ein Modell mit Rekognition Custom Labels zu trainieren. In diesem Beispiel verwenden wir eine Amazon Sage Maker notebook, um diese Schritte auszuführen, aber Sie können Bilder auch mit der Rekognition Custom Labels-Konsole kommentieren. Anweisungen finden Sie unter Bilder beschriften.
Datensatz
Um das Modell zu trainieren, verwenden wir die folgenden öffentlichen Datensätze, die W2s und Rechnungen enthalten:
Sie können einen anderen für Ihre Branche relevanten Datensatz verwenden.
Die folgende Tabelle fasst die Dataset-Aufteilungen zwischen Training und Test zusammen.
Klasse | Trainingsset | Testset |
Rechnungen | 352 | 75 |
W-2 | 86 | 16 |
Gesamt | 438 | 91 |
Stellen Sie die Trainingspipeline mit AWS CloudFormation bereit
Sie stellen eine bereit AWS CloudFormation Vorlage zur Bereitstellung der notwendigen AWS Identity and Access Management and (IAM)-Rollen und -Komponenten der Trainingspipeline, einschließlich einer SageMaker-Notebook-Instance.
- Starten Sie die folgende CloudFormation-Vorlage in der Region USA Ost (Nord-Virginia):
- Aussichten für StapelnameGeben Sie einen Namen ein, z
document-processing-training-pipeline
. - Auswählen
Weiter.
- Im Fähigkeiten und Transformationen Aktivieren Sie im Abschnitt das Kontrollkästchen, um zu bestätigen, dass AWS CloudFormation möglicherweise erstellt IAM-Ressourcen.
- Auswählen
Stapel erstellen.
Die Stack-Detailseite sollte den Status des Stacks anzeigen als CREATE_IN_PROGRESS
. Es kann bis zu 5 Minuten dauern, bis sich der Status ändert CREATE_COMPLETE
. Wenn es fertig ist, können Sie die Ausgaben auf dem anzeigen Ausgänge Tab.
- Nachdem der Stack erfolgreich gestartet wurde, öffnen Sie die SageMaker-Konsole und wählen Sie Notebook-Instanzen im Navigationsnamen.
- Suchen Sie nach einer Instanz mit der
DocProcessingNotebookInstance-
Präfix und warten Sie, bis sein Status InService ist. - Der Aktionen, wählen Öffne Jupyter.
Führen Sie das Beispielnotebook aus
Führen Sie die folgenden Schritte aus, um Ihr Notebook auszuführen:
- Wähle die
Rekognition_Custom_Labels
Beispiel Notizbuch.
- Auswählen
Führen Sie um die Zellen im Beispielnotebook der Reihe nach auszuführen.
Das Notebook demonstriert den gesamten Lebenszyklus der Vorbereitung von Trainings- und Testbildern, deren Kennzeichnung, der Erstellung von Manifestdateien, des Trainierens eines Modells und des Ausführens des trainierten Modells mit Rekognition Custom Labels. Alternativ können Sie das Modell mit der Rekognition Custom Labels-Konsole trainieren und ausführen. Anweisungen finden Sie unter Trainieren eines Modells (Konsole).
Das Notizbuch ist selbsterklärend; Sie können die Schritte befolgen, um das Training des Modells abzuschließen.
- Notieren Sie sich die
ProjectVersionArn
um in einem späteren Schritt für die Inferenzpipeline zu sorgen.
Bei SageMaker-Notebook-Instances wird Ihnen der von Ihnen gewählte Instance-Typ basierend auf der Nutzungsdauer in Rechnung gestellt. Wenn Sie mit dem Trainieren des Modells fertig sind, können Sie die Notebook-Instance stoppen, um Kosten für ungenutzte Ressourcen zu vermeiden.
Stellen Sie die Inferenzpipeline mit AWS CloudFormation bereit
Führen Sie die folgenden Schritte aus, um die Inferenzpipeline bereitzustellen:
- Starten Sie die folgende CloudFormation-Vorlage in der Region USA Ost (Nord-Virginia):
- Aussichten für StapelnameGeben Sie einen Namen ein, z
document-processing-inference-pipeline
. - Aussichten für DynamoDBTableName, geben Sie einen eindeutigen DynamoDB-Tabellennamen ein; zum Beispiel,
document-processing-table
. - Aussichten für EingabeBucketName, geben Sie einen eindeutigen Namen für den S3-Bucket ein, den der Stack erstellt; zum Beispiel,
document-processing-input-bucket
.
Die Eingabedokumente werden in diesen Bucket hochgeladen, bevor sie verarbeitet werden. Verwenden Sie beim Erstellen des Namens des Eingabe-Buckets nur Kleinbuchstaben und keine Leerzeichen. Außerdem erstellt dieser Vorgang einen neuen S3-Bucket, verwenden Sie also nicht den Namen eines vorhandenen Buckets. Weitere Informationen finden Sie unter Regeln für die Bucket-Benennung.
- Aussichten für AusgabeBucketName, geben Sie einen eindeutigen Namen für Ihren Ausgabe-Bucket ein; zum Beispiel D
ocument-processing-output-bucket
.
Dieser Bucket speichert die Ausgabedokumente, nachdem sie verarbeitet wurden. Es speichert auch Seiten mehrseitiger PDF-Eingabedokumente, nachdem sie von der Lambda-Funktion geteilt wurden. Befolgen Sie die gleichen Namensregeln wie für Ihren Eingabe-Bucket.
- Aussichten für RekognitionCustomLabelModelARN, geben Sie die
ProjectVersionArn
Wert, den Sie aus dem Jupyter-Notebook notiert haben. - Auswählen
Weiter.
- Auf dem Konfigurieren Sie die Stapeloptionen Legen Sie auf dieser Seite alle zusätzlichen Parameter für den Stapel fest, einschließlich Tags.
- Auswählen Weiter.
- Im Fähigkeiten und Transformationen Aktivieren Sie im Abschnitt das Kontrollkästchen, um zu bestätigen, dass AWS CloudFormation möglicherweise IAM-Ressourcen erstellt.
- Auswählen Stapel erstellen.
Die Stack-Detailseite sollte den Status des Stacks anzeigen als CREATE_IN_PROGRESS
. Es kann bis zu 5 Minuten dauern, bis sich der Status ändert CREATE_COMPLETE
. Wenn es fertig ist, können Sie die Ausgaben auf dem anzeigen Ausgänge Tab.
Verarbeiten Sie ein Dokument über die Pipeline
Wir haben sowohl Schulungs- als auch Inferenzpipelines bereitgestellt und sind nun bereit, die Lösung zu verwenden und ein Dokument zu verarbeiten.
- Öffnen Sie auf der Amazon S3-Konsole den Eingabe-Bucket.
- Laden Sie ein Musterdokument in den S3-Ordner hoch.
Dies startet den Arbeitsablauf. Der Prozess füllt die DynamoDB-Tabelle mit Dokumentklassifizierungs- und Moderationsbezeichnungen. Die Ausgabe von Amazon Textract wird an den Ausgabe-S3-Bucket in der TextractOutput
-Ordner.
Wir haben einige verschiedene Beispieldokumente an den Workflow übermittelt und die folgenden Informationen in der DynamoDB-Tabelle erhalten.
Wenn Sie keine Elemente in der DynamoDB-Tabelle oder Dokumente sehen, die in den S3-Ausgabe-Bucket hochgeladen wurden, überprüfen Sie die Amazon CloudWatch-Protokolle Suchen Sie nach der entsprechenden Lambda-Funktion und suchen Sie nach möglichen Fehlern, die den Fehler verursacht haben.
Aufräumen
Führen Sie die folgenden Schritte aus, um die für diese Lösung bereitgestellten Ressourcen zu bereinigen:
- Wählen Sie in der CloudFormation-Konsole aus Stacks.
- Wählen Sie die für diese Lösung bereitgestellten Stacks aus.
- Auswählen Löschen.
Diese Schritte löschen nicht die S3-Buckets, die DynamoDB-Tabelle und das trainierte Rekognition Custom Labels-Modell. Es fallen weiterhin Speichergebühren an, wenn sie nicht gelöscht werden. Sie sollten diese Ressourcen direkt über die jeweiligen Servicekonsolen löschen, wenn Sie sie nicht mehr benötigen.
Zusammenfassung
In diesem Beitrag haben wir einen skalierbaren, sicheren und automatisierten Ansatz zum Moderieren, Klassifizieren und Verarbeiten von Dokumenten vorgestellt. Unternehmen aus verschiedenen Branchen können diese Lösung nutzen, um ihr Geschäft zu verbessern und ihre Kunden besser zu bedienen. Es ermöglicht eine schnellere Dokumentenverarbeitung und höhere Genauigkeit und reduziert die Komplexität der Datenextraktion. Es bietet auch eine bessere Sicherheit und Einhaltung der Gesetze zum Schutz personenbezogener Daten, indem es den Personalaufwand für die Verarbeitung eingehender Dokumente reduziert.
Weitere Informationen finden Sie im Leitfaden für benutzerdefinierte Amazon Rekognition-Etiketten, Amazon Rekognition-Entwicklerhandbuch und Amazon Textract-Entwicklerhandbuch. Wenn Sie neu bei Amazon Rekognition Custom Labels sind, probieren Sie es mit unserem kostenlosen Kontingent aus, das 3 Monate dauert und 10 kostenlose Schulungsstunden pro Monat und 4 kostenlose Inferenzstunden pro Monat umfasst. Das kostenlose Kontingent von Amazon Rekognition umfasst die Verarbeitung von 5,000 Bildern pro Monat für 12 Monate. Das kostenlose Kontingent von Amazon Textract dauert ebenfalls drei Monate und umfasst 1,000 Seiten pro Monat für die Detect Document Text API.
Über die Autoren
Jay Rao ist Principal Solutions Architect bei AWS. Er bietet Kunden gerne technische und strategische Beratung und hilft ihnen bei der Entwicklung und Implementierung von Lösungen auf AWS.
Uchenna Egge ist Associate Solutions Architect bei AWS. In seiner Freizeit recherchiert er über Kräuter, Tees, Superfoods und wie er sie in seine tägliche Ernährung integrieren kann.
- Coinsmart. Europas beste Bitcoin- und Krypto-Börse.
- Platoblockkette. Web3-Metaverse-Intelligenz. Wissen verstärkt. DEN FREIEN ZUGANG.
- CryptoHawk. Altcoin-Radar. Kostenlose Testphase.
- Quelle: https://aws.amazon.com/blogs/machine-learning/moderate-classify-and-process-documents-using-amazon-rekognition-and-amazon-texttract/
- "
- 000
- 10
- 100
- 116
- 12 Monate
- Über Uns
- Zugang
- über
- Aktionen
- Aktivitäten
- Zusätzliche
- AI
- KI-Dienste
- Amazon
- Ein anderer
- Bienen
- Anwendungen
- Ansatz
- Architektur
- Partnerschaftsräte
- Automatisiert
- AWS
- Bank
- Bevor
- Rechnungs-
- Grenze
- Box
- bauen
- Building
- Bus
- Geschäft
- rufen Sie uns an!
- Fähigkeiten
- verursacht
- Hauptgeschäftsstelle
- Herausforderungen
- Übernehmen
- berechnet
- Gebühren
- Auswählen
- Einstufung
- Code
- Unternehmen
- wettbewerbsfähig
- Compliance
- konform
- Berechnen
- Computer
- Vertrauen
- Konsul (Console)
- enthält
- Inhalt
- fortsetzen
- Dazugehörigen
- kostengünstiger
- Abdeckung
- erstellen
- schafft
- Erstellen
- Original
- Kunden
- technische Daten
- Datenbase
- geliefert
- liefert
- einsetzen
- Einsatz
- Design
- Details
- Entwickler:in / Unternehmen
- Diät
- anders
- Direkt
- Unterlagen
- effizient
- Anstrengung
- Bemühungen
- Enter
- Event
- Veranstaltungen
- entwickelt sich
- Beispiel
- Beispiele
- vorhandenen
- KONZENTRAT
- Gesicht
- Scheitern
- beschleunigt
- Vorname
- folgen
- Folgende
- unten stehende Formular
- Format
- Formen
- Frei
- Funktion
- Funktionen
- Außerdem
- Griff
- Hilfe
- Unternehmen
- höher
- Ultraschall
- aber
- HTTPS
- human
- identifizieren
- Identitätsschutz
- Image
- implementieren
- zu unterstützen,
- das
- Dazu gehören
- Einschließlich
- Krankengymnastik
- Branchen
- Energiegewinnung
- Information
- Varianten des Eingangssignals:
- Einblicke
- integriert
- Intelligent
- beteiligt
- IT
- Job
- Beschriftung
- Etiketten
- Sprache
- ins Leben gerufen
- lernen
- Gesetzgebung
- Maschine
- Maschinelles Lernen
- MACHT
- verwaltet
- Management
- manuell
- Spiel
- könnte
- ML
- Modell
- für
- Monat
- Monat
- mehr
- mehrere
- Natürliche
- Menü
- notwendig,
- Bedürfnisse
- Notizbuch
- XNUMXh geöffnet
- Betrieb
- Optimieren
- Auftrag
- AUFMERKSAMKEIT
- Personen
- Leistung
- persönliche
- Daten
- Potenzial
- Principal
- Probleme
- Prozessdefinierung
- Verarbeitung
- die
- bietet
- Bereitstellung
- Öffentlichkeit
- Echtzeit
- Received
- Veteran
- Reduzierung
- relevant
- Downloads
- Antwort
- Ohne eine erfahrene Medienplanung zur Festlegung von Regeln und Strategien beschleunigt der programmatische Medieneinkauf einfach die Rate der verschwenderischen Ausgaben.
- Führen Sie
- Laufen
- skalierbaren
- Skalieren
- Szenen
- Verbindung
- Sicherheitdienst
- Modellreihe
- Serverlos
- Lösungen
- kompensieren
- Einfacher
- So
- Software
- Software als Service
- solide
- Lösung
- Lösungen
- Löst
- Räume
- gespalten
- Spagat
- Stapel
- beginnt
- Bundesstaat
- Aussagen
- Status
- bleiben
- Lagerung
- speichern
- Läden
- Strategisch
- eingereicht
- Erfolgreich
- System
- Systeme und Techniken
- und Aufgaben
- Steuer
- Technische
- Techniken
- Technologies
- Test
- Testen
- Durch
- Zeit
- Zeitaufwendig
- mal
- Ausbildung
- privaten Transfer
- einzigartiges
- us
- -
- Wert
- Verification
- Videos
- Anzeigen
- Virginia
- Seh-
- Volumen
- warten
- ohne
- Belegschaft