In molti settori è fondamentale estrarre tempestivamente le entità personalizzate dai documenti. Questo può essere impegnativo. Le richieste di indennizzo assicurativo, ad esempio, spesso contengono dozzine di attributi importanti (come date, nomi, luoghi e rapporti) sparsi in documenti lunghi e densi. La scansione e l'estrazione manuale di tali informazioni può essere soggetta a errori e richiedere molto tempo. Il software basato su regole può aiutare, ma alla fine è troppo rigido per adattarsi ai numerosi tipi e layout di documenti diversi.
Per automatizzare e accelerare questo processo, è possibile utilizzare Amazon Comprehend per rilevare entità personalizzate in modo rapido e accurato utilizzando l'apprendimento automatico (ML). Questo approccio è flessibile e accurato, perché il sistema può adattarsi a nuovi documenti utilizzando ciò che ha imparato in passato. Fino a poco tempo fa, tuttavia, questa funzionalità poteva essere applicata solo a documenti di solo testo, il che significava che le informazioni sulla posizione andavano perse durante la conversione dei documenti dal loro formato nativo. Per affrontare questo problema, lo è stato ha recentemente annunciato che Amazon Comprehend può estrarre entità personalizzate in PDF, immagini e formati di file Word.
In questo post esaminiamo un esempio concreto tratto dal settore assicurativo di come creare un sistema di riconoscimento personalizzato utilizzando le annotazioni PDF.
Panoramica della soluzione
Ti guidiamo attraverso i seguenti passaggi di alto livello:
- Crea annotazioni PDF.
- Utilizza le annotazioni PDF per addestrare un modello personalizzato utilizzando l'API Python.
- Ottieni metriche di valutazione dal modello addestrato.
- Eseguire l'inferenza su un documento invisibile.
Entro la fine di questo post, vogliamo essere in grado di inviare un documento PDF non elaborato al nostro modello addestrato e far sì che generi un file strutturato con informazioni sulle nostre etichette di interesse. In particolare, addestriamo il nostro modello per rilevare le seguenti cinque entità che abbiamo scelto per la loro rilevanza per le richieste di indennizzo assicurativo: DateOfForm
, DateOfLoss
, NameOfInsured
, LocationOfLoss
e InsuredMailingAddress
. Dopo aver letto l'output strutturato, possiamo visualizzare le informazioni dell'etichetta direttamente sul documento PDF, come nell'immagine seguente.
Questo post è accompagnato da un taccuino Jupyter che contiene gli stessi passaggi. Sentiti libero di seguire mentre esegui i passaggi in esso taccuino. Tieni presente che devi configurare il file Amazon Sage Maker ambiente da cui consentire ad Amazon Comprehend di leggere Servizio di archiviazione semplice Amazon (Amazon S3) come descritto nella parte superiore del notebook.
Crea annotazioni PDF
Per creare annotazioni per i documenti PDF, è possibile utilizzare Amazon SageMaker verità fondamentale, un servizio di etichettatura dei dati completamente gestito che semplifica la creazione di set di dati di addestramento altamente accurati per il machine learning.
Per questo tutorial, abbiamo già annotato i PDF nella loro forma nativa (senza convertirli in testo semplice) utilizzando Ground Truth. Il lavoro Ground Truth genera tre percorsi di cui abbiamo bisogno per addestrare il nostro modello Amazon Comprehend personalizzato:
- fonti – Il percorso dei PDF di input.
- Annotazioni – Il percorso dei file JSON di annotazione contenenti le informazioni sull'entità etichettata.
- Manifesto – Il file che punta alla posizione delle annotazioni e dei PDF di origine. Questo file viene utilizzato per creare un processo di formazione sul riconoscimento delle entità personalizzate di Amazon Comprehend e per addestrare un modello personalizzato.
Lo screenshot seguente mostra un'annotazione di esempio.
Il lavoro personalizzato Ground Truth genera un'annotazione PDF che cattura informazioni a livello di blocco sull'entità. Tali informazioni a livello di blocco forniscono le coordinate posizionali precise dell'entità (con i blocchi figli che rappresentano ogni parola all'interno del blocco di entità). Questo è diverso da un lavoro Ground Truth standard in cui i dati nel PDF vengono appiattiti in formato testuale e durante l'annotazione vengono acquisite solo le informazioni sull'offset, ma non le informazioni sulle coordinate precise. Le ricche informazioni sulla posizione che otteniamo con questo paradigma di annotazione personalizzata ci consentono di addestrare un modello più accurato.
Il manifest generato da questo tipo di lavoro è chiamato manifest aumentato, in contrapposizione al CSV utilizzato per le annotazioni standard. Per ulteriori informazioni, vedere Annotazioni.
Utilizza le annotazioni PDF per addestrare un modello personalizzato utilizzando l'API Python
Un file manifest aumentato deve essere formattato nel formato JSON Lines. Nel formato Linee JSON, ogni riga nel file è un oggetto JSON completo seguito da un separatore di nuova riga.
Il codice seguente è una voce all'interno di questo file manifest aumentato.
Alcune cose da notare:
- Cinque tipi di etichettatura sono associati a questo lavoro:
DateOfForm
,DateOfLoss
,NameOfInsured
,LocationOfLoss
eInsuredMailingAddress
. - Il file manifest fa riferimento sia alla posizione del PDF di origine che alla posizione dell'annotazione.
- Vengono acquisiti i metadati relativi al processo di annotazione (come la data di creazione).
Use-textract-only
è impostato suFalse
, il che significa che lo strumento di annotazione decide se utilizzare PDFPlumber (per un PDF nativo) o Testo Amazon (per un PDF scansionato). Se impostato sutrue
, in entrambi i casi viene utilizzato Amazon Textract (che è più costoso ma potenzialmente più accurato).
Ora possiamo addestrare il riconoscimento, come mostrato nel codice di esempio seguente.
Creiamo un riconoscitore per riconoscere tutti e cinque i tipi di entità. Se avessimo preferito, avremmo potuto utilizzare un sottoinsieme di queste entità. Puoi utilizzare fino a 25 entità.
Per i dettagli di ciascun parametro, fare riferimento a create_entity_recognizer.
A seconda delle dimensioni del set di allenamento, il tempo di allenamento può variare. Per questo set di dati, l'addestramento richiede circa 1 ora. Per monitorare lo stato del lavoro di formazione, è possibile utilizzare il file describe_entity_recognizer
API.
Ottieni metriche di valutazione dal modello addestrato
Amazon Comprehend fornisce parametri di prestazione del modello per un modello addestrato, che indicano quanto bene si prevede che il modello addestrato effettui previsioni utilizzando input simili. Possiamo ottenere sia metriche di precisione globale che di richiamo, nonché metriche per entità. Un modello accurato ha un'elevata precisione e un elevato richiamo. Alta precisione significa che il modello è solitamente corretto quando indica una particolare etichetta; un richiamo elevato significa che il modello ha trovato la maggior parte delle etichette. F1 è una metrica composita (media armonica) di queste misure, ed è quindi alta quando entrambe le componenti sono alte. Per una descrizione dettagliata delle metriche, cfr Metriche di riconoscimento entità personalizzate.
Quando fornisci i documenti al lavoro di formazione, Amazon Comprehend li separa automaticamente in un set di training e test. Quando il modello ha raggiunto TRAINED
stato, puoi utilizzare il file describe_entity_recognizer
API nuovamente per ottenere le metriche di valutazione sul set di test.
Di seguito è riportato un esempio di metrica globale.
Di seguito è riportato un esempio di metriche per entità.
I punteggi più alti indicano che il modello ha imparato bene come rilevare queste entità.
Eseguire l'inferenza su un documento invisibile
Eseguiamo l'inferenza con il nostro modello addestrato su un documento che non faceva parte della procedura di addestramento. Possiamo utilizzare questa API asincrona per NER standard o personalizzato. Se lo utilizziamo per un NER personalizzato (come in questo post), dobbiamo passare l'ARN del modello addestrato.
Possiamo rivedere il lavoro inviato stampando la risposta.
Possiamo formattare l'output del lavoro di rilevamento con Pandas in una tabella. IL Score
il valore indica il livello di confidenza che il modello ha riguardo all'entità.
Infine, possiamo sovrapporre le previsioni ai documenti invisibili, ottenendo il risultato mostrato all'inizio di questo post.
Conclusione
In questo post hai visto come estrarre entità personalizzate nel loro formato PDF nativo utilizzando Amazon Comprehend. Come passaggi successivi, considera di approfondire:
- Allena il tuo riconoscitore utilizzando il quaderno in dotazione qui. Ricordarsi di eliminare eventuali risorse al termine per evitare addebiti futuri.
- Configura il tuo lavoro di annotazione personalizzato per raccogliere annotazioni PDF per le tue entità di interesse. Per ulteriori informazioni, fare riferimento a Annotazione del documento personalizzata per l'estrazione di entità denominate nei documenti utilizzando Amazon Comprehend.
- Addestra un modello NER personalizzato sulla console Amazon Comprehend. Per ulteriori informazioni, vedere Estrai entità personalizzate dai documenti nel loro formato nativo con Amazon Comprehend.
Informazioni sugli autori
Giosuè Levy è Senior Applied Scientist nel laboratorio Amazon Machine Learning Solutions, dove aiuta i clienti a progettare e realizzare soluzioni AI/ML per risolvere problemi aziendali chiave.
Andrea Ang è un ingegnere di machine learning presso l'Amazon Machine Learning Solutions Lab, dove aiuta i clienti di un ampio spettro di settori a identificare e creare soluzioni AI/ML per risolvere i problemi aziendali più urgenti. Fuori dal lavoro gli piace guardare vlog di viaggi e cibo.
Alex Chirayath è un ingegnere software dell'Amazon Machine Learning Solutions Lab specializzato nella creazione di soluzioni basate su casi d'uso che mostrano ai clienti come sfruttare la potenza dei servizi AI/ML di AWS per risolvere problemi aziendali reali.
Jennifer Zhu è uno scienziato applicato di Amazon AI Machine Learning Solutions Lab. Lavora con i clienti di AWS creando soluzioni AI/ML per le loro esigenze aziendali ad alta priorità.
Niharika Jayanthi è un ingegnere front-end nel team Amazon Machine Learning Solutions Lab – Human in the Loop. Aiuta a creare soluzioni di esperienza utente per i clienti di Amazon SageMaker Ground Truth.
Boris Aronchik è un manager presso Amazon AI Machine Learning Solutions Lab, dove guida un team di scienziati e ingegneri ML per aiutare i clienti AWS a realizzare obiettivi aziendali sfruttando soluzioni AI/ML.
- Coinsmart. Il miglior scambio di bitcoin e criptovalute d'Europa.
- Platoblockchain. Web3 Metaverse Intelligence. Conoscenza amplificata. ACCESSO LIBERO.
- Criptofalco. Radar Altcoin. Prova gratuita.
- Fonte: https://aws.amazon.com/blogs/machine-learning/build-a-custom-entity-recognizer-for-pdf-documents-using-amazon-comprehend/
- "
- &
- 100
- Chi siamo
- preciso
- operanti in
- indirizzo
- AI
- Tutti
- già
- Amazon
- api
- approccio
- circa
- gli attributi
- aumentata
- automatizzare
- AWS
- Bloccare
- costruire
- Costruzione
- affari
- impegnativo
- oneri
- bambino
- codice
- raccogliere
- fiducia
- consolle
- contiene
- coordinare
- potuto
- creazione
- critico
- costume
- Clienti
- dati
- Date
- più profondo
- Design
- rivelazione
- direttamente
- documenti
- ingegnere
- Ingegneri
- entità
- Ambiente
- esempio
- previsto
- esperienza
- flessibile
- seguire
- i seguenti
- cibo
- modulo
- formato
- essere trovato
- Gratis
- futuro
- globali
- Obiettivi
- Aiuto
- aiuta
- Alta
- vivamente
- Come
- Tutorial
- HTTPS
- umano
- identificare
- Immagine
- importante
- industrie
- industria
- informazioni
- ingresso
- assicurazione
- interesse
- IT
- Lavoro
- Le
- laboratorio
- etichettatura
- per il tuo brand
- Leads
- imparato
- apprendimento
- Livello
- leveraging
- linea
- località
- posizioni
- macchina
- machine learning
- FA
- gestito
- direttore
- modo
- manualmente
- significato
- Metrica
- ML
- modello
- Monitorare
- Scopri di più
- maggior parte
- nomi
- taccuino
- offset
- proprio
- paradigma
- performance
- energia
- Previsioni
- problemi
- processi
- fornire
- fornisce
- rapidamente
- Crudo
- Lettura
- mondo reale
- rendersi conto
- riconoscere
- Report
- Risorse
- risposta
- recensioni
- Correre
- running
- scansione
- Scienziato
- scienziati
- servizio
- Servizi
- set
- simile
- Un'espansione
- Taglia
- Software
- Software Engineer
- Soluzioni
- RISOLVERE
- velocità
- Standard
- Stato dei servizi
- conservazione
- strutturato
- presentata
- sistema
- team
- test
- L’ORIGINE
- Attraverso
- tempo
- richiede tempo
- top
- Training
- viaggiare
- sbloccare
- us
- uso
- generalmente
- APPREZZIAMO
- Che
- se
- while
- entro
- senza
- Lavora
- lavori
- mondo