1、你如何定义机器学习?
机器学习简介
机器学习是一门多领域交叉学科,涉及概率论、统计学、逼近论、凸分析、算法复杂度理论等多门学科。它专门研究计算机怎样模拟或实现人类的学习行为,以获取新的知识或技能,重新组织已有的知识结构使之不断改善自身的性能。
简单来说,机器学习是让计算机通过数据来学习模式,并利用这些模式进行预测或决策的技术。
2、什么是带标签的训练集?
在监督学习中,提供给算法的训练数据包含所需的解决方案,这些解决方案被称为 标签 。包含标签的训练数据集合就是 带标签的训练集 。
例如,用于垃圾邮件分类的带标签训练集,其中包含许多示例邮件及其类别( 垃圾邮件 或 正常邮件 )。
3、两种最常见的监督学习任务是什么?
回归(预测数值)和分类(预测类别)
4、你会使用哪种机器学习算法让机器人在各种未知地形上行走?
强化学习算法可能表现最佳,因为这是强化学习通常处理的问题类型。虽然也可以将该问题表示为有监督或半监督学习问题,但不太自然。
5、你会使用哪种类型的算法将客户划分为多个群体?
可以使用聚类算法,如k - 均值、层次聚类分析(HCA)、期望最大化等。
6、你会将垃圾邮件检测问题归为有监督学习问题还是无监督学习问题?
有监督学习问题
垃圾邮件过滤器是通过许多带有类别(垃圾邮件或正常邮件)的示例邮件进行训练的,它需要学习如何对新邮件进行分类,这符合有监督学习中训练数据包含所需解决方案(即标签)的特点。
7、哪种类型的学习算法依靠相似性度量来进行预测?
基于实例的学习算法依靠相似性度量来进行预测。
该系统会牢记示例,然后使用相似性度量将其推广到新的情况。
8、模型参数和学习算法的超参数有什么区别?
模型参数是模型本身的参数,例如线性模型中的θ0和θ1,由学习算法根据训练数据调整以优化模型。
超参数是学习算法的参数,不是模型的参数,不受学习算法本身影响,必须在训练前设置且在训练期间保持不变,用于控制学习过程,如正则化超参数。
9、基于模型的学习算法在寻找什么?它们最常用的成功策略是什么?它们如何进行预测?
基于模型的学习算法
基于模型的学习算法旨在 寻找模型参数的最优值 ,从而使模型能够很好地 泛化到新实例 。
常用策略
- 最小化成本函数 :该函数用于衡量系统在训练数据上的预测效果。
- 正则化处理 :若模型经过正则化,成本函数还会加上 模型复杂度的惩罚项 。
预测过程
进行预测时:
- 将新实例的特征输入模型的预测函数;
- 使用学习算法找到的参数值进行预测。
10、你能说出机器学习的四个主要挑战吗?
训练数据数量不足、训练数据缺乏代表性、数据质量差、存在不相关特征
11、如果你的模型在训练数据上表现出色,但在新实例上的泛化能力较差,这是怎么回事?请列举三种可能的解决方案。
这意味着模型可能过拟合了训练数据(或者在训练数据上极其幸运)。三种可能的解决方案是:
- 获取更多数据
- 简化模型(选择更简单的算法、减少使用的参数或特征数量,或者对模型进行正则化)
- 减少训练数据中的噪声
12、什么是测试集,为什么要使用它?
测试集的作用与重要性
测试集是从数据集中随机选取的一部分实例,通常占数据集的 20%。
使用测试集的原因是,通过在测试集上评估模型,可以得到模型泛化误差的估计值,该值能反映模型在未见过的数据上的表现。
- 若训练误差低但泛化误差高,说明模型对训练数据过拟合。
- 此外,当在多个模型间做选择,或调整模型的超参数时,也需要使用测试集来比较不同模型或不同超参数设置下模型的泛化能力。
13、验证集的目的是什么?
验证集用于比较模型,能够选择最佳模型并调整超参数。
14、如果使用测试集调整超参数,会出现什么问题?
多次在测试集上测量泛化误差,并根据测试集调整模型和超参数以得到最佳模型,这会导致模型在新数据上的表现可能不佳,因为模型 过度拟合了测试集 ,使得对泛化误差的估计 过于乐观 ,最终推出的系统表现 可能达不到预期 。
15、什么是交叉验证,为什么你会选择交叉验证而不是验证集?
交叉验证是一种评估模型的方法,它将训练集随机分割成多个不同子集(折),然后多次训练和评估模型,每次选择不同的折进行评估,在其余折上进行训练。
选择交叉验证而非验证集的原因在于,交叉验证不仅能得到模型性能的估计值,还能衡量该估计值的精确程度(即标准差),而仅使用一个验证集无法获得这些信息。不过,交叉验证的代价是需要多次训练模型,并非在所有情况下都可行。
机器学习核心问题与实践解析

最低0.47元/天 解锁文章
729

被折叠的 条评论
为什么被折叠?



