1. 程式人生 > >樸素貝葉斯模型、推導、拉普拉斯平滑

樸素貝葉斯模型、推導、拉普拉斯平滑

參考書籍:《統計學習方法》,cs229講義,其他。

1、樸素貝葉斯

1.1、樸素貝葉斯模型

樸素貝葉斯:基於貝葉斯定理與特徵條件獨立假設的分類方法。注意兩個點,一個是貝葉斯定理,另一個是條件獨立假設,後面會用到,該方法用來進行分類,即:給定輸入變數x,輸出類別標記y

先定義好變量表示。記輸入變量表示為 X X 為m維向量的集合,輸出空間為類標記集合表示為 Y

= { c 1 , c 2 , .
. . , c K } Y=\{c_1,c_2,...,c_K\} ,訓練集為 {
( x 1 , y 1 ) , ( x 2 , y 2 ) , . . . , ( x n , y n ) } \{(x_1,y_1),(x_2,y_2),...,(x_n,y_n)\}
,特徵向量 x i x_i 是m維的(m個特徵)向量表示為 x i = ( x i 1 , x i 2 , . . . , x i m ) T x_i=(x_i^1,x_i^2,...,x_i^m)^T x i j x_i^j 表示第 i i 個輸入變數的第 j j 個特徵。

根據貝葉斯公式有: P ( Y = c k X = x ) = P ( X = x , Y = c k ) P ( X = x ) = P ( X = x Y = c k ) P ( Y = c k ) P ( X = x ) P(Y=c_k|X=x)=\frac{P(X=x,Y= c_k)}{P(X=x)}=\frac{P(X=x|Y=c_k)P(Y=c_k)}{P(X=x)} 對於給定的 x x 我們可以求出後驗概率 P ( Y = c k X = x ) P(Y=c_k|X=x) ,然後將後驗概率最大的類作為 x x 類的輸出。

看分子中的條件概率, P ( X = x Y = c k ) = P ( X 1 = x 1 , X 2 = x 2 , . . . , X m = x m Y = c k ) P(X=x|Y=c_k)=P(X^1=x^1,X^2=x^2,...,X^m=x^m|Y=c_k) ,如果每個特徵有 S j S_j 個取值那麼引數個數為 K i = 1 m S j K\prod\limits_{i=1}^{m}S_j ,這種數量級的引數是不可行的。

而貝葉斯給了這麼個強的條件獨立的假設,注意不是獨立假設,公式如下:

P ( X = x Y = c k ) = P ( X 1 = x 1 , X 2 = x 2 , . . . , X m = x m Y = c k ) = j = 1 m P ( X j = x j Y = c k ) P(X=x|Y=c_k)=P(X^1=x^1,X^2=x^2,...,X^m=x^m|Y=c_k)=\prod\limits_{j=1}^{m}P(X^j=x^j|Y=c_k)

所以現在我們有

P ( Y = c k X = x ) = P ( X = x , Y = c k ) P ( X = x ) = P ( X = x Y = c k ) P ( Y = c k ) P ( X = x ) = P ( Y = c k ) j = 1 m P ( X j = x j Y = c k )