樸素貝葉斯模型

2021-08-04 15:15:46 字數 949 閱讀 1750

生成模型

條件概率 p(

a|b)

=p(a

b)p(

b)全概率: p

(a)=

=∑in

p(a|

bi)p

(bi)

∑inp

(abi

),把所

有包含a

的情況都

加起來

貝葉斯公式: p

(a|b

)↓p(

ak|b

)==p

(ab)

→p(b

|ak)

p(ak

)p(b

)→∑i

p(b|

ai)p

(ai)

p(b|

ak)p

(ak)

∑i=1

kp(b

|ai)

p(ai

)

對於給定的條件b = [x

1,x2

,⋯,x

n]分母p(b)為定值,所以只需要比較分子部分即可得出屬於哪個的概率大.

y=

argmaxai

p(ai

)∏k=

0np(

xk|a

i),a

i為類別

[y1,

y2,⋯

,ym]

模型學習得到 類別的概率分布,在類別條件下的特徵概率分布.

樸素貝葉斯模型 為生成模型

防止概率=0,計數的時候每個類別+λ (λ>0,λ=1時為拉普拉斯平滑)

樸素貝葉斯

樸素貝葉斯演算法是一種基於概率統計的分類方法,它主要利用貝葉斯公式對樣本事件求概率,通過概率進行分類。以下先對貝葉斯公式做個了解。對於事件a b,若p b 0,則事件a在事件b發生的條件下發生的概率為 p a b p a b p b 將條件概率稍作轉化即可得到貝葉斯公式如下 p a b p b a ...

樸素貝葉斯

1.準備資料 從文字中構建詞向量 2.訓練演算法 從詞向量計算概率 3.測試演算法 儲存為 bayes.py 檔案 參考 coding utf 8 from numpy import 文字轉化為詞向量 def loaddataset postinglist my dog has flea probl...

樸素貝葉斯

機器學習是將資料轉化為決策面的過程 scikit learn縮寫為sklearn 訓練乙個分類器,學習之後 其處理的準確性 def nbaccuracy features train,labels train,features test,labels test from sklearn.bayes ...