朴素贝叶斯 2017 年 8 月 10 日 19:17 朴素贝叶斯属于贝叶斯算法中的一个分支。sklearn.naive_bayes.GaussianNB 用于分类场景。属于监督学习。 应用分为三个步骤: 实例化算法模块 样本训练 fit 预测
predict (计算准确度,需要提供test数据的实际标签)score
样例:
import
numpy
as
np
X
=
np . array([[ - 1 ,
- 1 ], [ - 2 ,
- 1 ], [ - 3 ,
- 2 ], [ 1 ,
1 ], [ 2 ,
1 ], [ 3 ,
2 ]])
Y
=
np . array([ 1 ,
1 ,
1 ,
2 ,
2 ,
2 ])
from
sklearn.naive_bayes
import
GaussianNB
clf
=
GaussianNB()
clf . fit(X, Y)
GaussianNB()
clf . predict([[ - 0.8 ,
- 1 ]]) [1]
样例二,包含测试准确度: def NBAccuracy(features_train, labels_train, features_test, labels_test): “”” compute the accuracy of your Naive Bayes classifier “””
import the sklearn module for GaussianNB
from sklearn.naive_bayes import GaussianNB
create classifier
clf = GaussianNB()
fit the classifier on the training features and labels
clf.fit(features_train, labels_train)
use the trained classifier to predict labels for the test features
pred = clf.predict(features_train)
calculate and return the accuracy on the test data
this is slightly different than the example,
where we just print the accuracy
you might need to import an sklearn module
accuracy = clf.score(features_test, labels_test) return accuracy
计算预测准确度还有一个通用方法:用预测值与实际标签对比:
已使用 Microsoft OneNote 2016 创建。