In vielen Branchen ist es von entscheidender Bedeutung, benutzerdefinierte Entitäten zeitnah aus Dokumenten zu extrahieren. Das kann eine Herausforderung sein. Versicherungsansprüche beispielsweise enthalten oft Dutzende wichtiger Attribute (wie Daten, Namen, Orte und Berichte), die über lange und dichte Dokumente verteilt sind. Das manuelle Scannen und Extrahieren solcher Informationen kann fehleranfällig und zeitaufwändig sein. Regelbasierte Software kann helfen, ist aber letztendlich zu starr, um sich an die vielen unterschiedlichen Dokumenttypen und -layouts anzupassen.
Um diesen Prozess zu automatisieren und zu beschleunigen, können Sie Folgendes verwenden: Amazon verstehen um benutzerdefinierte Entitäten mithilfe von maschinellem Lernen (ML) schnell und genau zu erkennen. Dieser Ansatz ist flexibel und genau, da sich das System an neue Dokumente anpassen kann, indem es das, was es in der Vergangenheit gelernt hat, nutzt. Bis vor kurzem konnte diese Funktion jedoch nur auf reine Textdokumente angewendet werden, was bedeutete, dass Positionsinformationen beim Konvertieren der Dokumente aus ihrem nativen Format verloren gingen. Um dieses Problem anzugehen, war es vor kurzem angekündigt, dass Amazon Comprehend benutzerdefinierte Entitäten in PDFs, Bildern und Word-Dateiformaten extrahieren kann.
In diesem Beitrag gehen wir ein konkretes Beispiel aus der Versicherungsbranche durch, wie Sie mithilfe von PDF-Anmerkungen einen benutzerdefinierten Erkenner erstellen können.
Lösungsüberblick
Wir führen Sie durch die folgenden übergeordneten Schritte:
- Erstellen Sie PDF-Anmerkungen.
- Verwenden Sie die PDF-Anmerkungen, um ein benutzerdefiniertes Modell mithilfe der Python-API zu trainieren.
- Erhalten Sie Bewertungsmetriken aus dem trainierten Modell.
- Führen Sie Rückschlüsse auf ein unsichtbares Dokument durch.
Am Ende dieses Beitrags möchten wir in der Lage sein, ein Roh-PDF-Dokument an unser trainiertes Modell zu senden und es eine strukturierte Datei mit Informationen zu unseren gewünschten Etiketten ausgeben zu lassen. Insbesondere trainieren wir unser Modell, um die folgenden fünf Entitäten zu erkennen, die wir aufgrund ihrer Relevanz für Versicherungsansprüche ausgewählt haben: DateOfForm
, DateOfLoss
, NameOfInsured
, LocationOfLoss
und InsuredMailingAddress
. Nachdem wir die strukturierte Ausgabe gelesen haben, können wir die Etiketteninformationen direkt im PDF-Dokument visualisieren, wie im folgenden Bild.
Zu diesem Beitrag gehört ein Jupyter-Notizbuch, das dieselben Schritte enthält. Fühlen Sie sich frei, beim Ausführen der darin enthaltenen Schritte mitzumachen Notizbuch. Beachten Sie, dass Sie das einrichten müssen Amazon Sage Maker Umgebung, aus der Amazon Comprehend lesen kann Amazon Simple Storage-Service (Amazon S3) wie oben auf dem Notebook beschrieben.
Erstellen Sie PDF-Anmerkungen
Um Anmerkungen für PDF-Dokumente zu erstellen, können Sie verwenden Amazon Sagemaker Ground Truth, ein vollständig verwalteter Datenkennzeichnungsdienst, der es einfach macht, hochpräzise Trainingsdatensätze für ML zu erstellen.
Für dieses Tutorial haben wir die PDFs bereits in ihrer nativen Form (ohne Konvertierung in einfachen Text) mit Ground Truth mit Anmerkungen versehen. Der Ground Truth-Job generiert drei Pfade, die wir zum Trainieren unseres benutzerdefinierten Amazon Comprehend-Modells benötigen:
- Quellen – Der Pfad zu den Eingabe-PDFs.
- Anmerkungen – Der Pfad zu den Annotations-JSON-Dateien, die die gekennzeichneten Entitätsinformationen enthalten.
- Manifest – Die Datei, die auf den Speicherort der Anmerkungen und Quell-PDFs verweist. Diese Datei wird verwendet, um einen benutzerdefinierten Amazon Comprehend-Trainingsauftrag zur Entitätserkennung zu erstellen und ein benutzerdefiniertes Modell zu trainieren.
Der folgende Screenshot zeigt eine Beispielanmerkung.
Der benutzerdefinierte Ground Truth-Job generiert eine PDF-Anmerkung, die Informationen auf Blockebene über die Entität erfasst. Solche Informationen auf Blockebene liefern die genauen Positionskoordinaten der Entität (wobei die untergeordneten Blöcke jedes Wort innerhalb des Entitätsblocks darstellen). Dies unterscheidet sich von einem Standard-Ground-Truth-Auftrag, bei dem die Daten im PDF auf ein Textformat reduziert werden und während der Anmerkung nur Offset-Informationen, aber keine genauen Koordinateninformationen erfasst werden. Die umfangreichen Positionsinformationen, die wir mit diesem benutzerdefinierten Annotationsparadigma erhalten, ermöglichen es uns, ein genaueres Modell zu trainieren.
Das aus dieser Art von Job generierte Manifest wird als erweitertes Manifest bezeichnet, im Gegensatz zu einer CSV-Datei, die für Standardanmerkungen verwendet wird. Weitere Informationen finden Sie unter Anmerkungen.
Verwenden Sie die PDF-Anmerkungen, um ein benutzerdefiniertes Modell mithilfe der Python-API zu trainieren
Eine erweiterte Manifestdatei muss im JSON Lines-Format formatiert sein. Im JSON-Zeilenformat ist jede Zeile in der Datei ein vollständiges JSON-Objekt, gefolgt von einem Zeilenumbruch-Trennzeichen.
Der folgende Code ist ein Eintrag in dieser erweiterten Manifestdatei.
Ein paar Dinge zu beachten:
- Mit diesem Job sind fünf Beschriftungsarten verbunden:
DateOfForm
,DateOfLoss
,NameOfInsured
,LocationOfLoss
undInsuredMailingAddress
. - Die Manifestdatei verweist sowohl auf den PDF-Quellspeicherort als auch auf den Anmerkungsspeicherort.
- Metadaten zum Annotationsjob (z. B. Erstellungsdatum) werden erfasst.
Use-textract-only
eingestellt istFalse
, was bedeutet, dass das Anmerkungstool entscheidet, ob PDFPlumber (für ein natives PDF) oder verwendet wird Amazontext (für ein gescanntes PDF). Wenn eingestellt auftrue
In beiden Fällen wird Amazon Textract verwendet (was teurer, aber potenziell genauer ist).
Jetzt können wir den Erkenner trainieren, wie im folgenden Beispielcode gezeigt.
Wir erstellen einen Erkenner, um alle fünf Arten von Entitäten zu erkennen. Wir hätten eine Teilmenge dieser Entitäten verwenden können, wenn wir es vorgezogen hätten. Sie können bis zu 25 Entitäten verwenden.
Einzelheiten zu den einzelnen Parametern finden Sie unter create_entity_recognizer.
Abhängig von der Größe des Trainingssatzes kann die Trainingszeit variieren. Für diesen Datensatz dauert das Training etwa 1 Stunde. Um den Status des Trainingsjobs zu überwachen, können Sie die verwenden describe_entity_recognizer
API.
Erhalten Sie Bewertungsmetriken aus dem trainierten Modell
Amazon Comprehend stellt Modellleistungsmetriken für ein trainiertes Modell bereit, die angeben, wie gut das trainierte Modell voraussichtlich Vorhersagen unter Verwendung ähnlicher Eingaben treffen wird. Wir können sowohl globale Präzisions- und Rückrufmetriken als auch Metriken pro Entität erhalten. Ein genaues Modell verfügt über eine hohe Präzision und einen hohen Rückruf. Hohe Präzision bedeutet, dass das Modell normalerweise korrekt ist, wenn es eine bestimmte Bezeichnung angibt; Hoher Recall bedeutet, dass das Modell die meisten Labels gefunden hat. F1 ist eine zusammengesetzte Metrik (harmonischer Mittelwert) dieser Maße und ist daher hoch, wenn beide Komponenten hoch sind. Eine detaillierte Beschreibung der Metriken finden Sie unter Benutzerdefinierte Entitätserkennungsmetriken.
Wenn Sie die Dokumente für den Schulungsauftrag bereitstellen, trennt Amazon Comprehend sie automatisch in einen Trainings- und Testsatz. Wenn das Modell erreicht hat TRAINED
Status können Sie die verwenden describe_entity_recognizer
API erneut, um die Bewertungsmetriken für den Testsatz zu erhalten.
Das Folgende ist ein Beispiel für globale Metriken.
Im Folgenden finden Sie ein Beispiel für Metriken pro Entität.
Die hohen Werte zeigen, dass das Modell gut gelernt hat, diese Entitäten zu erkennen.
Führen Sie Rückschlüsse auf ein unsichtbares Dokument durch
Lassen Sie uns mit unserem trainierten Modell Rückschlüsse auf ein Dokument ziehen, das nicht Teil des Trainingsverfahrens war. Wir können diese asynchrone API für Standard- oder benutzerdefiniertes NER verwenden. Wenn wir es für benutzerdefiniertes NER verwenden (wie in diesem Beitrag), müssen wir den ARN des trainierten Modells übergeben.
Wir können den übermittelten Auftrag überprüfen, indem wir die Antwort ausdrucken.
Wir können die Ausgabe des Erkennungsauftrags mit Pandas in einer Tabelle formatieren. Der Score
Der Wert gibt das Konfidenzniveau an, das das Modell für die Entität hat.
Schließlich können wir die Vorhersagen mit den unsichtbaren Dokumenten überlagern, was zu dem oben in diesem Beitrag gezeigten Ergebnis führt.
Zusammenfassung
In diesem Beitrag haben Sie gesehen, wie Sie mit Amazon Comprehend benutzerdefinierte Entitäten in ihr natives PDF-Format extrahieren. Erwägen Sie als nächsten Schritt, tiefer einzutauchen:
- Trainieren Sie Ihren eigenen Erkenner mithilfe des beiliegenden Notizbuchs hier. Denken Sie daran, alle Ressourcen zu löschen, wenn Sie fertig sind, um zukünftige Gebühren zu vermeiden.
- Richten Sie Ihren eigenen benutzerdefinierten Anmerkungsauftrag ein, um PDF-Anmerkungen für Ihre interessierenden Entitäten zu sammeln. Weitere Informationen finden Sie unter Benutzerdefinierte Dokumentanmerkung zum Extrahieren benannter Entitäten in Dokumenten mit Amazon Comprehend.
- Trainieren Sie ein benutzerdefiniertes NER-Modell auf der Amazon Comprehend-Konsole. Weitere Informationen finden Sie unter Extrahieren Sie mit Amazon Comprehend benutzerdefinierte Entitäten aus Dokumenten in ihrem nativen Format.
Über die Autoren
Joshua Levy ist Senior Applied Scientist im Amazon Machine Learning Solutions-Labor, wo er Kunden beim Entwerfen und Erstellen von KI/ML-Lösungen zur Lösung wichtiger Geschäftsprobleme unterstützt.
Andreas Ang ist Machine Learning Engineer im Amazon Machine Learning Solutions Lab, wo er Kunden aus einem breiten Spektrum von Branchen dabei hilft, KI/ML-Lösungen zu identifizieren und zu entwickeln, um ihre dringendsten Geschäftsprobleme zu lösen. Außerhalb der Arbeit schaut er sich gerne Reise- und Food-Vlogs an.
Alex Chirayath ist Softwareentwickler im Amazon Machine Learning Solutions Lab und konzentriert sich auf die Entwicklung anwendungsfallbasierter Lösungen, die Kunden zeigen, wie sie die Leistungsfähigkeit der AWS AI/ML-Dienste nutzen können, um reale Geschäftsprobleme zu lösen.
Jennifer Zhu ist ein angewandter Wissenschaftler vom Amazon AI Machine Learning Solutions Lab. Sie arbeitet mit AWS-Kunden zusammen, um KI/ML-Lösungen für ihre Geschäftsanforderungen mit hoher Priorität zu entwickeln.
Niharika Jayanthi ist Front-End-Ingenieur im Amazon Machine Learning Solutions Lab – Human in the Loop-Team. Sie hilft bei der Entwicklung von User-Experience-Lösungen für Amazon SageMaker Ground Truth-Kunden.
Boris Arontschik ist Manager im Amazon AI Machine Learning Solutions Lab, wo er ein Team von ML-Wissenschaftlern und -Ingenieuren leitet, um AWS-Kunden bei der Verwirklichung ihrer Geschäftsziele durch den Einsatz von KI/ML-Lösungen zu unterstützen.
- 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/build-a-custom-entity-recognizer-for-pdf-documents-using-amazon-comprehend/
- "
- &
- 100
- Über uns
- genau
- über
- Adresse
- AI
- Alle
- bereits
- Amazon
- Bienen
- Ansatz
- ca.
- Attribute
- Augmented
- automatisieren
- AWS
- Blockieren
- bauen
- Building
- Geschäft
- herausfordernd
- Gebühren
- der
- aus aller Welt
- Code
- sammeln
- Vertrauen
- Konsul (Console)
- enthält
- Koordinate
- könnte
- Schaffung
- kritischem
- Original
- Kunden
- technische Daten
- Datum
- tiefer
- Design
- Entdeckung
- Direkt
- Unterlagen
- Ingenieur
- Ingenieure
- Entitäten
- Arbeitsumfeld
- Beispiel
- erwartet
- ERFAHRUNGEN
- flexibel
- folgen
- Folgende
- Nahrung,
- unten stehende Formular
- Format
- gefunden
- Frei
- Zukunft
- Global
- Ziele
- Hilfe
- hilft
- High
- hoch
- Ultraschall
- Hilfe
- HTTPS
- human
- identifizieren
- Image
- wichtig
- Branchen
- Energiegewinnung
- Information
- Eingabe
- Versicherung
- Interesse
- IT
- Job
- Wesentliche
- Labor
- Beschriftung
- Etiketten
- umwandeln
- gelernt
- lernen
- Niveau
- Nutzung
- Line
- Standorte
- Standorte
- Maschine
- Maschinelles Lernen
- MACHT
- verwaltet
- Manager
- Weise
- manuell
- Bedeutung
- Metrik
- ML
- Modell
- Überwachen
- mehr
- vor allem warme
- Namen
- Notizbuch
- Offset
- besitzen
- Paradigma
- Leistung
- Werkzeuge
- Prognosen
- Probleme
- Prozessdefinierung
- die
- bietet
- schnell
- Roh
- Lesebrillen
- realen Welt
- realisieren
- erkennen
- Meldungen
- Downloads
- Antwort
- Überprüfen
- Führen Sie
- Laufen
- Scannen
- Wissenschaftler
- Wissenschaftler
- Leistungen
- kompensieren
- ähnlich
- Einfacher
- Größe
- Software
- Software IngenieurIn
- Lösungen
- LÖSEN
- Geschwindigkeit
- Standard
- Status
- storage
- strukturierte
- eingereicht
- System
- Team
- Test
- Die Quelle
- Durch
- Zeit
- Zeitaufwendig
- Werkzeug
- Top
- Ausbildung
- reisen
- öffnen
- us
- -
- gewöhnlich
- Wert
- Was
- ob
- während
- .
- ohne
- Arbeiten
- Werk
- weltweit wie ausgehandelt und gekauft ausgeführt wird.