楼主: casey_c
1635 6

[程序分享] Scikit-Learn 朴素贝叶斯分类 [推广有奖]

  • 0关注
  • 10粉丝

博士生

92%

还不是VIP/贵宾

-

威望
0
论坛币
96 个
通用积分
2.1003
学术水平
2 点
热心指数
15 点
信用等级
2 点
经验
11502 点
帖子
278
精华
0
在线时间
94 小时
注册时间
2016-11-22
最后登录
2022-5-2

楼主
casey_c 发表于 2017-6-16 15:21:12 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

求职就业群
赵安豆老师微信:zhaoandou666

经管之家联合CDA

送您一个全额奖学金名额~ !

感谢您参与论坛问题回答

经管之家送您两个论坛币!

+2 论坛币


以下内容转自 数析学院,只节选了部分,有需要的同学可以直接查看原文


朴素贝叶斯分类是机器学习中常见的分类方法之一,今天将带大家深入学习一下 Scikit-Learn 中朴素贝叶斯分类工具包的相关使用方法。

首先,我们导入相关的库,并构建第一个示例数据集:


  1. %matplotlib inline
  2. import numpy as np
  3. import matplotlib.pyplot as plt
  4. import seaborn as sns; sns.set()
复制代码

  1. from sklearn.datasets import make_blobs
  2. X, y = make_blobs(100, 2, centers=2, random_state=2, cluster_std=1.5)
  3. plt.scatter(X[:, 0], X[:, 1], c=y, s=50, cmap='RdBu');
复制代码
1.jpg


Scikit-Learn 中的 make_blobs 方法常被用来生成聚类算法的测试数据,直观地说,make_blobs 会根据用户指定的特征数量、中心点数量、范围等来生成几类数据,这些数据可用于测试聚类算法的效果。接下来,我们导入朴素贝叶斯分类函数 GaussianNB ,构建并拟合模型:


  1. from sklearn.naive_bayes import GaussianNB
  2. model = GaussianNB()
  3. model.fit(X, y);
复制代码


为了更清晰直观地展示模型效果,我们构建了另一组随机样本,用于观察朴素贝叶斯分类模型在二维空间中的分类边界,在这里,我们可以调用 predict 函数,来输出模型对样本点的判断结果:


  1. rng = np.random.RandomState(0)
  2. Xnew = [-6, -14] + [14, 18] * rng.rand(2000, 2)
  3. ynew = model.predict(Xnew)
复制代码
  1. plt.scatter(X[:, 0], X[:, 1], c=y, s=50, cmap='RdBu')
  2. lim = plt.axis()
  3. plt.scatter(Xnew[:, 0], Xnew[:, 1], c=ynew, s=20, cmap='RdBu', alpha=0.1)
  4. plt.axis(lim);
复制代码
2.jpg

predict_proba 函数则可以输出样本被分配入每一个类别的判断概率:


  1. yprob = model.predict_proba(Xnew)
  2. yprob[-8:].round(2)
复制代码
array([[ 0.89,  0.11],       [ 1.  ,  0.  ],       [ 1.  ,  0.  ],       [ 1.  ,  0.  ],       [ 1.  ,  0.  ],       [ 1.  ,  0.  ],       [ 0.  ,  1.  ],       [ 0.15,  0.85]])
以上内容转自 数析学院,只节选了部分,后文还有介绍 文本数据集的分类案例,内容较多,先搬运到这,有需要的同学可以先直接到 数析学院 查看原文
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

关键词:scikit-learn 朴素贝叶斯 Learn 贝叶斯分类 Earn

沙发
phoenixlqh 学生认证  发表于 2017-6-19 06:13:56 来自手机
casey_c 发表于 2017-6-16 15:21
以下内容转自 数析学院,只节选了部分,有需要的同学可以直接查看原文


代码一个都看不到哦,我是手机版

藤椅
casey_c 发表于 2017-6-20 10:24:32
phoenixlqh 发表于 2017-6-19 06:13
代码一个都看不到哦,我是手机版
不是吧特意用的代码格式,方便的话用电脑登录看下呢

板凳
phoenixlqh 学生认证  发表于 2017-6-21 00:31:47 来自手机
casey_c 发表于 2017-6-16 15:21
以下内容转自 数析学院,只节选了部分,有需要的同学可以直接查看原文


好,白天看看

报纸
phoenixlqh 学生认证  发表于 2017-6-21 00:33:11 来自手机
casey_c 发表于 2017-6-16 15:21
以下内容转自 数析学院,只节选了部分,有需要的同学可以直接查看原文


你看,这是手机看到的情况截图。

地板
casey_c 发表于 2017-6-23 10:22:37
phoenixlqh 发表于 2017-6-21 00:33
你看,这是手机看到的情况截图。
我用手机试了,确实看不到代码,下次直接文本格式试一下

7
phoenixlqh 学生认证  发表于 2017-7-13 20:31:19
电脑确实显示正常,图很漂亮。手机显示的问题,可能是APP造成的。

您需要登录后才可以回帖 登录 | 我要注册

本版微信群
加好友,备注cda
拉您进交流群
GMT+8, 2025-12-22 21:55