4. 樸素貝葉斯

簡介

貝葉斯法則: P(A|B)P(B)=P(B|A)P(A)

定義
設輸入空間X爲n維向量的集合, 輸出空間爲類標記集合Y={c1,c2,...,ck] , 輸入爲特徵向量xX , 輸出爲類標記yY , P(X,Y)是X和Y的聯合概率分佈, 訓練數據集T={(x1,y1),(x2,y2),...,(xn,yn) }.
貝葉斯法通過訓練數據集學習聯合概率分佈P(X,Y)
條件獨立性假設:

P(X=x|Y=ck)=P(X1=x1,...,Xn=xn|Y=ck)=j=1nP(Xj=xj|Y=ck)

此處上標表示第j個特徵,樸素貝葉斯法的重要前提

基本方法

樸素貝葉斯分類時, 對給定的輸入x,通過學習到的模型計算後驗概率分佈P(Y=ck|X=x) , 將後驗概率最大的類作爲x的類輸出:

P(X=x)=kP(X=xY=ck)=k(P(X=x|Y=ck)P(Y=ck))P(Y=ck|X=x)=P(X=x|Y=ck)P(Y=ck)P(X=x)=P(X=x|Y=ck)P(Y=ck)k(P(X=x|Y=ck)P(Y=ck))綜合以上公式有: P(Y=ck|X=x)=P(Y=ck)jP(Xj=xj|Y=ck)k(P(Y=ck)jP(Xj=xj|Y=ck))也可表示爲: y=f(x)=argmaxckP(Y=ck)jP(Xj=xj|Y=ck)k(P(Y=ck)jP(Xj=xj|Y=ck))上式分母對所有的k都相同, 所以有: y=argmaxckP(Y=ck)jP(Xj=xj|Y=ck)即使[P(X=x|Y=ck)P(Y=ck))]由聯合分佈=條件分佈*邊緣分佈的關係:P(x,y)=P(y|x)P(x)=P(x|y)P(y)有如下: 1.損失函數的期望(離散): Rexp(f)=E[L(Y,f(X))]=xyL(y,f(x))P(x,y)=xyL(y,f(x))P(y|x)P(x)=x(yL(y,f(x))P(y|x))P(x)=x(k=1L(ck,y)P(ck|x))P(x)=Ex(k=1L(ck,y)P(ck|x))(E[g(X)]=ig(xi)pi)2.損失函數的期望(連續): Rexp(f)=E[L(Y,f(X))]=xyL(y,f(x))P(x,y)dxdy=xyL(y,f(x))P(y|x)P(x)dxdy=x(yL(y,f(x))P(y|x)dy)P(x)dx=Ex(yL(y,f(x))P(y|x)dy)(E[g(X)]=g(x)f(x)dx)以離散變量爲例, 爲了使期望最小化, 只需對X=x逐個極小化, 即: f(x)=argminyk=1KL(ck,y)P(ck|X=x)=argminyk=1KP(yck|X=x)次處L爲0-1損失函數=argminy(1P(y=ck|X=x))=argmaxyP(y=ck|X=x)

根據期望風險最小化就得到了後驗概率最大化

參數估計

y=argmaxckP(Y=ck)jP(Xj=xj|Y=ck)先驗概率的極大似然估計: P(Y=ck)=i=1nI(yi=ck)n,k=1,2,...,k設第j個特徵xj的取值集合爲(aj1,aj2,...,ajSj),條件概率的極大似然估計爲:P(Xj=ajl|Y=ck)=i=1nI(xij=ajl,yi=ck)i=1nI(yi=ck),j=1,2,...,n;l=1,2,...,Sj;k=1,2,...,K其中n代表訓練數據集的數量, K代表分類數量, xij表示第i個樣本的第j個特徵, ajl第j個特徵可能取的第l個值; P(Xj=ajl|Y=ck)表示在Y=ck條件下, 樣本中第j個特徵等於ajl的概率

算法

image

貝葉斯估計

當使用極大似然估計概率值時, 可能出現0的情況.
這時會影響到後驗概率的計算結果, 試分類產生偏差.
解決方法是添加一個正數

P(Xj=ajl|Y=ck)=i=1nI(xij=ajl,yi=ck)+λi=1nI(yi=ck)+Sjλ(λ0)

λ =0時就是極大似然估計; 常取λ =1, 稱爲拉普拉斯平滑.
顯然對於任何l=1,2,...,Sj (Sj 表示第j個特徵共有Sj 個可能取值), k=1,2,...,K 有:
Pλ(Xj=ajl|Y=ck)>0l=1SjP(Xj=ajl|Y=ck)=1

先驗概率的貝葉斯估計是:
Pλ(Y=ck)=i=1nI(yi=ck)+λn+Kλ
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章