Förbereda data och definiera ett schema för anpassad NER
För att kunna skapa en anpassad NER-modell behöver du kvalitetsdata för att träna den. Den här artikeln beskriver hur du bör välja och förbereda dina data, tillsammans med att definiera ett schema. Att definiera schemat är det första steget i livscykeln för projektutveckling och definierar de entitetstyper/kategorier som du behöver din modell för att extrahera från texten vid körning.
Schemadesign
Schemat definierar de entitetstyper/kategorier som du behöver din modell för att extrahera från text vid körning.
Granska dokument i datamängden för att känna till deras format och struktur.
Identifiera de entiteter som du vill extrahera från data.
Om du till exempel extraherar entiteter från supportmeddelanden kan du behöva extrahera "Kundnamn", "Produktnamn", "Begärandedatum" och "Kontaktinformation".
Undvik tvetydigheter för entitetstyper.
Tvetydighet inträffar när entitetstyper som du väljer liknar varandra. Ju mer tvetydigt schemat är, desto mer märkta data måste du skilja mellan olika entitetstyper.
Om du till exempel extraherar data från ett juridiskt kontrakt för att extrahera "Namn på första part" och "Namn på andra part" måste du lägga till fler exempel för att övervinna tvetydighet eftersom namnen på båda parter ser liknande ut. Undvik tvetydighet eftersom det sparar tid, ansträngning och ger bättre resultat.
Undvik komplexa entiteter. Komplexa entiteter kan vara svåra att välja ut exakt från text, överväg att dela upp dem i flera entiteter.
Det skulle till exempel vara svårt att extrahera "Adress" om den inte delas upp till mindre entiteter. Det finns så många varianter av hur adresser visas, det skulle krävas ett stort antal etiketterade entiteter för att lära modellen att extrahera en adress som helhet utan att dela upp den. Men om du ersätter "Address" med "Street Name", "PO Box", "City", "State" och "Zip" kräver modellen färre etiketter per entitet.
Dataval
Kvaliteten på data som du tränar din modell med påverkar modellens prestanda avsevärt.
Använd verkliga data som återspeglar domänens problemutrymme för att effektivt träna din modell. Du kan använda syntetiska data för att påskynda den inledande modellträningsprocessen, men det kommer sannolikt att skilja sig från dina verkliga data och göra din modell mindre effektiv när den används.
Balansera din datadistribution så mycket som möjligt utan att avvika från fördelningen i verkligheten. Om du till exempel tränar din modell för att extrahera entiteter från juridiska dokument som kan komma i många olika format och språk, bör du ge exempel som illustrerar mångfalden som du förväntar dig att se i verkligheten.
Använd olika data när det är möjligt för att undvika överanpassning av din modell. Mindre mångfald i träningsdata kan leda till att din modell lär sig falska korrelationer som kanske inte finns i verkliga data.
Undvik dubbletter av dokument i dina data. Duplicerade data har en negativ effekt på träningsprocessen, modellmått och modellprestanda.
Tänk på var dina data kommer ifrån. Om du samlar in data från en person, avdelning eller en del av ditt scenario saknar du förmodligen mångfald som kan vara viktig för din modell att lära sig om.
Kommentar
Om dokumenten finns på flera språk väljer du alternativet aktivera flerspråkiga under projektskapandet och ställer in språkalternativet på språket för de flesta av dina dokument.
Dataförberedelse
Som en förutsättning för att skapa ett projekt måste dina träningsdata laddas upp till en blobcontainer i ditt lagringskonto. Du kan skapa och ladda upp träningsdokument från Azure direkt eller via verktyget Azure Storage Explorer. Med verktyget Azure Storage Explorer kan du ladda upp mer data snabbt.
Du kan bara använda .txt
dokument. Om dina data är i annat format kan du använda KOMMANDOT CLUtils parsa för att ändra dokumentformatet.
Du kan ladda upp en kommenterad datauppsättning, eller så kan du ladda upp en ej kommenterad och märka dina data i Language Studio.
Testuppsättning
När du definierar testuppsättningen måste du inkludera exempeldokument som inte finns i träningsuppsättningen. Att definiera testuppsättningen är ett viktigt steg för att beräkna modellens prestanda. Kontrollera också att testuppsättningen innehåller dokument som representerar alla entiteter som används i projektet.
Nästa steg
Om du inte redan har gjort det skapar du ett anpassat NER-projekt. Om det är första gången du använder anpassad NER kan du följa snabbstarten för att skapa ett exempelprojekt. Du kan också se artikeln instruktioner för mer information om vad du behöver för att skapa ett projekt.