Problem zabawki z regresją procesu Gaussa


9

Próbowałem uzyskać intuicję w regresji procesu Gaussa, więc podjąłem prosty problem z zabawką 1D, aby wypróbować. wziąłemxja={1,2),3)} jako dane wejściowe, oraz yi={1,4,9}jako odpowiedzi. („Inspirowane” zy=x2)

Do regresji użyłem standardowej kwadratowej wykładniczej funkcji jądra:

k(xp,xq)=σf2exp(12l2|xpxq|2)

Założyłem, że z odchyleniem standardowym był hałas σn, dzięki czemu macierz kowariancji stała się:

Kpq=k(xp,xq)+σn2δpq

Hiperparametry (σn,l,σf)zostały oszacowane przez maksymalizację logarytmu prawdopodobieństwa danych. Aby dokonać prognozy w punkciexZnalazłem odpowiednio średnią i wariancję w następujący sposób

μx=kT(K+σn2I)1y
σx2=k(x,x)kT(K+σn2I)1k

gdzie k jest wektorem kowariancji pomiędzy x i dane wejściowe, oraz y jest wektorem wyników.

Moje wyniki dla 1<x<3)pokazano poniżej. Niebieska linia jest średnią, a czerwone linie oznaczają standardowe przedziały odchyleń.

Wyniki

Nie jestem jednak pewien, czy to prawda; moje dane wejściowe (oznaczone „X”) nie leżą na niebieskiej linii. Widzę większość przykładów przecinających dane wejściowe. Czy należy się tego spodziewać?


1
Gdybym musiał zgadywać, w przykładach, na które patrzyłeś, nie było błędu resztkowego. W takim przypadku linia przechodzi przez wszystkie punkty.
facet

@ Dobrze dokładnie.

Odpowiedzi:


10

Średnia funkcja przechodząca przez punkty danych jest zwykle oznaką nadmiernego dopasowania. Optymalizacja hiperparametrów przez maksymalizację marginalnego prawdopodobieństwa będzie sprzyjać bardzo prostym modelom, chyba że będzie wystarczającej ilości danych, aby uzasadnić coś bardziej złożonego. Ponieważ masz tylko trzy punkty danych, które są mniej więcej w linii z niewielkim hałasem, znaleziony model wydaje mi się dość rozsądny. Zasadniczo dane można albo wyjaśnić jako liniową funkcję leżącą u podstaw z umiarkowanym szumem, albo umiarkowanie nieliniową funkcję leżącą u podstawy z niewielkim hałasem. Ta pierwsza jest prostszą z dwóch hipotez i jest faworyzowana przez „brzytwę Ockhama”.


Dzięki za wkład. Czy możesz mi powiedzieć więcej o „nadmiernym dopasowaniu”; czy jest to cecha pozytywna / negatywna?
Comp_Warrior

nadmierne dopasowanie jest rzeczą negatywną, oznacza to po prostu, że model zapamiętuje losową zmienność danych, co zwykle pogarsza wydajność uogólnienia. Idealnie byłoby, gdyby model poznał podstawową formę danych, ignorując hałas je zanieczyszczający. Większość dobrych podręczników do uczenia maszynowego omówi to na początku rozdziału.
Dikran Torbacz

po prostu z zainteresowania, dlaczego głosować?
Dikran Torbacz

Nie głosowałem cię; w rzeczywistości głosowałem!
Comp_Warrior

2
nie ma problemu Comp_Warrior, nie sądziłem, że to ty, ale ktoś odmówił mojej odpowiedzi i chętnie podzielę się z Tobą opinią na temat przyczyny. Wszyscy jesteśmy omylni i jeśli mam coś złego w odpowiedzi, chętnie to naprawię.
Dikran Marsupial

7

Używasz estymatorów Kriginga z dodatkiem terminu szumu (znanego jako efekt samorodek w literaturze procesowej Gaussa). Jeśli wartość szumu została ustawiona na zero, tzn.

σn2)δpq=0

wtedy twoje przewidywania działałyby jak interpolacja i przechodziły przez przykładowe punkty danych.


3

Wydaje mi się to OK, w książce lekarza ogólnego autorstwa Rasmussena zdecydowanie pokazuje przykłady, w których funkcja średniej nie przechodzi przez każdy punkt danych. Zauważ, że linia regresji jest oszacowaniem dla funkcji leżącej u podstaw i zakładamy, że obserwacje są wartościami funkcji leżącymi u podstaw plus szum. Jeśli linia regresji oparta na wszystkich trzech punktach zasadniczo mówi, że w obserwowanych wartościach nie ma hałasu.

Możesz wymusić założenie, że nie ma hałasu, ustawiając σn=0i po prostu optymalizując inne hiper-parametry.

Podejrzewam też, że hiper-parmeter l jest ustawiany na stosunkowo dużą wartość, co daje bardzo płytką funkcję.

Możesz spróbować trzymać lnaprawiono przy różnych mniejszych wartościach i zobacz, jak to zmienia krzywą. Może gdybyś zmusiłl aby być nieco mniejszym, linia regresji przejdzie przez wszystkie punkty danych.

Jak zauważył Dikran Marsupial, jest to wbudowana funkcja Procesów Gaussa, krańcowe prawdopodobieństwo karze modele, które są zbyt specyficzne i preferuje te, które mogą wyjaśnić wiele zestawów danych.

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.