1. 程式人生 > >【SciKit-Learn學習筆記】6:樸素貝葉斯做文件分類並繪製混淆矩陣

【SciKit-Learn學習筆記】6:樸素貝葉斯做文件分類並繪製混淆矩陣

學習《scikit-learn機器學習》時的一些實踐。


條件獨立

樸素即指的是條件獨立假設,假設n個特徵之間不相關,則可據聯合概率的條件展開式:
p ( C k ) P

( x C k ) = P (
C k , x ) = P ( x
1
, x 2 , . . , x n , C k ) = P ( x 1 x 2 , . . , x n , C k ) P ( x 2 , . . , x n , C k ) = P ( x 1 x 2 , . . , x n , C k ) P ( x 2 x 3 , . . , x n , C k ) P ( x 3 , . . , x n , C k ) . . . . . . = P ( x 1 x 2 , . . , x n , C k ) P ( x 2 x 3 , . . , x n , C k ) . . . P ( x n C k ) P ( C k ) p(C_k)P(\pmb{x}|C_k)=P(C_k,\pmb{x}) \\=P(x_1,x_2,..,x_n,C_k) \\=P(x_1|x_2,..,x_n,C_k)P(x_2,..,x_n,C_k) \\=P(x_1|x_2,..,x_n,C_k)P(x_2|x_3,..,x_n,C_k)P(x_3,..,x_n,C_k) \\...... \\=P(x_1|x_2,..,x_n,C_k)P(x_2|x_3,..,x_n,C_k)...P(x_n|C_k)P(C_k)
將其中的
P ( x i x i + 1 , x i + 2 , . . , x n , C k ) P(x_i|x_{i+1},x_{i+2},..,x_n,C_k)
變為
P ( x i C k ) P(x_i|C_k)
從而,樸素貝葉斯下的聯合概率可展開為:
P ( x 1 , x 2 , . . , x n , C k ) = P ( x 1 C k ) P ( x 2 C k ) . . . P ( x n C k ) P ( C k ) P(x_1,x_2,..,x_n,C_k)=P(x_1|C_k)P(x_2|C_k)...P(x_n|C_k)P(C_k)
右側的每一項都可從資料集中統計出來,因此可通過計算和比較聯合概率來比較後驗概率,以對類別做判斷。

對於連續的特徵值,可以通過區間劃分形成離散值。但對於小資料集,這樣做的偏差太大。可以通過考慮該特徵作為隨機變數的概率分佈,計算其統計量並放入相應的概率分佈函式模型中做計算。如計算方差 σ \sigma 和均值 μ \mu 便可得到正態分佈的概率密度函式。

概率分佈

概率分佈是描述隨機變數的概率規律。

PDF和PMF

概率密度函式(PDF)用於描述連續型隨機變數在某個特定值的可能性,概率質量函式(PMF)用於描述離散型隨機變數在某個特定值的可能性。

伯努利分佈

零一分佈兩點分佈,意在非黑即白:
f ( k ; p ) = p k ( 1 p ) 1 k k = 0 , 1 f(k;p)=p^k(1-p)^{1-k},其中k=0,1

類別分佈

不止兩種情況,即可能有多種情況:
f ( x p ) = i = 1 n p i x i