机器学习——期末复习 重点题归纳
第一题
问题描述
现有如下数据样本:
编号 | 色泽 | 敲声 | 甜度 | 好瓜 |
---|---|---|---|---|
1 | 乌黑 | 浊响 | 高 | 是 |
2 | 浅白 | 沉闷 | 低 | 否 |
3 | 青绿 | 清脆 | 中 | 是 |
4 | 浅白 | 浊响 | 低 | 否 |
(1)根据上表,给出属于对应假设空间的3个不同假设。若某种算法的归纳偏好为“适应情形尽可能少”,则该算法喜欢选择哪些“判断为好瓜”的假设?
(2)若该数据包含噪声,则假设空间中有可能不存在与所有训练样本都一致的假设。在此情形下设计一种合理的归纳偏好用于假设选择。
回答
(1)假设空间中的三个不同假设
- 假设1:色泽 = 乌黑 ∧ 敲声 = 浊响 ∧ 甜度 = 高 → 好瓜
- 假设2:色泽 = 青绿 ∧ 敲声 = 清脆 ∧ 甜度 = 中 → 好瓜
- 假设3:色泽 ≠ 浅白 ∧ 敲声 ≠ 沉闷 ∧ 甜度 ≠ 低 → 好瓜
如果算法的归纳偏好是“适应情形尽可能少”,那么它会选择那些能够覆盖最少正例的假设。在这种情况下,算法可能会选择以下两个假设:
- 假设1:色泽 = 乌黑 ∧ 敲声 = 浊响 ∧ 甜度 = 高 → 好瓜
- 假设2:色泽 = 青绿 ∧ 敲声 = 清脆 ∧ 甜度 = 中 → 好瓜
这两个假设分别只覆盖了一个正例,因此它们满足“适应情形尽可能少”的要求。
(2)合理的设计归纳偏好
在存在噪声的情况下,假设空间中可能没有一个假设能完全匹配所有的训练样本。此时可以采用以下几种归纳偏好来选择合适的假设:
- 最小化错误率:选择使得预测错误率最低的假设。
- 最大化置信度:选择对正例和负例分类最准确的假设。
- 简化原则:选择最简单的假设,即参数最少或规则最简洁的假设。
这些归纳偏好可以帮助在有噪声的数据集中找到相对较好的假设。
第二题
问题描述
假设由同一数据分布采样得到两个样本集合 S1 和 S2:
- S1 包含 6000 个数据样本;
- S2 包含 120000 个数据样本。
每个样本集均按照 9:1 的比例随机划分为训练集和测试集。请按以下要求,在同一坐标系下清晰地绘制四条曲线,并标记每一条曲线:
- 对于每个样本集合,试画出该集合的训练误差曲线和测试误差曲线;纵轴为误差,横轴为模型复杂度。(5 分)
- 解释曲线为何这样画的原因,即解释不同曲线的变化趋势以及曲线间的高低位置关系。(5 分)
回答问题
1. 绘制曲线
2. 曲线变化原因及位置关系
-
训练误差曲线:随着模型复杂度的增加,模型拟合能力增强,导致训练误差逐渐减小。当模型过拟合时,训练误差会趋于平稳。
-
测试误差曲线:随着模型复杂度的增加,测试误差先下降是因为模型泛化能力提高。然而,当模型过于复杂时,会出现过拟合现象,导致测试误差再次升高。
-
S1 和 S2 曲线比较:由于 S2 样本量更大,其训练误差和测试误差都会比 S1 更低。同时,S2 的最佳模型复杂度也会更高,因为更多的数据有助于避免过拟合。
通过以上分析,我们可以在同一坐标系下绘制出四条曲线,并解释它们的变化趋势及其相互之间的位置关系。
第三题
问题描述
试简述离群点的基本概念并列出三种应对策略
离群点的基本概念
离群点是远离大部分数据点的点。
应对策略
以下是三种应对离群点的常见策略:
A1:只需忽略这些异常值即可。
A2:转换/归一化:应用平方根或取log,以使x/y的值更小,然后离
群值将更靠近大多数数据点。
A3:引入非线性项:y = b + w1x +w2x2。
第四题
问题描述
给定一个含有缺失值的西瓜数据集,其中前10个样本作为训练集,后5个样本作为验证集。数据集包括编号、色泽、敲击声音、根蒂和是否为好瓜五个属性。任务是在决策树的根节点处基于信息增益原则选择最优划分属性,并讨论预剪枝策略下的决策。
数据集
编号 | 色泽 | 敲击声音 | 根蒂 | 是否为好瓜 |
---|---|---|---|---|
1 | 乌黑 | 浊响 | 蜷缩 | 是 |
2 | - | 沉闷 | 蜷缩 | 是 |
3 | 青绿 | - | 稍蜷 | 是 |
4 | 乌黑 | 浊响 | 蜷缩 | 是 |
5 | 青绿 | 清脆 | 稍蜷 | 是 |
6 | 浅白 | 清脆 | 硬挺 | 否 |
7 | - | 沉闷 | - | 否 |
8 | 浅白 | 清脆 | 硬挺 | 否 |
9 | - | 清脆 | 硬挺 | 否 |
10 | 青绿 | - | - | 否 |
11 | 青绿 | 浊响 | 稍蜷 | 是 |
12 | 浅白 | 清脆 | 稍蜷 | 是 |
13 | 乌黑 | 沉闷 | 蜷缩 | 是 |
14 | 浅白 | 沉闷 | 硬挺 | 否 |
15 | 青绿 | 清脆 | 稍蜷 | 否 |
回答
(1) 决策树的根节点处的选择
计算过程略
信息增益计算
- 色泽:考虑色泽为乌黑、青绿、浅白的样本。
- 敲击声音:考虑敲击声音为浊响、清脆、沉闷的样本。
- 根蒂:考虑根蒂为蜷缩、稍蜷、硬挺的样本。
对于每一个属性,我们需要计算在该属性不同取值下的条件熵,然后计算信息增益。
最终,选择信息增益最大的属性作为根节点的划分属性。
(2) 预剪枝策略下的决策
略
第五题
题目要求设计一种高效、合理的方案,利用m台机器实现分布式聚类算法。具体来说,需要考虑如何将数据样本划分到每台机器上,并且如何汇总处理每台机器的计算结果。
设计方案
假设我们有m台机器,数据样本为D,特征维度为p,簇类别数为k。
-
初始化:
- 随机选择k个初始簇中心。
- 将数据样本随机划分为m份,分别存储在m台机器上。
-
本地聚类:
- 每台机器执行以下操作:
- 使用当前的簇中心对本地数据进行聚类。
- 更新本地的簇中心。
- 每台机器执行以下操作:
-
同步与更新:
- 各台机器将自己的簇中心信息发送给主控机。
- 主控机收集所有簇中心信息,计算新的全局簇中心。
- 将新的全局簇中心广播给所有机器。
-
迭代优化:
- 重复步骤2和步骤3,直到簇中心收敛或达到最大迭代次数。
-
结果汇总:
- 根据最终的簇中心,对整个数据集进行重新分配,确定每个样本所属的簇。
- 返回聚类结果。
通过这种方式,可以在多台机器上并行地执行聚类任务,有效地处理大数据场景下的聚类问题。
第六题
问题
六、Boosting 算法是一种常用的集成算法,试回答以下问题。(20 分)
(1)试描述 Boosting 算法的基本概念。(4 分)
(2)AdaBoost 是 Boosting 中最具代表性的算法,试描述 AdaBoost 算法是如何实现的。(10 分)
(3)AdaBoost 算法通常有如下 2 个局限性:
- 当基学习器的精度小于 50%时,AdaBoost 算法将不能正常运行,试其分析原因。(3 分)
- AdaBoost 算法易受离群点的干扰,试简要描述一种可以减少该干扰的方法。(3 分)
回答
(1)Boosting 算法的基本概念
(1)从初始训练集训练出一个基学习器;
(2)根据学习器的表现对训练样本分布进行调整,使得先前基学习
器做错的样本再后续受到更多关注;
(3)基于调整后的样本分布来训练一个基学习器;
(4)重复2-3,直到基学习器数量达到预设的T值;
(5)将T个基学习器进行加权结合。
(2)AdaBoost 算法如何实现
(3)AdaBoost 的局限性及解决方法
-
当基学习器的精度小于 50%时,AdaBoost 算法将不能正常运行
原因:如果基学习器的精度低于 50%,意味着它比随机猜测还要差,此时 AdaBoost 算法会不断放大这些错误分类样本的权值,导致整体性能下降甚至发散。
-
AdaBoost 算法易受离群点的干扰
解决方法:使用剪枝技术或对异常值进行预处理。例如,可以通过设置阈值来识别和移除离群点,或者采用其他鲁棒性更强的学习算法作为基学习器。另一种方法是在训练过程中动态调整离群点的权值,使其影响最小化。
第七题
设计一个基于机器学习的高效、科学、合理的算法来检测视频内容是否违规,可以分为以下几个关键步骤:
1. 数据收集与标注
首先需要大量的视频数据作为训练集,包括合规和违规的内容。这一步骤可能需要人工参与,以确保数据的质量和准确性。
2. 特征提取
从视频中提取有助于判断内容是否违规的关键特征。常见的特征类型包括但不限于:
- 视觉特征:如颜色直方图、纹理特征、人脸检测结果等。
- 音频特征:如语音情感分析、背景噪音水平等。
- 文本特征:若视频包含字幕或弹幕信息,则可从中抽取文本特征。
3. 模型选择与训练
根据任务需求和数据特性选择合适的机器学习模型。对于视频内容审核这类复杂场景,深度学习模型(如卷积神经网络CNN、循环神经网络RNN及其变种LSTM/GRU)往往能取得较好的效果。具体步骤如下:
- 划分数据集为训练集、验证集和测试集。
- 设计模型结构,定义损失函数和优化器。
- 使用训练集数据训练模型,利用验证集调优超参数。
- 在测试集上评估模型性能,确保泛化能力。
4. 异常检测与规则引擎
除了直接使用机器学习模型外,还可以结合一些规则引擎和技术手段来提高系统的准确性和效率:
- 异常检测:针对某些特定类型的违规行为,如暴力、色情等,可以预先设定一些规则,一旦触发即视为违规。
- 多模态融合:综合考虑视觉、音频和文本等多种信息源,提升检测的全面性和准确性。
5. 实时监控与反馈机制
为了应对实时上传的海量视频数据,系统应具备高效的批处理能力和实时响应机制:
- 批量处理:对批量上传的视频进行快速初筛,过滤掉明显合规的内容,集中资源审查可疑视频。
- 反馈机制:建立用户举报和专家复审通道,及时修正误判情况,持续优化模型表现。
简略版:
- 数据收集:从已知违规和非违规视频中收集大量标注数据。
- 特征提取:利用深度学习模型如卷积神经网络(CNN)提取视频帧特征。
- 模型训练:根据任务需求和数据特性选择合适的机器学习模型。对于视频内容审核这类复杂场景,深度学习模型(如卷积神经网络CNN、循环神经网络RNN及其变种LSTM/GRU)。
- 集成学习:结合多个不同类型的分类器以提高准确性和稳定性。
- 在线测试:实时监控上传的新视频并应用训练好的模型进行自动审核。
- 反馈机制:定期更新模型参数以适应新的违规模式变化。