Metryki oceny dla modeli przepływu pracy orkiestracji
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ę przy użyciu wytrenowanego modelu w celu przewidywania intencji zdefiniowanych przez użytkownika dla wypowiedzi w zestawie testowym i porównuje je z podanymi tagami (które ustanawia punkt odniesienia prawdy). Wyniki są zwracane, aby można było przejrzeć wydajność modelu. Do oceny przepływ pracy orkiestracji 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 klas przewidywanych 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 klas 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)
Precyzja, kompletność i wynik F1 są obliczane dla:
- Każda intencja oddzielnie (ocena na poziomie intencji)
- W przypadku modelu zbiorczo (ocena na poziomie modelu).
Definicje precyzji, kompletności i oceny są takie same w przypadku ocen na poziomie intencji 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
- Utwórz odpowiedź z podziękowaniem bardzo
- Zadzwoń do mojego przyjaciela
- Hello (Cześć)
- Dzień dobry
Są to używane intencje: CLUEmail i Greeting
Model może przewidywać następujące przewidywania:
Wypowiedź | Przewidywana intencja | Rzeczywista intencja |
---|---|---|
Utwórz odpowiedź z podziękowaniem bardzo | CLUEmail | CLUEmail |
Zadzwoń do mojego przyjaciela | Powitanie | CLUEmail |
Hello (Cześć) | CLUEmail | Powitanie |
Goodmorning | Powitanie | Powitanie |
Ocena poziomu intencji dla intencji CLUEmail
Klucz | Count | Wyjaśnienie |
---|---|---|
Wynik prawdziwie dodatni | 1 | Wypowiedź 1 została prawidłowo przewidziała jako CLUEmail. |
Wynik fałszywie dodatni | 1 | Wypowiedź 3 została błędnie przewidziała jako CLUEmail. |
Wynik fałszywie ujemny | 1 | Wypowiedź 2 została błędnie przewidziała jako powitanie. |
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 poziomu intencji dla intencji Greeting
Klucz | Count | Wyjaśnienie |
---|---|---|
Wynik prawdziwie dodatni | 1 | Wypowiedź 4 została prawidłowo przewidziała jako powitanie. |
Wynik fałszywie dodatni | 1 | Wypowiedź 2 została błędnie przewidziała jako powitanie. |
Wynik fałszywie ujemny | 1 | Wypowiedź 3 została błędnie przewidziała jako CLUEmail. |
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
Klucz | Count | Wyjaśnienie |
---|---|---|
Wynik prawdziwie dodatni | 2 | Suma modułu TP dla wszystkich intencji |
Wynik fałszywie dodatni | 2 | Suma fp dla wszystkich intencji |
Wynik fałszywie ujemny | 2 | Suma nazwy FN dla wszystkich intencji |
Precyzja = #True_Positive / (#True_Positive + #False_Positive) = 2 / (2 + 2) = 0.5
Pamiętać = #True_Positive / (#True_Positive + #False_Negatives) = 2 / (2 + 2) = 0.5
Wynik F1 = 2 * Precision * Recall / (Precision + Recall) = (2 * 0.5 * 0.5) / (0.5 + 0.5) = 0.5
Macierz pomyłek
Macierz pomyłek jest macierzą N x N używaną do oceny wydajności modelu, gdzie N jest liczbą intencji. Macierz porównuje rzeczywiste tagi z tagami przewidywanymi przez model. Zapewnia to całościowy pogląd na to, jak dobrze działa model i jakie rodzaje błędów wykonuje.
Macierz pomyłek służy do identyfikowania intencji, które są zbyt blisko siebie i często się mylą (niejednoznaczność). W takim przypadku rozważ scalenie tych intencji razem. Jeśli to nie jest możliwe, rozważ dodanie kolejnych oznakowanych przykładów obu intencji, aby ułatwić modelowi rozróżnienie między nimi.
Metryki oceny na poziomie modelu można obliczyć z macierzy pomyłek:
- Prawdziwie dodatnie wyniki modelu to suma wyników prawdziwie dodatnich dla wszystkich intencji.
- Wynik fałszywie dodatni modelu jest sumą wyników fałszywie dodatnich dla wszystkich intencji.
- Fałszywa wartość ujemna modelu jest sumą wyników fałszywie ujemnych dla wszystkich intencji.