机器学习核心问题与算法解析

1、你如何定义机器学习?

机器学习定义

机器学习是一门让计算机能够从数据中学习的科学(和艺术)。

更广义的定义是:

“机器学习是赋予计算机无需明确编程就能学习能力的研究领域”
—— Arthur Samuel,1959

更面向工程的定义是:

“如果一个计算机程序在任务T上,以性能指标P衡量的性能随着经验E而提高,那么就说该程序从经验E中学习关于任务T和性能指标P的知识”
—— Tom Mitchell,1997

2、两种最常见的监督学习任务是什么?

回归(预测值)和分类(预测类别)

3、请列举四个常见的无监督学习任务。

聚类、异常检测、密度估计、降维

4、要让机器人在各种未知地形上行走,你会使用哪种机器学习算法?

强化学习(Reinforcement Learning)

5、你会使用哪种类型的算法将你的客户划分为多个群体?

可以使用聚类算法,如 K-Means 和 DBSCAN 等,根据客户的购买行为和网站活动等进行客户细分。

6、你会将垃圾邮件检测问题归类为有监督学习问题还是无监督学习问题?

有监督学习问题。

垃圾邮件检测是典型的有监督学习问题,算法会被输入大量带有标签(垃圾邮件或非垃圾邮件)的电子邮件。

7、什么是核外学习?

核外学习通常离线进行(即不在实时系统上进行),可视为增量学习。核外学习算法将数据分割成小批量,并使用在线学习技术从这些小批量数据中进行学习,能处理无法装入计算机主内存的大量数据。

8、哪种类型的学习算法依靠相似度度量来进行预测?

基于实例的学习算法

基于实例的学习算法(Instance-based learning system)依靠 相似度度量 来进行预测。该系统 牢记训练数据 ,在遇到新实例时,使用相似度度量找出 最相似的已学实例 ,并据此进行预测。

9、模型参数和学习算法的超参数有什么区别?

模型参数与超参数的区别

模型有一个或多个模型参数,这些参数决定了给定新实例时模型的预测结果(例如线性模型的斜率)。学习算法试图为这些参数找到最优值,以使模型能很好地泛化到新实例。

而超参数是学习算法本身的参数,而非模型的参数(例如要应用的正则化量)。超参数不受学习算法本身的影响,必须在训练前设置,并且在训练期间保持不变。

10、基于模型的学习算法搜索的是什么?它们成功所使用的最常见策略是什么?它们如何进行预测?

基于模型的学习算法搜索的是模型参数的最优值,以使模型能很好地泛化到新实例。

最常见的策略是通过最小化一个成本函数来训练系统,该成本函数衡量系统在训练数据上的预测效果,若模型进行了正则化,还会加上模型复杂度的惩罚项。

进行预测时,将新实例的特征输入到模型的预测函数中,并使用学习算法找到的参数值。

11、请列举机器学习的四大主要挑战。

欠拟合、过拟合(偏差/方差权衡)、“维度灾难”、短期记忆问题

12、如果你的模型在训练数据上表现出色,但对新实例的泛化能力很差,这是怎么回事?请列举三种可能的解决办法。

这种情况表明模型可能过度拟合了训练数据(或者在训练数据上极其幸运)。

可能的解决办法包括:

  • 获取更多数据
  • 简化模型(选择更简单的算法、减少使用的参数或特征数量,或者对模型进行正则化)
  • 减少训练数据中的噪声

13、什么是测试集,为什么要使用它?

测试集的作用与数据窥探偏差

测试集是从数据集中随机选取的一部分实例组成的集合,通常占数据集的 20% (如果数据集非常大,占比可更小)。

使用测试集的目的

  • 评估机器学习模型的 泛化误差

数据窥探偏差

  • 问题来源 :若在选择算法前查看测试集,大脑可能会发现测试数据中看似有趣的模式,从而选择特定的机器学习模型。
  • 后果 :导致泛化误差估计 过于乐观 ,最终推出的系统表现 不如预期
  • 该现象被称为: 数据窥探偏差

解决方式

  • 使用测试集可以避免数据窥探偏差,从而 更准确地评估模型性能

14、验证集的目的是什么?

验证集用于比较模型,能够选择最佳模型并调整超参数。

15、什么是训练开发集,何时需要它,以及如何使用它?

训练开发集的作用与应用

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值