1. 程式人生 > >高斯過程的模擬/取樣/生成

高斯過程的模擬/取樣/生成

在常用程式語言中,很容易生成一個高斯隨機變數的取樣(例如Matlab的randn函式),但是怎樣生成給定均值函式和方差函式的高斯過程的取樣呢?

問題

已知高斯過程的均值函式μ(t)以及相關函式r(t1,t2),欲生成N個符合此高斯過程的取樣x(n),n=1,2...N
均值函式只要最後累加上即可。難點是如何生成滿足相關性要求的取樣。

步驟

  • 生成N個時間取樣點t=[t1,t2...tN]
  • 計算N個取樣點之間的相關函式取值矩陣:C,cij=r(ti,tj)
  • C進行SVD分解,由於協方差矩陣對稱,有:C=USUT
  • 生成N個獨立同分布的高斯隨機變數y=[y1,y2...yN],均值為0,方差為1
  • x=USy即為該隨機過程在N個時刻的取樣。

證明

時間節點i處的隨機變數zi=UiSy,其中UiU的第i行,S為對角陣。
時間節點i和j處隨機變數的相關:

r(zi,zj)=E(zizj)=E(UiSyUjSy)=Ek1Uik1Sk1yk1k2Ujk2Sk2yk2
由於y在每一時刻獨立,上式的兩個求和相乘中,只有k1=k2的項期望非零。
r(zi,zj)=E(kUikUjkSky2k)=kUikUjkSk=cij

注意

在google搜尋generate gaussian process很容易找到StackExchange上的這個

問題
排名最高的答案給出了一種線上的方法:每次從前一個取樣生成下一個取樣:

xi+1=ρxi+1ρ2zi+1

其中ρ是向量兩個時間取樣的相關函式取值。zi是獨立同分布高斯,均值為0,方差為1。
這個答案本身是正確的,但要注意只適用於特殊相關函式的情況:r(nδt)=r(δt)n

相關推薦

過程模擬/取樣/生成

在常用程式語言中,很容易生成一個高斯隨機變數的取樣(例如Matlab的randn函式),但是怎樣生成給定均值函式和方差函式的高斯過程的取樣呢? 問題 已知高斯過程的均值函式μ(t)以及相關函式r(t1,t2),欲生成N個符合此高斯過程的取樣x(n),n=

過程(GP)

gin 也有 給定 定義 表達 hle es2017 .com 接下來 GP的定義:對於任意集合S,S上的高斯過程(GP)是隨機變量序列(Zt:t∈S)的一個集合,使得所有n∈N,所有t1,t2……,tn∈S,(Zt1,Zt2,……,Ztn)是多維高斯。如果S集合中的元素個

過程(轉)

完全 核函數 -h 讓我 alpha 例如 其他 left size http://36kr.com/p/5114423.html http://bridg.land/posts/gaussian-processes-1 http://www.gaussianproce

(轉載) 淺談過程回歸

ood 兩個 相關性 plot font ron 模型 如何 隨機過程 網上講高斯過程回歸的文章很少,且往往從高斯過程講起,我比較不以為然:高斯過程回歸(GPR), 終究是個離散的事情,用連續的高斯過程( GP) 來闡述,簡直是殺雞用牛刀。所以我們這次直接從離散的

機器學習的過程-前言

譯 前言   在過去十年中,機器學習的“核心機器”領域出現了大量工作。 可能最著名的例子是支援向量機,但在此期間,高斯過程模型應用於機器學習任務的活動也很多。 本書的目標是為該領域提供系統統一的處理。 高斯過程為核心機器中的學習提供了一種原則的,實用的概率方法。

淺談:過程與貝葉優化

        高斯過程(Gaussian process)         高斯過程常在論文裡面簡寫為GP。定義:如果隨機過程的有限維分佈均為正態分佈,則稱此隨機過程為高斯過程或正態過程。         首先我們來解讀一下定義:         第一個問題:什麼是隨

《隨機過程》學習筆記--過程()

高斯過程之條件分佈(Conditional Distribution) 設X=(X1,X2)∈Rm×n∼N(μ,Σ),其中X1∈Rm,X2∈Rn,μ=(μ1,μ2),μ1=E(X1),μ2=E(X2)

機器學習中的過程

轉自:http://www.datalearner.com/blog/1051459170229238   關於高斯過程,其實網上已經有很多中文部落格的介紹了。但是很多中文部落格排版實在是太難看了,而且很多內容介紹也不太全面,搞得有點雲裡霧裡的。因此,我想自己發

說說過程迴歸

作者介紹:新浪微博ID@妖僧老馮,9月將赴南京大學(直博生),方向是機器學習與資料探勘 編者:小便和作者打過幾次交道,一直以為是他是已“修成正果”的某某博士,便“畢恭畢敬”地去邀請他寫篇牛文。細聊之後才得知小夥子原來是90後,9月份才博士入學。這篇文章對GP進行了深度科

《隨機過程》學習筆記--過程(1)

高斯過程(1)(Gauss Processes) n-Dimensional Joint Gauss Distribution n隨機變數X(t),對∀n,∀t1,t2,⋯,tn,記(X(t1)

淺析過程迴歸(Gaussian process regression)

前言              高斯過程迴歸的和其他迴歸演算法的區別是:一般迴歸演算法給定輸入X,希望得到的是對應的Y值,擬合函式可以有多種多樣,線性擬合、多項式擬合等等,而高斯迴歸是要得到函式f(x)的分佈,那麼是如何實現的呢?         對於資料集 ,令 

機器學習-過程,隨機過程迴歸

網上講高斯過程迴歸的文章很少,且往往從高斯過程講起,我比較不以為然:高斯過程迴歸(GPR), 終究是個離散的事情,用連續的高斯過程( GP) 來闡述,簡直是殺雞用牛刀。所以我們這次直接從離散的問題搞起,然後把高斯過程逆推出來。   這篇部落格有兩個彩蛋,一個是揭示了高斯過程迴歸和Ridge迴歸的聯絡,另一

過程的優點和缺點

高斯過程的優點是: 1.預測值是觀察值的插值(至少對於普通的核是這樣的) 2.預測值是概率的(高斯),因此我們可以計算經驗置信區間,然後根據這些資訊,在某個感興趣區域重新擬合(線上擬合,自適應擬合)

sklearn文件 — 1.7. 過程

高斯過程(GP)是一種被設計來解決 迴歸 和 概率分類 的通用監督學習方法。 高斯過程有以下的優點: 可以預測插值(至少對常規核而言)預測是概率的(高斯分佈的)結果,因此可以根據置信區間的計算以決定是否要在一些感興趣的區域重新進行擬合(線上擬合,自適應擬合)。可以指定不同的 核 。預設是提供了一個普通核

【貝葉分析⑦】過程

貝葉斯框架下, 可以用高斯過程來估計一個函式 f : R→R. 對於每個xi, f(xi)可以用一個均值方差暫未知的高斯分佈來建模。因為連續空間的xi可以有無限個,擬合一個函式的高斯過程其實一個無限維的多元高斯。實際中,不管是我們的給定資料{(x, y)},還是測試點{x*}

1.7. 過程(Gaussian Processes)

1.7.2.3. 經驗最佳線性無偏預測(EBLUP,The empirical best linear unbiased predictor) 直到如今, 自相關模型和迴歸模型都是假設給定的。然而實際上,不能夠提前知道是這些模型的,因此要為這些模型 相關性模型(Correlation Models) 做

過程到貝葉優化

ext 分布 variant 維度 info 為什麽 向量 開發 分享圖片 第一篇博客,淺談自己對高斯過程和貝葉斯優化的理解,有誤處歡迎指正。 一. 高斯過程回歸   1. 高斯過程到底是個什麽東西?!   簡單來說,高斯過程可以看成是一個函數,函數的輸入是x,函數的

生成學習演算法_判別分析_樸素貝葉_斯坦福CS229_學習筆記

Part IV Generative Learning Algorithms 回顧上一部分的內容,我們解決問題的出發點在於直接對p(y|x;)建模:如線性迴歸中y建模為高斯分佈,邏輯迴歸y建模為伯努利分佈。這樣建模的好處在於可以直接得到x到y的對映關係,理解起來也比較直接。這樣建模

python 多維分佈資料生成

import numpy as np import matplotlib.pyplot as plt def gen_clusters(): mean1 = [0,0] cov1 = [[1,0],[0,10]] data = np.random.multi

生成模型--判別+樸素貝葉

分類演算法: 判別學習演算法(logistic二元分類器,softmax分類器..)特點:直接去求條件概率分佈 p(y|x; θ), 也表示為 hθ(x),重點是去擬合引數θ 生成學習算(中心思想是直接去求p(y|x; θ)很難,然後轉而去求聯合分佈 p(x,y), 然後利用貝葉斯