Jak przygotować dane i zdefiniować schemat dla niestandardowego modułu NER

Aby utworzyć niestandardowy model NER, będziesz potrzebować danych o jakości do wytrenowania. W tym artykule opisano sposób wybierania i przygotowywania danych oraz definiowania schematu. Definiowanie schematu jest pierwszym krokiem w cyklu projektowania projektu i definiuje typy/kategorie jednostek potrzebne do wyodrębnienia z tekstu w czasie wykonywania.

Projekt schematu

Schemat definiuje typy/kategorie jednostek, które są potrzebne do wyodrębniania modelu z tekstu w czasie wykonywania.

  • Przejrzyj dokumenty w zestawie danych, aby zapoznać się z ich formatem i strukturą.

  • Zidentyfikuj jednostki , które chcesz wyodrębnić z danych.

    Jeśli na przykład wyodrębnisz jednostki z wiadomości e-mail pomocy technicznej, może być konieczne wyodrębnienie "Nazwa klienta", "Nazwa produktu", "Data żądania" i "Informacje kontaktowe".

  • Unikaj niejednoznaczności typów jednostek.

    Niejednoznaczność występuje, gdy wybrane typy jednostek są podobne do siebie. Tym bardziej niejednoznaczne schematu są bardziej oznaczone dane, które należy rozróżnić między różnymi typami jednostek.

    Jeśli na przykład wyodrębniasz dane z umowy prawnej, aby wyodrębnić nazwę pierwszej strony i nazwę drugiej strony, musisz dodać więcej przykładów, aby przezwyciężyć niejednoznaczność, ponieważ nazwy obu stron wyglądają podobnie. Unikaj niejednoznaczności, ponieważ oszczędza czas, wysiłek i daje lepsze wyniki.

  • Unikaj złożonych jednostek. Złożone jednostki mogą być trudne do wybrania dokładnie z tekstu, rozważ podzielenie ich na wiele jednostek.

    Na przykład wyodrębnianie "Adresu" byłoby trudne, jeśli nie zostanie podzielone na mniejsze jednostki. Istnieje tak wiele odmian sposobu wyświetlania adresów, ponieważ zajęłoby to dużą liczbę oznaczonych etykietami jednostek, aby nauczyć model wyodrębniania adresu jako całości bez jego podziału. Jeśli jednak zastąpisz ciąg "Address" ciągiem "Street Name", "PO Box", "City", "State" i "Zip", model będzie wymagał mniejszej liczby etykiet na jednostkę.

Wybór danych

Jakość danych, z których trenujesz model, znacznie wpływa na wydajność modelu.

  • Użyj danych rzeczywistych, które odzwierciedlają przestrzeń problemową domeny, aby skutecznie trenować model. Możesz użyć danych syntetycznych, aby przyspieszyć początkowy proces trenowania modelu, ale prawdopodobnie będzie się różnić od danych rzeczywistych i sprawić, że model będzie mniej skuteczny w przypadku użycia.

  • Zrównoważ rozkład danych tak bardzo, jak to możliwe, bez odejmowania dystrybucji w rzeczywistym życiu. Jeśli na przykład trenujesz model w celu wyodrębnienia jednostek z dokumentów prawnych, które mogą znajdować się w wielu różnych formatach i językach, należy podać przykłady, które stanowią przykład różnorodności, jak można oczekiwać w rzeczywistym życiu.

  • Używaj różnorodnych danych, gdy jest to możliwe, aby uniknąć nadmiernego dopasowania modelu. Mniejsza różnorodność danych szkoleniowych może prowadzić do fałszywych korelacji uczenia modelu, które mogą nie istnieć w rzeczywistych danych.

  • Unikaj duplikowania dokumentów w danych. Zduplikowane dane mają negatywny wpływ na proces trenowania, metryki modelu i wydajność modelu.

  • Rozważ miejsce, z którego pochodzą dane. Jeśli zbierasz dane z jednej osoby, działu lub części scenariusza, prawdopodobnie brakuje różnorodności, która może być ważna dla modelu, aby dowiedzieć się więcej.

Uwaga

Jeśli dokumenty znajdują się w wielu językach, wybierz opcję włącz wielojęzyczną podczas tworzenia projektu i ustaw opcję języka na język większości dokumentów.

Przygotowywanie danych

W ramach wymagań wstępnych dotyczących tworzenia projektu dane szkoleniowe muszą zostać przekazane do kontenera obiektów blob na koncie magazynu. Dokumenty szkoleniowe można tworzyć i przekazywać bezpośrednio z platformy Azure lub za pomocą narzędzia Eksplorator usługi Azure Storage. Użycie narzędzia Eksplorator usługi Azure Storage umożliwia szybkie przekazywanie większej ilości danych.

Można używać .txt tylko dokumentów. Jeśli dane są w innym formacie, możesz użyć polecenia ANALIZY CLUtils , aby zmienić format dokumentu.

Możesz przekazać adnotację do zestawu danych lub przekazać nieoznaczony zestaw danych i oznaczyć je etykietą w programie Language Studio.

Zestaw testów

Podczas definiowania zestawu testów należy uwzględnić przykładowe dokumenty, które nie są obecne w zestawie treningowym. Definiowanie zestawu testów jest ważnym krokiem do obliczenia wydajności modelu. Upewnij się również, że zestaw testów zawiera dokumenty reprezentujące wszystkie jednostki używane w projekcie.

Następne kroki

Jeśli jeszcze tego nie zrobiono, utwórz niestandardowy projekt NER. Jeśli używasz niestandardowego modułu NER po raz pierwszy, rozważ skorzystanie z przewodnika Szybki start , aby utworzyć przykładowy projekt. Aby uzyskać więcej informacji na temat tego, co należy utworzyć projekt, możesz również zapoznać się z artykułem z instrukcjami.