1. scikit-learn 樸素貝葉斯類庫(kù)概述

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

這三個(gè)類適用的分類場(chǎng)景各不相同,一般來(lái)說(shuō),如果樣本特征的分布大部分是連續(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

網(wǎng)友評(píng)論