Jaka jest definicja „najlepszego” w znaczeniu „najlepszego dopasowania” i weryfikacji krzyżowej?

16

Jeśli dopasujesz funkcję nieliniową do zestawu punktów (zakładając, że dla każdej odciętej jest tylko jedna rzędna), wynikiem może być:

  1. bardzo złożona funkcja z małymi resztkami
  2. bardzo prosta funkcja z dużymi resztkami

Krzyżowa walidacja jest powszechnie stosowana w celu znalezienia „najlepszego” kompromisu między tymi dwoma skrajnościami. Ale co znaczy „najlepszy”? Czy to „najbardziej prawdopodobne”? Jak zacząłbyś w ogóle udowodnić, jakie jest najbardziej prawdopodobne rozwiązanie?

Mój wewnętrzny głos mówi mi, że CV znajduje jakieś rozwiązanie minimalnej energii. To sprawia, że ​​myślę o entropii, o której niejasno wiem, że występuje zarówno w statystykach, jak i fizyce.

Wydaje mi się, że „najlepsze” dopasowanie jest generowane przez minimalizację sumy funkcji złożoności i błędu, tj

minimising m where m = c(Complexity) + e(Error)

Czy to ma jakiś sens? Jakie byłyby funkcje c i e?

Czy możesz wyjaśnić, używając języka matematycznego, ponieważ nie zrozumiem wiele matematyki.

bart
źródło
1
Najlepszy jest model z najniższym przyszłym błędem, a weryfikacja krzyżowa daje taką ocenę. Przyczyną formuł c (złożoność) + e (błąd) jest to, że można użyć błędu w danych treningowych jako oszacowania przyszłego błędu, ale jest to zbyt optymistyczne, więc dodajesz termin, aby oszacowanie to było bezstronne, co zwykle jest funkcją złożoność modelu
Jarosław Bułatow
Z drugiej strony rozumowanie w świetle fenomenu Rungea (ponownie inspiracje fizyką) prowadzi do wniosku, że błąd w przyszłości jest coś w złożoności / Train_Error.
Matt Krause udzielił doskonałej odpowiedzi na podobne pytanie tutaj: stats.stackexchange.com/a/21925/14640 Parafrazując swoją odpowiedź: Celem jest zrównoważenie złożoności modelu z siłą wyjaśniającą modelu, dlatego koncepcja parsymonu jest lepsza miarą adekwatności modelu niż koncepcja najlepszego dopasowania do błędu. Wynika to z faktu, że bardzo złożony model może nadpisywać dane bez lepszej zdolności przewidywania lub wyjaśniania nowych wyników.
Assad Ebrahim

Odpowiedzi:

6

Myślę, że to doskonałe pytanie. Sparafrazuję to, aby upewnić się, że mam rację:

Wydaje się, że istnieje wiele sposobów wyboru funkcji kary złożoności i funkcji kary błędu e . Który wybór jest „najlepszy”. Co najlepiej znaczy ?ce

Myślę, że odpowiedź (jeśli istnieje) zabierze Cię daleko poza zwykłą weryfikację krzyżową. Podoba mi się, jak to pytanie (i ogólnie ten temat) ładnie wiąże się z brzytwą Ockhama i ogólną koncepcją parsimony, która jest fundamentalna dla nauki. W żadnym wypadku nie jestem ekspertem w tej dziedzinie, ale uważam to pytanie za niezwykle interesujące. Najlepszy tekst, jaki znam na tego rodzaju pytania, to Universal Artificial Intelligence autorstwa Marcusa Huttera (choć nie zadawaj mi żadnych pytań na ten temat, nie przeczytałem większości z nich). Kilka lat temu poszedłem na rozmowę Huttera i byłem pod wielkim wrażeniem.

Masz rację, myśląc, że jest gdzieś argument minimalnej entropii (używany w jakiś sposób do funkcji kary złożoności ). Hutter opowiada się za zastosowaniem złożoności Kołmogorowa zamiast entropii. Również definicja „najlepszego” Huttera (o ile pamiętam) jest (nieformalnie) modelem, który najlepiej przewiduje przyszłość (tj. Najlepiej przewiduje dane, które będą obserwowane w przyszłości). Nie pamiętam, jak formalizuje to pojęcie.c

Robby McKilliam
źródło
Rozumiesz pytanie. Będę podążać za linkami.
bart
Powinieneś wiedzieć, że te linki raczej nie zabiorą Cię w „praktyczne” miejsce. Jeśli próbujesz zbudować coś za pomocą walidacji krzyżowej (lub innego rodzaju wyboru modelu), w praktyce zawsze może sprowadzać się do czegoś heurystycznego i nieco ad hoc (chociaż zgadzam się, że to nie jest satysfakcjonujące).
Robby McKilliam
Teraz gdzieś idziemy. en.wikipedia.org/wiki/Minimum_message_length wydaje się być tym, o czym myślałem. Dzięki!
bart
Bez obaw. To tylko refleksja, a nie praktyczne.
bart
9

Podam krótką intuicyjną odpowiedź (na dość abstrakcyjnym poziomie), dopóki ktoś inny nie zaoferuje lepszej odpowiedzi:

Po pierwsze, należy zauważyć, że złożone funkcje / modele osiągają lepsze dopasowanie (tj. Mają niższe resztki), ponieważ wykorzystują niektóre lokalne cechy (szum myślowy) zestawu danych, które nie są obecne na całym świecie (myśl systematyczne wzorce).

Po drugie, przeprowadzając walidację krzyżową, podzieliliśmy dane na dwa zestawy: zestaw szkoleniowy i zestaw walidacyjny.

Tak więc, gdy przeprowadzamy walidację krzyżową, model złożony może nie przewidywać bardzo dobrze, ponieważ z definicji model złożony wykorzystuje lokalne cechy zestawu szkoleniowego. Jednak lokalne cechy zestawu szkoleniowego mogą być bardzo różne w porównaniu z lokalnymi cechami zestawu walidacyjnego, co powoduje słabą wydajność predykcyjną. Dlatego mamy tendencję do wybierania modelu, który przechwytuje globalne cechy szkolenia i zestawy danych do walidacji.

Podsumowując, krzyżowa walidacja chroni przed nadmiernym dopasowaniem, wybierając model, który przechwytuje globalne wzorce zestawu danych i unikając modeli wykorzystujących pewne lokalne cechy zestawu danych.


źródło
@Sikikant Wiem to wszystko. CV to sposób na znalezienie „najlepszego”. Jaka jest definicja „najlepszego”?
bart
@bart „najlepszy model” = model, który „najlepszy” przechwytuje globalne wzorce, unikając lokalnych cech danych. To najlepsze, co mogę zrobić dla opisu innego niż matematyczne. Być może ktoś inny może opracować nieco bardziej szczegółowo lub bardziej szczegółowo.
@bart: „najlepszy” oznacza funkcję, która najlepiej pasuje do danych treningowych i która „uogólnia” dobrze na dane zestawu sprawdzania poprawności / niewidzialnego. Myślę, że jest to całkiem jasne z odpowiedzi Srikant. Istnieje wiele sposobów formalnego zdefiniowania dobrego zachowania generalizacyjnego. W sensie nieformalnym można uznać, że jest to funkcja „gładka” i niezbyt poruszająca. Próba dopasowania się wyłącznie do danych treningowych może prowadzić do perfekcyjnie wyglądającej funkcji, podczas gdy gładkość zwykle zapewnia, że ​​funkcja będzie działać dobrze zarówno w przypadku danych treningowych, jak i walidacyjnych / testowych.
ebony1
@ebony: Brakuje Ci sensu. Mam nadzieję, że sformułowałem to pytanie, aby było jaśniejsze
bart
5

W ogólnym widoku uczenia maszynowego odpowiedź jest dość prosta: chcemy zbudować model, który będzie miał najwyższą dokładność podczas przewidywania nowych danych (niewidocznych podczas szkolenia). Ponieważ nie możemy tego bezpośrednio przetestować (nie mamy danych z przyszłości), przeprowadzamy symulację takiego testu w Monte Carlo - i to jest w zasadzie pomysł pod krzyżową weryfikacją.

Mogą występować pewne problemy dotyczące dokładności (na przykład klient biznesowy może stwierdzić, że przeregulowanie kosztuje 5 EUR za jednostkę i niedopełnienie 0,01 EUR za jednostkę, dlatego lepiej jest zbudować mniej dokładny, ale bardziej niedopracowany model), ale ogólnie to to dość intuicyjny procent prawdziwych odpowiedzi w klasyfikacji i powszechnie stosowana wyjaśniona wariancja w regresji.


źródło
3

Wiele osób ma doskonałe odpowiedzi, oto moje 0,02 $.

Istnieją dwa sposoby spojrzenia na „najlepszy model” lub „wybór modelu”, mówiąc statystycznie:

1 Wyjaśnienie, które jest tak proste, jak to możliwe, ale nie prostsze (Attrib. Einstein)

- This is also called Occam's Razor, as explanation applies here.
- Have a concept of True model or a model which approximates the truth
- Explanation is like doing scientific research


2 Prognozowanie to zainteresowanie, podobne do rozwoju inżynierii.

- Prediction is the aim, and all that matters is that the model works
- Model choice should be based on quality of predictions
- Cf: Ein-Dor, P. & Feldmesser, J. (1987) Attributes of the performance of central processing units: a relative performance prediction model. Communications of the ACM 30, 308–317.

Powszechna (błędna) koncepcja:

Wybór modelu jest równoznaczny z wyborem najlepszego modelu

Dla wyjaśnienia powinniśmy być czujni, aby istniała możliwość istnienia kilku (z grubsza) równie dobrych modeli objaśniających. Prostota pomaga zarówno w komunikowaniu pojęć zawartych w modelu, jak i w tym, co psychologowie nazywają uogólnieniem, umiejętnością „pracy” w scenariuszach bardzo odmiennych od tych, w których model był badany. Jest więc premia za kilka modeli.

Do przewidywania: dobrą analogią (doktora Ripleya) jest wybór między opiniami ekspertów: jeśli masz dostęp do dużego panelu ekspertów, jak wykorzystałbyś ich opinie?

Cross Validation zajmuje się aspektem przewidywania. Aby uzyskać szczegółowe informacje na temat CV, zapoznaj się z prezentacją dr. BD Ripleya Prezentacja dr. Briana D. Ripleya na temat wyboru modelu

Cytat: Należy pamiętać, że wszystko w tej odpowiedzi pochodzi z cytowanej powyżej prezentacji. Jestem wielkim fanem tej prezentacji i podoba mi się. Inne opinie mogą się różnić. Tytuł prezentacji brzmi: „Wybór wśród dużych klas modeli” i został wygłoszony na Sympozjum ku czci 80. urodzin Johna Neldera, Imperial College, 29/30 marca 2004 r. Przez dr Briana D. Ripleya.

suncoolsu
źródło
3

Świetna dyskusja tutaj, ale myślę o walidacji krzyżowej w inny sposób niż dotychczasowe odpowiedzi (mbq i ja myślę, że są na tej samej stronie). Tak więc postawię moje dwa centy na ryzyko zamulenia wód ...

Walidacja krzyżowa to technika statystyczna służąca do oceny zmienności i błędu systematycznego, wynikającego z błędu próbkowania, w zdolności modelu do dopasowania i prognozowania danych. Zatem „najlepszy” byłby model, który zapewnia najniższy błąd uogólnienia, który byłby w jednostkach zmienności i odchylenia. Techniki takie jak Bayesian i Uśrednianie modelu rozruchowego mogą być użyte do aktualizacji modelu w sposób algorytmiczny w oparciu o wyniki wysiłku weryfikacji krzyżowej.

To FAQ zawiera dobre informacje dla lepszego kontekstu tego, co informuje moją opinię.

Josh Hemann
źródło
1

Funkcja błędu to błąd Twojego modelu (funkcji) w danych treningowych. Złożoność jest pewną normą (np. Kwadratową normą l2) funkcji, której próbujesz się nauczyć. Minimalizacja terminu złożoności zasadniczo sprzyja płynnym funkcjom, które sprawdzają się nie tylko w danych treningowych, ale także w danych testowych. Jeśli reprezentujesz swoją funkcję za pomocą zestawu współczynników (powiedzmy, jeśli wykonujesz regresję liniową), karanie złożoności przez kwadratową normę doprowadziłoby do małych wartości współczynników w twojej funkcji (karanie innych norm prowadzi do różnych pojęć kontroli złożoności).

heban1
źródło
1

(p,q)1,λ>0

(1)Argmin.β|λ,x,y||ym(x,β)||p+λ||β||q

jest równa

(2)Argmin.β|λ,x,y||ym(x,β)||p

s.t. ||β||qλ

||β||qλq=1,2β^β^

λλ=(x,y)(1)(2)λβ^|λ

e()=||ym(x,β)||pp=1p=2m()

użytkownik603
źródło
1
λ
Robby McKilliam
@Robby:> dzięki. Lekko dodałem tekst, aby rozróżnić parametry od hiperparametrów.
user603
@kwak: Przykro mi powiedzieć, że nie mam pojęcia, co to oznacza. Co oznaczają symbole p, q, lambda, x, y, m oraz beta?
bart
@bart:> Moja odpowiedź jest zasadniczo taka sama jak odpowiedzi Srikanta. Tam, gdzie zapewnia intuicyjne wyjaśnienie, chciałem dodać bardziej rygorystyczne dla korzyści przyszłych gości, którzy mogą mieć takie samo pytanie jak ty, ale są bardziej zaznajomieni z matematyką niż językiem nieformalnym. Wszystkie symbole, o których wspominasz, są zdefiniowane w mojej odpowiedzi (choć znowu jest to formalnie).
user603
@kwak: Gdzie, na przykład, zdefiniowano p?
bart