Snabbstart: Anpassad textklassificering
Använd den här artikeln om du vill komma igång med att skapa ett anpassat textklassificeringsprojekt där du kan träna anpassade modeller för textklassificering. En modell är programvara för artificiell intelligens som är tränad att utföra en viss uppgift. För det här systemet klassificerar modellerna text och tränas genom att lära sig från taggade data.
Anpassad textklassificering stöder två typer av projekt:
- Klassificering med en etikett – du kan tilldela en enskild klass för varje dokument i datauppsättningen. Ett filmskript kan till exempel bara klassificeras som "Romance" eller "Comedy".
- Klassificering med flera etiketter – du kan tilldela flera klasser för varje dokument i datauppsättningen. Ett filmmanus kan till exempel klassificeras som "Comedy" eller "Romance" och "Comedy".
I den här snabbstarten kan du använda de exempeldatauppsättningar som tillhandahålls för att skapa en klassificering med flera etiketter där du kan klassificera filmskript i en eller flera kategorier eller använda enstaka etikettklassificeringsdatauppsättning där du kan klassificera sammanfattningar av vetenskapliga artiklar i en av de definierade domänerna.
Förutsättningar
- Azure-prenumeration – Skapa en kostnadsfritt.
Skapa en ny Azure AI Language-resurs och Ett Azure-lagringskonto
Innan du kan använda anpassad textklassificering måste du skapa en Azure AI Language-resurs som ger dig de autentiseringsuppgifter som du behöver för att skapa ett projekt och börja träna en modell. Du behöver också ett Azure Storage-konto där du kan ladda upp din datauppsättning som ska användas för att skapa din modell.
Viktigt!
För att snabbt komma igång rekommenderar vi att du skapar en ny Azure AI Language-resurs med hjälp av stegen i den här artikeln. Med hjälp av stegen i den här artikeln kan du skapa språkresursen och lagringskontot samtidigt, vilket är enklare än att göra det senare.
Om du har en befintlig resurs som du vill använda måste du ansluta den till lagringskontot.
Skapa en ny resurs från Azure Portal
Gå till Azure Portal för att skapa en ny Azure AI Language-resurs.
I fönstret som visas väljer du Anpassad textklassificering och anpassad namngiven entitetsigenkänning från de anpassade funktionerna. Välj Fortsätt för att skapa resursen längst ned på skärmen.
Skapa en språkresurs med följande information.
Name Obligatoriskt värde Prenumeration Din Azure-prenumeration. Resursgrupp En resursgrupp som ska innehålla din resurs. Du kan använda en befintlig eller skapa en ny. Region En av de regioner som stöds. Till exempel "USA, västra 2". Name Ett namn på resursen. Prisnivå En av de prisnivåer som stöds. Du kan använda nivån Kostnadsfri (F0) för att prova tjänsten. Om du får ett meddelande om att ditt inloggningskonto inte är ägare till det valda lagringskontots resursgrupp måste ditt konto ha en ägarroll tilldelad till resursgruppen innan du kan skapa en Språkresurs. Kontakta din Azure-prenumerationsägare om du vill ha hjälp.
Du kan fastställa din Azure-prenumerationsägare genom att söka i resursgruppen och följa länken till den associerade prenumerationen. Sedan:
- Välj fliken Åtkomstkontroll (IAM)
- Välj Rolltilldelningar
- Filtrera efter roll:Ägare.
I avsnittet Anpassad textklassificering och anpassad namngiven entitetsigenkänning väljer du ett befintligt lagringskonto eller väljer Nytt lagringskonto. Observera att dessa värden hjälper dig att komma igång och inte nödvändigtvis de lagringskontovärden som du vill använda i produktionsmiljöer. Undvik svarstider när du skapar projektet genom att ansluta till lagringskonton i samma region som språkresursen.
Lagringskontovärde Rekommenderat värde Lagringskontonamn Valfritt namn Storage account type Standard LRS Kontrollera att meddelandet om ansvarsfull AI är markerat. Välj Granska + skapa längst ned på sidan.
Ladda upp exempeldata till blobcontainer
När du har skapat ett Azure-lagringskonto och anslutit det till språkresursen måste du ladda upp dokumenten från exempeldatauppsättningen till rotkatalogen för containern. Dessa dokument kommer senare att användas för att träna din modell.
Ladda ned exempeldatauppsättningen för klassificeringsprojekt med flera etiketter.
Öppna filen .zip och extrahera mappen som innehåller dokumenten.
Den angivna exempeldatauppsättningen innehåller cirka 200 dokument, som var och en är en sammanfattning för en film. Varje dokument tillhör en eller flera av följande klasser:
- "Mysterium"
- "Drama"
- "Thriller"
- "Komedi"
- "Åtgärd"
I Azure Portal navigerar du till lagringskontot som du skapade och väljer det. Du kan göra detta genom att klicka på Lagringskonton och skriva namnet på lagringskontot i Filtrera efter valfritt fält.
Om resursgruppen inte visas kontrollerar du att filtret Prenumeration är lika med är inställt på Alla.
I ditt lagringskonto väljer du Containrar på den vänstra menyn under Datalagring. På skärmen som visas väljer du + Container. Ge containern namnet example-data och lämna standardnivån offentlig åtkomst.
När containern har skapats väljer du den. Välj sedan knappen Ladda upp för att välja filerna
.txt
och.json
som du laddade ned tidigare.
Skapa ett anpassat textklassificeringsprojekt
När resursen och lagringscontainern har konfigurerats skapar du ett nytt anpassat textklassificeringsprojekt. Ett projekt är ett arbetsområde för att skapa dina anpassade ML-modeller baserat på dina data. Ditt projekt kan bara nås av dig och andra som har åtkomst till den språkresurs som används.
Logga in på Language Studio. Ett fönster visas där du kan välja din prenumeration och språkresurs. Välj språkresursen.
Under avsnittet Klassificera text i Language Studio väljer du Anpassad textklassificering.
Välj Skapa nytt projekt på den översta menyn på projektsidan. När du skapar ett projekt kan du märka data, träna, utvärdera, förbättra och distribuera dina modeller.
När du har klickat på Skapa nytt projekt visas ett fönster där du kan ansluta ditt lagringskonto. Om du redan har anslutit ett lagringskonto visas det anslutna lagringskontot. Om inte väljer du ditt lagringskonto i listrutan som visas och väljer Anslut lagringskonto. Detta anger de roller som krävs för ditt lagringskonto. Det här steget returnerar eventuellt ett fel om du inte har tilldelats som ägare på lagringskontot.
Kommentar
- Du behöver bara göra det här steget en gång för varje ny språkresurs som du använder.
- Den här processen kan inte ångras, om du ansluter ett lagringskonto till din Språkresurs kan du inte koppla från det senare.
- Du kan bara ansluta språkresursen till ett lagringskonto.
Välj projekttyp. Du kan antingen skapa ett klassificeringsprojekt för flera etiketter där varje dokument kan tillhöra en eller flera klasser eller ett klassificeringsprojekt med en etikett där varje dokument bara kan tillhöra en klass. Den valda typen kan inte ändras senare. Läs mer om projekttyper
Ange projektinformationen, inklusive ett namn, en beskrivning och språket för dokumenten i projektet. Om du använder exempeldatauppsättningen väljer du Engelska. Du kommer inte att kunna ändra namnet på projektet senare. Välj Nästa.
Dricks
Datamängden behöver inte vara helt på samma språk. Du kan ha flera dokument, var och en med olika språk som stöds. Om datamängden innehåller dokument med olika språk eller om du förväntar dig text från olika språk under körningen väljer du alternativet Aktivera flerspråkig datauppsättning när du anger grundläggande information för projektet. Det här alternativet kan aktiveras senare från sidan Projektinställningar .
Välj den container där du har laddat upp datamängden.
Kommentar
Om du redan har etiketterat dina data kontrollerar du att de följer formatet som stöds och väljer Ja, mina dokument är redan märkta och jag har formaterat JSON-etikettfilen och väljer etikettfilen i listrutan nedan.
Om du använder någon av exempeldatauppsättningarna använder du den inkluderade
webOfScience_labelsFile
filen ellermovieLabels
json-filen. Välj sedan Nästa.Granska de data som du har angett och välj Skapa projekt.
Träna din modell
När du har skapat ett projekt börjar du vanligtvis märka de dokument som du har i containern som är ansluten till projektet. För den här snabbstarten har du importerat en exempeletiketterad datauppsättning och initierat projektet med JSON-exempeletikettfilen.
Så här börjar du träna din modell inifrån Language Studio:
Välj Träningsjobb på menyn till vänster.
Välj Starta ett träningsjobb på den översta menyn.
Välj Träna en ny modell och skriv in modellnamnet i textrutan. Du kan också skriva över en befintlig modell genom att välja det här alternativet och välja den modell som du vill skriva över från den nedrullningsbara menyn. Att skriva över en tränad modell är oåterkalleligt, men det påverkar inte dina distribuerade modeller förrän du distribuerar den nya modellen.
Välj datadelningsmetod. Du kan välja Att automatiskt dela upp testuppsättningen från träningsdata där systemet delar upp dina märkta data mellan tränings- och testuppsättningarna, enligt de angivna procentandelarna. Eller så kan du använda en manuell delning av tränings- och testdata. Det här alternativet är bara aktiverat om du har lagt till dokument i testuppsättningen under dataetiketteringen. Mer information om datadelning finns i Träna en modell .
Välj knappen Träna.
Om du väljer träningsjobbets ID i listan visas en sidoruta där du kan kontrollera träningsförloppet, jobbstatusen och annan information för det här jobbet.
Kommentar
- Endast slutförda träningsjobb genererar modeller.
- Tiden det tar att träna modellen kan ta mellan några minuter och flera timmar baserat på storleken på dina märkta data.
- Du kan bara köra ett träningsjobb i taget. Du kan inte starta ett annat träningsjobb i samma projekt förrän det pågående jobbet har slutförts.
Distribuera din modell
Vanligtvis efter att ha tränat en modell skulle du granska dess utvärderingsinformation och göra förbättringar om det behövs. I den här snabbstarten distribuerar du bara din modell och gör den tillgänglig för dig att prova i Language Studio, eller så kan du anropa förutsägelse-API:et.
Så här distribuerar du din modell inifrån Language Studio:
Välj Distribuera en modell från menyn till vänster.
Välj Lägg till distribution för att starta ett nytt distributionsjobb.
Välj Skapa ny distribution för att skapa en ny distribution och tilldela en tränad modell i listrutan nedan. Du kan också skriva över en befintlig distribution genom att välja det här alternativet och välja den tränade modell som du vill tilldela till den i listrutan nedan.
Kommentar
Om du skriver över en befintlig distribution krävs inte ändringar i ditt Förutsägelse-API-anrop , men de resultat du får baseras på den nyligen tilldelade modellen.
välj Distribuera för att starta distributionsjobbet.
När distributionen har slutförts visas ett förfallodatum bredvid den. Distributionen upphör att gälla när den distribuerade modellen inte kommer att användas för förutsägelse, vilket vanligtvis sker tolv månader efter att en träningskonfiguration upphör att gälla.
Testa din modell
När din modell har distribuerats kan du börja använda den för att klassificera din text via Förutsägelse-API. I den här snabbstarten använder du Language Studio för att skicka den anpassade textklassificeringsuppgiften och visualisera resultatet. I exempeldatauppsättningen som du laddade ned tidigare hittar du några testdokument som du kan använda i det här steget.
Så här testar du dina distribuerade modeller i Language Studio:
Välj Testa distributioner på menyn till vänster på skärmen.
Välj den distribution som du vill testa. Du kan bara testa modeller som har tilldelats distributioner.
För flerspråkiga projekt väljer du språket för den text som du testar med hjälp av listrutan språk.
Välj den distribution som du vill köra frågor mot/testa i listrutan.
Ange den text som du vill skicka i begäran eller ladda upp ett
.txt
dokument som ska användas. Om du använder en av exempeldatauppsättningarna kan du använda en av de inkluderade .txt-filerna.Välj Kör testet på den översta menyn.
På fliken Resultat kan du se de förutsagda klasserna för din text. Du kan också visa JSON-svaret under fliken JSON . Följande exempel är för ett klassificeringsprojekt med en etikett. Ett klassificeringsprojekt med flera etiketter kan returnera mer än en klass i resultatet.
Rensa projekt
När du inte längre behöver projektet kan du ta bort projektet med Hjälp av Language Studio. Välj Anpassad textklassificering överst och välj sedan det projekt som du vill ta bort. Välj Ta bort på den översta menyn för att ta bort projektet.
Förutsättningar
- Azure-prenumeration – Skapa en kostnadsfritt.
Skapa en ny Azure AI Language-resurs och Ett Azure-lagringskonto
Innan du kan använda anpassad textklassificering måste du skapa en Azure AI Language-resurs som ger dig de autentiseringsuppgifter som du behöver för att skapa ett projekt och börja träna en modell. Du behöver också ett Azure-lagringskonto där du kan ladda upp din datauppsättning som ska användas för att skapa din modell.
Viktigt!
För att komma igång snabbt rekommenderar vi att du skapar en ny Azure AI Language-resurs med hjälp av stegen i den här artikeln, som gör att du kan skapa språkresursen och skapa och/eller ansluta ett lagringskonto samtidigt, vilket är enklare än att göra det senare.
Om du har en befintlig resurs som du vill använda måste du ansluta den till lagringskontot.
Skapa en ny resurs från Azure Portal
Gå till Azure Portal för att skapa en ny Azure AI Language-resurs.
I fönstret som visas väljer du Anpassad textklassificering och anpassad namngiven entitetsigenkänning från de anpassade funktionerna. Välj Fortsätt för att skapa resursen längst ned på skärmen.
Skapa en språkresurs med följande information.
Name Obligatoriskt värde Prenumeration Din Azure-prenumeration. Resursgrupp En resursgrupp som ska innehålla din resurs. Du kan använda en befintlig eller skapa en ny. Region En av de regioner som stöds. Till exempel "USA, västra 2". Name Ett namn på resursen. Prisnivå En av de prisnivåer som stöds. Du kan använda nivån Kostnadsfri (F0) för att prova tjänsten. Om du får ett meddelande om att ditt inloggningskonto inte är ägare till det valda lagringskontots resursgrupp måste ditt konto ha en ägarroll tilldelad till resursgruppen innan du kan skapa en Språkresurs. Kontakta din Azure-prenumerationsägare om du vill ha hjälp.
Du kan fastställa din Azure-prenumerationsägare genom att söka i resursgruppen och följa länken till den associerade prenumerationen. Sedan:
- Välj fliken Åtkomstkontroll (IAM)
- Välj Rolltilldelningar
- Filtrera efter roll:Ägare.
I avsnittet Anpassad textklassificering och anpassad namngiven entitetsigenkänning väljer du ett befintligt lagringskonto eller väljer Nytt lagringskonto. Observera att dessa värden hjälper dig att komma igång och inte nödvändigtvis de lagringskontovärden som du vill använda i produktionsmiljöer. Undvik svarstider när du skapar projektet genom att ansluta till lagringskonton i samma region som språkresursen.
Lagringskontovärde Rekommenderat värde Lagringskontonamn Valfritt namn Storage account type Standard LRS Kontrollera att meddelandet om ansvarsfull AI är markerat. Välj Granska + skapa längst ned på sidan.
Ladda upp exempeldata till blobcontainer
När du har skapat ett Azure-lagringskonto och anslutit det till språkresursen måste du ladda upp dokumenten från exempeldatauppsättningen till rotkatalogen för containern. Dessa dokument kommer senare att användas för att träna din modell.
Ladda ned exempeldatauppsättningen för klassificeringsprojekt med flera etiketter.
Öppna filen .zip och extrahera mappen som innehåller dokumenten.
Den angivna exempeldatauppsättningen innehåller cirka 200 dokument, som var och en är en sammanfattning för en film. Varje dokument tillhör en eller flera av följande klasser:
- "Mysterium"
- "Drama"
- "Thriller"
- "Komedi"
- "Åtgärd"
I Azure Portal navigerar du till lagringskontot som du skapade och väljer det. Du kan göra detta genom att klicka på Lagringskonton och skriva namnet på lagringskontot i Filtrera efter valfritt fält.
Om resursgruppen inte visas kontrollerar du att filtret Prenumeration är lika med är inställt på Alla.
I ditt lagringskonto väljer du Containrar på den vänstra menyn under Datalagring. På skärmen som visas väljer du + Container. Ge containern namnet example-data och lämna standardnivån offentlig åtkomst.
När containern har skapats väljer du den. Välj sedan knappen Ladda upp för att välja filerna
.txt
och.json
som du laddade ned tidigare.
Hämta dina resursnycklar och slutpunkt
Gå till resursöversiktssidan i Azure Portal
På menyn till vänster väljer du Nycklar och Slutpunkt. Du använder slutpunkten och nyckeln för API-begäranden
Skapa ett anpassat textklassificeringsprojekt
När resursen och lagringscontainern har konfigurerats skapar du ett nytt anpassat textklassificeringsprojekt. Ett projekt är ett arbetsområde för att skapa dina anpassade ML-modeller baserat på dina data. Ditt projekt kan bara nås av dig och andra som har åtkomst till den språkresurs som används.
Projektjobb för utlösare för import
Skicka en POST-begäran med hjälp av följande URL, rubriker och JSON-brödtext för att importera din etikettfil. Kontrollera att din etikettfil följer det godkända formatet.
Om det redan finns ett projekt med samma namn ersätts data för projektet.
{Endpoint}/language/authoring/analyze-text/projects/{projectName}/:import?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 här är för den senaste versionen som släppts. Läs mer om andra tillgängliga API-versioner | 2022-05-01 |
Sidhuvuden
Använd följande rubrik för att autentisera din begäran.
Tangent | Värde |
---|---|
Ocp-Apim-Subscription-Key |
Nyckeln till resursen. Används för att autentisera dina API-begäranden. |
Brödtext
Använd följande JSON i din begäran. Ersätt platshållarvärdena nedan med dina egna värden.
{
"projectFileVersion": "{API-VERSION}",
"stringIndexType": "Utf16CodeUnit",
"metadata": {
"projectName": "{PROJECT-NAME}",
"storageInputContainerName": "{CONTAINER-NAME}",
"projectKind": "customMultiLabelClassification",
"description": "Trying out custom multi label text classification",
"language": "{LANGUAGE-CODE}",
"multilingual": true,
"settings": {}
},
"assets": {
"projectKind": "customMultiLabelClassification",
"classes": [
{
"category": "Class1"
},
{
"category": "Class2"
}
],
"documents": [
{
"location": "{DOCUMENT-NAME}",
"language": "{LANGUAGE-CODE}",
"dataset": "{DATASET}",
"classes": [
{
"category": "Class1"
},
{
"category": "Class2"
}
]
},
{
"location": "{DOCUMENT-NAME}",
"language": "{LANGUAGE-CODE}",
"dataset": "{DATASET}",
"classes": [
{
"category": "Class2"
}
]
}
]
}
}
Nyckel | Platshållare | Värde | Exempel |
---|---|---|---|
api-version | {API-VERSION} |
Den version av API:et som du anropar. Den version som används här måste vara samma API-version i URL:en. Läs mer om andra tillgängliga API-versioner | 2022-05-01 |
projektnamn | {PROJECT-NAME} |
Namnet på projektet. Det här värdet är skiftlägeskänsligt. | myProject |
projectKind | customMultiLabelClassification |
Din projekttyp. | customMultiLabelClassification |
språk | {LANGUAGE-CODE} |
En sträng som anger språkkoden för de dokument som används i projektet. Om projektet är ett flerspråkigt projekt väljer du språkkoden för de flesta dokumenten. Mer information om flerspråkig support finns i språkstöd . | en-us |
flerspråkig | true |
Ett booleskt värde som gör att du kan ha dokument på flera språk i datauppsättningen och när din modell distribueras kan du fråga modellen på alla språk som stöds (inte nödvändigtvis i dina träningsdokument. Mer information om flerspråkig support finns i språkstöd . | true |
storageInputContainerName | {CONTAINER-NAME} |
Namnet på din Azure Storage-container där du har laddat upp dina dokument. | myContainer |
klasser | [] | Matris som innehåller alla klasser som du har i projektet. Det här är de klasser som du vill klassificera dina dokument i. | [] |
documents | [] | Matris som innehåller alla dokument i projektet och vilka klasser som är märkta för det här dokumentet. | [] |
plats | {DOCUMENT-NAME} |
Platsen för dokumenten i lagringscontainern. Eftersom alla dokument finns i roten i containern bör detta vara dokumentnamnet. | doc1.txt |
datauppsättning | {DATASET} |
Testuppsättningen som det här dokumentet ska gå till när det delas upp före träningen. Mer information om datadelning finns i Träna en modell . Möjliga värden för det här fältet är Train och Test . |
Train |
När du har skickat din API-begäran får du ett 202
svar som anger att jobbet har skickats korrekt. Extrahera värdet i svarshuvudena operation-location
. Den formateras så här:
{ENDPOINT}/language/authoring/analyze-text/projects/{PROJECT-NAME}/import/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 använder den här URL:en för att hämta status för importjobbet.
Möjliga felscenarier för den här begäran:
- Den valda resursen har inte rätt behörigheter för lagringskontot.
- Den
storageInputContainerName
angivna finns inte. - Ogiltig språkkod används, eller om språkkodtypen inte är sträng.
multilingual
värdet är en sträng och inte ett booleskt värde.
Hämta status för importjobb
Använd följande GET-begäran för att hämta statusen för din import av projektet. Ersätt platshållarvärdena nedan med dina egna värden.
Begärans-URL
{ENDPOINT}/language/authoring/analyze-text/projects/{PROJECT-NAME}/import/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 här är för den senaste versionen som släppts. Läs mer om andra tillgängliga API-versioner | 2022-05-01 |
Sidhuvuden
Använd följande rubrik för att autentisera din begäran.
Tangent | Värde |
---|---|
Ocp-Apim-Subscription-Key |
Nyckeln till resursen. Används för att autentisera dina API-begäranden. |
Träna din modell
När du har skapat ett projekt börjar du vanligtvis tagga de dokument som du har i containern som är ansluten till projektet. I den här snabbstarten har du importerat en exempeltaggad datauppsättning och initierat projektet med JSON-exempeltaggarfilen.
Börja träna din modell
När projektet har importerats kan du börja träna din modell.
Skicka en POST-begäran med hjälp av följande URL, rubriker och JSON-brödtext för att skicka ett träningsjobb. Ersätt platshållarvärdena nedan 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 här är för den senaste versionen som släppts. Läs mer om andra tillgängliga API-versioner | 2022-05-01 |
Sidhuvuden
Använd följande rubrik för att autentisera din begäran.
Tangent | 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 kommer att ges när {MODEL-NAME}
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} |
Modellnamnet som ska tilldelas till din modell när den har tränats. | myModel |
trainingConfigVersion | {CONFIG-VERSION} |
Det här är den modellversion som ska användas för att träna modellen. | 2022-05-01 |
evaluationOptions | 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 i Träna en modell . |
percentage |
trainingSplitPercentage | 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 |
Kommentar
Och trainingSplitPercentage
testingSplitPercentage
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. Extrahera värdet i svarshuvudena location
. Den formateras 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
Träningen kan ta någon gång mellan 10 och 30 minuter. Du kan använda följande begäran för att fortsätta avsöka statusen för träningsjobbet 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 nedan 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 här är för den senaste versionen som släppts. Mer information om andra tillgängliga API-versioner finns i modelllivscykeln . | 2022-05-01 |
Sidhuvuden
Använd följande rubrik för att autentisera din begäran.
Tangent | Värde |
---|---|
Ocp-Apim-Subscription-Key |
Nyckeln till resursen. Används för att autentisera dina API-begäranden. |
Svarstext
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"
}
Distribuera din modell
När du har tränat en modell kan du granska dess utvärderingsinformation och göra förbättringar om det behövs. I den här snabbstarten distribuerar du bara din modell och gör den tillgänglig för dig att prova i Language Studio, eller så kan du anropa förutsägelse-API:et.
Skicka distributionsjobb
Skicka en PUT-begäran med hjälp av följande URL, rubriker och JSON-brödtext för att skicka ett distributionsjobb. Ersätt platshållarvärdena nedan med dina egna värden.
{Endpoint}/language/authoring/analyze-text/projects/{projectName}/deployments/{deploymentName}?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 |
{DEPLOYMENT-NAME} |
Namnet på distributionen. Det här värdet är skiftlägeskänsligt. | staging |
{API-VERSION} |
Den version av API:et som du anropar. Värdet som refereras här är för den senaste versionen som släppts. Läs mer om andra tillgängliga API-versioner | 2022-05-01 |
Sidhuvuden
Använd följande rubrik för att autentisera din begäran.
Tangent | 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 brödtexten i din begäran. Använd namnet på den modell som du tilldelar distributionen.
{
"trainedModelLabel": "{MODEL-NAME}"
}
Nyckel | Platshållare | Värde | Exempel |
---|---|---|---|
trainedModelLabel | {MODEL-NAME} |
Modellnamnet som ska tilldelas distributionen. Du kan bara tilldela modeller som tränats. Det här värdet är skiftlägeskänsligt. | myModel |
När du har skickat din API-begäran får du ett 202
svar som anger att jobbet har skickats korrekt. Extrahera värdet i svarshuvudena operation-location
. Den formateras så här:
{ENDPOINT}/language/authoring/analyze-text/projects/{PROJECT-NAME}/deployments/{DEPLOYMENT-NAME}/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 distributionsstatusen.
Hämta status för distributionsjobb
Använd följande GET-begäran för att fråga efter status för distributionsjobbet. Du kan använda den URL som du fick från föregående steg eller ersätta platshållarvärdena nedan med dina egna värden.
{ENDPOINT}/language/authoring/analyze-text/projects/{PROJECT-NAME}/deployments/{DEPLOYMENT-NAME}/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 |
{DEPLOYMENT-NAME} |
Namnet på distributionen. Det här värdet är skiftlägeskänsligt. | staging |
{JOB-ID} |
ID:t för att hitta modellens träningsstatus. Det här är 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 här är för den senaste versionen som släppts. Läs mer om andra tillgängliga API-versioner | 2022-05-01 |
Sidhuvuden
Använd följande rubrik för att autentisera din begäran.
Tangent | Värde |
---|---|
Ocp-Apim-Subscription-Key |
Nyckeln till resursen. Används för att autentisera dina API-begäranden. |
Svarstext
När du har skickat begäran får du följande svar. Fortsätt att avsöka den här slutpunkten tills statusparametern ändras till "lyckades". Du bör få en 200
kod som anger att begäran har slutförts.
{
"jobId":"{JOB-ID}",
"createdDateTime":"{CREATED-TIME}",
"lastUpdatedDateTime":"{UPDATED-TIME}",
"expirationDateTime":"{EXPIRATION-TIME}",
"status":"running"
}
Klassificera text
När din modell har distribuerats kan du börja använda den för att klassificera din text via Förutsägelse-API. I exempeldatauppsättningen som du laddade ned tidigare hittar du några testdokument som du kan använda i det här steget.
Skicka en anpassad textklassificeringsuppgift
Använd den här POST-begäran för att starta en textklassificeringsuppgift.
{ENDPOINT}/language/analyze-text/jobs?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 |
{API-VERSION} |
Den version av API:et som du anropar. Värdet som refereras här är för den senaste versionen som släppts. Mer information om andra tillgängliga API-versioner finns i Modelllivscykel . | 2022-05-01 |
Sidhuvuden
Tangent | Värde |
---|---|
Ocp-Apim-Subscription-Key | Din nyckel som ger åtkomst till det här API:et. |
Brödtext
{
"displayName": "Classifying documents",
"analysisInput": {
"documents": [
{
"id": "1",
"language": "{LANGUAGE-CODE}",
"text": "Text1"
},
{
"id": "2",
"language": "{LANGUAGE-CODE}",
"text": "Text2"
}
]
},
"tasks": [
{
"kind": "CustomMultiLabelClassification",
"taskName": "Multi Label Classification",
"parameters": {
"projectName": "{PROJECT-NAME}",
"deploymentName": "{DEPLOYMENT-NAME}"
}
}
]
}
Nyckel | Platshållare | Värde | Exempel |
---|---|---|---|
displayName |
{JOB-NAME} |
Ditt jobbnamn. | MyJobName |
documents |
[{},{}] | Lista över dokument som aktiviteter ska köras på. | [{},{}] |
id |
{DOC-ID} |
Dokumentnamn eller ID. | doc1 |
language |
{LANGUAGE-CODE} |
En sträng som anger språkkoden för dokumentet. Om den här nyckeln inte anges förutsätter tjänsten standardspråket för projektet som valdes när projektet skapades. Se språkstöd för en lista över språkkoder som stöds. | en-us |
text |
{DOC-TEXT} |
Dokumentuppgift som aktiviteterna ska köras på. | Lorem ipsum dolor sit amet |
tasks |
Lista över uppgifter som vi vill utföra. | [] |
|
taskName |
CustomMultiLabelClassification | Uppgiftsnamnet | CustomMultiLabelClassification |
parameters |
Lista över parametrar som ska skickas till uppgiften. | ||
project-name |
{PROJECT-NAME} |
Namnet på projektet. Det här värdet är skiftlägeskänsligt. | myProject |
deployment-name |
{DEPLOYMENT-NAME} |
Namnet på distributionen. Det här värdet är skiftlägeskänsligt. | prod |
Response
Du får ett 202-svar som anger att det har lyckats. I svarshuvudena extraherar du operation-location
.
operation-location
är formaterad så här:
{ENDPOINT}/language/analyze-text/jobs/{JOB-ID}?api-version={API-VERSION}
Du kan använda den här URL:en för att fråga efter uppgiftens slutförandestatus och få resultatet när aktiviteten har slutförts.
Hämta aktivitetsresultat
Använd följande GET-begäran för att fråga efter status/resultat för textklassificeringsaktiviteten.
{ENDPOINT}/language/analyze-text/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 |
{API-VERSION} |
Den version av API:et som du anropar. Värdet som refereras här är för den senaste versionen av modellen . | 2022-05-01 |
Sidhuvuden
Tangent | Värde |
---|---|
Ocp-Apim-Subscription-Key | Din nyckel som ger åtkomst till det här API:et. |
Själva svaret
Svaret är ett JSON-dokument med följande parametrar.
{
"createdDateTime": "2021-05-19T14:32:25.578Z",
"displayName": "MyJobName",
"expirationDateTime": "2021-05-19T14:32:25.578Z",
"jobId": "xxxx-xxxxxx-xxxxx-xxxx",
"lastUpdateDateTime": "2021-05-19T14:32:25.578Z",
"status": "succeeded",
"tasks": {
"completed": 1,
"failed": 0,
"inProgress": 0,
"total": 1,
"items": [
{
"kind": "customMultiClassificationTasks",
"taskName": "Classify documents",
"lastUpdateDateTime": "2020-10-01T15:01:03Z",
"status": "succeeded",
"results": {
"documents": [
{
"id": "{DOC-ID}",
"classes": [
{
"category": "Class_1",
"confidenceScore": 0.0551877357
}
],
"warnings": []
}
],
"errors": [],
"modelVersion": "2020-04-01"
}
}
]
}
}
Rensa resurser
När du inte längre behöver projektet kan du ta bort det med följande DELETE-begäran . Ersätt platshållarvärdena med dina egna värden.
{Endpoint}/language/authoring/analyze-text/projects/{projectName}?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 här är för den senaste versionen som släppts. Läs mer om andra tillgängliga API-versioner | 2022-05-01 |
Sidhuvuden
Använd följande rubrik för att autentisera din begäran.
Tangent | 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 som anger att projektet har slutförts, vilket innebär att projektet har tagits bort. Ett lyckat anrop resulterar i ett Operation-Location
huvud som används för att kontrollera jobbets status.
Nästa steg
När du har skapat en anpassad textklassificeringsmodell kan du:
När du börjar skapa egna anpassade textklassificeringsprojekt använder du instruktionsartiklarna för att lära dig mer om att utveckla din modell i detalj: