0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

機器學(xué)習筆記之高斯過程(下)

jf_78858299 ? 來源:人工智能大講堂 ? 作者:人工智能大講堂 ? 2023-05-30 16:50 ? 次閱讀

我們可以將輸出繪制成輸入的函數(shù)圖像。下面的線只是一個常規(guī)的非隨機函數(shù),即weight=g(height)或y=g(x)。

圖片

在本節(jié)中,我們使用符號g(x)表示一個非隨機函數(shù),而使用f(x)表示一個隨機函數(shù)。

為了更輕松地生成訓(xùn)練數(shù)據(jù),我們將切換到一個新模型y=sin(x)。我們使用這個方程生成2個訓(xùn)練數(shù)據(jù)點(下面的2個藍點)來構(gòu)建一個高斯模型。然后從圖片中采樣三次,如下面的三條實線所示。

圖片

我們看到,這2個訓(xùn)練數(shù)據(jù)點強制圖片在藍點相交。如果我們持續(xù)采樣,我們將開始直觀地識別每個圖片圖片的平均值和范圍。例如,下面的紅點和藍線估計了圖片=?3.8時圖片的均值和方差。由于圖片介于2個訓(xùn)練點之間,因此估計具有相對較高的不確定性(由σ表示)。

圖片

在下面的圖中,我們有5個訓(xùn)練數(shù)據(jù),并從圖片中采樣30條線。紅色虛線表示圖片的均值輸出值圖片,灰色區(qū)域是離圖片不超過2圖片的范圍。圖片

如前所述,每條線都像一個函數(shù),將輸入映射到輸出:y=g(x)。我們從許多可能的函數(shù)g開始,但是訓(xùn)練數(shù)據(jù)集會降低或增加某些函數(shù)的可能性。從技術(shù)上講,圖片模擬了給定訓(xùn)練數(shù)據(jù)集的函數(shù)g的可能性分布(上述繪制的線的概率分布)。

高斯過程(GP)的特點是構(gòu)建高斯模型來描述函數(shù)的分布。

我們不會通過采樣來解決這個問題,而是通過分析方法來解決。

回到:

圖片

我們可以將表達式推廣為以下形式,其中f是訓(xùn)練集的標簽(體重),圖片是我們要預(yù)測圖片的體重。現(xiàn)在我們需要使用高斯模型來解決p(圖片|f)的問題。

圖片

回想一下之前關(guān)于多元高斯定理的部分,如果我們有一個模型:

圖片

我們可以通過以下方式求圖片

圖片

現(xiàn)在,我們應(yīng)用這些公式來解決p(圖片|f)的問題:

圖片

對于訓(xùn)練數(shù)據(jù)集,假設(shè)輸出標簽f服從高斯分布:

圖片

并且假設(shè)圖片的高斯分布為:

圖片

其中,L定義為:

圖片

然后根據(jù)多元高斯定理,我們有:

圖片

我們將應(yīng)用這些公式來模擬采樣自y=sin(x)的訓(xùn)練數(shù)據(jù)。在這個例子中,由于sin函數(shù)的均值為0,所以μ=圖片=0。因此,我們的方程將簡化為:

圖片

請注意,矩陣K可能難以求逆。因此,我們首先應(yīng)用Cholesky分解對K進行分解,然后應(yīng)用線性代數(shù)來解決圖片。

圖片

表示使用線性代數(shù)方法來求Ax=b方程的解x。

在求圖片之前,我們需要預(yù)先計算一些項:

圖片

應(yīng)用圖片和上面的方程:

圖片

現(xiàn)在我們有計算圖片圖片的方程:

代碼

首先,準備訓(xùn)練數(shù)據(jù),并通過sin函數(shù)打標簽。訓(xùn)練數(shù)據(jù)包含5個數(shù)據(jù)點(圖片=?4,?3,?2,?1和1)。

Xtrain = np.array([-4, -3, -2, -1, 1]).reshape(5,1)
ytrain = np.sin(Xtrain)      # Our output labels.

測試數(shù)據(jù):我們創(chuàng)建50個新數(shù)據(jù)點,在-5和5之間線性分布,由高斯過程進行預(yù)測。

# 50 Test data
n = 50
Xtest = np.linspace(-5, 5, n).reshape(-1,1)

在這里,我們定義一個核函數(shù),使用指數(shù)平方核度量兩個數(shù)據(jù)點之間的相似性。

# A kernel function (aka Gaussian) measuring the similarity between a and b. 1 means the same.
def kernel(a, b, param):
    sqdist = np.sum(a**2,1).reshape(-1,1) + np.sum(b**2,1) - 2*np.dot(a, b.T)
    return np.exp(-.5 * (1/param) * sqdist)

計算核(K,圖片,圖片):

K = kernel(Xtrain, Xtrain, param)                        # Shape (5, 5)
K_s = kernel(Xtrain, Xtest, param)                       # Shape (5, 50)
K_ss = kernel(Xtest, Xtest, param)                       # Kss Shape (50, 50)

我們將使用Cholesky分解對K進行分解,即圖片。

L = np.linalg.cholesky(K + 0.00005*np.eye(len(Xtrain)))  # Shape (5, 5)

計算我們的預(yù)測的輸出均值圖片。由于我們假設(shè)μ?=μ=0,因此該方程變?yōu)椋?/p>

圖片

L = np.linalg.cholesky(K + 0.00005*np.eye(len(Xtrain)))  # Add some nose to make the solution stable 
                                                         # Shape (5, 5)


# Compute the mean at our test points.
Lk = np.linalg.solve(L, K_s)                             # Shape (5, 50)
mu = np.dot(Lk.T, np.linalg.solve(L, ytrain)).reshape((n,)) # Shape (50, )

計算 σ

# Compute the standard deviation.
s2 = np.diag(K_ss) - np.sum(Lk**2, axis=0)               # Shape (50, )
stdv = np.sqrt(s2)                                       # Shape (50, )

采樣圖片以便我們可以繪制它的圖像。

圖片

使用μ和L作為方差來對其進行采樣:

圖片

L = np.linalg.cholesky(K_ss + 1e-6*np.eye(n) - np.dot(Lk.T, Lk))    # Shape (50, 50)
f_post = mu.reshape(-1,1) + np.dot(L, np.random.normal(size=(n,5))) # Shape (50, 3)

我們采樣了3個可能的輸出,分別用橙色、藍色和綠色線表示?;疑珔^(qū)域是離μ不超過2σ的范圍。藍點是我們的訓(xùn)練數(shù)據(jù)集。在藍點處,σ更接近于0。對于訓(xùn)練數(shù)據(jù)點之間的點,σ增加反映了它的不確定性,因為它不接近訓(xùn)練數(shù)據(jù)點。當我們移動到x=1之外時,就沒有更多的訓(xùn)練數(shù)據(jù)了,并且導(dǎo)致σ變大。

圖片

這是另一個在觀察5個數(shù)據(jù)點后的后驗概率圖。藍點是我們的訓(xùn)練數(shù)據(jù)點,灰色區(qū)域展示了預(yù)測的不確定性(方差)。

圖片

高斯混合模型

高斯混合模型是一種概率模型,它假設(shè)所有數(shù)據(jù)點都來自于高斯分布的混合物。

對于K=2,我們將有兩個高斯分布G1=(μ1,σ21)和G2=(μ2,σ22)。我們從隨機初始化參數(shù)μ和σ開始。高斯混合模型嘗試將訓(xùn)練數(shù)據(jù)點適合到G1和G2中,然后重新計算它們的參數(shù)。數(shù)據(jù)點被重新擬合并且參數(shù)再次計算。迭代將繼續(xù)直到解決方案收斂。

圖片

圖片

EM算法

使用隨機值初始化G1和G2的參數(shù)(μ1,σ21)和(μ2,σ22),并將P(a)=P(b)=0.5。

對于所有的訓(xùn)練數(shù)據(jù)點x1,x2,?,計算它屬于a(G1)或b(G2)的概率。

圖片

現(xiàn)在,我們重新計算G1和G2的參數(shù):

圖片

重新計算先驗概率:

圖片

對于多元高斯分布,其概率分布函數(shù)為:

圖片

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 函數(shù)
    +關(guān)注

    關(guān)注

    3

    文章

    4240

    瀏覽量

    61998
  • 機器學(xué)習
    +關(guān)注

    關(guān)注

    66

    文章

    8308

    瀏覽量

    131892
  • gpa
    gpa
    +關(guān)注

    關(guān)注

    0

    文章

    7

    瀏覽量

    4661
  • 高斯分布
    +關(guān)注

    關(guān)注

    0

    文章

    6

    瀏覽量

    2737
收藏 人收藏

    評論

    相關(guān)推薦

    機器學(xué)習基石筆記

    3)機器學(xué)習基石筆記 Lecture3:Types of Learning
    發(fā)表于 05-26 14:53

    吳恩達機器學(xué)習筆記分享

    吳恩達機器學(xué)習筆記 —— 1 緒論:初識機器學(xué)習
    發(fā)表于 06-05 17:42

    機器學(xué)習筆記之BP推導(dǎo)

    機器學(xué)習筆記:BP推導(dǎo)
    發(fā)表于 06-15 17:11

    高斯過程回歸GPR和多任務(wù)高斯過程MTGP

    文章目錄高斯過程回歸多任務(wù)高斯過程文獻閱讀文獻[1]文獻[2]文獻[3]文獻[4]文獻[5]文獻[6]編程實現(xiàn)參考文獻和資料本文介紹了高斯
    發(fā)表于 06-30 06:59

    基于高斯過程回歸學(xué)習的頻譜分配算法

    針對認知無線網(wǎng)絡(luò)中認知用戶的頻譜分配問題,提出了一種基于拍賣理論和高斯過程回歸學(xué)習的頻譜分配算法。該算法基于VCG拍賣模型,考慮認知用戶對通信質(zhì)量的要求,構(gòu)造出更有效的收益函數(shù)。在頻譜拍賣過程
    發(fā)表于 11-30 10:40 ?0次下載
    基于<b class='flag-5'>高斯</b><b class='flag-5'>過程</b>回歸<b class='flag-5'>學(xué)習</b>的頻譜分配算法

    機器學(xué)習的個人學(xué)習筆記

    本文檔的主要內(nèi)容詳細介紹的是機器學(xué)習的個人學(xué)習筆記免費下載。
    發(fā)表于 03-01 09:28 ?22次下載
    <b class='flag-5'>機器</b><b class='flag-5'>學(xué)習</b>的個人<b class='flag-5'>學(xué)習</b><b class='flag-5'>筆記</b>

    python機器學(xué)習筆記資料免費下載

    本文檔的主要內(nèi)容詳細介紹的是python機器學(xué)習筆記資料免費python機器學(xué)習筆記資料免費下載
    發(fā)表于 03-01 10:09 ?39次下載

    什么是高斯過程 神經(jīng)網(wǎng)絡(luò)高斯過程解析

    神經(jīng)網(wǎng)絡(luò)是怎么和高斯過程聯(lián)系在一起的呢?Lee et al. [1] and Neal [2] 指出,隨機初始化無限寬網(wǎng)絡(luò)的參數(shù)會產(chǎn)生一個高斯過程,稱作神經(jīng)網(wǎng)絡(luò)
    發(fā)表于 08-10 11:25 ?4241次閱讀

    機器學(xué)習筆記之高斯過程(上)

    高斯分布 我們定義一個將輸入x映射到輸出y的函數(shù)圖片,在統(tǒng)計學(xué)中,我們使用隨機模型來定義這種關(guān)系的概率分布。例如,一個3.8 GPA的學(xué)生可以獲得平均$60K的薪水,方差(σ2)為$10K
    的頭像 發(fā)表于 05-30 16:49 ?1483次閱讀
    <b class='flag-5'>機器</b><b class='flag-5'>學(xué)習</b><b class='flag-5'>筆記</b><b class='flag-5'>之高斯</b><b class='flag-5'>過程</b>(上)

    PyTorch教程18.1之高斯過程簡介

    電子發(fā)燒友網(wǎng)站提供《PyTorch教程18.1之高斯過程簡介.pdf》資料免費下載
    發(fā)表于 06-05 10:46 ?0次下載
    PyTorch教程18.1<b class='flag-5'>之高斯</b><b class='flag-5'>過程</b>簡介

    PyTorch教程18.2之高斯過程先驗

    電子發(fā)燒友網(wǎng)站提供《PyTorch教程18.2之高斯過程先驗.pdf》資料免費下載
    發(fā)表于 06-05 10:47 ?0次下載
    PyTorch教程18.2<b class='flag-5'>之高斯</b><b class='flag-5'>過程</b>先驗

    PyTorch教程18.3之高斯過程推理

    電子發(fā)燒友網(wǎng)站提供《PyTorch教程18.3之高斯過程推理.pdf》資料免費下載
    發(fā)表于 06-05 10:48 ?0次下載
    PyTorch教程18.3<b class='flag-5'>之高斯</b><b class='flag-5'>過程</b>推理

    PyTorch教程-18.1. 高斯過程簡介

    SageMaker Studio Lab 中打開筆記本 在許多情況,機器學(xué)習相當于從數(shù)據(jù)中估計參數(shù)。這些參數(shù)通常很多且相對難以解釋——例如神經(jīng)網(wǎng)絡(luò)的權(quán)重。相比之下,
    的頭像 發(fā)表于 06-05 15:44 ?759次閱讀
    PyTorch教程-18.1. <b class='flag-5'>高斯</b><b class='flag-5'>過程</b>簡介

    PyTorch教程-18.2. 高斯過程先驗

    SageMaker Studio Lab 中打開筆記本 了解高斯過程 (GP) 對于推理模型構(gòu)建和泛化以及在各種應(yīng)用中實現(xiàn)最先進的性能非常重要,包括主動學(xué)習和深度
    的頭像 發(fā)表于 06-05 15:44 ?721次閱讀
    PyTorch教程-18.2. <b class='flag-5'>高斯</b><b class='flag-5'>過程</b>先驗

    PyTorch教程-18.3。高斯過程推理

    18.3。高斯過程推理? Colab [火炬]在 Colab 中打開筆記本 Colab [mxnet] Open the notebook in Colab Colab [jax
    的頭像 發(fā)表于 06-05 15:44 ?888次閱讀
    PyTorch教程-18.3。<b class='flag-5'>高斯</b><b class='flag-5'>過程</b>推理