2017-03-03 23 views
2

我覺得非常愚蠢,不明白什麼在這不起作用。高斯過程:最大對數似然給出無限的結果

我想用一些數據擬合高斯過程。我的協方差函數是基本的平方指數函數:

k(x,x0) =σ0²*exp(-(x-x0)²/(2*λ²)) 

我有三層的超參數,以適應在我的數據:從協方差函數的兩個參數(σ和λ),以及來自假設的σ0我的數據被噪音了。 所以我只需要最小化負對數的可能性,對吧?

logp(y|X,θ) =1/2*t(y)*C(θ)^(−1)*y+1/2log|C(θ)|+(n/2)*log 2π 

θ=(σ,λ,σ0)隨着和C(θ)=K-σ0²*I

式中K爲獲得施鉀在我的X矢量的協方差矩陣。

而唯一的邊界條件是參數需要是正的。

但是,無論我使用哪種優化算法,都會失敗,因爲它直接進入-Inf。 經過幾個小時,我認爲我無法以適當的方式使用優化算法,但我意識到它實際上是非常正常的:

我的σ0和σ直接變爲0,因爲這會給出K = 0, C = 0,所以det(C)= 0,所以我的負面可能性變成-Inf。

這是無稽之談當然,最適合數據的差異不能是0.但我不知道我在這裏做錯了什麼,特別是因爲這個公式是寫在這裏的任何地方,現在我不知道如何優化它可以給σ= 0以外的東西...

我在哪裏錯了?

回答

1

如果您正在擬合某種內核密度或內核密度表面,那麼完全有可能您的代碼沒有任何「錯誤」。

在我看來,隨着你的帶寬接近零,你的擬合表面的對數似然會增加,你的擬合基本上接近你的事件的奇點和其他地方的零點。從可能性的角度來看,這將構成一個「完美」的契合 - 儘管計算上災難性的並且推斷無用。

但是從正面來看,這是星期五。

+0

謝謝你的回答。 我明白你對這種可能性的看法。 但是,那種參數擬合將無法工作,無論數據如何。 我在網上看了幾十個關於這個主題的幻燈片,講義和教程,並且每次都得出結論,超參數很容易找到並進行優化。 例如,在這裏:https://www.robots.ox.ac.uk/~mebden/reports/GPtutorial.pdf(見公式10) 作者很容易找到參數,但我不明白算法不給他σ= 0。 – Mysterry