sklearn——NBayes

朴素贝叶斯

"""
朴素贝叶斯
"""
import numpy as np
import matplotlib.pyplot as plt
import seaborn as sns

sns.set()

生成随机数据


from sklearn.datasets import make_blobs 
#make_blobs为聚类产生数据集
# n_samples:样本点数,
# n_features:数据的维度
# centers:产生数据的中心点,默认值3
# cluster_std:数据集的标准差,浮点数或者浮点数序列,默认值1.0
# random_state:随机种子
X, y = make_blobs(n_samples=100,n_features=2,centers=2,random_state=2,cluster_std=1.5)
plt.scatter(X[:, 0], X[:, 1], c=y, s=50, cmap='RdBu')
plt.show()

在这里插入图片描述

sklearn Bayes训练

from sklearn.naive_bayes import GaussianNB

model = GaussianNB()
model.fit(X, y)
rng = np.random.RandomState(0)
X_test = [-6, -14] + [14, 18] * rng.rand(2000, 2)
y_pred = model.predict(X_test)

plt.scatter(X[:, 0], X[:, 1], c=y, s=50, cmap='RdBu')
lim = plt.axis()
plt.scatter(X_test[:, 0], X_test[:, 1], c=y_pred, s=20, cmap='RdBu', alpha=0.1)
plt.axis(lim)
plt.show()

在这里插入图片描述

yprob = model.predict_proba(X_test)
#model.predict_proba(x)不同于model.predict(),它返回的预测值为获得所有结果的概率。
# yprob[-8:].round(2)
print(yprob[-8:].round(2))

[[0.89 0.11]
[1. 0. ]
[1. 0. ]
[1. 0. ]
[1. 0. ]
[1. 0. ]
[0. 1. ]
[0.15 0.85]]

https://github.com/datawhalechina/machine-learning-toy-code/blob/main/ml-with-sklearn/Bayes/NBayes.ipynb

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值