Najbliższe intuicyjne znaczenie wyniku f1 jest postrzegane jako średnia przywołania i precyzji. Wyczyśćmy to dla ciebie:
W przypadku zadania klasyfikacyjnego być może planujesz zbudować klasyfikator z wysoką precyzją ORAZ przywoływaniem. Na przykład klasyfikator, który mówi, czy dana osoba jest uczciwa, czy nie.
Aby uzyskać precyzję, zazwyczaj możesz dokładnie powiedzieć, ile uczciwych ludzi jest w danej grupie. W tym przypadku, dbając o wysoką precyzję, zakładasz, że możesz błędnie zaklasyfikować kłamcę jako uczciwego, ale nie często. Innymi słowy, tutaj próbujesz zidentyfikować kłamcę ze szczerości jako całą grupę.
Przypomnijmy jednak, że naprawdę martwisz się, jeśli uważasz, że kłamca jest szczery. Dla ciebie będzie to wielka strata i duży błąd i nie chcesz tego więcej robić. Jest również w porządku, jeśli sklasyfikujesz kogoś uczciwego jako kłamcę, ale twój model nigdy nie powinien (lub przeważnie nie powinien) twierdzić, że kłamca jest uczciwy. Innymi słowy, tutaj skupiasz się na konkretnej klasie i starasz się nie pomylić z tym.
Weźmy teraz przypadek, w którym chcesz, aby Twój model (1) precyzyjnie identyfikował uczciwego od kłamcy (precyzja) (2) identyfikował każdą osobę z obu klas (przypomnij). Co oznacza, że wybierzesz model, który będzie działał dobrze w obu metrykach.
Podejmując decyzję o wyborze modelu, spróbujesz ocenić każdy model na podstawie średniej z dwóch wskaźników. Wynik F jest najlepszym, który może to opisać. Rzućmy okiem na wzór:
Przypomnij: p = tp / (tp + fp)
Przypomnij: r = tp / (tp + fn)
Wynik F: fscore = 2 / (1 / r + 1 / p)
Jak widać, im wyższa pamięć ORAZ precyzja, tym wyższy wynik F.