Nonparametric

為什麼高斯過程模型稱為非參數模型?

  • December 27, 2012

我有點困惑。為什麼高斯過程稱為非參數模型?

他們確實假設函數值或它們的子集具有均值為 0 的高斯先驗,並且協方差函數作為核函數給出。這些核函數本身有一些參數(即超參數)。

那麼為什麼它們被稱為非參數模型呢?

我首先要說的是,“非參數”或“半參數”等的含義並不總是很清楚。在評論中,whuber 似乎有一些正式的定義(可能類似於選擇模型來自某個家庭在哪裡是無限維的),但我會很隨意。有些人可能會爭辯說,非參數方法是您使用的參數的有效數量隨著數據的增加而增加的方法。我認為 videolectures.net 上有一個視頻,其中(我認為)Peter Orbanz 就我們如何定義“非參數”給出了四五種不同的看法。

因為我想我知道你的想法是什麼,為了簡單起見,我假設你正在談論使用高斯過程進行回歸,以一種典型的方式:我們有訓練數據我們有興趣對條件均值進行建模. 我們寫

也許我們如此大膽地假設是獨立同分佈且正態分佈的,.將是一維的,但一切都會延續到更高的維度。 如果我們的然後可以連續取值可以被認為是(不可數)無限維的參數。因此,在我們估計一個無限維參數的意義上,我們的問題是一個非參數問題。貝葉斯方法確實有一些參數到處浮動。但實際上,它被稱為非參數,因為我們正在估計無限維度的東西。我們使用的 GP 先驗將質量分配給每個連續函數的每個鄰域,因此他們可以任意很好地估計任何連續函數。

協方差函數中的東西所起的作用類似於通常的頻率估計器中的平滑參數——為了使問題不是絕對沒有希望的,我們必須假設存在一些我們期望看到的結構展示。貝葉斯通過使用高斯過程形式的連續函數空間的先驗來實現這一點。從貝葉斯的角度來看,我們正在編碼關於通過假設是從具有某種協方差函數的 GP 中得出的。先驗有效地懲罰了因為太複雜。

編輯計算問題

大多數(全部?)這些東西都在 Rasmussen 和 Williams 的 Gaussian Process 書中。

對於全科醫生來說,計算問題很棘手。如果我們天真地進行,我們將需要大小內存只是為了保存協方差矩陣和(事實證明)操作來反轉它。我們可以做一些事情來使事情變得更加可行。一種選擇是注意我們真正需要的那個人是, 的解決方案在哪裡是協方差矩陣。共軛梯度法正好解決了這個問題計算,但如果我們滿足自己的近似解,我們可以在之後終止共軛梯度算法步驟並執行計算。我們也不一定需要存儲整個矩陣立刻。

所以我們已經從到,但這仍然是二次縮放的,所以我們可能不高興。下一個最好的事情是使用數據的一個子集,比如大小其中反轉和存儲矩陣還不錯。當然,我們不想只是丟棄剩餘的數據。回歸量方法的子集指出,我們可以推導出 GP 的後驗均值作為數據的回歸在由我們的協方差函數確定的數據相關基函數;所以我們把所有東西都扔了這些離開了,我們已經到了計算。

存在其他幾個潛在的選擇。我們可以構造一個低秩近似, 並設置在哪裡是和等級; 它變成反轉在這種情況下,可以通過反轉來完成. 另一種選擇是選擇稀疏的協方差函數並使用共軛梯度方法 - 如果協方差矩陣非常稀疏,那麼這可以大大加快計算速度。

引用自:https://stats.stackexchange.com/questions/46588

comments powered by Disqus