Udostępnij za pośrednictwem


Metryki oceny dla niestandardowych modeli rozpoznawania nazwanych jednostek

Zestaw danych jest podzielony na dwie części: zestaw do trenowania i zestaw do testowania. Zestaw trenowania służy do trenowania modelu, podczas gdy zestaw testów jest używany jako test dla modelu po trenowaniu w celu obliczenia wydajności i oceny modelu. Zestaw testów nie jest wprowadzany do modelu przez proces trenowania, aby upewnić się, że model jest testowany na nowych danych.

Ocena modelu jest wyzwalana automatycznie po pomyślnym zakończeniu trenowania. Proces oceny rozpoczyna się od użycia wytrenowanego modelu do przewidywania jednostek zdefiniowanych przez użytkownika dla dokumentów w zestawie testowym i porównuje je z podanymi tagami danych (które ustanawia punkt odniesienia prawdy). Wyniki są zwracane, aby można było przejrzeć wydajność modelu. Do oceny niestandardowe NER używa następujących metryk:

  • Precyzja: mierzy dokładność/dokładność modelu. Jest to stosunek poprawnie zidentyfikowanych wyników dodatnich (prawdziwie dodatnich) i wszystkich zidentyfikowanych wyników dodatnich. Metryka precyzji pokazuje, ile przewidywanych jednostek jest poprawnie oznaczonych etykietami.

    Precision = #True_Positive / (#True_Positive + #False_Positive)

  • Przypomnienie: Mierzy zdolność modelu do przewidywania rzeczywistych klas dodatnich. Jest to stosunek przewidywanych wyników prawdziwie dodatnich do tego, co zostało rzeczywiście oznaczone. Metryka kompletności pokazuje, ile przewidywanych jednostek jest poprawnych.

    Recall = #True_Positive / (#True_Positive + #False_Negatives)

  • Wynik F1: Wynik F1 jest funkcją precyzji i kompletności. Jest to konieczne, gdy szukasz równowagi między precyzją a kompletnością.

    F1 Score = 2 * Precision * Recall / (Precision + Recall)

Uwaga

Precyzja, kompletność i wynik F1 są obliczane osobno dla każdej jednostki (ocena na poziomie jednostki) i dla modelu zbiorczo (ocena na poziomie modelu).

Metryki oceny na poziomie modelu i na poziomie jednostki

Precyzja, kompletność i wynik F1 są obliczane osobno dla każdej jednostki (ocena na poziomie jednostki) i dla modelu zbiorczo (ocena na poziomie modelu).

Definicje precyzji, kompletności i oceny są takie same zarówno w przypadku ocen na poziomie jednostki, jak i na poziomie modelu. Jednak liczby wyników prawdziwie dodatnich, wyników fałszywie dodatnich i wyników fałszywie ujemnych mogą się różnić. Rozważmy na przykład następujący tekst.

Przykład

Pierwszą stroną tego kontraktu jest John Smith, mieszkaniec 5678 Main Rd., Miasto Frederick, stan Nebraska. Druga strona to Forrest Ray, mieszkaniec 123-345 Integer Rd., Miasto Corona, stan Nowy Meksyk. Istnieje również mieszkaniec Fannie Thomas 7890 River Road, miasto Colorado Springs, stan Kolorado.

Model wyodrębniania jednostek z tego tekstu może mieć następujące przewidywania:

Encja Przewidywane jako Typ rzeczywisty
John Smith Osoba Osoba
Fryderyk Osoba City
Forrest City Osoba
Fannie Thomas Osoba Osoba
Colorado Springs Miejscowość Miejscowość

Ocena na poziomie jednostki dla jednostki osoby

Model będzie miał następującą ocenę na poziomie jednostki dla jednostki osoby :

Klucz Count Wyjaśnienie
Wynik prawdziwie dodatni 2 John Smith i Fannie Thomas zostali prawidłowo przewidowani jako osoba.
Wynik fałszywie dodatni 1 Frederick został niepoprawnie przewidział jako osobę , podczas gdy powinien być miastem.
Wynik fałszywie ujemny 1 Forrest został niepoprawnie przewidział jako miasto , podczas gdy powinien być osobą.
  • Precyzja: #True_Positive / (#True_Positive + #False_Positive) = 2 / (2 + 1) = 0.67
  • Przypomnij sobie: #True_Positive / (#True_Positive + #False_Negatives) = 2 / (2 + 1) = 0.67
  • Wynik F1: 2 * Precision * Recall / (Precision + Recall) = (2 * 0.67 * 0.67) / (0.67 + 0.67) = 0.67

Ocena na poziomie jednostki dla jednostki miejskiej

Model będzie miał następującą ocenę na poziomie jednostki dla jednostki miejskiej:

Klucz Count Wyjaśnienie
Wynik prawdziwie dodatni 1 Colorado Springs został prawidłowo przewidział jako miasto.
Wynik fałszywie dodatni 1 Forrest został niepoprawnie przewidział jako miasto , podczas gdy powinien być osobą.
Wynik fałszywie ujemny 1 Frederick został niepoprawnie przewidział jako osobę , podczas gdy powinien być miastem.
  • Precyzja = #True_Positive / (#True_Positive + #False_Positive) = 1 / (1 + 1) = 0.5
  • Pamiętać = #True_Positive / (#True_Positive + #False_Negatives) = 1 / (1 + 1) = 0.5
  • Wynik F1 = 2 * Precision * Recall / (Precision + Recall) = (2 * 0.5 * 0.5) / (0.5 + 0.5) = 0.5

Ocena na poziomie modelu dla modelu zbiorowego

Model miałby następującą ocenę modelu w całości:

Klucz Count Wyjaśnienie
Wynik prawdziwie dodatni 3 John Smith i Fannie Thomas zostali prawidłowo przewidowani jako osoba. Colorado Springs został prawidłowo przewidział jako miasto. Jest to suma wyników prawdziwie dodatnich dla wszystkich jednostek.
Wynik fałszywie dodatni 2 Forrest został niepoprawnie przewidział jako miasto , podczas gdy powinien być osobą. Frederick został niepoprawnie przewidział jako osobę , podczas gdy powinien być miastem. Jest to suma wyników fałszywie dodatnich dla wszystkich jednostek.
Wynik fałszywie ujemny 2 Forrest został niepoprawnie przewidział jako miasto , podczas gdy powinien być osobą. Frederick został niepoprawnie przewidział jako osobę , podczas gdy powinien być miastem. Jest to suma wyników fałszywie ujemnych dla wszystkich jednostek.
  • Precyzja = #True_Positive / (#True_Positive + #False_Positive) = 3 / (3 + 2) = 0.6
  • Pamiętać = #True_Positive / (#True_Positive + #False_Negatives) = 3 / (3 + 2) = 0.6
  • Wynik F1 = 2 * Precision * Recall / (Precision + Recall) = (2 * 0.6 * 0.6) / (0.6 + 0.6) = 0.6

Interpretowanie metryk oceny na poziomie jednostki

Więc co to znaczy mieć wysoką precyzję lub wysoką kompletność dla określonej jednostki?

Odwołaj Dokładność Interpretacja
Wys. Wys. Ta jednostka jest dobrze obsługiwana przez model.
Niskie Wysokie Model nie może zawsze wyodrębnić tej jednostki, ale gdy jest z dużą pewnością.
Wys. Niski Model wyodrębnia tę jednostkę, jednak ma niską pewność siebie, ponieważ czasami jest wyodrębniany jako inny typ.
Niski Niski Ten typ jednostki jest słabo obsługiwany przez model, ponieważ zwykle nie jest wyodrębniany. Kiedy tak jest, nie jest z dużą pewnością siebie.

Wskazówki

Po wytrenowanym modelu zobaczysz wskazówki i zalecenia dotyczące ulepszania modelu. Zaleca się, aby model obejmował wszystkie punkty w sekcji wskazówek.

  • Zestaw trenowania ma wystarczającą ilość danych: jeśli typ jednostki ma mniej niż 15 wystąpień oznaczonych etykietą w danych treningowych, może to prowadzić do obniżenia dokładności ze względu na to, że model nie jest odpowiednio przeszkolony w tych przypadkach. W takim przypadku rozważ dodanie większej liczby oznaczonych etykietami danych w zestawie treningowym. Aby uzyskać więcej wskazówek, możesz sprawdzić kartę rozkładu danych.

  • Wszystkie typy jednostek są obecne w zestawie testów: jeśli dane testowe nie zawierają wystąpień oznaczonych etykietami dla typu jednostki, wydajność testu modelu może stać się mniej kompleksowa ze względu na nietestowane scenariusze. Aby uzyskać więcej wskazówek, możesz sprawdzić kartę rozkładu danych zestawu testów.

  • Typy jednostek są zrównoważone w zestawach trenowania i testowania: gdy próbkowanie powoduje niedokładną reprezentację częstotliwości typu jednostki, może to prowadzić do obniżenia dokładności ze względu na to, że model spodziewa się, że ten typ jednostki wystąpi zbyt często lub zbyt mało. Aby uzyskać więcej wskazówek, możesz sprawdzić kartę rozkładu danych.

  • Typy jednostek są równomiernie dystrybuowane między zestawami trenowania i testowania: gdy kombinacja typów jednostek nie jest zgodna między zestawami treningowych i testowych, może to prowadzić do obniżenia dokładności testowania ze względu na sposób trenowania modelu inaczej niż testowany. Aby uzyskać więcej wskazówek, możesz sprawdzić kartę rozkładu danych.

  • Niejasne rozróżnienie między typami jednostek w zestawie trenowania: gdy dane trenowania są podobne dla wielu typów jednostek, mogą prowadzić do obniżenia dokładności, ponieważ typy jednostek mogą być często błędnie klasyfikowane. Przejrzyj następujące typy jednostek i rozważ ich scalenie, jeśli są podobne. W przeciwnym razie dodaj więcej przykładów, aby lepiej je odróżnić od siebie. Aby uzyskać więcej wskazówek, możesz sprawdzić kartę macierzy pomyłek.

Macierz pomyłek

Macierz pomyłek jest macierzą N x N używaną do oceny wydajności modelu, gdzie N jest liczbą jednostek. Macierz porównuje oczekiwane etykiety z tymi przewidywanymi przez model. Zapewnia to całościowy pogląd na to, jak dobrze działa model i jakie rodzaje błędów wykonuje.

Za pomocą macierzy pomyłek można zidentyfikować jednostki, które są zbyt blisko siebie i często się mylą (niejednoznaczność). W tym przypadku rozważ scalenie tych typów jednostek razem. Jeśli nie jest to możliwe, rozważ dodanie kolejnych otagowanych przykładów obu jednostek, aby ułatwić modelowi rozróżnienie między nimi.

Wyróżniony ukośny na poniższej ilustracji to prawidłowo przewidywane jednostki, w których przewidywany tag jest taki sam jak rzeczywisty tag.

Zrzut ekranu przedstawiający przykładową macierz pomyłek.

Metryki oceny na poziomie jednostki i na poziomie modelu można obliczyć na podstawie macierzy pomyłek:

  • Wartości w przekątnej są wartościami prawdziwie dodatnimi każdej jednostki.
  • Suma wartości w wierszach jednostki (z wyłączeniem przekątnej) jest wynikiem fałszywie dodatnim modelu.
  • Suma wartości w kolumnach jednostki (z wyłączeniem przekątnej) jest fałszywie ujemna modelu.

Podobnie,

  • Prawdziwie dodatnie wyniki modelu to suma wyników prawdziwie dodatnich dla wszystkich jednostek.
  • Wynik fałszywie dodatni modelu jest sumą wyników fałszywie dodatnich dla wszystkich jednostek.
  • Fałszywa ujemna wartość modelu jest sumą wyników fałszywie ujemnych dla wszystkich jednostek.

Następne kroki