机器学习的基础概念是理解整个领域的基石。以下是一些典型习题的答案与解析。

习题1:什么是过拟合与欠拟合?如何识别与缓解?
答案: 过拟合指模型在训练集上表现很好,但在测试集上表现很差,模型过于复杂,学习了训练数据中的噪声。欠拟合则相反,模型在训练集和测试集上表现均不佳,模型过于简单,未能捕捉数据中的基本规律。
解析:
- 识别: 观察学习曲线。训练损失远低于验证损失通常意味着过拟合;训练损失和验证损失都很高且接近则可能意味着欠拟合。
- 缓解过拟合: 获取更多训练数据、采用正则化(L1/L2)、使用Dropout(神经网络)、降低模型复杂度、早停法。
- 缓解欠拟合: 增加模型复杂度、增加训练轮数、减少正则化强度、引入更多特征。
线性模型与梯度下降
线性回归与逻辑回归是机器学习中最经典的模型,其优化通常依赖于梯度下降。
习题2: 推导线性回归的闭式解(正态方程),并说明其优缺点。
答案: 线性回归模型的目标是最小化损失函数 J(θ) = (1/2m) * ||Xθ
y||²。通过令其梯度为零,可得闭式解:θ = (XᵀX)⁻¹Xᵀy。
解析:
- 优点: 无需选择学习率,无需迭代,当特征数量n较小时,计算直接。
- 缺点: 计算逆矩阵的复杂度为O(n³),当特征数量n很大时,计算非常缓慢甚至不可行。要求矩阵XᵀX必须是可逆的(满秩)。
习题3: 对比批量梯度下降、随机梯度下降和小批量梯度下降。
| 方法 | 更新方式 | 优点 | 缺点 |
|---|---|---|---|
| 批量梯度下降 | 每次迭代使用全部训练数据计算梯度 | 收敛稳定,方向准确 | 每次迭代慢,不适合大数据集 |
| 随机梯度下降 | 每次迭代随机使用一个样本计算梯度 | 速度快,可在线学习 | 收敛波动大,可能永不收敛到极小值 |
| 小批量梯度下降 | 每次迭代使用一个小批量(如32, 64)样本计算梯度 | 兼顾稳定性和速度,最常用 | 需要选择批量大小 |
支持向量机与核方法
支持向量机(SVM)以其强大的分类能力而闻名,尤其在处理非线性问题时,核方法发挥了关键作用。
习题4: 简述SVM的核心思想,并解释“支持向量”的含义。
答案: SVM的核心思想是寻找一个超平面,使得两类数据点到这个超平面的间隔(margin)最大化。这个超平面由wx + b = 0定义。
解析: “支持向量”是指那些距离分离超平面最近的、最难分类的数据点。正是这些点决定了最优超平面的位置和方向,间隔边界之外的样本点移动并不会影响超平面。这使得SVM具有较好的鲁棒性。
习题5: 什么是核技巧?为什么它在SVM中非常重要?
答案: 核技巧是一种不显式地将数据映射到高维特征空间,而是通过一个核函数K(x, y)来计算高维空间中的内积的方法。
解析: 它的重要性在于:
- 解决了线性不可分问题。通过在更高维的空间中寻找线性超平面,可以在原始空间中形成复杂的非线性决策边界。
- 计算高效。避免了直接计算高维甚至无限维特征向量的昂贵开销,只需计算原始空间中的核函数值。
- 常用的核函数包括线性核、多项式核和高斯径向基核(RBF)。
决策树与集成学习
决策树模型直观易懂,而集成学习方法如随机森林和梯度提升树则大大提升了模型的性能。
习题6: 决策树是如何选择分裂特征的?请说明信息增益和基尼系数的区别。
答案: 决策树通过衡量分裂前后数据“不纯度”的下降来选择最佳分裂特征。常用的指标有信息增益(基于信息熵)和基尼系数。
解析:
- 信息增益 (ID3算法): 增益 = 父节点的熵
子节点的加权平均熵。熵衡量的是集合的混乱程度。信息增益倾向于选择取值较多的特征。 - 基尼系数 (CART算法): 衡量数据集中一个随机选中的样本被分错的概率。基尼系数越小,数据集的纯度越高。
- 区别: 信息增益的计算涉及对数运算,稍慢;而基尼系数的计算更快。两者在实际应用中通常产生相似的结果。
习题7: 简述Bagging和Boosting的主要思想,并各举一个代表性算法。
| 方法 | 核心思想 | 代表性算法 | 特点 |
|---|---|---|---|
| Bagging | 通过自助采样法构建多个基学习器,然后通过投票或平均结合。 | 随机森林 | 降低方差,不易过拟合,可并行训练。 |
| Boosting | 按顺序训练基学习器,每个学习器重点关注前一个学习器分错的样本。 | AdaBoost, GBDT, XGBoost | 降低偏差,将弱学习器提升为强学习器,通常顺序执行。 |
神经网络与深度学习
神经网络,特别是深度学习模型,在图像、语音和自然语言处理等领域取得了突破性进展。
习题8: 推导单个神经元的反向传播算法。
答案: 假设神经元输入为x,权重为w,偏置为b,激活函数为σ,损失函数为L。对于输出层,首先计算损失函数对神经元输出的梯度δ = ∂L/∂a。然后根据链式法则:∂L/∂w = δ * σ'(z) * x,∂L/∂b = δ * σ'(z),其中z = wx + b,a = σ(z)。
解析: 反向传播的本质是链式法则的反复应用。误差信号δ从输出层向输入层逐层反向传播,沿途计算各参数的梯度。关键在于计算每一层的δ,对于隐藏层,其δ由后一层的δ加权求和并乘以本层激活函数的导数得到。
内容均以整理官方公开资料,价格可能随活动调整,请以购买页面显示为准,如涉侵权,请联系客服处理。
本文由星速云发布。发布者:星速云。禁止采集与转载行为,违者必究。出处:https://www.67wa.com/133796.html