Chyba wiem, do czego zmierzał mówca. Osobiście nie do końca się z nią zgadzam, a wiele osób tego nie robi. Ale żeby być uczciwym, jest też wielu, którzy to robią :) Przede wszystkim zauważ, że określenie funkcji kowariancji (jądra) oznacza określenie wcześniejszego podziału na funkcje. Po prostu przez zmianę jądra, realizacje procesu Gaussa zmieniają się drastycznie, od bardzo płynnych, nieskończenie różnych funkcji generowanych przez jądro Squared Exponential
na „kolczaste”, nieróżniczkowe funkcje odpowiadające jądru wykładniczemu (lub jądru Matern z )ν= 1 / 2
Innym sposobem, aby to zobaczyć, jest zapisanie średniej predykcyjnej (średniej prognoz procesu Gaussa, uzyskanej przez warunkowanie GP na punktach treningowych) w punkcie testowym , w najprostszym przypadku funkcji średniej zerowej:x∗
y∗= k∗ T( K+ σ2)ja)- 1y
gdzie jest wektorem kowariancji między punktem testowym a punktami treningowymi , jest macierzą kowariancji punktów treningowych, jest terminem hałasu (właśnie ustawiony jeśli twój wykład dotyczył prognoz bezszumowych, tj. interpolacji Procesu Gaussa), a jest wektorem obserwacji w zestawie treningowym. Jak widać, nawet jeśli średnia dla GP GP wynosi zero, średnia predykcyjna wcale nie jest zerowa, a w zależności od jądra i liczby punktów treningowych może to być bardzo elastyczny model, zdolny do uczenia się niezwykle złożone wzory.k∗x 1 , … , x n K σ σ = 0 y = ( y 1 , … , y n )x∗x1, … , XnK.σσ= 0y =( y1, … , Yn)
Mówiąc bardziej ogólnie, to jądro definiuje właściwości generalizacji GP. Niektóre jądra mają uniwersalną właściwość aproksymacji , tzn. Są w zasadzie zdolne do aproksymacji dowolnej funkcji ciągłej na zwartym podzbiorze, z dowolną określoną maksymalną tolerancją, przy wystarczającej liczbie punktów treningowych.
Dlaczego więc miałbyś przejmować się średnią funkcją? Przede wszystkim prosta funkcja średnia (liniowa lub ortogonalna wielomianowa) sprawia, że model jest znacznie bardziej interpretowalny, a tej przewagi nie należy lekceważyć w przypadku modelu tak elastycznego (a więc skomplikowanego) jak GP. Po drugie, w pewnym sensie rodzaj średniej zerowej (lub, o ile jest warta, także stałej średniej) GP jest do bani w przewidywaniu daleko od danych treningowych. Wiele stacjonarnych jąder (z wyjątkiem jąder okresowych) jest takich, że dladist ( x i , x ∗ ) → ∞ y ∗ ≈ 0k ( xja- x∗) → 0dyst( xja, x∗) → ∞. Ta zbieżność do zera może nastąpić zaskakująco szybko, szczególnie w przypadku jądra Squared Exponential, a zwłaszcza gdy potrzebna jest krótka długość korelacji, aby dobrze dopasować zestaw treningowy. Tak więc lekarz GP z funkcją średniej zerowej niezmiennie przewiduje jak tylko wyjdziesz z zestawu treningowego.y∗≈ 0
Teraz może to mieć sens w Twojej aplikacji: w końcu często złym pomysłem jest używanie modelu opartego na danych do wykonywania prognoz z dala od zestawu punktów danych używanych do szkolenia modelu. Zobacz tutaj wiele interesujących i zabawnych przykładów, dlaczego może to być zły pomysł. Pod tym względem średnia wartość zerowa GP, która zawsze zbliża się do 0 od zestawu treningowego, jest bezpieczniejsza niż model (taki jak na przykład model wielowymiarowy wielowymiarowy ortogonalny model wielomianowy), który chętnie wyrzuci szalenie duże prognozy, gdy tylko uciekasz od danych treningowych.
W innych przypadkach możesz jednak chcieć, aby Twój model zachowywał pewne zachowanie asympotyczne, co nie jest zbieżne ze stałą. Być może względy fizyczne mówią ci, że dla wystarczająco dużego, twój model musi stać się liniowy. W takim przypadku potrzebujesz funkcji średniej liniowej. Ogólnie rzecz biorąc, gdy globalne właściwości modelu są interesujące dla twojej aplikacji, musisz zwrócić uwagę na wybór średniej funkcji. Jeśli interesuje Cię tylko lokalne (w pobliżu punktów treningowych) zachowanie twojego modelu, wtedy zero lub stała średnia GP może być więcej niż wystarczająca.x∗