决策树面试问题和答案 [适用于初学者和有经验者]
已发表: 2020-09-22在机器学习的世界中,决策树是其中之一,如果不是最受人尊敬的算法。 决策树也很强大。 决策树用于预测提供给算法的实例的连续值(回归)或预测类别(执行分类或分类)。
决策树的结构类似于流程图。 任何决策树的节点都代表对属性进行的测试。 决策树的每个分支都代表在每个节点上进行的检查结果。 每个叶子的节点(也称为终端节点)保存类的标签。
那是关于树的结构; 然而,决策树的流行并不是因为它们的创建方式。 这棵树的透明性使其在以强大而有用的算法为主导的世界中独树一帜。 实际上,您可以为一个小型决策树手动完成所有操作,并且您可以预测决策树将如何形成。 对于较大的树,这个练习变得相当乏味。
但是,这并不意味着您将无法理解树在每个节点上所做的事情。 掌握幕后或幕后发生的事情的能力确实将决策树与任何其他机器学习算法区分开来。
正如我们已经看到决策树的重要性一样,决策树对于任何机器学习专业人士或数据科学家来说都是至关重要的。 为了帮助您理解这个概念,同时帮助您在面试中获得额外的活力,我们制作了一份决策树面试问题和决策树面试问题和答案的综合列表。 这些问题应该可以帮助您在任何面试中脱颖而出。 在阅读解决方案以充分利用这些问题之前,请先尝试解决每个问题。
目录
决策树面试问答
Q1。 您将看到下面列出的两个语句。 您必须仔细阅读它们,然后从两个语句的选项中选择一个选项。 上下文问题是,选择关于装袋树的正确陈述。

- 对于装袋树,各个树根本不相互依赖。
- 为了提高模型的整体性能,聚合取自弱学习器。 这种方法称为装袋树。
- 只有第一个陈述是正确的。
- 只有第二个陈述是正确的。
- 陈述一和二都是正确的。
- 没有上面提到的选项。
答。 这个问题的正确答案是 C,因为对于 bagging 树,这两个陈述都是正确的。 在 bagging 树或 bootstrap 聚合中,应用此算法的主要目标是减少决策树中存在的方差量。 创建 bagging 树的机制是通过替换,从存在的样本中获取一些子集来训练数据。
现在,这些较小的数据子集中的每一个都用于训练单独的决策树。 由于输入每棵树的信息都是独一无二的,因此任何一棵树对另一棵树有任何影响的可能性变得非常低。 收集所有这些树给出的最终结果,然后进行处理以提供输出。 因此,第二个陈述也是正确的。
Q2。 您将看到下面列出的两个语句。 您必须仔细阅读它们,然后从两个语句的选项中选择一个选项。 上下文问题是,选择关于提升树的正确陈述。
- 提升树中的弱学习器是相互独立的。
- 弱学习者的表现全部被收集和聚合,以提高提升树的整体表现。
- 只有第一个陈述是正确的。
- 只有第二个陈述是正确的。
- 陈述一和二都是正确的。
- 没有上面提到的选项。
答。 如果您要了解树的提升是如何完成的,您将理解并能够区分正确的陈述和错误的陈述。 因此,当许多弱学习器串联连接时,就会创建一个提升树。 此序列中出现的每棵树都有一个唯一目标:减少其前任所犯的错误。
如果树以这种方式连接,则所有树不能相互独立,从而使第一个语句为假。 当谈到第二个陈述时,这主要是因为在提升树中,这是用于提高模型整体性能的方法。 正确的选项是 B,即只有第 2 条语句为 TRUE,第 1 条语句为 FALSE。
Q3。 您将看到下面列出的四个语句。 您必须仔细阅读所有内容,然后从四个陈述后面的选项中选择一个选项。 上下文问题是,选择关于随机森林和梯度提升集成方法的正确陈述。
- 随机森林和梯度提升集成方法都可以用于执行分类。
- 随机森林可用于执行分类任务,而梯度提升方法只能执行回归。
- 梯度提升可用于执行分类任务,而随机森林方法只能执行回归。
- 随机森林和梯度提升集成方法都可用于执行回归。
- 只有第一个陈述是正确的。
- 只有第二个陈述是正确的。
- 陈述一和二都是正确的。
- 只有第三个陈述是 TRUE
- 只有第四条语句是 TRUE
- 只有第 1 和第 4 条语句为 TRUE
答。 这个问题的答案很简单。 这两种集成方法实际上都非常有能力完成分类和回归任务。 所以,这个问题的答案是 F,因为只有第 1 和第 4 个陈述是正确的。
Q4 您将看到下面列出的四个语句。 您必须仔细阅读所有内容,然后从四个陈述后面的选项中选择一个选项。 上下文问题是,考虑一个随机的树木森林。 那么随机森林中的每棵或任何一棵树的真实情况是什么?
- 构成随机森林的每棵树都基于所有特征的子集。
- 随机森林中的每一个都建立在所有特征之上。
- 随机森林中的每棵树都建立在所有观测值的子集上。
- 随机森林中的每棵树都建立在完整的观察集上。
- 只有第一个陈述是正确的。
- 只有第二个陈述是正确的。
- 陈述一和二都是正确的。
- 只有第三个陈述是 TRUE
- 只有第四条语句是 TRUE
- 第一个和第四个陈述都是正确的
- 第一个和第三个陈述都是正确的
- 第二和第三个陈述都是正确的
- 第二和第四个陈述都是正确的
答。 随机森林的生成是基于 bagging 的概念。 为了建立一个随机森林,从观察和特征中提取一个小子集。 然后将取出子集后获得的值输入奇异决策树。 然后收集所有此类决策树的所有值以做出最终决策。 这意味着唯一正确的陈述是一和三。 所以,正确的选择是 G。
Q5 您将看到下面列出的四个语句。 您必须仔细阅读所有内容,然后从四个陈述后面的选项中选择一个选项。 上下文问题是,选择关于梯度提升算法的“max_depth”超参数的正确陈述。
- 如果验证集的准确性相似,则选择此超参数的较低值会更好。
- 如果验证集的准确性相似,则选择该超参数的更高值会更好。
- 如果我们要增加这个超参数的值,那么这个模型实际上过度拟合数据的机会就会增加。
- 如果我们要增加这个超参数的值,那么这个模型实际上欠拟合数据的机会就会增加。
- 只有第一个陈述是正确的。
- 只有第二个陈述是正确的。
- 陈述一和二都是正确的。
- 只有第三个陈述是 TRUE
- 只有第四条语句是 TRUE
- 第一个和第四个陈述都是正确的
- 第一个和第三个陈述都是正确的
- 第二和第三个陈述都是正确的
- 第二和第四个陈述都是正确的
答。 超参数 max_depth 控制深度,直到梯度提升将在其前面对呈现的数据进行建模。 如果你继续增加这个超参数的值,那么模型必然会过拟合。 所以,第三个说法是正确的。 如果我们在验证数据上的分数相同,我们通常更喜欢深度较低的模型。 所以,第一和第三个陈述是正确的,因此这个决策树面试问题的答案是 g。

Q6。 您将看到下面列出的四个语句。 您必须仔细阅读所有内容,然后从四个陈述后面的选项中选择一个选项。 上下文问题是以下哪种方法没有学习率作为其可调超参数之一。
- 额外的树木。
- AdaBoost
- 随机森林
- 梯度提升。
- 只有第一个陈述是正确的。
- 只有第二个陈述是正确的。
- 陈述一和二都是正确的。
- 只有第三个陈述是 TRUE
- 只有第四条语句是 TRUE
- 第一个和第四个陈述都是正确的
- 第一个和第三个陈述都是正确的
- 第二和第三个陈述都是正确的
- 第二和第四个陈述都是正确的
答。 只有额外的树和随机森林没有学习率作为它们的可调超参数之一。 因此,答案将是 g,因为第 1 和第 3 个陈述是 TRUE。
问题 7。 选择正确的选项。
- 只有在随机森林算法中,真实值才能通过离散化来处理。
- 只有在梯度提升算法中,才能通过使它们离散化来处理实数值。
- 在随机森林和梯度提升中,可以通过使它们离散来处理实际值。
- 没有上面提到的选项。
答。 这两种算法都是有能力的。 他们都可以轻松处理具有实际价值的特征。 所以,这个决策树面试问题和答案的答案是 C。
Q8。 从下面的列表中选择一个选项。 问题是,选择不是集成学习算法的算法。
- 梯度提升
- AdaBoost
- 额外的树
- 随机森林
- 决策树
答。 这个问题很简单。 这些算法中只有一个不是集成学习算法。 要记住的一条经验法则是,任何集成学习方法都将涉及使用多个决策树。 由于在选项 E 中,只有奇异决策树,因此这不是一个集成学习算法。 所以,这个问题的答案是 E(决策树)。
问题 9。 您将看到下面列出的两个语句。 您必须仔细阅读它们,然后从两个语句的选项中选择一个选项。 上下文问题是,以下哪项在集成学习范式中是正确的。
- 集成中的树数应尽可能高。
- 即使您实现了随机森林算法,您仍然可以解释正在发生的事情。
- 只有第一个陈述是正确的。
- 只有第二个陈述是正确的。
- 陈述一和二都是正确的。
- 没有上面提到的选项。
答。 由于任何集成学习方法都基于将大量决策树(其本身是一个非常弱的学习器)耦合在一起,因此拥有更多数量的树来构建集成方法总是有益的。 然而,随机森林的算法就像一个黑匣子。 您将不知道模型内部发生了什么。 因此,在应用随机森林算法后,您必然会失去所有的可解释性。 所以,这个问题的正确答案是 A,因为只有正确的陈述才是第一个陈述。
问题 10。 仅以 TRUE 或 FALSE 回答。 bagging 算法最适合具有高方差和低偏差的模型?
答。 真的。 Bagging 确实最适合用于高方差和低偏差模型。
问题 11。 . 您将看到下面列出的两个语句。 您必须仔细阅读它们,然后从两个语句的选项中选择一个选项。 上下文问题是,为梯度提升树选择正确的想法。

- 在提升的每个阶段,该算法都会引入另一棵树,以确保补偿所有当前模型问题。
- 我们可以应用梯度下降算法来最小化损失函数。
- 只有第一个陈述是正确的。
- 只有第二个陈述是正确的。
- 陈述一和二都是正确的。
- 没有上面提到的选项。
答。 这个问题的答案是 C,这意味着这两个选项都是 TRUE。 对于第一个语句,这就是提升算法的工作原理。 模型中引入的新树只是为了增强现有算法的性能。 是的,梯度下降算法是用于减少损失函数的函数。
问题 12。 在梯度提升算法中,以下关于学习率的说法正确的是?
- 您设置的学习率应该尽可能高。
- 您设置的学习率不应尽可能高,而应尽可能低。
- 学习率应该很低但不是很低。
- 您设置的学习率应该很高,但不能超高。
答。 学习率应该很低,但不是很低,所以这个决策树面试问题和答案的答案是选项 C。
查看:机器学习面试问题
接下来是什么?
如果您有兴趣了解有关决策树、机器学习的更多信息,请查看 IIIT-B 和 upGrad 的机器学习和人工智能 PG 文凭,该文凭专为在职专业人士设计,提供 450 多个小时的严格培训、30 多个案例研究和任务、IIIT-B 校友身份、5 个以上实用的实践顶点项目和顶级公司的工作协助。
如何改进决策树?
决策树是一种创建简单视觉辅助的工具,其中条件自治或决策点表示为节点,各种可能的结果表示为叶子。 简而言之,决策树是决策过程的模型。 您可以通过确保停止条件始终明确来改进决策树。 当停止标准不明确时,它会让人怀疑是否需要进一步探索,也会让人怀疑是否应该停止。 决策树也应该以易于理解且不会混淆读者的方式构建。
为什么决策树的准确率这么低?
决策树的准确性低于我们的预期。 这可能是由于以下原因造成的: 错误数据 - 使用正确的数据进行机器学习算法非常重要。 错误的数据会导致错误的结果。 随机性——有时,系统非常复杂,以至于无法预测未来会发生什么。 在这种情况下,决策树的准确性也会下降。 过拟合——决策树可能无法捕捉数据的唯一性,因此可以认为是一种泛化。 如果使用相同的数据来调整树,它可能会过度拟合数据。
如何修剪决策树?
使用分支定界算法修剪决策树。 分支定界算法通过遍历树的节点并在每次迭代中限定目标函数的值来找到决策树的最优解。 目标函数是决策树对业务的价值。 在每个节点,算法要么删除树的一个分支,要么将一个分支修剪到一个新节点。 最好的部分是可以修剪分支,即使它导致非最佳解决方案。