Newsletter · „ML jak dziecku” · numer 6 · ok. 3 min czytania
Więcej danych czy lepszy model?
W skrócie
Krzywe uczenia prostymi słowami: dwie linie, z których czytasz, czy pomogą nowe dane, czy trzeba zmienić model. Na odręcznie pisanych cyfrach.
Pojęcie: Krzywe uczenia ·
1. Haczyk
Ktoś uczy się piec chleb. Jeśli bochenki się przypalają, bo jeszcze nie zna swojego piekarnika, pomogą kolejne próby. Jeśli piecze w mikrofalówce, nie pomoże żadna liczba prób. Zanim kupisz następny worek mąki, warto wiedzieć, który to przypadek.
2. Przewidź
Model uczy się rozpoznawać odręcznie pisane cyfry z 50 obrazków. Na tych 50 obrazkach ma 100% trafności. Ile trafi na nowych cyfrach, których nie widział: około 100%, około 82% czy około 10%?
Zapamiętaj swoją odpowiedź. Rozwiązanie jest niżej.
3. Wyjaśnienie
Rozwiązanie. Około 82%, dokładnie 82,3% na walidacji, czyli na obrazkach odłożonych do sprawdzania (średnia z 5 losowań, które obrazki idą do nauki). Luka między treningiem a walidacją to 17,7 punktu procentowego. Przy kilkudziesięciu przykładach model po prostu zapamiętuje każdy z nich.
Krzywa uczenia to dwie linie: trafność na danych do nauki i trafność na walidacji, rysowane dla coraz większego zbioru do nauki. Z ich kształtu czytasz decyzję.
Dokładamy dane. Przy wszystkich 1438 obrazkach trening spada do 98,0%, a walidacja rośnie do 95,8%. Luka maleje do 2,2 punktu. Każdy nowy przykład utrudnia zapamiętywanie i ułatwia znalezienie reguły, która działa też poza treningiem. Tu więcej danych pomogło, bo problemem była pamięć. Fachowo: wysoka wariancja.
Drugi model widzi te same cyfry rozmyte: 16 pikseli zamiast 64. Przy 1438 obrazkach ma 86,9% na treningu i 85,0% na walidacji. Luka to tylko 1,9 punktu, ale obie linie stoją nisko. Walidacja może co najwyżej dojść do treningu, a trening ma tylko 86,9%. Ten model jest za prosty, czyli ma wysokie obciążenie. Pomoże bogatszy model albo lepsze cechy, a nie nowe dane.
Sprawdź sam. W lekcji o krzywych uczenia przesuwasz suwak liczby obrazków i przełączasz między modelem szczegółowym a rozmytym.
4. Częsty błąd
„Więcej danych zawsze pomaga.” Nie zawsze. Model rozmyty ma przy 400 obrazkach 83,6% na walidacji, a przy prawie czterokrotnie większym zbiorze 85,0%. Model szczegółowy na tych samych danych ma 95,8%. Jeśli sam trening stoi nisko, nowe dane nie pomogą, bo walidacja nie przeskoczy treningu.
5. Gdzie ta analogia się psuje
Piekarz od razu widzi, czy stoi przy piekarniku, czy przy mikrofalówce. Przy modelu tego nie widać, dopóki nie narysujesz obu linii. I rysuje się je na walidacji, nie na zbiorze testowym: test zostaje na samą ocenę końcową.
6. Dlaczego to ważne w pracy
Zebranie i opisanie nowych danych kosztuje czas i pieniądze. Krzywa uczenia to tani sposób, żeby przed taką decyzją sprawdzić, czy się opłaci. W scikit-learn rysuje ją funkcja learning_curve (obciążenie i wariancja).
7. Pytanie powtórkowe
Odpowiedź na pytanie z poprzedniego numeru
Bo uczciwych płatności jest ogromnie więcej niż oszustw. Nawet mały odsetek pomyłek w tak dużej grupie daje więcej alarmów niż wszystkie prawdziwe oszustwa razem. To błąd częstości bazowej: jaka część alarmów jest prawdziwa, zależy nie tylko od jakości modelu, ale też od tego, jak rzadkie jest zdarzenie.
Nowe pytanie
Wracamy do punktu odniesienia. Model przewiduje ceny mieszkań i jego błąd wygląda na mały. Z jaką najprostszą odpowiedzią warto go porównać, zanim się ucieszysz?
Odpowiedź w następnym numerze.