11.分类与监督学习,朴素贝叶斯分类算法
2021-01-27 16:17
标签:不同 变量 res com sel targe learn tar 有监督 1.理解分类与监督学习、聚类与无监督学习。 简述分类与聚类的联系与区别。 分类:目的是为了确定一个点的类别,具体哪些类别是已知的,常用的算法是KNN,是一种有监督学习。 聚类:是将一系列点分成若干类,事先没有类别的常用K-means算法,是一种无监督学习。 简述什么是监督学习与无监督学习。 监督学习就是从标记的训练数据来判断一个功能,从正确的例子中学习,输入对(x,y)每个实例都是一个输入对象和一个期望输出值。 无监督学习:缺乏足够的先验知识,输入x在没有标记的数据中发现一些规律。 2.朴素贝叶斯分类算法 实例 利用关于心脏病患者的临床历史数据集,建立朴素贝叶斯心脏病分类模型。 有六个分类变量(分类因子):性别,年龄、KILLP评分、饮酒、吸烟、住院天数 目标分类变量疾病: –心梗 –不稳定性心绞痛 新的实例:–(性别=‘男’,年龄
最可能是哪个疾病? 上传手工演算过程。 性别 年龄 KILLP 饮酒 吸烟 住院天数 疾病 1 男 >80 1 是 是 7-14 心梗 2 女 70-80 2 否 是
心梗 3 女 70-81 1 否 否
不稳定性心绞痛 4 女
1 否 是 >14 心梗 5 男 70-80 2 是 是 7-14 心梗 6 女 >80 2 否 否 7-14 心梗 7 男 70-80 1 否 否 7-14 心梗 8 女 70-80 2 否 否 7-14 心梗 9 女 70-80 1 否 否
心梗 10 男
1 否 否 7-14 心梗 11 女 >80 3 否 是
心梗 12 女 70-80 1 否 是 7-14 心梗 13 女 >80 3 否 是 7-14 不稳定性心绞痛 14 男 70-80 3 是 是 >14 不稳定性心绞痛 15 女
3 否 否
心梗 16 男 70-80 1 否 否 >14 心梗 17 男
1 是 是 7-14 心梗 18 女 70-80 1 否 否 >14 心梗 19 男 70-80 2 否 否 7-14 心梗 20 女
3 否 否
不稳定性心绞痛 3.使用朴素贝叶斯模型对iris数据集进行花分类。 尝试使用3种不同类型的朴素贝叶斯: 3.1高斯分布型 代码: 并使用sklearn.model_selection.cross_val_score(),对各模型进行交叉验证。 3.1高斯分布之交叉验证 代码: 11.分类与监督学习,朴素贝叶斯分类算法 标签:不同 变量 res com sel targe learn tar 有监督 原文地址:https://www.cnblogs.com/ys-hl-lo/p/12843682.html
# -*- coding:utf-8 -*-
from sklearn.datasets import load_iris
iris =load_iris()
# print("我是iris",iris)
print(iris.keys())
print(iris.data.shape)
print(iris.target.shape)
print(iris.data[55])
print(iris.target[55])
#高斯贝叶斯算法
from sklearn.naive_bayes import GaussianNB
gnb = GaussianNB() #建立模型,漏加括号会报fit缺少y
gnb.fit(iris.data,iris.target) #模型的训练
gnb.predict([[5.7,2.8,4.5,1.3]]) # 分类预测
y_gnb = gnb.predict(iris.data)
print("高斯分布的分类预测:",y_gnb)
#交叉校验高斯贝叶斯的准确率
from sklearn.model_selection import cross_val_score
scores = cross_val_score(gnb,iris.data,iris.target,cv=15)
print(scores)
scores_mean = scores.mean()
print("高斯分布型准确率:",scores_mean)
文章标题:11.分类与监督学习,朴素贝叶斯分类算法
文章链接:http://soscw.com/index.php/essay/47833.html