Träna och använda anpassade modeller

Slutförd

Tips/Råd

Mer information finns på fliken Text och bilder !

När fördefinierade modeller inte täcker dina specifika dokumenttyper kan du träna anpassade modeller för att extrahera data från dina egna formulär. Azure Document Intelligence stöder övervakad maskininlärning, där du märker exempeldokument med de fält som du vill extrahera, och tjänsten tränar en modell för att identifiera dessa fält i nya dokument.

Anpassade modelltyper

Azure Document Intelligence erbjuder två typer av anpassade extraheringsmodeller, plus en klassificeringsmodell:

Anpassade mallmodeller

Anpassade mallmodeller förlitar sig på en konsekvent visuell mall för att extrahera etiketterade data. De fungerar bäst för strukturerade formulär där layouten är statisk från en dokumentinstans till en annan, till exempel enkäter, program eller standardformulär för myndigheter.

Mallmodeller extraherar korrekt märkta nyckel/värde-par, markeringsmarkeringar, tabeller, regioner och signaturer. Det tar bara några minuter att träna och fler än 100 språk stöds. Eftersom mallmodeller är snabba att träna och kostnadseffektiva att köra är de en bra utgångspunkt när dina dokument har en enhetlig visuell layout.

Anpassade neurala modeller

Anpassade neurala modeller använder djupinlärning och finjusteras på dina märkta data. De kombinerar layout- och språkfunktioner för att extrahera fält från strukturerade, halvstrukturerade och ostrukturerade dokument. Stöd för neurala modeller:

  • Överlappande fält
  • Signaturidentifiering
  • Konfidens på tabell-, rad- och cellnivå

Neurala modeller ger högre noggrannhet än mallmodeller, särskilt för halvstrukturerade eller ostrukturerade dokument där layouten varierar mellan instanser. Det tar dock längre tid att träna och förbruka mer resurser.

Välj mellan mallar och neurala modeller

När du bestämmer vilken typ av anpassad modell som ska användas bör du överväga kompromisserna:

Faktor Anpassad mall Anpassat neuralt nätverk
Bäst för Strukturerade formulär med en konsekvent visuell layout Halvstrukturerade eller ostrukturerade dokument med varierande layouter
Träningstid Protokoll Längre (beror på datamängdens storlek)
Träningskostnad Nedre Högre
Accuracy Hög för formulär med fast layout; minskar när layouten varierar Högre helhetsmässigt, särskilt för dokument med formatvariation
Språkstöd Över 100 språk Färre språk (kontrollera dokumentationen för aktuell support)
Funktionsstöd Nyckel/värde-par, markeringsmarkeringar, tabeller, regioner, signaturer Överlappande fält, signaturidentifiering, tabell/rad/cellförtroende

Tips/Råd

Börja med en anpassad mallmodell om dina formulär har en konsekvent visuell layout. Det är snabbare och billigare att träna. Om noggrannheten inte räcker till eller om dokumenten varierar i format växlar du till en anpassad neural modell.

Anpassade klassificerare

Anpassade klassificeringsmodeller identifierar typen av ett dokument innan du anropar en extraheringsmodell. Du kan använda en klassificerare för att dirigera inkommande dokument till lämplig extraheringsmodell när du hanterar flera formulärtyper.

Träna en anpassad modell

Så här tränar du en anpassad extraheringsmodell:

  1. Lagra exempelformulär i en Azure-blobcontainer, tillsammans med JSON-filer som innehåller information om layout- och etikettfält:
    • En ocr.json fil för varje exempelformulär (genereras med hjälp av funktionen Analysera dokument).
    • En enda fields.json fil som beskriver de fält som du vill extrahera.
    • En labels.json fil för varje exempelformulär som mappar fält till deras plats i formuläret.
  2. Generera en URL för signatur för delad åtkomst (SAS) för containern.
  3. Använd REST API-funktionen Build model eller motsvarande SDK-metod.
  4. Använd REST-API-funktionen Hämta modell för att hämta det tränade modell-ID.

Du kan också träna anpassade modeller visuellt med hjälp av Document Intelligence Studio, enligt beskrivningen i lektionen Använd Document Intelligence Studio .

Tips/Råd

Använd minst fem till sex exempelformulär för träning. En större och mer varierad datauppsättning ger mer exakta modeller.

Använda en anpassad modell

Om du vill extrahera formulärdata med en anpassad modell anropar du funktionen Analysera dokument med ditt modell-ID. Du kan använda antingen en SDK som stöds eller REST-API:et.

C#

string endpoint = "<endpoint>";
string apiKey = "<apiKey>";
AzureKeyCredential credential = new AzureKeyCredential(apiKey);
DocumentAnalysisClient client = new DocumentAnalysisClient(new Uri(endpoint), credential);

string modelId = "<modelId>";
Uri fileUri = new Uri("<fileUri>");

AnalyzeDocumentOperation operation = await client.AnalyzeDocumentFromUriAsync(WaitUntil.Completed, modelId, fileUri);
AnalyzeResult result = operation.Value;

Python

endpoint = "YOUR_DOC_INTELLIGENCE_ENDPOINT"
key = "YOUR_DOC_INTELLIGENCE_KEY"

model_id = "YOUR_CUSTOM_BUILT_MODEL_ID"
formUrl = "YOUR_DOCUMENT"

document_analysis_client = DocumentAnalysisClient(
    endpoint=endpoint, credential=AzureKeyCredential(key)
)

task = document_analysis_client.begin_analyze_document_from_url(model_id, formUrl)
result = task.result()

Ett lyckat svar innehåller ett analyzeResult objekt med det extraherade innehållet och en matris med sidor som innehåller information om dokumentet.

Sammansatta modeller

Du kan kombinera flera anpassade modeller till en enda sammansatt modell. När du skickar ett dokument till en sammansatt modell klassificerar Dokumentinformation det för att fastställa den lämpligaste komponentmodellen och returnerar sedan extraheringsresultatet från modellen. Den här metoden är användbar när du hanterar flera formulärtyper som var och en kräver sin egen extraheringsmodell.

Lära sig mer