• 11.分类与监督学习,朴素贝叶斯分类算法


    1.理解分类与监督学习、聚类与无监督学习。

    简述分类与聚类的联系与区别。

    简述什么是监督学习与无监督学习。

    分类与聚类的联系:都要从数据集中找到离目标点最近的电。

    分类与聚类的区别:1、分类:是为了确定点的类别。已经知道类别。

                2、聚类:是为了将一系列的点分成不同类。没有类别。

    监督学习:根据数据集和已知的输入数据和输出数据之间的关系,训练得出一个最优模型。

    无监督学习:不清楚数据和特征之间的联系,根据聚类或者模型得到数据之间的关系。

    2.朴素贝叶斯分类算法 实例

    利用关于心脏病患者的临床历史数据集,建立朴素贝叶斯心脏病分类模型。

    有六个分类变量(分类因子):性别,年龄、KILLP评分、饮酒、吸烟、住院天数

    目标分类变量疾病:

    –心梗

    –不稳定性心绞痛

    新的实例:–(性别=‘男’,年龄<70, KILLP=‘I',饮酒=‘是’,吸烟≈‘是”,住院天数<7)

    最可能是哪个疾病?

    上传手工演算过程。

    性别

    年龄

    KILLP

    饮酒

    吸烟

    住院天数

    疾病

    1

    >80

    1

    7-14

    心梗

    2

    70-80

    2

    <7

    心梗

    3

    70-81

    1

    <7

    不稳定性心绞痛

    4

    <70

    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

    <7

    心梗

    10

    <70

    1

    7-14

    心梗

    11

    >80

    3

    <7

    心梗

    12

    70-80

    1

    7-14

    心梗

    13

    >80

    3

    7-14

    不稳定性心绞痛

    14

    70-80

    3

    >14

    不稳定性心绞痛

    15

    <70

    3

    <7

    心梗

    16

    70-80

    1

    >14

    心梗

    17

    <70

    1

    7-14

    心梗

    18

    70-80

    1

    >14

    心梗

    19

    70-80

    2

    7-14

    心梗

    20

    <70

    3

    <7

    不稳定性心绞痛

    3.使用朴素贝叶斯模型对iris数据集进行花分类。

    尝试使用3种不同类型的朴素贝叶斯:

    • 高斯分布型
    • 多项式型
    • 伯努利型

    并使用sklearn.model_selection.cross_val_score(),对各模型进行交叉验证。

     1 from sklearn.datasets import load_iris
     2 from sklearn.naive_bayes import GaussianNB
     3 from sklearn.naive_bayes import MultinomialNB
     4 from sklearn.naive_bayes import BernoulliNB
     5 from sklearn.model_selection import cross_val_score
     6 iris = load_iris()
     7 x = iris['data']
     8 y = iris['target']
     9 
    10 # 高斯分布型
    11 gnb = GaussianNB() #建立模型
    12 gnb.fit(x , y)  #模型训练
    13 gnb_pre = gnb.predict(x)   #分类预测
    14 gnb_scores =cross_val_score(gnb, x, y, cv=10) #交叉验证
    15 print("高斯分布型模型准确率:",gnb_scores.mean())
    16 
    17 # 多项式型
    18 mnb = MultinomialNB() #建立模型
    19 mnb.fit(x , y)  #模型训练
    20 mnb_pre = mnb.predict(x)   #分类预测
    21 mnb_scores =cross_val_score(mnb, x, y, cv=10) #交叉验证
    22 print("多项式型模型准确率:",mnb_scores.mean())
    23 
    24 # 伯努利型
    25 bnb = BernoulliNB() #建立模型
    26 bnb.fit(x , y)  #模型训练
    27 bnb_pre = bnb.predict(x)   #分类预测
    28 bnb_scores =cross_val_score(bnb, x, y, cv=10) #交叉验证
    29 print("伯努利型模型准确率:",bnb_scores.mean())

  • 相关阅读:
    部署 AppGlobalResources 到 SharePoint 2010
    还原一个已删除的网站集
    使用仪表板设计器配置级联筛选器 (SharePoint Server 2010 SP1)
    File or arguments not valid for site template
    Pex and Moles Documentation
    Content Query Webpart匿名访问
    Running Moles using NUnit Console from Visual Studio
    Calling a WCF Service using jQuery in SharePoint the correct way
    Updating Content Types and Site Columns That Were Deployed as a Feature
    asp.net中判断传过来的字符串不为空的代码
  • 原文地址:https://www.cnblogs.com/ccw1124486193/p/12869867.html
Copyright © 2020-2023  润新知