sklearn中的朴素贝叶斯模型及其应用

1.使用朴素贝叶斯模型对iris数据集进行花分类

尝试使用3种不同类型的朴素贝叶斯:

  (1)多项式型

from sklearn import datasets
iris=datasets.load_iris()
from sklearn.model_selection import cross_val_score
from sklearn.naive_bayes import GaussianNB
gnb = GaussianNB()
pred = gnb.fit(iris.data, iris.target)
y_pred = pred.predict(iris.data)
print(iris.data.shape[0],(iris.target !=y_pred).sum()

  

 

  (2)高斯分布型

from sklearn.naive_bayes import GaussianNB
gnb1=GaussianNB()#构造建立模型
pred=gnb1.fit(iris.data,iris.target)#模型训练,拟合
y_pred=gnb1.predict(iris.data)#分类预测
print(iris.data.shape[0],(iris.target!=y_pred).sum())
scores=cross_val_score(gnb1,iris.data,iris.target,cv=10)
print("Accuracy:%.3f"%scores.mean())
print(y_pred)

  (3)伯努利型

from sklearn.naive_bayes import BernoulliNB
gnb2=BernoulliNB()#构造
pred=gnb2.fit(iris.data,iris.target)#模型训练,拟合
y_pred=gnb2.predict(iris.data)#分类预测
print(iris.data.shape[0],(iris.target!=y_pred).sum())
scores=cross_val_score(gnb2,iris.data,iris.target,cv=10)
print("Accuracy:%.3f"%scores.mean())
print(y_pred)

2.使用sklearn.model_selection.cross_val_score(),对模型进行验证。

 

posted @ 2018-11-26 11:22  SpaldingWen  阅读(188)  评论(0编辑  收藏  举报