机器学习_周志华(西瓜书) 课后习题答案 第一章 Chapter1

机器学习_周志华 课后习题答案 第一章 Chapter1

习题1.1

Q:表1.1中若只包含编号为1和4的两个样例,试给出相应的版本空间。
在这里插入图片描述
由所给出的数据集(训练集)可知,属性3个:色泽、根蒂、敲声,其属性值分别有两个。
以A、B分别代表每个属性的两个属性值,“●”代表取什么值都合适。
那么以上的数据集为:1: AAAY ;4:BBBN

因此,我们可以做出的假设规模为:3x3x3+1=28个。
(类似于三个箱子,每个里面取一个球:C(3,1)*C(3,1)*C(3,1))
PS:在此有必要说明一下,我们做出的所有假设均为:(色泽=’’;根蒂=’’;敲声=’’)是好瓜!

版本空间:即假设空间,所有与训练集一致的假设构成的集合(即:我们不收留与训练集相悖的假设)

在这里插入图片描述
AAA满足样例1,且不包含样例4,因此放入假设空间
●●●满足样例1,但包含样例4,因此,剔除

接下来我们要做的就是在我们28个假设中,剔除与训练集(样本1,4)相悖的。
——
Step1: 将每个属性的可能存在的属性排列组合,得到可能存在的28种假设;
Step2: 依次判断每种假设是否包含了所有的正例,否,则直接剔除,是则进行下一步;
Step3: 判断该假设是否包含反例(有一个都不行),是,剔除;否,保留。
Step4: 继续判断下一个假设,重复Step2,3
——
废话不多少,直接上代码:

import re  # 正则表达式


def get_all_hyp(list_attr):
    """"获取所有假设,其中不考虑空集的情况"""
    set_hyp = set()
    for value_attr0 in list_attr[0]:
        for value_attr1 in list_attr[1]:
            for value_attr2 in list_attr[2]:
                x = value_attr0 + value_attr1 + value_attr2
                set_hyp.add(x)
    return set_hyp


def classify(list_ins):
    """划分正反例"""
    positive_class = []
    negative_class = []
    for instance in list_ins:
        ins = instance[0:3]
        if instance[3] is "Y"
1. 什么是泛化能力?泛化能力和过拟合之间有什么关系? 泛化能力是指模型在新的、未见过的数据上的表现能力。模型的泛化能力与其对训练数据的拟合程度有关,通常来说,过拟合的模型泛化能力较差。 2. 什么是交叉验证?交叉验证的作用是什么? 交叉验证是一种通过将数据集分成若干个子集来进行模型评估的方法。具体地,将数据集分成k个子集,每个子集都轮流作为测试集,其余子集作为训练集,重复k次,最终得到k个模型的评估结果的平均值。交叉验证的作用是提高模型评估的可靠性和泛化能力。 3. 留出法、k折交叉验证和留一法的区别是什么?它们各自适用于什么情况? 留出法是将数据集分成两部分,一部分作为训练集,另一部分作为测试集。留出法适用于数据集较大的情况。 k折交叉验证是将数据集分成k个子集,每个子集都轮流作为测试集,其余子集作为训练集,重复k次,最终得到k个模型的评估结果的平均值。k折交叉验证适用于数据集较小的情况。 留一法是k折交叉验证的一种特殊情况,即将数据集分成n个子集,每个子集都作为测试集,其余子集作为训练集,重复n次。留一法适用于数据集较小且样本数较少的情况。 4. 为什么要对数据进行预处理?数据预处理的方法有哪些? 数据预处理可以提高模型的表现,并且可以减少过拟合的风险。数据预处理的方法包括:标准化、归一化、缺失值填充、特征选择、特征降维等。 5. 什么是特征选择?特征选择的方法有哪些? 特征选择是指从所有特征中选择出对模型预测结果有重要贡献的特征。特征选择的方法包括:过滤式方法、包裹式方法和嵌入式方法。其中,过滤式方法是基于特征间的关系进行特征选择,包裹式方法是基于模型的性能进行特征选择,嵌入式方法是将特征选择嵌入到模型训练中。
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值