机器学习 周志华 第一章习题

推荐一下个人博客

1.表1.1中若只包含编号为1,4的两个样例,试给出相应的版本空间。

假设数据集有n种属性,第i个属性可能的取值有ti种,加上该属性的泛化取值(*),所以可能的假设有
_i(t_i+1)
再用空集表示没有正例,假设空间中一共 i(ti+1)+1 种假设。
现实问题中常面临很大的假设空间,我们可以寻找一个与训练集一致的假设集合,称之为版本空间。版本空间从假设空间剔除了与正例不一致和与反例一致的假设,它可以看成是对正例的最大泛化。
版本空间的可以通过搜索假设空间来得到,这样需要遍历完整的假设空间。如果数据集中有正例,则可以先对一个正例进行最大泛化,得到2n个假设,然后再对这些假设进行剔除操作,可以适当精简计算量。
西瓜数据集(精简)

编号 色泽 根蒂 敲声 好瓜
1 青绿 蜷缩 浊响
2 乌黑 稍蜷 沉闷

数据集有3个属性,每个属性2种取值,一共 3∗3∗3+1=28种假设,分别为

1.色泽=青绿 根蒂=蜷缩 敲声=浊响  
2.色泽=青绿 根蒂=蜷缩 敲声=沉闷  
3.色泽=青绿 根蒂=稍蜷 敲声=浊响  
4.色泽=青绿 根蒂=稍蜷 敲声=沉闷  
5.色泽=乌黑 根蒂=蜷缩 敲声=浊响  
6.色泽=乌黑 根蒂=蜷缩 敲声=沉闷  
7.色泽=乌黑 根蒂=稍蜷 敲声=浊响  
8.色泽=乌黑 根蒂=稍蜷 敲声=沉闷  
9.色泽=青绿 根蒂=蜷缩 敲声=\*  
10.色泽=青绿 根
### 习题解析 对于《机器学习周志华一书中的第七章习题7.4,该题目主要考察对贝叶斯分类器的理解以及如何处理实际数据集应用贝叶斯定理。 具体来说,习题7.4通常涉及给定的数据集,在此背景下要求计算不同类别下的条件概率,并利用这些概率来预测新本所属的类别。根据贝叶斯决策理论,为了最小化风险函数R(c|x),应该选择使得后验概率P(c|x)最大的那个类c作为最终判定的结果[^1]。 考虑到朴素贝叶斯分类器假设特征之间相互独立,则可以简化联合分布的概率估计过程。即对于任意实\( \textbf{x}=(x_1,x_2,...,x_d)\),其属于某个特定类别C_k的可能性可以通过下面这个公式来进行估算: \[ P(C_k|\textbf{x})=\frac{P(\textbf{x}|C_k)P(C_k)}{\sum_{j=1}^{K}{P(\textbf{x}|C_j)P(C_j)}}\] 其中\( P(C_k) \)示先验概率;而\( P(x_i|C_k) \)则代在已知类别为\( C_k \)的情况下各个属性值发生的可能性。当所有可能的类别都进行了这的计算之后,具有最高后验概率的那个类别就被选作预测结果[^2]。 针对具体的数值型或离散型变量,还需要采用适当的方法(比如高斯模型用于连续变量,多项式分布适用于计数数据等)去近似求解上述达式的各项成分。最后通过比较各候选类别对应的后验概率大小得出结论。 ```python import numpy as np from sklearn.datasets import load_iris from sklearn.naive_bayes import GaussianNB # 加载鸢尾花数据集为说明 data = load_iris() X = data['data'] y = data['target'] # 创建并训练一个高斯朴素贝叶斯分类器 gnb = GaussianNB() gnb.fit(X[:100], y[:100]) # 使用部分数据进行训练以便留出测集 # 预测剩余未见过的数据点标签 predicted_labels = gnb.predict(X[100:]) print(predicted_labels) ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值