W książce Bishopa o uczeniu maszynowym omawia problem dopasowania krzywej funkcji wielomianu do zestawu punktów danych.
Niech M będzie rzędem dopasowanego wielomianu. Tak to stwierdza
Widzimy, że wraz ze wzrostem M wielkość współczynników zwykle rośnie. W szczególności dla wielomianu M = 9 współczynniki zostały precyzyjnie dostrojone do danych poprzez opracowanie dużych wartości dodatnich i ujemnych, dzięki czemu odpowiednia funkcja wielomianu dokładnie pasuje do każdego z punktów danych, ale między punktami danych (szczególnie w pobliżu końców zakres) funkcja wykazuje duże oscylacje.
Nie rozumiem, dlaczego duże wartości implikują ściślejsze dopasowanie punktów danych. Wydaje mi się, że wartości stałyby się bardziej precyzyjne po przecinku zamiast tego dla lepszego dopasowania.
źródło
Odpowiedzi:
Jest to dobrze znany problem z wielomianami wysokiego rzędu, znanymi jako zjawisko Runge . Numerycznie jest związana ze złym klimatyzacji o matrycy Vandermonde , co sprawia, że współczynniki bardzo czułe na niewielkie wahania w danych i / lub zaokrąglenia w obliczeniach (tj model nie jest trwale zidentyfikowania ). Zobacz także tę odpowiedź na SciComp SE.
Istnieje wiele rozwiązań tego problemu, na przykład aproksymacja Czebyszewa , wygładzanie splajnów i regularyzacja Tichonowa . Regularyzacja Tichonowa jest uogólnieniem regresji kalenicowej , karającej normęwektora współczynnika , gdzie do wygładzania macierzy masy jest operatorem pochodnym. Aby penalizować oscylacje, możesz użyć , gdzie jest wielomianem ocenianym na danych.θ Λ Λ θ = p ′ ′ [ x ] p [ x ]| | Λθ] | | θ Λ Λθ=p′′[x] p[x]
EDYCJA: Odpowiedź użytkownika hxd1011 zauważa, że niektóre problemy numeryczne źle warunkowane można rozwiązać za pomocą wielomianów ortogonalnych, co jest dobrym punktem. Chciałbym jednak zauważyć, że nadal występują problemy związane z identyfikowalnością wielomianów wysokiego rzędu. Oznacza to, że złe warunkowanie numeryczne wiąże się z wrażliwością na „nieskończenie małe” zaburzenia (np. Zaokrąglanie), podczas gdy „statystyczne” złe warunkowanie dotyczy wrażliwości na „skończone” zaburzenia (np. Wartości odstające; odwrotny problem jest źle postawiony ).
Metody wspomniane w moim drugim akapicie dotyczą tej wrażliwości na wartości odstające . Można uznać tę wrażliwość za naruszenie standardowego modelu regresji liniowej, który przy użyciu niedopasowania domyślnie zakłada, że dane są gaussowskie. Spline i regularyzacja Tichonowa radzą sobie z tą wrażliwością odstającą, nakładając gładkość przed dopasowaniem. Przybliżenie Czebyszewa rozwiązuje ten problem za pomocą niedopasowania zastosowanego w domenie ciągłej , tj. Nie tylko w punktach danych. Chociaż wielomiany Czebyszewa są ortogonalne (wrt pewien ważony produkt wewnętrzny), uważam, że gdyby były użyte z stosunku do danych, nadal miałyby wrażliwość odstającą.L ∞ L 2L2 L∞ L2
źródło
Pierwszą rzeczą, którą chcesz sprawdzić, jest to, czy autor mówi o surowych wielomianach vs. wielomianach ortogonalnych .
Dla wielomianów ortogonalnych. współczynnik nie staje się „większy”.
Oto dwa przykłady ekspansji wielomianowej 2. i 15. rzędu. Najpierw pokazujemy współczynnik rozszerzenia 2 rzędu.
Następnie pokazujemy 15. zamówienie.
Zauważ, że używamy wielomianów ortogonalnych , więc współczynnik niższego rzędu jest dokładnie taki sam jak odpowiadające warunki w wynikach wyższego rzędu. Na przykład punkt przecięcia i współczynnik pierwszego rzędu to 20.09 i -29,11 dla obu modeli.
Z drugiej strony, jeśli użyjemy surowego rozszerzenia, coś takiego się nie wydarzy. I będziemy mieli duże i wrażliwe współczynniki! W poniższym przykładzie możemy zobaczyć, że współczynniki są na poziomie .106
źródło
summary(lm(mpg~poly(wt,2),mtcars)); summary(lm(mpg~poly(wt,5),mtcars)); summary(lm(mpg~ wt + I(wt^2),mtcars)); summary(lm(mpg~ wt + I(wt^2) + I(wt^3) + I(wt^4) + I(wt^5),mtcars))
poly(x,2,raw=T)
summary(lm(mpg~poly(wt,15, raw=T),mtcars))
. Ogromny efekt we współczynnikach!Abhishek, masz rację, że poprawa precyzji współczynników poprawi dokładność.
Myślę, że kwestia wielkości jest raczej nieistotna dla ogólnego punktu widzenia Bishopa - że stosowanie skomplikowanego modelu z ograniczonymi danymi prowadzi do „nadmiernego dopasowania”. W jego przykładzie 10 punktów danych jest używanych do oszacowania 9-wymiarowego wielomianu (tj. 10 zmiennych i 10 niewiadomych).
Jeśli dopasujemy falę sinusoidalną (bez szumu), dopasowanie będzie działać idealnie, ponieważ fale sinusoidalne [w określonym przedziale] można aproksymować z dowolną dokładnością za pomocą wielomianów. Jednak w przykładzie Bishopa mamy pewien „hałas”, do którego nie powinniśmy się dopasowywać. Sposób, w jaki to robimy, polega na utrzymywaniu dużej liczby punktów danych na liczbie zmiennych modelu (współczynniki wielomianowe) lub na regularyzacji.
Normalizacja nakłada na model „miękkie” ograniczenia (np. W regresji grzbietu), funkcja kosztu, którą próbujesz zminimalizować, jest kombinacją „błędu dopasowania” i złożoności modelu: np. W regresji grzbietu złożoność jest mierzona przez sumę kwadratów współczynników - w efekt ten nakłada koszty na zmniejszenie błędu - zwiększenie współczynników będzie dozwolone tylko wtedy, gdy ma wystarczająco dużą redukcję błędu dopasowania [to, jak duże jest wystarczająco duże, określa mnożnik terminu złożoności modelu]. Dlatego mamy nadzieję, że wybierając odpowiedni mnożnik nie będziemy pasować do dodatkowego małego szumu, ponieważ poprawa dopasowania nie uzasadnia wzrostu współczynników.
Zapytałeś, dlaczego duże współczynniki poprawiają jakość dopasowania. Zasadniczo powodem jest to, że oszacowana funkcja (sin + hałas) nie jest wielomianem, a duże zmiany krzywizny wymagane do przybliżenia efektu szumu z wielomianami wymagają dużych współczynników.
Zauważ, że użycie ortogonalnych wielomianów nie daje żadnego efektu (dodałem przesunięcie 0,1 tylko po to, aby ortogonalne i surowe wielomiany nie były na sobie)
źródło