之前在樸素貝葉斯算法原理小結(jié)這篇文章中,對(duì)樸素貝葉斯分類(lèi)算法的原理做了一個(gè)總結(jié)。這里我們就從實(shí)戰(zhàn)的角度來(lái)看樸素貝葉斯類(lèi)庫(kù)。重點(diǎn)講述scikit-learn 樸素貝葉斯類(lèi)庫(kù)的使用要點(diǎn)和參數(shù)選擇。
1. scikit-learn 樸素貝葉斯類(lèi)庫(kù)概述
樸素貝葉斯是一類(lèi)比較簡(jiǎn)單的算法,scikit-learn中樸素貝葉斯類(lèi)庫(kù)的使用也比較簡(jiǎn)單。相對(duì)于決策樹(shù),KNN之類(lèi)的算法,樸素貝葉斯需要關(guān)注的參數(shù)是比較少的,這樣也比較容易掌握。在scikit-learn中,一共有3個(gè)樸素貝葉斯的分類(lèi)算法類(lèi)。分別是GaussianNB,MultinomialNB和BernoulliNB。其中GaussianNB就是先驗(yàn)為高斯分布的樸素貝葉斯,MultinomialNB就是先驗(yàn)為多項(xiàng)式分布的樸素貝葉斯,而B(niǎo)ernoulliNB就是先驗(yàn)為伯努利分布的樸素貝葉斯。
這三個(gè)類(lèi)適用的分類(lèi)場(chǎng)景各不相同,一般來(lái)說(shuō),如果樣本特征的分布大部分是連續(xù)值,使用GaussianNB會(huì)比較好。如果如果樣本特征的分大部分是多元離散值,使用MultinomialNB比較合適。而如果樣本特征是二元離散值或者很稀疏的多元離散值,應(yīng)該使用BernoulliNB。
2. GaussianNB類(lèi)使用總結(jié)
GaussianNB假設(shè)特征的先驗(yàn)概率為正態(tài)分布,即如下式:
延伸閱讀
學(xué)習(xí)是年輕人改變自己的最好方式