import matplotlib.pyplot as plt
import numpy as np#导入肿瘤数据集
from sklearn.datasets import load_breast_cancer
cancer=load_breast_cancer()
print("=======================数据集信息====================")
print(cancer.keys())
print("肿瘤的分类:",cancer['target_names'])
print("肿瘤的特征:",cancer['feature_names'])
print("=====================高斯朴素贝叶斯建模=====================")
X,y=cancer.data,cancer.targetfrom sklearn.model_selection import train_test_split
X_train,X_test,y_train,y_test=train_test_split(X,y,random_state=38)
print("训练集数据形态:",X_train.shape)
print("测试集数据形态:",X_test.shape)from sklearn.naive_bayes import GaussianNB
gnb=GaussianNB()
gnb.fit(X_train,y_train)
print("训练集得分:{:.3f}".format(gnb.score(X_train,y_train)))
print("测试集得分:{:.3f}".format(gnb.score(X_test,y_test)))print("===================高斯朴素贝叶斯的学习曲线===================")
#导入学习曲线库
from sklearn.model_selection import learning_curve
#导入随机拆分工具
from sklearn.model_selection import ShuffleSplit
#定义函数绘制学习曲线
def plot_learning_curve(estimator, title, X, y, ylim=None, cv=None,n_jobs=1, train_sizes=np.linspace(.1, 1.0, 5)):plt.figure()plt.title(title)if ylim is not None:plt.ylim(*ylim)plt.xlabel("Training examples")plt.ylabel("Score")train_sizes, train_scores, test_scores = learning_curve(estimator, X, y,cv=cv, n_jobs=n_jobs, train_sizes=train_sizes)train_scores_mean = np.mean(train_scores, axis=1)test_scores_mean = np.mean(test_scores, axis=1)plt.grid()plt.plot(train_sizes, train_scores_mean, 'o-', color="r",label="Training score")plt.plot(train_sizes, test_scores_mean, 'o-', color="g",label="Cross-validation score")plt.legend(loc="lower right")return plttitle = "Learning Curves (Naive Bayes)"
cv = ShuffleSplit(n_splits=100, test_size=0.2, random_state=0)
estimator = GaussianNB()
plot_learning_curve(estimator, title, X, y, ylim=(0.9, 1.01), cv=cv, n_jobs=4)
plt.show()


朴素贝叶斯实例(肿瘤良性与恶性)【机器学习算法一朴素贝叶斯5】相关推荐

  1. 朴素贝叶斯基础【机器学习算法一朴素贝叶斯1】

    基础知识回顾 (上述内容引自李航<统计学习方法>) 过去的7天当中,有3天下雨,4天没有下雨.用0代表灭有下雨,而1代表下雨,我们可以用一个数组来表示: y=[0,1,1,0,1,0,0] ...

  2. 机器学习算法基础——朴素贝叶斯算法

    26.朴素贝叶斯算法原理 联合概率和条件概率 联合概率:包含多个条件,且所有条件同时成立的概率 记作:P(A,B) P(A,B)=P(A)P(B) 条件概率:就是事件A在另外一个事件B已经发生条件下的 ...

  3. 数学推导+纯Python实现机器学习算法12:贝叶斯网络

    点击上方"小白学视觉",选择加"星标"或"置顶" 重磅干货,第一时间送达 在上一讲中,我们讲到了经典的朴素贝叶斯算法.朴素贝叶斯的一大特点就 ...

  4. 【机器学习基础】数学推导+纯Python实现机器学习算法12:贝叶斯网络

    Python机器学习算法实现 Author:louwill 在上一讲中,我们讲到了经典的朴素贝叶斯算法.朴素贝叶斯的一大特点就是特征的条件独立假设,但在现实情况下,条件独立这个假设通常过于严格,在实际 ...

  5. 机器学习算法总结--朴素贝叶斯

    这次需要总结的是朴素贝叶斯算法,参考文章: <统计学习方法> 机器学习常见算法个人总结(面试用) 朴素贝叶斯理论推导与三种常见模型 朴素贝叶斯的三个常用模型:高斯.多项式.伯努利 简介 朴 ...

  6. 机器学习算法之朴素贝叶斯模型

    基本原理 从统计学知识回到我们的数据分析.假如我们的分类模型样本是: 即我们有m个样本,每个样本有n个特征,特征输出有k个类别,定义为C1,C2,-,Ck,.从样本我们可以学习得到朴素贝叶斯的先验分布 ...

  7. 伯努利朴素贝叶斯【机器学习算法一朴素贝叶斯2】

    伯努利朴素贝叶斯方法适合于伯努利分布(即二项分布或0-1分布)的数据集. import numpy as np from sklearn.naive_bayes import BernoulliNB ...

  8. 朴素贝叶斯实战——判断肿瘤是良性还是恶性

    1.接下来我们将使用朴素贝叶斯算法来进行一个小的项目实战--判断一个患者的肿瘤是良性还是恶性.这里我们将使用一个来自真实世界的数据集--威斯康星乳腺肿瘤数据集. 2.对数据集进行分析: 威斯康星乳腺肿 ...

  9. 【数据科学系统学习】机器学习算法 # 西瓜书学习记录 [6] 朴素贝叶斯实践

    本篇内容为<机器学习实战>第 4 章 基于概率论的分类方法:朴素贝叶斯程序清单.所用代码为 python3. 朴素贝叶斯 优点:在数据较少的情况下仍然有效,可以处理多类别问题. 缺点:对于 ...

最新文章

  1. 数论分块 ---- 2020牛客多校第7场H-Dividing[思维+数论分块]
  2. vsftpd设置虚拟用户
  3. 小游戏来了 游戏小程序你想知道的这有
  4. jquery validation remote进行唯一性验证时只使用自定义参数,不使用默认参数
  5. React里所有已经加载的module列表
  6. postman 无法正常返回结果 Could not get any response
  7. redis-哈希数据类型
  8. zabbix mysql密码_重置Zabbix数据库Admin的密码
  9. mysq命令行导出sql_mysql利用命令导出数据sql语句
  10. pthread_cond_timedwait方法Linux时间编程
  11. 编程语言难度排名_文言文可编程乎?CMU中国大四学生:开源文言文编程语言获1万+标星...
  12. Abaqus Ncode振动疲劳分析教程
  13. 20100920卡巴最新激活码下载
  14. MATLAB无法读取图片解决方法
  15. 节点表征学习与节点预测和边预测
  16. 身为编辑者,居然无法提交申请?
  17. Uipath IIF判断使用
  18. TM1638芯片的显存地址详细解读
  19. Druid的segment
  20. 国赛来咯!第十八届全国大学生智能汽车竞赛百度竞速赛正式开启

热门文章

  1. GLSL fract函数真的是返回小数部分吗
  2. nn.Identity()
  3. C. Game Master
  4. 论文推荐:Minimally distorted Adversarial Examples with a Fast Adaptive Boundary Attack
  5. 什么是奇偶校验原理?奇校验、偶校验
  6. mysql的数据类型
  7. 优雅的实现打印requestId
  8. 程序员的求爱日:比1024多一点,1025,要你爱我!
  9. mt7620 wireless驱动特性意外发现
  10. 「实在RPA·法院智能辅办」加「数」提高办案效率