1. scikit-learn 樸素貝葉斯類庫概述

樸素貝葉斯是一類比較簡(jiǎn)單的算法,scikit-learn中樸素貝葉斯類庫的使用也比較簡(jiǎn)單。相對(duì)于決策樹,KNN之類的算法,樸素貝葉斯需要關(guān)注的參數(shù)是比較少的,這樣也比較容易掌握。在scikit-learn中,一共有3個(gè)樸素貝葉斯的分類算法類。分別是GaussianNB,MultinomialNB和BernoulliNB。其中GaussianNB就是先驗(yàn)為高斯分布的樸素貝葉斯,MultinomialNB就是先驗(yàn)為多項(xiàng)式分布的樸素貝葉斯,而BernoulliNB就是先驗(yàn)為伯努利分布的樸素貝葉斯。

這三個(gè)類適用的分類場(chǎng)景各不相同,一般來說,如果樣本特征的分布大部分是連續(xù)值,使用GaussianNB會(huì)比較好。如果如果樣本特征的分大部分是多元離散值,使用MultinomialNB比較合適。而如果樣本特征是二元離散值或者很稀疏的多元離散值,應(yīng)該使用BernoulliNB。

2. GaussianNB類使用總結(jié)

GaussianNB假設(shè)特征的先驗(yàn)概率為正態(tài)分布,即如下式:

P(Xj=xj|Y=Ck)=12πσ2k????√exp(?(xj?μk)22σ2k)P(Xj=xj|Y=Ck)=12πσk2exp(?(xj?μk)22σk2)

其中CkCk為Y的第k類類別。μk和σ2kμk和σk2為需要從訓(xùn)練集估計(jì)的值。

GaussianNB會(huì)根據(jù)訓(xùn)練集求出μk和σ2kμk和σk2。 μkμk為在樣本類別CkCk中,所有XjXj的平均值。σ2k

延伸閱讀

學(xué)習(xí)是年輕人改變自己的最好方式-Java培訓(xùn),做最負(fù)責(zé)任的教育,學(xué)習(xí)改變命運(yùn),軟件學(xué)習(xí),再就業(yè),大學(xué)生如何就業(yè),幫大學(xué)生找到好工作,lphotoshop培訓(xùn),電腦培訓(xùn),電腦維修培訓(xùn),移動(dòng)軟件開發(fā)培訓(xùn),網(wǎng)站設(shè)計(jì)培訓(xùn),網(wǎng)站建設(shè)培訓(xùn)學(xué)習(xí)是年輕人改變自己的最好方式