Stworzyłem tę krzywą uczenia się i chcę wiedzieć, czy mój model SVM cierpi na odchylenie lub wariancję? Jak wyciągnąć wniosek z tego wykresu?
machine-learning
svm
bias
train
Afke
źródło
źródło
Odpowiedzi:
Część 1: Jak odczytać krzywą uczenia się
Po pierwsze, powinniśmy skupić się na prawej stronie wykresu, gdzie są wystarczające dane do oceny.
Jeśli dwie krzywe są „blisko siebie” i obie mają niski wynik. Model cierpi na niedopasowany problem (wysokie odchylenie)
Jeśli krzywa treningowa ma znacznie lepszy wynik, ale krzywa testowa ma niższy wynik, tj. Między dwiema krzywymi występują duże przerwy. Następnie model ma problem z nadmiernym dopasowaniem (wysoka wariancja)
Część 2: Moja ocena podanej przez ciebie fabuły
Z fabuły trudno powiedzieć, czy model jest dobry, czy nie. Możliwe, że masz naprawdę „łatwy problem”, dobry model może osiągnąć 90%. Z drugiej strony możliwe jest, że masz naprawdę „trudny problem”, że najlepszą rzeczą, jaką możemy zrobić, jest osiągnięcie 70%. (Pamiętaj, że możesz nie oczekiwać, że będziesz mieć doskonały model, powiedzmy, że wynik wynosi 1. To, ile możesz osiągnąć, zależy od tego, ile szumów w twoich danych. Załóżmy, że twoje dane mają wiele punktów danych, mają funkcję DOKŁADNĄ, ale różne etykiety, bez względu na to, co robisz, nie możesz uzyskać 1 na wynik).
Innym problemem w twoim przykładzie jest to, że 350 przykładów wydaje się zbyt małych w rzeczywistej aplikacji.
Część 3: Więcej sugestii
Aby uzyskać lepsze zrozumienie, możesz wykonać następujące eksperymenty, aby doświadczyć niedopasowania i obserwować, co stanie się z krzywą uczenia się.
Wybierz bardzo skomplikowane dane, powiedzmy dane MNIST, i dopasuj do prostego modelu, powiedzmy model liniowy z jedną cechą.
Wybierz proste dane, powiedzmy dane tęczówki, pasujące do modelu złożoności, powiedzmy SVM.
Część 4: Inne przykłady
Ponadto podam dwa przykłady związane z niedopasowaniem i nadmiernym dopasowaniem. Zauważ, że nie jest to krzywa uczenia się, ale wydajność w odniesieniu do liczby iteracji w modelu zwiększania gradientu , gdzie więcej iteracji będzie miało większe szanse na przeregulowanie. Oś x pokazuje liczbę iteracji, a oś y pokazuje wydajność, która jest ujemna Obszar pod ROC (im niższa, tym lepsza).
Lewy wątek podrzędny nie cierpi z powodu nadmiernego dopasowania (dobrze również niedopasowanego, ponieważ wydajność jest dość dobra), ale prawy cierpi z powodu nadmiernego dopasowania, gdy liczba iteracji jest duża.
źródło