《机器学习》周志华第一张习题1.2

针对《机器学习》周志华版第一章习题1.2的解答进行深入讨论,分析了不同属性组合的可能性及假设空间,并探讨了从k=1至k=27时的不同情况,以此来理解聚类的概念。

看了机器学习(周志华版)参考答案第一章——绪论的博客

发现他说的1.2的答案不太对

所以再讨论一下:


首先考虑冗余有多少种可能性,先看看各个属性空间:

#Perl
my @color=("青绿","乌黑","浅白");
my @type=("蜷缩","硬挺","稍蜷");
my @sound=("浊响","清脆","沉闷");


毕竟文章里面提到了浅白色,所以考虑浅白

有3*3*3=27种西瓜

假设空间如书上所说4*4*4+1=65


其实我一直在想这里是不是说错了啊,空集是不是就是 (*,*,*)

意思就是随便哪个属性值是什么,但这个是包含在64种可能性中的啊~

如果有大神求解惑


好,那假设就是64种可能性


接下来讨论一下k的取值,从k=1开始(*^*^*)到k=27,27种西瓜各1个


k=1,那很明显就是 *,*,*,可以代表一切西瓜

有些是取不到的,比如k=2,如果只是合取式,没办法写

k=3,那就是每个特征值一个,比如("乌黑"^*^*)v("青绿"^*^*)v("浅白"^*^*)

假设就有3种,每个一种

如果不想算2个属性的,可以先看3个都为属性值的时候,k=27,假设只有1种

那么2个属性值的就是64-1-3-27=33个,也就是k=2*2*2=8时,假设有33个


我觉得出这个题的目的是为了让我们先体会一下cluster,聚类

k=3就是聚3类,k=8就是聚8类

### 习题解析 对于《机器学习周志华一书中的第七章习题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) ```
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值