公司正在努力通过采用人工智能 (AI) 和机器学习等新时代技术,让人们更容易获取信息和服务。人们可以见证这些技术在银行、金融、零售、制造、医疗保健等工业领域的日益采用。

数据科学家、人工智能工程师、机器学习工程师和数据分析师是拥抱人工智能的一些热门组织角色。如果您渴望申请这些类型的工作,那么了解招聘人员和招聘经理可能会问的机器学习面试问题的类型至关重要。 

本文将带您了解一些在实现梦想工作的过程中可能会遇到的机器学习面试问题和答案。

机器学习面试的热门问题

让我们从一些常见的机器学习面试问题和答案开始。

1. 机器学习有哪些不同类型?

机器学习分为三种类型:

监督学习

在监督机器学习中,模型根据过去或标记的数据进行预测或决策。带标签的数据是指被赋予标签或标签的数据集,从而变得更有意义。

Supervised Learning

无监督学习

在无监督学习中,我们没有标记数据。模型可以识别输入数据中的模式、异常和关系。

Unsupervised Learning

强化学习

使用强化学习,模型可以根据之前动作获得的奖励进行学习。

Reinforcement Learning

考虑代理工作的环境。代理被赋予一个要实现的目标。每次智能体对目标采取一些行动时,都会得到积极的反馈。而且,如果所采取的行动偏离了目标,代理就会得到负面反馈。 

2. 什么是过度拟合,如何避免它? 

过度拟合是指模型对训练集学习得很好,将训练数据中的随机波动视为概念时发生的情况。这些会影响模型的泛化能力,并且不适用于新数据。 

当模型获得训练数据时,它显示出 100% 的准确率——从技术上讲,有轻微的损失。但是,当我们使用测试数据时,可能会出现错误,效率低下。这种情况称为过度拟合。

有多种方法可以避免过度拟合,例如:

  • 正则化。它涉及与目标函数相关的特征的成本项
  • 制作一个简单的模型。使用较少的变量和参数,可以减少方差 
  • 也可以使用 k 折等交叉验证方法
  • 如果某些模型参数可能导致过度拟合,可以使用 LASSO 等正则化技术来惩罚这些参数

3. 机器学习模型中的“训练集”和“测试集”是什么?您将为您的训练、验证和测试集分配多少数据?

创建模型分为三个步骤:

  1. 训练模型
  2. 测试模型 
  3. 部署模型
训练集 测试装置
  • 训练集是提供给模型进行分析和学习的示例
  • 通常将总数据的 70% 作为训练数据集
  • 这是用于训练模型的标记数据
  • 测试集用于测试模型生成的假设的准确性
  • 剩余30%作为测试数据集
  • 我们在没有标签数据的情况下进行测试,然后使用标签验证结果

考虑这样一种情况,您已经标记了 1,000 条记录的数据。训练模型的一种方法是在训练过程中公开所有 1,000 条记录。然后,您使用一小组相同的数据来测试模型,在本例中这将给出良好的结果。

但是,这不是准确的测试方法。因此,在开始训练过程之前,我们留出了一部分数据,称为“测试集”。剩余的数据称为我们用于训练模型的“训练集”。训练集多次通过模型,直到精度很高,并且误差最小化。

Train Set

现在,我们通过测试数据来检查模型是否能够准确预测值并确定训练是否有效。如果出现错误,您要么需要更改模型,要么使用更多数据重新训练它。

Test Set

关于如何将数据拆分为训练集和测试集的问题,没有固定的规则,比例可以根据个人喜好而变化。 

4. 如何处理数据集中丢失或损坏的数据?

处理丢失或损坏的数据的最简单方法之一是删除这些行或列或将它们完全替换为其他值。

Pandas 中有两种有用的方法:

  • IsNull() 和 dropna() 将帮助找到丢失数据的列/行并删除它们
  • Fillna() 将用占位符值替换错误的值

Panda

5. 如何根据训练集数据大小选择分类器?

当训练集较小时,具有正确偏差和低方差的模型似乎效果更好,因为它们不太可能过度拟合。 

例如,当训练集很大时,朴素贝叶斯效果最好。具有低偏差和高方差的模型往往表现更好,因为它们可以很好地处理复杂的关系。

6. 解释机器学习算法的混淆矩阵。

混淆矩阵(或误差矩阵)是用于衡量算法性能的特定表。主要用于监督学习;在无监督学习中,它被称为匹配矩阵。

混淆矩阵有两个参数:

  • 实际的
  • 预料到的 

它在这两个维度上也具有相同的特征集。

考虑如下所示的混淆矩阵(二元矩阵):

Confusion Matrix

这里,

对于实际值:

总计 是 = 12+1 = 13

总数 = 3+9 = 12 

同样,对于预测值:

总计 是 = 12+3 = 15

总数 = 1+9 = 10 

为了使模型准确,对角线上的值应该很高。矩阵中所有值的总和等于测试数据集中的观测值总数。 

对于上述矩阵,总观测值 = 12+3+1+9 = 25

现在,准确度 = 对角线值的总和/总数据集

= (12+9) / 25

= 21 / 25

= 84%

7. 什么是假阳性和假阴性以及它们有何意义?

误报是指那些被错误地分类为“True”但实际上是“False”的情况。 

假阴性是那些被错误地分类为“假”但实际上是“真”的情况。

在术语“假阳性”中,“阳性”一词是指混淆矩阵中预测值的“是”行。完整的术语表示系统预测其为正值,但实际值为负值。 

Confusion Matrix 2

因此,查看混淆矩阵,我们得到:

假阳性 = 3

真阳性 = 12

类似地,在术语“假阴性”中,“阴性”一词指的是混淆矩阵中预测值的“否”行。而完整的项表示系统预测其为负值,但实际值为正值。

因此,查看混淆矩阵,我们得到:

假阴性 = 1

真阴性 = 9

8. 机器学习模型构建的三个阶段是什么?

构建机器学习模型的三个阶段是:

  • 建筑模型

    为模型选择合适的算法并根据需求进行训练 
  • 模型测试

    通过测试数据检验模型的准确性 
  • 应用模型

    测试后进行所需的更改并将最终模型用于实时项目

在这里,重要的是要记住,偶尔需要检查模型以确保其正常工作。应对其进行修改以确保其是最新的。

9.什么是深度学习?

深度学习是机器学习的一个子集,涉及使用人工神经网络像人类一样思考和学习的系统。 “深度”一词源于这样一个事实:您可以拥有多层神经网络。 

机器学习和深度学习之间的主要区别之一是特征工程在机器学习中是手动完成的。在深度学习的情况下,由神经网络组成的模型将自动确定使用哪些特征(以及不使用哪些特征)。 

这是机器学习面试和深度学习面试中常见的问题

10.机器学习和深度学习有什么区别?

机器学习  深度学习
  • 使机器能够根据过去的数据自行做出决策
  • 仅需要少量数据进行训练
  • 在低端系统上运行良好,因此您不需要大型机器 
  • 大多数功能需要提前识别并手动编码
  • 将问题分成两部分,分别解决,然后组合起来
  • 使机器能够在人工神经网络的帮助下做出决策
  • 需要大量的训练数据 
  • 需要高端机器,因为它需要大量的计算能力 
  • 机器从提供的数据中学习特征
  • 问题以端到端的方式解决

11.监督机器学习在现代企业中有哪些应用?

监督机器学习的应用包括:

  • 垃圾邮件检测

    在这里,我们使用由分类为垃圾邮件或非垃圾邮件的电子邮件组成的历史数据来训练模型。该标记信息作为模型的输入。
  • 健康诊断

    通过提供有关疾病的图像,可以训练模型来检测一个人是否患有该疾病。
  • 情绪分析

    这是指使用算法挖掘文档并确定它们的情绪是积极、中立还是消极的过程。 
  • 欺诈识别

    通过训练模型来识别可疑模式,我们可以检测可能的欺诈实例。
相关面试问题及解答

12.什么是半监督机器学习?

监督学习使用完全标记的数据,而无监督学习不使用训练数据。

在半监督学习的情况下,训练数据包含少量标记数据和大量未标记数据。

Semi-supervised Learning

13.什么是无监督机器学习技术? 

无监督学习中使用两种技术:聚类和关联。

聚类

聚类问题涉及将数据划分为子集。这些子集也称为集群,包含彼此相似的数据。与分类或回归不同,不同的聚类揭示了对象的不同细节。

Clustering

协会

在关联问题中,我们识别不同变量或项目之间的关联模式。

例如,电子商务网站可以根据您之前的购买记录、消费习惯、您的愿望清单中的商品、其他客户的购买习惯等,推荐其他商品供您购买。

Association

14.监督机器学习和无监督机器学习有什么区别?

  • 监督学习 - 该模型从标记数据中学习并做出未来预测作为输出 
  • 无监督学习 - 该模型使用未标记的输入数据,并允许算法在没有指导的情况下根据该信息采取行动。

15.归纳机器学习和演绎机器学习有什么区别? 

归纳学习 演绎学习
  • 它根据定义的原则观察实例并得出结论
  • 示例:通过播放火灾造成损害的视频,向孩子解释如何远离火灾
  • 总结经验
  • 示例:允许孩子玩火。如果他或她被烧伤,他们就会知道这是危险的,并且不会再犯同样的错误

16. 比较 K-means 和 KNN 算法。

K-均值 克尼恩
  • K-Means 是无监督的
  • K-Means 是一种聚类算法
  • 每个簇中的点彼此相似,并且每个簇与其相邻簇不同
  • KNN本质上是有监督的
  • KNN是一种分类算法
  • 它根据其周围的 K 个(可以是任意数字)邻居对未标记的观察进行分类

17.朴素贝叶斯分类器中的“朴素”是什么?

该分类器被称为“朴素”,因为它做出的假设可能正确,也可能不正确。 

该算法假设给定类变量,类的一个特征的存在与任何其他特征的存在无关(特征的绝对独立性)。

例如,如果一种水果的颜色为红色且形状为圆形,则无论其他特征如何,都可以被认为是樱桃。这个假设可能正确,也可能不正确(因为苹果也符合描述)。

18. 解释系统如何使用强化学习来下国际象棋游戏。

强化学习有环境和代理。代理执行一些操作来实现特定目标。每当智能体执行一项朝着目标迈进的任务时,它就会得到奖励。而且,每当采取违背目标或相反方向的步骤时,就会受到惩罚。 

早些时候,国际象棋程序必须在对众多因素进行大量研究后确定最佳走法。建造一台设计用于玩此类游戏的机器需要指定许多规则。 

通过强化学习,我们不必处理这个问题,因为学习代理通过玩游戏来学习。它将做出一个举动(决定),检查它是否是正确的举动(反馈),并将结果保留在内存中以供下一步采取(学习)。系统做出的每一个正确决定都会得到奖励,而错误的决定则会受到惩罚。 

19. 您如何知道为您的分类问题选择哪种机器学习算法?

虽然没有固定的规则来选择分类问题的算法,但您可以遵循以下准则:

  • 如果担心准确性,请测试不同的算法并交叉验证它们
  • 如果训练数据集较小,请使用具有低方差和高偏差的模型
  • 如果训练数据集很大,请使用具有高方差和小偏差的模型

20.亚马逊如何推荐其他值得购买的东西?推荐引擎如何工作?

一旦用户从亚马逊购买商品,亚马逊就会存储购买数据以供将来参考,并找到最有可能购买的产品,这可能是因为关联算法可以识别给定数据集中的模式。 

Association Algorithm

21.什么时候会使用分类而不是回归?

当您的目标是分类的时,使用分类,而当您的目标变量是连续的时,使用回归。分类和回归都属于监督机器学习算法的范畴。 

分类问题的示例包括:

  • 预测是或否
  • 估计性别
  • 动物的品种
  • 颜色类型

回归问题的示例包括:

  • 估计产品的销量和价格
  • 预测球队的得分
  • 预测降雨量

22. 如何设计垃圾邮件过滤器?

构建垃圾邮件过滤器涉及以下过程:

  • 垃圾邮件过滤器将收到数千封电子邮件 
  • 每封电子邮件都已经有一个标签:“垃圾邮件”或“非垃圾邮件”。
  • 然后,受监督的机器学习算法将根据“抽奖”、“免费优惠”、“没有钱”、“全额退款”等垃圾邮件词语来确定哪种类型的电子邮件被标记为垃圾邮件。
  • 下次电子邮件即将到达您的收件箱时,垃圾邮件过滤器将使用统计分析和决策树和 SVM 等算法来确定该电子邮件是垃圾邮件的可能性
  • 如果可能性很高,它会将其标记为垃圾邮件,并且电子邮件不会到达您的收件箱
  • 根据每个模型的准确率,我们将在测试所有模型后使用准确率最高的算法

Email

23.什么是随机森林?

“随机森林”是一种监督机器学习算法,通常用于分类问题。它通过在训练阶段构建多个决策树来运行。随机森林选择大多数树的决策作为最终决策。 

Random Forest

24. 考虑一长串机器学习算法,给定一个数据集,如何决定使用哪一个?

没有适用于所有情况的主算法。选择算法取决于以下问题:

  • 您有多少数据,是连续数据还是分类数据?
  • 问题与分类、关联、聚类或回归有关吗?
  • 预定义变量(已标记)、未标记变量还是混合变量?
  • 目标是什么?

基于以上问题,可以使用以下算法:

Algorithm 1

Algorithm 2

25.什么是机器学习模型中的偏差和方差?

偏见

当预测值与实际值相差较大时,机器学习模型中就会出现偏差。低偏差表示预测值与实际值非常接近的模型。

欠拟合:高偏差会导致算法错过特征和目标输出之间的相关关系。 

方差

方差是指使用不同训练数据进行训练时目标模型将发生变化的量。对于一个好的模型,方差应该最小化。 

过度拟合:高方差可能会导致算法对训练数据中的随机噪声而不是预期输出进行建模。

26. 偏差和方差之间的权衡是什么?

偏差-方差分解本质上是通过添加偏差、方差以及由于基础数据集中的噪声而产生的一些不可约误差来分解任何算法的学习误差。 

当然,如果你使模型变得更复杂并添加更多变量,你将失去偏差但获得方差。为了以最佳方式减少错误量,您必须权衡偏差和方差。高偏差和高方差都是不可取的。

高偏差和低方差算法训练的模型是一致的,但平均而言不准确。

高方差和低偏差算法训练的模型准确但不一致。 

27.定义精度和召回率。

精确

准确率是指您能够正确回忆起的几个事件与您回忆起的事件总数(正确回忆和错误回忆的混合)的比率。

精度 =(真阳性)/(真阳性 + 假阳性)

记起

召回率是指你能回忆起的事件数与总事件数的比率。

召回率 =(真阳性)/(真阳性 + 假阴性)

28.什么是决策树分类?

决策树将分类(或回归)模型构建为树结构,在开发决策树时将数据集分解为更小的子集,实际上以具有分支和节点的树状方式。决策树可以处理分类数据和数值数据。 

29.什么是决策树中的剪枝,它是如何完成的?

修剪是机器学习中的一种技术,可以减小决策树的大小。它降低了最终分类器的复杂性,从而通过减少过度拟合来提高预测准确性。 

修剪可以发生在:

  • 自上而下的时尚。它将遍历节点并从根开始修剪子树
  • 自下而上的时尚。它将从叶节点开始

有一种流行的剪枝算法称为减少错误剪枝,其中:

  • 从叶子开始,每个节点都被替换为其最受欢迎的类
  • 如果不影响预测精度,则保留更改
  • 具有简单、速度快的优点

30. 简要解释逻辑回归。

逻辑回归是一种分类算法,用于预测给定的一组自变量的二元结果。 

逻辑回归的输出是0或1,阈值一般为0.5。任何高于 0.5 的值都被视为 1,任何低于 0.5 的点都被视为 0。

Logistic Regression

31.解释K最近邻算法。 

K 最近邻算法是一种分类算法,其工作方式是将新数据点分配给与其最相似的相邻组。 

在 K 个最近邻中,K 可以是大于 1 的整数。因此,对于每个要分类的新数据点,我们计算它与哪个相邻组最接近。 

让我们使用以下示例对对象进行分类。考虑存在三个集群:

  • 足球
  • 篮球 
  • 网球

Kluster 1

设待分类的新数据点是一个黑球。我们使用KNN对其进行分类。假设 K = 5(初始)。 

接下来,我们找到 K(五个)最近的数据点,如图所示。

Kluster 2

观察到所有五个选定点不属于同一簇。有三个网球,篮球和足球各一个。 

当涉及多个类时,我们更喜欢大多数。这里大部分是网球,因此新的数据点被分配给这个集群。

32.什么是推荐系统?

任何使用过 Spotify 或在亚马逊购物过的人都会认识推荐系统:这是一种信息过滤系统,可以根据用户提供的选择模式来预测用户可能想听到或看到的内容。

33.什么是核SVM?

核SVM是核支持向量机的缩写。核方法是一类用于模式分析的算法,最常见的是核SVM。

34.降维的方法有哪些?

您可以通过将特征与特征工程相结合、删除共线特征或使用算法降维来降维。

既然您已经完成了这些机器学习面试问题,您一定已经了解了自己在该领域的优势和劣势。

35.什么是主成分分析?

主成分分析或 PCA 是一种用于分析定量数据的多元统计技术。 PCA的目标是将高维数据降维为低维,去除噪声,并从大量数据中提取特征和属性等关键信息。

36.您对F1分数有何理解?

F1 分数是一个结合了精度和召回率的指标。它也是精确率和召回率的加权平均值。 

F1分数可以使用以下公式计算:

F1 = 2 * (P * R) / (P + R)

当 Precision 和 Recall 分数均为 1 时,F1 分数为 1。

37. 您如何理解 I 类错误和 II 类错误?

I 类错误:当原假设为真而我们拒绝它时,就会发生 I 类错误。

II 类错误:当原假设为假且我们接受它时,就会发生 II 类错误。

ML_QandA_37.

38.解释相关性和协方差?

相关性:相关性告诉我们两个随机变量彼此相关的程度。它的值介于 -1 到 +1 之间。 

相关性计算公式:

ML_QandA_38.

协方差:协方差告诉我们两个随机变量之间线性关系的方向。它可以取 - ∞ 和 + ∞ 之间的任何值。

协方差计算公式:

ML_QandA_38_1.

39. SVM中的支持向量是什么?

支持向量是最接近超平面的数据点。它影响超平面的位置和方向。删除支持向量将改变超平面的位置。支持向量帮助我们构建支持向量机模型。

ML_QandA_39

40.什么是集成学习?

集成学习是从多个机器学习模型获得的结果的组合,以提高决策的准确性。 

示例:具有 100 棵树的随机森林比仅使用一棵决策树可以提供更好的结果。

ML_QandA_40

41.什么是交叉验证?

机器学习中的交叉验证是一种统计重采样技术,它使用数据集的不同部分在不同迭代上训练和测试机器学习算法。交叉验证的目的是测试模型预测未用于训练模型的一组新数据的能力。交叉验证避免了数据的过度拟合。

K 折交叉验证是最流行的重采样技术,它将整个数据集划分为 K 个大小相等的集合。

42. 决策树算法中有哪些不同的树分裂方法?

方差:当目标变量连续时,使用方差分割决策树的节点。

ML_QandA_42

信息增益:当目标变量是分类变量时,首选使用信息增益分割决策树的节点。

ML_QandA_42_1

基尼不纯度:当目标变量是分类变量时,使用基尼不纯度分割决策树的节点。

ML_QandA_42_2.

43.支持向量机算法如何进行自学习? 

SVM算法具有学习率和扩展率,负责自学习。学习率补偿或惩罚超平面做出所有错误的移动,而扩展率则负责寻找不同类之间的最大分离区域。

44. 在开始线性回归之前需要采取哪些假设?

线性回归模型主要有 5 个假设:

  • 多元正态性
  • 无自相关
  • 同方差性
  • 线性关系
  • 无多重共线性或很少多重共线性

45.Lasso 和 Ridge 回归有什么区别?

Lasso(也称为 L1)和 Ridge(也称为 L2)回归是两种流行的正则化技术,用于避免数据过度拟合。这些方法用于惩罚系数以找到最佳解决方案并降低复杂性。 Lasso 回归的工作原理是惩罚系数绝对值的总和。在 Ridge 或 L2 回归中,罚函数由系数的平方和确定。

期待在人工智能和机器学习领域取得成功的职业生涯。立即报名参加我们与加州理工大学合作的人工智能课程。

成为机器学习人才库的一部分

随着技术的进步,数据科学和人工智能领域的工作将继续受到需求。提升技能并精通这些新兴技术的候选人可以找到许多薪资可观的工作机会。期待成为一名机器学习工程师吗?立即注册 Simplilearn 的加州理工学院 AI 和 ML 研究生项目并获得认证。此外,根据您的经验水平,您可能会被要求展示您在机器学习方面的技能,但这主要取决于您所追求的角色。这些机器学习面试问题和答案将帮助您在第一次尝试时就通过面试!

除了上述面试问题外,对常见的数据科学面试问题有一个公平的理解也很重要。

考虑到这一趋势,Simplilearn 提供加州理工学院 AI 和 ML 认证课程研究生课程,帮助您牢牢掌握机器学习概念。本课程非常适合中级水平的人士,包括:

  • 分析经理
  • 商业分析师
  • 信息架构师
  • 希望成为数据科学家的开发人员
  • 寻求数据科学和机器学习职业的毕业生

完成本课程后,面对机器学习面试问题将变得更加容易。