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

本文介绍了如何利用sklearn库中的GaussianNB、MultinomialNB和BernoulliNB分别实现基于高斯分布、多项式和伯努利分布的朴素贝叶斯分类。通过加载iris数据集,训练并预测模型,展示了模型的预测效果,并使用交叉验证评估了GaussianNB模型的精度。
摘要由CSDN通过智能技术生成

高斯分布型

from sklearn import datasets

iris= datasets.load_iris()

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())

8f67de87cabcd576a1fd2a303fa22005.png

多项式型

from sklearn import datasets

iris= datasets.load_iris()

from sklearn.naive_bayes import MultinomialNB

gnb = MultinomialNB()

pred = gnb.fit(iris.data,iris.target)

y_pred = pred.predict(iris.data)

print(iris.data.shape[0],(iris.target!=y_pred).sum())

c65aafaa177b26f34bae0c3b8d9cbad7.png

伯努利型

from sklearn import datasets

iris= datasets.load_iris()

from sklearn.naive_bayes import BernoulliNB

gnb = BernoulliNB()

pred = gnb.fit(iris.data,iris.target)

y_pred = pred.predict(iris.data)

print(iris.data.shape[0],(iris.target!=y_pred).sum())

26c7a46ed2fbb42e134c31790fb87a3f.png

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

from sklearn.naive_bayes import GaussianNB

from sklearn.model_selection import cross_val_score

gnb = GaussianNB()

scores = cross_val_score(gnb,iris.data,iris.target,cv=10)

print("Accuracy:%.3f"%scores.mean())

b1f8f41b075bf90af5e5f4012f9d7991.png

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值