Modello di classificazione personalizzata di Document Intelligence

Importante

  • Le versioni di anteprima pubblica di Document Intelligence consentono l'accesso anticipato alle funzionalità in fase di sviluppo attivo.
  • Le funzionalità, gli approcci e i processi possono cambiare, prima della disponibilità generale, in base al feedback degli utenti.
  • La versione di anteprima pubblica delle librerie client di Document Intelligence per impostazione predefinita è l'API REST versione 2024-02-29-preview.
  • L'anteprima pubblica versione 2024-02-29-preview è attualmente disponibile solo nelle aree di Azure seguenti:
  • Stati Uniti orientali
  • Stati Uniti occidentali2
  • Europa occidentale

Questo contenuto si applica a:segno di spuntav4.0 (anteprima) | Versione precedente:segno di spunta bluv3.1 (GA)

Questo contenuto si applica a:v3.1segno di spunta (GA) | Versione più recente:segno di spunta violav4.0 (anteprima)

Importante

  • L'API, il 2024-02-29-preview modello di classificazione personalizzata non suddivide i documenti per impostazione predefinita durante il processo di analisi.
  • È necessario impostare in modo esplicito la splitMode proprietà su auto per mantenere il comportamento delle versioni precedenti. L'impostazione predefinita per splitMode è none.
  • Se il file di input contiene più documenti, è necessario abilitare la suddivisione impostando su splitModeauto.

Intelligence sui documenti di Intelligenza artificiale di Azure è un servizio di intelligenza artificiale di Azure basato sul cloud che consente di creare soluzioni intelligenti di elaborazione dei documenti. Le API di Intelligence per i documenti analizzano immagini, PDF e altri file di documento per estrarre e rilevare vari contenuti, layout, stile ed elementi semantici.

I modelli di classificazione personalizzati sono tipi di modelli di Deep Learning che combinano funzionalità di layout e linguaggio per rilevare e identificare in modo accurato i documenti elaborati all'interno dell'applicazione. I modelli di classificazione personalizzati eseguono la classificazione di un file di input una pagina alla volta per identificare i documenti all'interno e possono anche identificare più documenti o più istanze di un singolo documento all'interno di un file di input.

Funzionalità del modello

Nota

  • A partire dall'API 2024-02-29-preview , i modelli di clasificazione personalizzati supportano il training incrementale. È possibile aggiungere nuovi esempi alle classi esistenti o aggiungere nuove classi facendo riferimento a un classificatore esistente.

I modelli di classificazione personalizzati possono analizzare un singolo o più documenti di file per identificare se uno dei tipi di documento sottoposti a training è contenuto all'interno di un file di input. Ecco gli scenari attualmente supportati:

  • Un singolo file contenente un documento. Ad esempio, un modulo di richiesta di prestito.

  • Singolo file contenente più documenti. Ad esempio, un pacchetto di domanda di prestito contenente un modulo di domanda di prestito, una busta paga e un estratto conto bancario.

  • Singolo file contenente più istanze dello stesso documento. Ad esempio, una raccolta di fatture analizzate.

✔️ Il training di un classificatore personalizzato richiede almeno two classi distinte e un minimo di esempi di five documenti per ogni classe. La risposta del modello contiene gli intervalli di pagine per ognuna delle classi di documenti identificati.

✔️ Il numero massimo consentito di classi è 500. Il numero massimo consentito di esempi di documenti per classe è 100.

Il modello classifica ogni pagina del documento di input a una delle classi nel set di dati etichettato. Per impostare la soglia per l'applicazione, usare il punteggio di attendibilità della risposta.

Training incrementale

Con i modelli personalizzati, è necessario mantenere l'accesso al set di dati di training per aggiornare il classificatore con nuovi esempi per una classe esistente o aggiungere nuove classi. I modelli di classificatore supportano ora il training incrementale in cui è possibile fare riferimento a un classificatore esistente e aggiungere nuovi esempi per una classe esistente o aggiungere nuove classi con esempi. Il training incrementale consente scenari in cui la conservazione dei dati è una sfida e il classificatore deve essere aggiornato per allinearsi alle mutevoli esigenze aziendali. Il training incrementale è supportato con i modelli sottoposti a training con la versione 2024-02-29-preview dell'API e versioni successive.

Importante

Il training incrementale è supportato solo con i modelli sottoposti a training con la stessa versione dell'API. Se si sta tentando di estendere un modello, usare la versione dell'API con cui è stato eseguito il training del modello originale per estendere il modello. Il training incrementale è supportato solo con l'API versione 2024-02-29-preview o successiva.

Per il training incrementale è necessario specificare l'ID modello originale come baseClassifierId. Per altre informazioni su come usare il training incrementale, vedere Training incrementale.

Supporto del tipo di documento di Office

È ora possibile eseguire il training dei classificatori per riconoscere i tipi di documento in vari formati, tra cui PDF, immagini, Word, PowerPoint ed Excel. Quando si assembla il set di dati di training, è possibile aggiungere documenti di uno dei tipi supportati. Il classificatore non richiede di etichettare in modo esplicito tipi specifici. Come procedura consigliata, assicurarsi che il set di dati di training abbia almeno un campione di ogni formato per migliorare l'accuratezza complessiva del modello.

Confrontare la classificazione personalizzata e i modelli composti

Un modello di classificazione personalizzato può sostituire un modello composto in alcuni scenari, ma esistono alcune differenze da tenere presenti:

Funzionalità Processo di classificazione personalizzato Processo del modello composto
Analizzare un singolo documento di tipo sconosciuto appartenente a uno dei tipi sottoposti a training per l'elaborazione del modello di estrazione. ● Richiede più chiamate.
● Chiamare il modello di classificazione in base alla classe del documento. Questo passaggio consente un controllo basato sull'attendibilità prima di richiamare l'analisi del modello di estrazione.
● Richiamare il modello di estrazione.
● Richiede una singola chiamata a un modello composto contenente il modello corrispondente al tipo di documento di input.
Analizzare un singolo documento di tipo sconosciuto appartenente a diversi tipi sottoposti a training per l'elaborazione del modello di estrazione. ●Richiede più chiamate.
● Effettuare una chiamata al classificatore che ignora i documenti che non corrispondono a un tipo designato per l'estrazione.
● Richiamare il modello di estrazione.
● Richiede una singola chiamata a un modello composto. Il servizio seleziona un modello personalizzato all'interno del modello composto con la corrispondenza più elevata.
● Un modello composto non può ignorare i documenti.
Analizzare un file contenente più documenti di tipo noto o sconosciuto appartenenti a uno dei tipi sottoposti a training per l'elaborazione del modello di estrazione. ● Richiede più chiamate.
● Chiamare il modello di estrazione per ogni documento identificato nel file di input.
● Richiamare il modello di estrazione.
● Richiede una singola chiamata a un modello composto.
● Il modello composto richiama il modello di componente una volta nella prima istanza del documento.
●I documenti rimanenti vengono ignorati.

Supporto di versioni in lingue diverse

I modelli di classificazione attualmente supportano solo documenti in lingua inglese.

I modelli di classificazione possono ora essere sottoposti a training su documenti di lingue diverse. Per un elenco completo, vedere le lingue supportate.

Requisiti di input

Formati di file supportati:

Modello PDF Immagine:
jpeg/jpg, png, bmp, tiff, heif
Microsoft Office:
Word (docx), Excel (xlxs), PowerPoint (pptx)
Lettura
Layout ✔ (2024-02-29-preview, 2023-10-31-preview e versioni successive)
Documento generale
Predefinito
Estrazione personalizzata
Classificazione personalizzata
  • Per ottenere risultati ottimali, fornire cinque foto chiare o analisi di alta qualità per ogni tipo di documento.

  • Per PDF e TIFF, è possibile elaborare fino a 2.000 pagine (con una sottoscrizione di livello gratuito, vengono elaborate solo le prime due pagine).

  • Le dimensioni del file per l'analisi dei documenti sono di 500 MB per il livello a pagamento (S0) e 4 MB per il livello gratuito (F0).

  • Le dimensioni dell'immagine devono essere comprese tra 50 x 50 pixel e 10.000 px x 10.000 pixel.

  • Se i file PDF sono bloccati da password, è necessario rimuovere il blocco prima dell'invio.

  • L'altezza minima del testo da estrarre è di 12 pixel per un'immagine da 1024 x 768 pixel. Questa dimensione corrisponde a circa 8-point text a 150 punti per pollice (DPI).

  • Per il training di modelli personalizzati, il numero massimo di pagine per i dati di training è 500 per il modello di modello personalizzato e 50.000 per il modello neurale personalizzato.

  • Per il training del modello di estrazione personalizzato, le dimensioni totali dei dati di training sono di 50 MB per il modello di modello e 1G-MB per il modello neurale.

  • Per il training del modello di classificazione personalizzato, le dimensioni totali dei dati di training sono pari a 1 GB con un massimo di 10.000 pagine.

Suddivisione dei documenti

Quando si dispone di più documenti in un file, il classificatore può identificare i diversi tipi di documento contenuti nel file di input. La risposta del classificatore contiene gli intervalli di pagine per ognuno dei tipi di documento identificati contenuti all'interno di un file. Questa risposta può includere più istanze dello stesso tipo di documento.

L'operazione di analisi include ora una proprietà che offre un splitMode controllo granulare sul comportamento di suddivisione.

  • Per considerare l'intero file di input come un singolo documento per la classificazione, impostare splitMode su none. In questo caso, il servizio restituisce solo una classe per l'intero file di input.
  • Per classificare ogni pagina del file di input, impostare splitMode su perPage. Il servizio tenta di classificare ogni pagina come singolo documento.
  • Impostare splitMode su auto e il servizio identifica i documenti e gli intervalli di pagine associati.

Procedure consigliate

I modelli di classificazione personalizzati richiedono almeno cinque campioni per classe per il training. Se le classi sono simili, l'aggiunta di campioni di training aggiuntivi migliora l'accuratezza del modello.

Il classificatore tenta di assegnare ogni documento a una delle classi, se si prevede che il modello visualizzi i tipi di documento non presenti nelle classi che fanno parte del set di dati di training, è consigliabile impostare una soglia sul punteggio di classificazione o aggiungere alcuni esempi rappresentativi dei tipi di documento a una "other" classe. L'aggiunta di una "other" classe garantisce che i documenti non necessario non influiscano sulla qualità del classificatore.

Training a model

I modelli di classificazione personalizzati sono supportati dalle API v4.0:2024-02-29-preview e v3.1:2023-07-31 (GA). Document Intelligence Studio offre un'interfaccia utente senza codice per eseguire il training interattivo di un classificatore personalizzato. Seguire la guida per iniziare.

Quando si usa l'API REST, se si organizzano i documenti in base alle cartelle, è possibile usare la proprietà della richiesta per eseguire il azureBlobSource training di un modello di classificazione.


https://{endpoint}/documentintelligence/documentClassifiers:build?api-version=2024-02-29-preview

{
  "classifierId": "demo2.1",
  "description": "",
  "docTypes": {
    "car-maint": {
        "azureBlobSource": {
            "containerUrl": "SAS URL to container",
            "prefix": "sample1/car-maint/"
            }
    },
    "cc-auth": {
        "azureBlobSource": {
            "containerUrl": "SAS URL to container",
            "prefix": "sample1/cc-auth/"
            }
    },
    "deed-of-trust": {
        "azureBlobSource": {
            "containerUrl": "SAS URL to container",
            "prefix": "sample1/deed-of-trust/"
            }
    }
  }
}

https://{endpoint}/formrecognizer/documentClassifiers:build?api-version=2023-07-31

{
  "classifierId": "demo2.1",
  "description": "",
  "docTypes": {
    "car-maint": {
        "azureBlobSource": {
            "containerUrl": "SAS URL to container",
            "prefix": "{path to dataset root}/car-maint/"
            }
    },
    "cc-auth": {
        "azureBlobSource": {
            "containerUrl": "SAS URL to container",
            "prefix": "{path to dataset root}/cc-auth/"
            }
    },
    "deed-of-trust": {
        "azureBlobSource": {
            "containerUrl": "SAS URL to container",
            "prefix": "{path to dataset root}/deed-of-trust/"
            }
    }
  }
}

In alternativa, se è disponibile un elenco semplice di file o si prevede di usare solo alcuni file selezionati all'interno di ogni cartella per eseguire il training del modello, è possibile usare la azureBlobFileListSource proprietà per eseguire il training del modello. Questo passaggio richiede un in file listformato righe JSON. Per ogni classe, aggiungere un nuovo file con un elenco di file da inviare per il training.

{
  "classifierId": "demo2",
  "description": "",
  "docTypes": {
    "car-maint": {
      "azureBlobFileListSource": {
        "containerUrl": "SAS URL to container",
        "fileList": "{path to dataset root}/car-maint.jsonl"
      }
    },
    "cc-auth": {
      "azureBlobFileListSource": {
        "containerUrl": "SAS URL to container",
        "fileList": "{path to dataset root}/cc-auth.jsonl"
      }
    },
    "deed-of-trust": {
      "azureBlobFileListSource": {
        "containerUrl": "SAS URL to container",
        "fileList": "{path to dataset root}/deed-of-trust.jsonl"
      }
    }
  }
}

Ad esempio, l'elenco car-maint.jsonl di file contiene i file seguenti.

{"file":"classifier/car-maint/Commercial Motor Vehicle - Adatum.pdf"}
{"file":"classifier/car-maint/Commercial Motor Vehicle - Fincher.pdf"}
{"file":"classifier/car-maint/Commercial Motor Vehicle - Lamna.pdf"}
{"file":"classifier/car-maint/Commercial Motor Vehicle - Liberty.pdf"}
{"file":"classifier/car-maint/Commercial Motor Vehicle - Trey.pdf"}

Risposta del modello

Analizzare un file di input con il modello di classificazione dei documenti.

https://{endpoint}/documentintelligence/documentClassifiers/{classifier}:analyze?api-version=2024-02-29-preview
https://{service-endpoint}/formrecognizer/documentClassifiers/{classifier}:analyze?api-version=2023-07-31

La risposta contiene i documenti identificati con gli intervalli di pagine associati nella sezione documenti della risposta.

{
  ...

    "documents": [
      {
        "docType": "formA",
        "boundingRegions": [
          { "pageNumber": 1, "polygon": [...] },
          { "pageNumber": 2, "polygon": [...] }
        ],
        "confidence": 0.97,
        "spans": []
      },
      {
        "docType": "formB",
        "boundingRegions": [
          { "pageNumber": 3, "polygon": [...] }
        ],
        "confidence": 0.97,
        "spans": []
      }, ...
    ]
  }

Passaggi successivi

Informazioni su come creare modelli di classificazione personalizzati: