Jak porównać dwa procesy Gaussa?


14

Rozbieżność Kullbacka-Leiblera to metryka służąca do porównania dwóch funkcji gęstości prawdopodobieństwa, ale jaką metrykę stosuje się do porównania XX i Y dwóch GP Y?


d ( X , Y ) = E [ sup t | X ( t ) - Y ( t ) | ]d(X,Y)=E[supt|X(t)Y(t)|]
Zen

@Zen: Jeśli masz czas, chcę dowiedzieć się więcej o tej metodzie odległości.
Neil G

Cześć Neil. Niewiele o tym wiem. Proszę zobaczyć moją odpowiedź poniżej.
Zen

Odpowiedzi:


8

Uwaga, że rozkład procesów Gaussa XRXR jest rozszerzenie wieloczynnikowej Gaussa dla możliwie nieskończonego XX . W ten sposób można użyć rozbieżności KL między rozkładami prawdopodobieństwa GP, całkując przez R XRX :

D K L ( P | Q ) = R X log d Pd Q dP.

DKL(P|Q)=RXlogdPdQdP.

Możesz użyć metod MC do przybliżenia liczbowego tej ilości w dyskretyzowanym XX poprzez wielokrotne próbkowanie procesów zgodnie z ich rozkładem GP. Nie wiem, czy szybkość konwergencji jest wystarczająco dobra ...

Zauważ, że jeśli XX jest skończony z | X | = n|X|=n , następnie wracasz do zwykłej dywergencji KL dla wielu zmiennych Rozkłady normalne: D K L ( G P ( μ 1 , K 1 ) , G P ( μ 2 , K 2 ) ) = 12 (tr(K - 1 2 K1)+(μ2-μ 1 ) K - 1 2 ( μ 2-μ 1 ) - n + log | K 2 || K 1 | )

DKL(GP(μ1,K1),GP(μ2,K2))=12(tr(K12K1)+(μ2μ1)K12(μ2μ1)n+log|K2||K1|)

Jak mogę obliczyć dwa wspomniane średnie (mu1 i mu2). Czy powinienem przyjmować je równe zero jak zwykle w procesie gaussowskim?
Marat Zakirov

4

Pamiętaj, że jeśli X : T × Ω R jest procesem Gaussa ze średnią funkcją m i funkcją kowariancji K , to dla każdego t 1 , , t kT wektor losowy ( X ( t 1 ) , , X ( t k ) ) ma wielowymiarowy rozkład normalny ze średnim wektorem ( m ( t 1 ) , , mX:T×ΩRmKt1,,tkT(X(t1),,X(tk))( t k ) ) i macierz kowariancji Σ = ( σ i j ) = ( K ( t i , t j ) ) , gdzie użyliśmy wspólnego skrótu X ( t ) = X ( t ,(m(t1),,m(tk))Σ=(σij)=(K(ti,tj))) .X(t)=X(t,)

Każda realizacja X (, Ω ) jest prawdziwą funkcją, której domeną jest zbiorem wskaźnik T . Załóżmy, że T = [ 0 , 1 ] . Biorąc pod uwagę dwa procesy Gaussa X i Y , jedna wspólna odległość między dwiema realizacjami X (X(,ω)TT=[0,1]XY, ω ) i Y (X(,ω), ω ) jest sup t [ 0 , 1 ] | X ( t , ω ) - Y ( t , ω ) | . Dlatego wydaje się naturalne zdefiniowanie odległości między dwoma procesami X i Y jako d ( X , Y ) = EY(,ω)supt[0,1]|X(t,ω)Y(t,ω)|XY[ sup t [ 0 , 1 ] | X ( t ) - Y ( t ) | ].( ) Nie wiem, czy istnieje wyrażenie analityczne dla tej odległości, ale wierzę, że można obliczyć przybliżenie Monte Carlo w następujący sposób. Napraw pewną drobną siatkę 0 t 1 < < t k1 i narysuj próbki ( x i 1 , , x i k ) i ( y i 1 , , y i k ) z normalnych losowych wektorów ( X ( t 1 )

d(X,Y)=E[supt[0,1]|X(t)Y(t)|].()
0t1<<tk1(xi1,,xik)(yi1,,yik),,X(tk))(X(t1),,X(tk)) and (Y(t1),,Y(tk)), respectively, for i=1,,N. Approximate d(X,Y) by 1NNi=1max1jk|xijyij|.

How do you sample from each vector? If you only sample the means in each of the GPs you do not take into account the variances. Otherwise you will have to devise a sampling technique that is consistent.
pushkar

This is an excellent resource: gaussianprocess.org/gpml/chapters
Zen

You may also read all the answers to this question: stats.stackexchange.com/questions/30652/…
Zen

Pay attention that this is not a distance since d(X,X)0. As the KL compares two distributions and not two realisations, Zen's distance between two GPs should be defined as d(G1,G2)=EXG1,YG2[supt|X(t)Y(t)|], and we have that EXG,YGsupt|X(t)Y(t)|>0 for non degenerated Gaussian process G.
Emile

@Emile: how is it that d(X,X)0 using definition ()?
Zen
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.