1. Introduzione
Document AI è una soluzione di comprensione dei documenti che prende dati non strutturati, come documenti, email e così via, e li rende più facili da comprendere, analizzare e utilizzare.
Con Document AI Workbench, puoi ottenere una maggiore precisione di elaborazione dei documenti creando modelli completamente personalizzati utilizzando i tuoi dati di addestramento.
In questo lab creerai un processore personalizzato per l'estrazione di documenti, importerai un set di dati, eticherai documenti di esempio e addestrerai il processore.
Il set di dati dei documenti utilizzato in questo lab proviene da un set di dati Fake W-2 (US Tax Form) su Kaggle con una licenza CC0: Public Domain License.
Prerequisiti
Questo codelab si basa sui contenuti presentati in altri codelab di Document AI.
Ti consigliamo di completare i seguenti codelab prima di procedere.
- Riconoscimento ottico dei caratteri (OCR) con Document AI (Python)
- Analisi dei moduli con Document AI (Python)
- Processori specializzati con Document AI (Python)
- Gestione dei processori Document AI con Python
- Document AI: human-in-the-loop
- Document AI: uptraining
Cosa imparerai a fare
- Crea un processore personalizzato estrattore di documenti.
- Etichetta i dati di addestramento di Document AI utilizzando lo strumento di annotazione.
- Addestra una nuova versione del modello.
- Valutare l'accuratezza della nuova versione del modello.
Che cosa ti serve
2. Preparazione
Questo codelab presuppone che tu abbia completato i passaggi della configurazione di Document AI elencati nel Codelab introduttivo.
Completa i seguenti passaggi prima di procedere:
3. Crea un processore
Devi prima creare un processore estrattore di documenti personalizzato da utilizzare per questo lab.
- Nella console, vai alla pagina Panoramica di Document AI.
- Fai clic su Crea processore personalizzato e seleziona Custom Document Extractor.
- Assegnagli il nome
codelab-custom-extractor
(o qualcos'altro ricorderai) e seleziona la regione più vicina nell'elenco.
- Fai clic su Crea per creare il processore. Dovresti quindi vedere la pagina Panoramica del processore.
4. Crea un set di dati
Per addestrare il nostro processore, dovremo creare un set di dati con dati di addestramento e test per aiutarlo a identificare le entità che vogliamo estrarre.
- Nella pagina Panoramica del processore, fai clic su Configura il tuo set di dati.
- A questo punto dovresti trovarti nella pagina Configura set di dati. Se vuoi specificare il bucket in cui archiviare le etichette e i documenti di addestramento, fai clic su Mostra opzioni avanzate. In caso contrario, fai clic su Continua.
- Attendi che il set di dati venga creato, quindi dovrebbe passare alla pagina Addestramento.
5. Importa un documento di test
Ora importiamo un PDF W2 di esempio nel nostro set di dati.
- Fai clic su Importa documenti.
- Abbiamo un PDF di esempio che puoi usare in questo lab. Copia e incolla il seguente link nella casella Percorso di origine. Lascia selezionata l'opzione "Suddivisione dati". come "Non assegnato" per ora. Lascia deselezionate tutte le altre caselle. Fai clic su Importa.
cloud-samples-data/documentai/codelabs/custom/extractor/pdfs
- Attendi che il documento venga importato. L'operazione dovrebbe richiedere meno di un minuto.
- Al termine dell'importazione, dovresti vedere il documento nella pagina Addestramento.
6. Crea etichette
Dato che stiamo creando un nuovo tipo di processore, sarà necessario creare etichette personalizzate per indicare a Document AI i campi da estrarre.
- Fai clic su Modifica schema nell'angolo in basso a sinistra.
- A questo punto dovresti essere nella console di gestione schemi.
- Crea le seguenti etichette utilizzando il pulsante Crea etichetta.
Nome | Tipo di dati | Occorrenza |
| Numero | Multipla obbligatoria |
| Testo normale | Multipla obbligatoria |
| Testo normale | Multipla obbligatoria |
| Indirizzo | Multipla obbligatoria |
| Money | Multipla obbligatoria |
| Money | Multipla obbligatoria |
| Money | Multipla obbligatoria |
| Money | Multipla obbligatoria |
- Al termine, la console dovrebbe avere questo aspetto. Al termine, fai clic su Salva.
- Fai clic sulla Freccia indietro per tornare alla pagina Addestramento. Nota che le etichette che abbiamo creato appaiono nell'angolo in basso a sinistra.
7. Etichetta il documento di test
Quindi, identificheremo gli elementi di testo e le etichette delle entità da estrarre. Queste etichette saranno utilizzate per addestrare il nostro modello ad analizzare questa specifica struttura di documenti e identificare i tipi corretti.
- Fai doppio clic sul documento importato in precedenza per accedere alla console di etichettatura. L'annuncio dovrebbe avere un aspetto simile a questo.
- Fai clic sul "riquadro di delimitazione". Strumento, quindi evidenzia il testo "1173038" e assegna l'etichetta
CONTROL_NUMBER
. Puoi utilizzare il filtro di testo per cercare i nomi delle etichette.
- Completata per l'altra istanza di
CONTROL_NUMBER
Una volta etichettata, dovrebbe avere questo aspetto.
- Evidenzia tutte le istanze dei seguenti valori di testo e assegna le etichette appropriate.
Nome etichetta | Testo |
| 24-3188810 |
| 19127,2 |
| 5093,71 |
| 66584,46 |
| 56081,18 |
| 714-32-2105 |
| Adams, Chase e Gilbert Inc 972 Gonzalez Dam South Katherine NC 95869-5178 |
- Al termine, il documento etichettato dovrebbe avere il seguente aspetto. Puoi modificare queste etichette facendo clic sul riquadro di delimitazione nel documento o sul nome/valore dell'etichetta nel menu a sinistra. Al termine dell'etichettatura, fai clic su Contrassegna come etichettato, quindi torna alla console di gestione del set di dati.
8. Assegna documento al set di addestramento
A questo punto dovresti tornare alla console di gestione dei set di dati. Tieni presente che il numero di documenti etichettati e senza etichetta e il numero di istanze per etichetta sono cambiati.
- Dobbiamo assegnare questo documento al o "Test" per iniziare. Fai clic sul documento, fai clic su Assign to Set (Assegna al set), quindi su Addestramento.
- I numeri di suddivisione dati sono cambiati.
9. Importa dati pre-etichettati
I processori Document AI personalizzati richiedono un minimo di 10 documenti sia nel set di addestramento che in quello di test, oltre a 10 istanze di ogni etichetta in ciascun set.
Per ottenere le migliori prestazioni, ti consigliamo di includere almeno 50 documenti in ogni set con 50 istanze per ogni etichetta. Una maggiore quantità di dati di addestramento corrisponde in genere a una maggiore accuratezza.
L'etichettatura manuale di tutti i documenti richiederà molto tempo, perciò abbiamo alcuni documenti pre-etichettati che puoi importare per questo lab.
Puoi importare file di documenti preetichettati nel formato Document.json
. Questi risultati possono derivare dalla chiamata a un processore e dalla verifica dell'accuratezza mediante Human in the Loop (HITL).
a parte negativo
NOTA:quando importi dati pre-etichettati, ti consigliamo vivamente di esaminare manualmente le annotazioni prima di addestrare un modello.
- Fai clic su Importa documenti.
- Copia/Incolla il seguente percorso di Cloud Storage e assegnalo al set Addestramento.
cloud-samples-data/documentai/codelabs/custom/extractor/training
- Fai clic su Aggiungi un'altra cartella. Quindi, copia e incolla il seguente percorso Cloud Storage e assegnalo al set di Test.
cloud-samples-data/documentai/codelabs/custom/extractor/test
- Fai clic su Importa e attendi l'importazione dei documenti. Questa operazione richiederà più tempo rispetto all'ultima volta perché sono presenti più documenti da elaborare. Questa operazione dovrebbe richiedere circa 6 minuti. Puoi abbandonare questa pagina e tornare più tardi.
- Al termine, dovresti vedere i documenti nella pagina Addestramento.
10. Addestra il modello
Ora siamo pronti per iniziare ad addestrare il nostro estrattore di documenti personalizzato.
- Fai clic su Addestra nuova versione.
- Assegna alla versione un nome facile da ricordare, ad esempio
codelab-custom-1
. Per "Metodo di addestramento", seleziona "Addestra da zero".
- (Facoltativo) Puoi anche selezionare Visualizza statistiche etichette per visualizzare le metriche relative alle etichette nel tuo set di dati.
- Fai clic su Avvia addestramento per avviare il processo di addestramento. Il sistema dovrebbe reindirizzarti alla pagina Gestione set di dati. Puoi visualizzare lo stato di addestramento sul lato destro. L'addestramento richiederà alcune ore. Puoi uscire da questa pagina e tornare più tardi.
- Se fai clic sul nome della versione, verrà visualizzata la pagina Gestisci versioni, che mostra l'ID versione e lo stato attuale del job di addestramento.
11. Testa la nuova versione del modello
Una volta completato il job di addestramento (è stata necessaria circa un'ora nei test), puoi testare la nuova versione del modello e iniziare a utilizzarla per le previsioni.
- Vai alla pagina Gestisci versioni. Qui puoi visualizzare lo stato attuale e il punteggio F1.
- Dovremo eseguire il deployment di questa versione del modello prima di poter essere utilizzata. Fai clic sui punti verticali sul lato destro e seleziona Esegui il deployment della versione.
- Seleziona Esegui il deployment nella finestra popup quando attendi il deployment della versione. Il completamento dell'operazione richiede alcuni minuti. Dopo il deployment, puoi anche impostare questa versione come versione predefinita.
- Una volta terminato il deployment, vai alla scheda Valuta. In questa pagina puoi visualizzare le metriche di valutazione, tra cui il punteggio F1, la precisione e l'identificazione per l'intero documento, nonché le singole etichette. Per saperne di più su queste metriche, consulta la documentazione di AutoML.
- Scarica il file PDF tramite il link di seguito. Questo è un esempio di W2 che non è stato incluso nel set di addestramento o test.
- Fai clic su Carica documento di prova e seleziona il file PDF.
- Le entità estratte dovrebbero avere un aspetto simile a questo.
12. Facoltativo: etichettatura automatica dei documenti appena importati
Dopo aver implementato una versione addestrata del processore, puoi utilizzare l'etichettatura automatica per risparmiare tempo durante l'importazione di nuovi documenti.
- Nella pagina Addestra, fai clic su Importa documenti.
- Copia e incolla il seguente percorso . Questa directory contiene 5 PDF W2 senza etichetta. Dall'elenco a discesa Suddivisione dati, seleziona Addestramento.
cloud-samples-data/documentai/Custom/W2/AutoLabel
- Nella sezione Etichettatura automatica, seleziona la casella di controllo Importa con etichettatura automatica.
- Seleziona una versione di processore esistente per etichettare i documenti.
- Ad esempio:
2af620b2fd4d1fcf
- Fai clic su Importa e attendi l'importazione dei documenti. Puoi uscire da questa pagina e tornare più tardi.
- Al termine, i documenti verranno visualizzati nella pagina Addestra nella sezione Con etichetta automatica.
- Non puoi utilizzare i documenti con etichetta automatica per l'addestramento o i test senza contrassegnarli come etichettati. Vai alla sezione Etichettati automaticamente per visualizzare i documenti etichettati automaticamente.
- Seleziona il primo documento per accedere alla console di etichettatura.
- Verifica le etichette, i riquadri di delimitazione e i valori per assicurarti che siano corretti. Etichetta eventuali valori omessi.
- Al termine, seleziona Contrassegna come etichettato.
- Ripeti la verifica delle etichette per ogni documento con etichetta automatica, quindi torna alla pagina Addestra per utilizzare i dati per l'addestramento.
13. Conclusione
Complimenti, hai utilizzato correttamente Document AI per addestrare un processore estrattore di documenti personalizzato. Ora puoi utilizzare questo processore per analizzare documenti in questo formato come faresti con qualsiasi processore specializzato.
Per informazioni su come gestire la risposta di elaborazione, puoi fare riferimento al codelab dedicato ai processori specializzati.
Pulizia
Per evitare che al tuo account Google Cloud vengano addebitati costi relativi alle risorse utilizzate in questo tutorial:
- Nella console Cloud, vai alla pagina Gestisci risorse.
- Nell'elenco dei progetti, seleziona il progetto e fai clic su Elimina.
- Nella finestra di dialogo, digita l'ID progetto e fai clic su Chiudi per eliminare il progetto.
Risorse
- Documentazione di Document AI Workbench
- Il futuro dei documenti - Playlist di YouTube
- Documentazione di Document AI
- Libreria client Python di Document AI
- Esempi di Document AI
Licenza
Questo lavoro è concesso in licenza ai sensi di una licenza Creative Commons Attribution 2.0 Generic.