貝葉斯學習--極大後驗假設學習

貝葉斯學習--極大後驗假設學習

標籤: 數據挖掘貝葉斯學習極大後驗假設算法

2014-04-03 17:13 978人閱讀 評論(0) 收藏 舉報函數

 分類:性能

貝葉斯學習(3)  數據挖掘(23) 學習

版權聲明:本文爲博主原創文章,未經博主容許不得轉載。spa

咱們假定學習器考慮的是定義在實例空間X上的有限的假設空間H,任務是學習某個目標概念c:X→{0,1}。如一般那樣,假定給予學習器某訓練樣例序列〈〈x1,d1,〉…〈xmdm〉〉,其中xiX中的某實例,dixi的目標函數值(即di=c(xi))。爲簡化討論,假定實例序列〈x1…xm〉是固定不變的,所以訓練數據D可被簡單地寫做目標函數值序列:D=〈d1…dm〉。.net

基於貝葉斯理論咱們能夠設計一個簡單的算法輸出最大後驗假設設計

Brute-ForceMAP學習算法blog

1.對於H中每一個假設h,計算後驗機率:get

 

2.輸出有最高後驗機率的假設hMAP:數據挖掘

 

此算法須要較大的計算量,由於它對H中每一個假設都應用了貝葉斯公式以計算P(h|D)。

雖然對於大的假設空間這很不切實際,但該算法仍然值得關注,由於它提供了一個標準,以判斷其餘概念學習算法的性能。

下面爲Brute-ForceMAP學習算法指定一學習問題,咱們必須肯定P(h)和P(D|h)分別應取何值(能夠看出,P(D)的值會依這二者而定)。

咱們能夠以任意方法選擇P(h)和P(D|h)的機率分佈,以描述該學習任務的先驗知識。可是先要知足下面的條件假設:

1.訓練數據D是無噪聲的(即di=c(xi));

2.目標概念c包含在假設空間H中;

3.沒有任何理由認爲某假設比其餘的假設的可能性大。

1、如何肯定P(h)的值

 對H中任一h:

               

2、如何選擇P(D|h)的值

 

換言之,給定假設h,數據D的機率在其與假設h一致時值爲1,不然值爲0。

 

接下來考慮該算法的第一步,使用貝葉斯公式計算每一個假設h的後驗機率P(h|D):

一、考慮h與訓練數據D不一致的情形

二、考慮hD一致的狀況

其中:

 

VSH,DH中與D一致的假設子集(即VSH,D是相對於D的變型空間)

概而言之,貝葉斯公式說明在咱們的P(h)和P(D|h)的定義下,後驗機率P(h|D)爲:

其中|VSH,D|是H中與D一致的假設數量。

 

在咱們選定的P(h)和P(D|h)取值下,每一個一致的假設後驗機率爲(1/|VSH,D|),每一個不一致假設後驗機率爲0。所以,每一個一致的假設都是MAP假設。

相關文章
相關標籤/搜索