Obecnie uczę sieci neuronowej i nie mogę zdecydować, którego użyć, aby wdrożyć moje kryteria wczesnego zatrzymania: utratę walidacji lub mierniki takie jak dokładność / f1score / auc / cokolwiek obliczone na zestawie walidacyjnym.
W swoich badaniach natknąłem się na artykuły broniące obu punktów widzenia. Wygląda na to, że Keras domyślnie utracił sprawdzanie poprawności, ale natknąłem się również na przekonujące odpowiedzi na przeciwne podejście (np. Tutaj ).
Czy ktoś ma wskazówki, kiedy najlepiej użyć utraty sprawdzania poprawności, a kiedy użyć określonej miary?
cross_entropy
utrata jest bardziej preferowanym kandydatem niżMSE
lubMAE
. Zapoznaj się z sekcją podsumowania tego artykułu i tego postu na temat statystyk .Moim zdaniem jest to subiektywne i specyficzne dla problemu. Powinieneś użyć tego, co jest najważniejszym czynnikiem w twoim umyśle, jako metryki jazdy, ponieważ może to sprawić, że twoje decyzje dotyczące zmiany modelu będą lepiej skoncentrowane.
Na przykład, jeśli zgłosisz wynik F1 w raporcie / do swojego szefa itp. (I zakładając, że to jest to, na czym naprawdę im zależy), to użycie tej metryki może mieć sens. F1-score, na przykład, bierze precyzję i przywołanie pod uwagę to znaczy opisuje związek pomiędzy dwoma bardziej drobnoziarnista metryk.
Łącząc te rzeczy, obliczanie wyników innych niż normalna utrata może być przyjemna dla przeglądu i aby zobaczyć, jak końcowa metryka jest zoptymalizowana w trakcie iteracji treningu. Ten związek może być może dać ci głębszy wgląd w problem,
Zazwyczaj najlepiej jest wypróbować kilka opcji, ponieważ optymalizacja pod kątem utraty sprawdzania poprawności może pozwolić na dłuższe treningi, co w końcu może również dać lepszy wynik F1 . Precyzja i wycofanie mogą kołysać się wokół lokalnych minimów, generując prawie statyczny wynik F1 - więc przestaniesz trenować. Jeśli optymalizowałeś czystą stratę, mógłbyś odnotować wystarczającą fluktuację strat, abyś mógł trenować dłużej.
źródło
Jeśli trenujesz głęboką sieć, zdecydowanie nie zalecam wczesnego zatrzymywania. W głębokim uczeniu się nie jest to zbyt zwyczajowe. Zamiast tego możesz zastosować inne techniki, takie jak rezygnacja z dobrego generalizowania. Jeśli nalegasz na to, wybór kryterium zależy od twojego zadania. Jeśli masz niezrównoważone dane, musisz zastosować
F1
wynik i ocenić go na podstawie danych z walidacji krzyżowej. Jeśli masz zbilansowane dane, spróbuj użyć dokładności danych weryfikacji krzyżowej. Inne techniki w dużym stopniu zależą od twojego zadania.Gorąco zachęcam do znalezienia modelu, który bardzo dobrze pasuje do twoich danych, a następnie skorzystaj z rezygnacji. Jest to najbardziej zwyczajowa rzecz, której ludzie używają do głębokich modeli.
źródło