Dela via


Träna din anpassade namngivna entitetsigenkänningsmodell

Träning är den process där modellen lär sig av dina märkta data. När träningen är klar kan du visa modellens prestanda för att avgöra om du behöver förbättra din modell.

Om du vill träna en modell startar du ett träningsjobb och endast slutförda jobb skapar en modell. Träningsjobb upphör att gälla efter sju dagar, vilket innebär att du inte kan hämta jobbinformationen efter den här tiden. Om ditt träningsjobb har slutförts och en modell har skapats påverkas inte modellen. Du kan bara ha ett träningsjobb i taget och du kan inte starta andra jobb i samma projekt.

Träningstiderna varierar. Träningen kan vara var som helst från några minuter, när du hanterar några dokument eller flera timmar, beroende på datamängdens storlek och schemats komplexitet.

Förutsättningar

Se livscykeln för projektutveckling.

Datauppdelning

Innan du påbörjar träningsprocessen delas märkta dokument i projektet in i en träningsuppsättning och en testuppsättning. Var och en av dem har olika funktioner. Träningsuppsättningen används för att träna modellen. Det är den uppsättning från vilken modellen lär sig de märkta entiteterna och vilka textintervall som ska extraheras som entiteter. Testuppsättningen är en blinduppsättning som inte introduceras i modellen under träningen utan bara under utvärderingen. När modellträningen har slutförts används modellen för att göra förutsägelser från testdokumenten och utvärderingsmått beräknas . Vi rekommenderar att du ser till att alla dina entiteter är tillräckligt representerade i både tränings- och testuppsättningen.

Custom NER har stöd för två metoder för datadelning:

  • Dela automatiskt upp testuppsättningen från träningsdata: Systemet delar upp dina märkta data mellan tränings- och testuppsättningarna enligt de procentandelar du väljer. Den rekommenderade procentuella uppdelningen är 80 % för träning och 20 % för testning.

Anmärkning

Om du väljer alternativet Dela upp testuppsättningen automatiskt från träningsdata delas endast de data som tilldelats till en träningsuppsättning upp enligt de procentsatser som anges.

  • Använd en manuell uppdelning av tränings- och testdata: Med den här metoden kan användarna definiera vilka etiketterade dokument som ska tillhöra vilken uppsättning. Det här steget aktiveras bara om du har lagt till dokument i testuppsättningen under dataetiketter.

Träna en modell (REST API)

När du har etiketterat dina data och konfigurerat inställningarna för datadelning kan du börja träna din anpassade NER-modell med hjälp av REST-API:et. Utbildningsprocessen innebär att skicka in en begäran om utbildningsjobb och övervaka dess förlopp tills det är klart. Det här avsnittet innehåller DE API-anrop som krävs för att starta träningen och kontrollera statusen för ditt träningsjobb.

Starta träningsjobbet

Skicka en POST-förfrågan med hjälp av följande URL, rubriker och JSON-objekt för att starta ett träningsjobb. Ersätt platshållarvärdena med dina egna värden.

{ENDPOINT}/language/authoring/analyze-text/projects/{PROJECT-NAME}/:train?api-version={API-VERSION}
Platshållare Värde Exempel
{ENDPOINT} Slutpunkten för att autentisera din API-begäran. https://<your-custom-subdomain>.cognitiveservices.azure.com
{PROJECT-NAME} Namnet på projektet. Det här värdet är skiftlägeskänsligt. myProject
{API-VERSION} Den version av API:et som du anropar. Värdet som refereras är för den senaste versionen som släppts. Mer information finns iModelllivscykel. 2022-05-01

Rubriker

Använd följande rubrik för att autentisera din begäran.

Nyckel Värde
Ocp-Apim-Subscription-Key Nyckeln till resursen. Används för att autentisera dina API-begäranden.

Begärandetext

Använd följande JSON i begärandetexten. Modellen ges som {MODEL-NAME} när träningen är klar. Endast lyckade träningsjobb skapar modeller.

{
    "modelLabel": "{MODEL-NAME}",
    "trainingConfigVersion": "{CONFIG-VERSION}",
    "evaluationOptions": {
        "kind": "percentage",
        "trainingSplitPercentage": 80,
        "testingSplitPercentage": 20
    }
}
Nyckel Platshållare Värde Exempel
modelLabel {MODEL-NAME} Det modellnamn som tilldelas din modell när den tränats framgångsrikt. myModel
utbildningskonfigurationsversion {CONFIG-VERSION} Det här är den modellversion som används för att träna modellen. 2022-05-01
utvärderingsalternativ Alternativ för att dela upp dina data mellan tränings- och testuppsättningar. {}
typ percentage Dela upp metoder. Möjliga värden är percentage eller manual. Mer information finns iTräna en modell. percentage
träningsdelningsprocent 80 Procentandel av dina taggade data som ska ingå i träningsuppsättningen. Rekommenderat värde är 80. 80
testingSplitPercentage 20 Procentandel av dina taggade data som ska ingå i testuppsättningen. Rekommenderat värde är 20. 20

Anmärkning

Och trainingSplitPercentagetestingSplitPercentage krävs endast om Kind anges till percentage och summan av båda procentandelarna ska vara lika med 100.

När du har skickat din API-begäran får du ett 202 svar som anger att jobbet har skickats korrekt. I svarshuvudena extraherar du värdet location formaterat så här:

{ENDPOINT}/language/authoring/analyze-text/projects/{PROJECT-NAME}/train/jobs/{JOB-ID}?api-version={API-VERSION}

{JOB-ID} används för att identifiera din begäran, eftersom den här åtgärden är asynkron. Du kan använda den här URL:en för att hämta träningsstatusen.

Hämta status för träningsjobb (REST API)

Det kan ta lite tid att träna, beroende på storleken på dina träningsdata och schemats komplexitet. Du kan använda följande begäran för att fortsätta kontrollera regelbundet statusen för träningsuppgiften tills det har slutförts.

Använd följande GET-begäran för att få status för din modells träningsförlopp. Ersätt platshållarvärdena med dina egna värden.

Begärans-URL

{ENDPOINT}/language/authoring/analyze-text/projects/{PROJECT-NAME}/train/jobs/{JOB-ID}?api-version={API-VERSION}
Platshållare Värde Exempel
{ENDPOINT} Slutpunkten för att autentisera din API-begäran. https://<your-custom-subdomain>.cognitiveservices.azure.com
{PROJECT-NAME} Namnet på projektet. Det här värdet är skiftlägeskänsligt. myProject
{JOB-ID} ID:t för att hitta modellens träningsstatus. Det här värdet finns i det location rubrikvärde som du fick i föregående steg. xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxxx
{API-VERSION} Den version av API:et som du anropar. Värdet som refereras är för den senaste versionen som släppts. Mer information finns iModelllivscykel. 2022-05-01

Rubriker

Använd följande rubrik för att autentisera din begäran.

Nyckel Värde
Ocp-Apim-Subscription-Key Nyckeln till resursen. Används för att autentisera dina API-begäranden.

Svarsdel

När du har skickat begäran får du följande svar.

{
  "result": {
    "modelLabel": "{MODEL-NAME}",
    "trainingConfigVersion": "{CONFIG-VERSION}",
    "estimatedEndDateTime": "2022-04-18T15:47:58.8190649Z",
    "trainingStatus": {
      "percentComplete": 3,
      "startDateTime": "2022-04-18T15:45:06.8190649Z",
      "status": "running"
    },
    "evaluationStatus": {
      "percentComplete": 0,
      "status": "notStarted"
    }
  },
  "jobId": "{JOB-ID}",
  "createdDateTime": "2022-04-18T15:44:44Z",
  "lastUpdatedDateTime": "2022-04-18T15:45:48Z",
  "expirationDateTime": "2022-04-25T15:44:44Z",
  "status": "running"
}

Avbryt träningsjobbet (REST API)

Om du behöver stoppa ett träningsjobb som pågår kan du avbryta det med hjälp av REST-API:et. Att avbryta ett träningsjobb är användbart när du upptäcker ett problem med dina data eller konfigurationer och vill göra korrigeringar innan du startar om träningsprocessen.

Skapa en POST-begäran med hjälp av följande URL, rubriker och JSON-brödtext för att avbryta ett träningsjobb.

Begärans-URL

Använd följande URL när du skapar din API-begäran. Ersätt platshållarvärdena med dina egna värden.

{Endpoint}/language/authoring/analyze-text/projects/{PROJECT-NAME}/train/jobs/{JOB-ID}/:cancel?api-version={API-VERSION}
Platshållare Värde Exempel
{ENDPOINT} Slutpunkten för att autentisera din API-begäran. https://<your-custom-subdomain>.cognitiveservices.azure.com
{PROJECT-NAME} Namnet på projektet. Det här värdet är skiftlägeskänsligt. EmailApp
{JOB-ID} Det här värdet är träningsjobbets ID. XXXXX-XXXXX-XXXX-XX
{API-VERSION} Den version av API:et som du anropar. Värdet som refereras är för den senaste versionen av modellen. 2022-05-01

Rubriker

Använd följande rubrik för att autentisera din begäran.

Nyckel Värde
Ocp-Apim-Subscription-Key Nyckeln till resursen. Används för att autentisera dina API-begäranden.

När du har skickat din API-begäran får du ett 202-svar med en Operation-Location rubrik som används för att kontrollera jobbets status.

Nästa steg

När träningen har slutförts kan du visa modellprestanda för att eventuellt förbättra din modell om det behövs. När du är nöjd med din modell kan du distribuera den och göra den tillgänglig för att extrahera entiteter från text.