关于集成建模,这有40个给数据科学家的技能测试题及解答
介绍
集成建模是提高个人机器学习模型能力的有效方法。如果你想在任何机器学习竞赛排行榜排名靠前,或者你想改进你正在构建的模型,那么集成建模就是你接下来要走的路。
下面这张图片总结了集成模型的力量:
考虑到集成建模的重要性,我们决定给出40道题目测试我们社区关于集成建模的问题。测试包括整体建模的基础及其实际应用。
总共有1411名参与者注册了技能测试。如果你错过了测试,这里你将有有机会看看你能答对多少问题。
↓↓↓继续往下读!
问答
以下哪个算法不是集成方法的示例?
A.额外树回归/ Extra Tree Regressor
B.随机森林
C.梯度增强
D.决策树
解析:(D)
选项D是正确答案。在决策树的情况下,我们构建单个树并且不需要任何集成。
以下哪一项关于集成分类器的说法是正确的?
1.更“肯定”的分类器可以更坚定的投票
2.分类器关于空间的某一特定部分可以更“确定”
3.大多数时候,它的性能优于单个分类器
A. 1和2
B. 1和3
C. 2和3
D.以上所有
解决方案:(D)
在集成模型中,我们给具有较高精度的分类器赋予较高的权重。也就是说,这些分类器有更确信的投票。另一方面,较弱的模型对问题的具体领域肯那个更“擅长”。 通过对较弱模型的集成,我们可以聚合他们的可靠部分的结果。
最终的结果将比单个较弱模型的结果好得多。
3以下哪些有关集成建模的好处是正确的?
1.更好的表现
2.广义模型
3.更好的可解释性
A. 1和3
B. 2和3
C. 1和2
D. 1,2和3
解析:(C)
1和2是集成建模的好处。 选项3是不正确的,因为当我们集成多个模型时,我们就失去了模型的可解释性。
4对于为一个集成学习挑选基础模型,以下哪项是正确的?
1.不同模型可能掌握相同算法并且不同超参数
2.不同模型可能掌握不同的算法
3.不同模型可能掌握不同的训练空间
A. 1
B. 2
C. 1和3
D. 1,2和3
解析:(D)
我们可以遵循上面提到的任何或者所有选项来创建一个集成,由此发现选项D是正确的。
5【判断】集成学习只适用于监督式学习方法。
A.正确
B.错误
解析:(B)
通常,我们将集成技术用于监督式学习算法。但是,你可以将集成用于非监督式学习算法。
参考资料(https://en.wikipedia.org/wiki/Consensus_clustering)。
【判断】当模型中存在显着的多样性时,集成将产生坏的结果。
注意:所有独立的模型都有有意义的、良好的预测。
A.正确
B.错误
解析:(B)
集成是一门将多种学习者(个体模型)组合在一起以提高模型的稳定性和预测能力的学问。因此,创建多样化模型的集成是得到更好的结果的非常重要的一个因素。
下面哪些关于在集成建模中使用的较弱模型是正确的?
-
1. 他们有比较低的方差,而且他们通常不会过度拟合
-
2. 他们有很高的偏差,所以他们不能解决困难的学习问题
-
3. 他们有很大的差异,并且他们通常不会过度拟合
-
A. 1和2
-
B. 1和3
-
C. 2和3
-
D. 以上都不是
解析:(A)
能力较弱的学习者(模型)对于问题的某一特定部分都比较确定。因此,低方差和高偏差的能力较弱的学习者往往不会过度拟合。
【判断】分类器的集成可能或可能不比其中任何一个独立模型更准确。
A. 正确
B. 错误
解析:(A)
通常,集成将会改进模型,但它不一定百分百正确。 因此,选项A是正确的。
【判断】如果你使用一个不同基本模型的集成,是否有必要调整所有基本模型的超参数以提高整体表现?
A. 是
B. 否
C. 无法确定
解析:(B)
调整是不必要的。能力较弱的学习者(模型)的集成也可以产生一个好的模型。
一般来说,如果独立基本模型____________,集成方法的效果就更好。
注意:假设每个独立的基本模型有大于50%的精确度。
A.预测之间的相关性较低
B.预测之间的相关性较高
C.相关性对集成输出没有任何影响
D.以上都不对
解析:(A)
集成建模成员之间较低的相关性可以提高模型的误差校正能力。所有在集成建模时,优选使用具有低相关性的模型。
在选举中,N个候选人相互竞争,人们对候选人投票。选民投票时互不沟通。
下面的集成方法中哪一个类似于上面讨论的选举程序?
提示:人就像集成方法中的基本模型。
A.Bagging
B.提升/Boosting
C.A或B.
D.以上都不是
解析:(A)
在bagging集成中,各个模型的预测不会彼此依赖。所以A选项是正确的。
假设给你基于'n'个不同的模型(M1,M2,…, Mn)对测试数据给出'n'个预测。下列哪些方法可以用于组合对这些模型的预测?
注意:我们正在处理一个回归问题
1.中位数;2.产品;3.平均;4.加权总和;5.最小和最大;6.广义平均规则
A. 1,3和4
B. 1, 3和6
C. 1, 3, 4和6
D.以上所有
解析:(D)
所有上述选项都是用于聚合不同模型的结果的有效方法(在回归模型的情况下)。
假设,您正在处理一个二分类问题。并且有3个70%的精确度的模型。
如果你想使用多数表决方法来集成这些模型。那你能得到的最大精确度是多少?
A. 100%
B. 78.38%
C. 44%
D. 70
解析:(A)
参考下表列出的模型M1,M2和M3。
实际输出 |
M1 |
M2 |
M3 |
输出 |
1 |
1 |
0 |
1 |
1 |
1 |
1 |
0 |
1 |
1 |
1 |
1 |
0 |
1 |
1 |
1 |
0 |
1 |
1 |
1 |
1 |
0 |
1 |
1 |
1 |
1 |
0 |
1 |
1 |
1 |
1 |
1 |
1 |
1 |
1 |
1 |
1 |
1 |
0 |
1 |
1 |
1 |
1 |
0 |
1 |
1 |
1 |
1 |
0 |
1 |
如果你想使用多数表决来集成这些模型。你能得到的最小精确度是多少?
A.总是大于70%
B.总是大于等于70%
C.可能小于70%
D.以上都不是
解析:(C)
参考下表列出的模型M1,M2和M3。
实际输出 |
M1 |
M2 |
M3 |
输出 |
1 |
1 |
0 |
0 |
0 |
1 |
1 |
1 |
1 |
1 |
1 |
1 |
0 |
0 |
0 |
1 |
0 |
1 |
0 |
0 |
1 |
0 |
1 |
1 |
1 |
1 |
0 |
0 |
1 |
0 |
1 |
1 |
1 |
1 |
1 |
1 |
1 |
1 |
1 |
1 |
1 |
1 |
1 |
1 |
1 |
1 |
1 |
1 |
1 |
1 |
我们如何对一个集合中的不同模型的输出分配权重?
1.使用算法返回最佳权重;2.使用交叉验证选择权重;3.给更精确的模型赋予高权重
A. 1和2
B. 1和3
C. 2和3
D.以上所有
解析:(D)
以上所有决定集成中单个模型的权重的选项都是正确的。
下列哪一个关于平均集成的选项是正确的?
A.它只能用于分类问题
B.它只能用于回归问题
C.它既可以用于分类问题也可以用于回归问题
D.以上都不是
解析:(C)
在分类和回归中都可以使用平均集成。在分类中,您可以对预测概率进行平均,而在回归中,您可以直接平均不同模型的预测。
假设你对5个测试观察给出了预测。
预测= [0.2,0.5,0.33,0.8]
以下哪项是这些预测的平均产出排序?
提示:您正在使用最小 - 最大缩放
A. [0.,0.66666667,0.333333333,1.1]
B. [0.1210,0.666666667,0.95,0.33333333]
C. [0.1210,0.666666667,0.333333333,0.95]
D.以上都不是
解析:(A)
可以应用以下步骤来获取选项A的结果
1.给出预测的排名
2.对这些排名使用最小最大缩放比例
你可以在python中运行以下代码来获得所需的结果。
在上述快照中,线A和B是关于2个模型(M1,M2)的预测。 现在,你想要应用一个集成,通过使用加权平均的方法聚合这两个模型的结果。如果你对模型M1和M2分别赋予0.7, 0.3的权重,那么下面的哪一条线更有可能是这个集成的输出。
A) A
B) B
C) C
D) D
E) E
解析:(C)
以下哪项关于加权多数投票的说法是正确的?
1.我们想给表现更好的模型赋予更高的权重;2.如果对较差模型的集体加权投票高于最佳模型,那么较差的模型可以推翻最佳模型;3.投票是加权投票的特殊情况
A. 1和3
B. 2和3
C. 1和2
D. 1,2和3
E. 以上均不
解决方案:(D)
所有的说法都是正确的。
20假设在一个分类问题中,对于以下三个模型,你得到了以下概率:M1,对于测试数据集的五个观察结果。
M1 |
M2 |
M3 |
Output |
.70 |
.80 |
.75 |
|
.50 |
.64 |
.80 |
|
.30 |
.20 |
.35 |
|
.49 |
.51 |
.50 |
|
.60 |
.80 |
.60 |
如果概率阈值大于或等于0.5归为类别“1”或者概率阈值小于0.5归为类别“0”,那么下列哪个将是这些观察的预测类别?
注意:你正在对三种模型应用平均方法来集成给定的预测。
A.
M1 |
M2 |
M3 |
Output |
.70 |
.80 |
.75 |
1 |
.50 |
.64 |
.80 |
1 |
.30 |
.20 |
.35 |
0 |
.49 |
.51 |
.50 |
0 |
.60 |
.80 |
.60 |
1 |
B.
M1 |
M2 |
M3 |
Output |
.70 |
.80 |
.75 |
1 |
.50 |
.64 |
.80 |
1 |
.30 |
.20 |
.35 |
0 |
.49 |
.51 |
.50 |
1 |
.60 |
.80 |
.60 |
1 |
C.
M1 |
M2 |
M3 |
Output |
.70 |
.80 |
.75 |
1 |
.50 |
.64 |
.80 |
1 |
.30 |
.20 |
.35 |
1 |
.49 |
.51 |
.50 |
0 |
.60 |
.80 |
.60 |
0 |
D. None of these(以上都不是)
解析:(B)
取每个观察的每个模型的预测的平均值,然后应用阈值0.5就可以得到答案B。
例如,在模型(M1,M2和M3)的第一次观察中,输出是0.70,0.80,0.75,取这三个数的平均值得到0.75,这大于0.5,意味着该观察属于类别1。
如果概率阈值大于或等于0.5归为类别“1”或者概率阈值小于0.5归为类别“0”,那么下列哪个将是这些观察的预测类别?
A.
M1 |
M2 |
M3 |
Output |
.70 |
.80 |
.75 |
1 |
.50 |
.64 |
.80 |
1 |
.30 |
.20 |
.35 |
0 |
.49 |
.51 |
.50 |
0 |
.60 |
.80 |
.60 |
1 |
B.
M1 |
M2 |
M3 |
Output |
.70 |
.80 |
.75 |
1 |
.50 |
.64 |
.80 |
1 |
.30 |
.20 |
.35 |
0 |
.49 |
.51 |
.50 |
1 |
.60 |
.80 |
.60 |
1 |
C.
M1 |
M2 |
M3 |
Output |
.70 |
.80 |
.75 |
1 |
.50 |
.64 |
.80 |
1 |
.30 |
.20 |
.35 |
1 |
.49 |
.51 |
.50 |
0 |
.60 |
.80 |
.60 |
0 |
D. None of these(以上都不是)
解析:(B)
取每个观察的每个模型的预测的加权平均,然后应用阈值0.5你得到答案B。
例如,在模型(M1,M2和M3)的第一次观察中输出为0.70,0.80,0.75,如果取这三个预测的加权平均值,则将得到0.745(0.70 * 0.4 + 0.80 * 0.3 + 0.75 * 0.3),这意味着这个观察属于类别1。
假设在二分类的问题中,您已经为测试数据集的五个观测值给出了模型(M1,M2,M3)的预测。
M1 |
M2 |
M3 |
Output |
1 |
1 |
0 |
|
0 |
1 |
0 |
|
0 |
1 |
1 |
|
1 |
0 |
1 |
|
1 |
1 |
1 |
如果我们使用多数方法,下列哪一个将是输出集成建模?
A.
M1 |
M2 |
M3 |
Output |
1 |
1 |
0 |
0 |
0 |
1 |
0 |
1 |
0 |
1 |
1 |
0 |
1 |
0 |
1 |
0 |
1 |
1 |
1 |
1 |
B.
M1 |
M2 |
M3 |
Output |
1 |
1 |
0 |
1 |
0 |
1 |
0 |
0 |
0 |
1 |
1 |
1 |
1 |
0 |
1 |
1 |
1 |
1 |
1 |
1 |
C.
M1 |
M2 |
M3 |
Output |
1 |
1 |
0 |
1 |
0 |
1 |
0 |
0 |
0 |
1 |
1 |
1 |
1 |
0 |
1 |
0 |
1 |
1 |
1 |
1 |
D. None of these(以上都不是)
解析:(B)
对每个观察的每个模型的预测采取多数投票。
例如,对于模型(M1,M2和M3)的第一次观察的输出为1,1,0,如果对这三个模型预测取多数投票,那么类别1将获得2票,这意味着该观察属于类别1。
当使用加权投票方法时,下列哪一个将是输出集成建模?
提示:M1,M2和M3的投票数分别为自身的2.5倍,6.5倍和3.5倍。
A.
M1 |
M2 |
M3 |
Output |
1 |
1 |
0 |
0 |
0 |
1 |
0 |
1 |
0 |
1 |
1 |
0 |
1 |
0 |
1 |
0 |
1 |
1 |
1 |
1 |
B.
M1 |
M2 |
M3 |
Output |
1 |
1 |
0 |
1 |
0 |
1 |
0 |
0 |
0 |
1 |
1 |
1 |
1 |
0 |
1 |
1 |
1 |
1 |
1 |
1 |
C.
M1 |
M2 |
M3 |
Output |
1 |
1 |
0 |
1 |
0 |
1 |
0 |
1 |
0 |
1 |
1 |
1 |
1 |
0 |
1 |
0 |
1 |
1 |
1 |
1 |
D. None of these(以上都不是)
解决方案:(C)
参考问题20, 21和22中的步骤操作。
以下哪项关于堆叠(stacking)的说法是正确的?
1.在多个机器学习模型的预测上训练机器学习模型
2.与分类方法相比,逻辑回归在第二阶段肯定会做的更好
3.第一阶段模型在训练数据的全部/部分特征空间上训练
A.1和2
B. 2和3
C. 1和3
D.以上所有
解析:(C)
1.在堆叠中,在多个基础模型的预测上训练一个机器学习模型。
2.没有必要 - 我们可以使用不同的算法来聚合结果。
3.第一阶段模型在所有的原始特征上训练。
以下哪一项是堆叠的优势?
-
更强大的模型
-
更好的预测
-
执行时间的缩减
-
和2
-
和3
-
和3
-
以上所有
解析:(A)
选项1和2是堆叠的优点,而选项3不正确,因为堆积需要更多的时间
以下哪个图表示堆叠?
A.
B.
-
C. None of these(以上都不是)
解析:(A)
A是正确的,因为它通过在d1,d2和dL的输出上应用函数f来聚合基本模型的结果。
以下哪一个选项可能是堆叠的步骤之一?
1.将训练数据分成k个折叠
2.在每个k-1折叠上训练k个模型,并对剩余的一个得到折叠预测
3.将测试数据集合分成k个折叠,并通过不同的算法获得每个折叠的预测
A. 1和2
B. 2和3
C. 1和3
D.以上所有
解决方案:(A)
第三个选项不正确,因为我们不会在堆叠中为测试数据创建折叠。
以下哪项是堆叠和混合之间的区别?
A.与混合相比,堆叠具有较不稳定的CV
B.在混合中,你可以创建不折叠预测
C.堆叠比混合更简单
D.以上都不是
解析:(D)
只有选项D是正确的。
假设您使用n个具有k个折叠数据的不同的机器学习算法的堆叠。
以下哪项关于一个级别(m个基本型号+ 1个堆叠器)堆叠是正确的?
注意:
在这里,我们正在研究二分类问题
所有基本模型都在所有特征上训练
您正在使用基本模型的k折叠
A.在第一阶段后你将只有k个特征
B.在第一阶段后你将只有m个特征
C.在第一阶段后你将有k + m个特征
D.在第一阶段后你将有k * n个特征
E.以上都不是
解决方案:(B)
如果你有m个基础模型在堆叠。这将为第二阶段模型生成m个特征。
关于装袋,以下哪项是真的?
1.bagging可以并行化
2.bagging的目的是减少偏差而不是方差
3.bagging有助于减少过度拟合
A. 1和2
B. 2和3
C. 1和3
D.以上所有
解析:(C)
1.在bagging中,基模型不依赖于彼此,因此可以平行
2-3 bagging适用于高方差低偏差模型,或者你可以说是复杂模型。
【判断】在boosting中,独立的基础学习者是可以平行的。
A.正确
B.错误
解析:(B)
在boosting中,你总是试图添加新模型以纠正先前模型的弱点。因此它是顺序的。
以下是两个集成建模:
1. E1(M1,M2,M3)
2. E2(M4,M5,M6)
上面的Mx是独立的基本模型。
如果对E1和E2给出以下条件,则下列哪一项更有可能被选择?
E1:基模型精度高,但模型具有相同的类型或者说是低多样化
E2:基模型的准确性很高,但它们具有不同的类型或者说是高多样化
A. E1
B. E2
C.E1和E2中的任一个
D.以上都不是
解析:(B)
我们必须选择E2,因为它包含多种模型。所以选项B是正确的。
假设,你有2000个不同的模型和他们的预测,并且你想要集成最佳x模型的预测。现在,下列哪一项是用来选择最佳的x模型的可能的方法?
A.逐步向前选择
B.逐步向后消除
C.以上两者
D.以上都不是
解析:(C)
您可以应用这两种算法。在逐步向前选择中,您将从预测开始一次添加一个模型的预测,如果这样提高了整体的精度。在逐步向后消除中,你将从全部特征开始并且一个一个的移除模型预测,如果在移除模型的预测后提高了精度。
假设,您想要应用逐步前向选择方法来为集成建模选择最好的模型。以下哪项是正确的步骤顺序?
注意:您有超过1000个模型预测
1.向集成中一个一个的添加模型预测(或者取平均值),这样提高了验证集中的指标
2.从空集成开始
3.从具有验证集合的最大性能的嵌套集合中返回集成
A. 1-2-3
B. 1-3-4
C. 2-1-3
D.以上都不是
解决方案:(C)
选项C是正确的。
【判断】相比之Bagging,Dropout是计算复杂的方法
A.正确
B.错误
解决方案:(B)
因为在Dropout中,权重是共享的,并且子网络的集成是一起训练的。
Dropout在神经网络中可以被认为是一个集成技术,其中多个
子网络通过“丢弃”神经元之间的某些连接而一起训练。
假设,我们有一个单一的隐层神经网络如下所示。
有多少种子网络的组合可以用于分类?
A. 1
B. 9
C. 12
D. 16
E. None of the above(以上都不是)
解析:(B)
有16种可能的组合,其中只有9种是可行的。不可行的是(6,7,12,13,14,15,16)。
模型能力是如何影响随机失活率(dropout rate)的(其中模型能力意味着神经网络近似复杂函数的能力)?
A.模型能力随随机失活率的增加而增加
B.模型能力随随机失活率的增加而减少
C.模型能力不受随机失活率增加的影响
D.以上都不是
解析:(B)
当退出率较低时,子网络有更多的神经元。 因此它们更复杂,也导致总体模型复杂性的增加。参考DL book的第11章(https://www.deeplearningbook.org/contents/guidelines.html)。
可以调整以下哪些参数来找到好的基于算法的集成模型Bagging?
1.最大样本数
2.最大特征
3.样品引导
4.特征引导
A. 1和3
B. 2和4
C. 1,2和3
D. 1,3和4
E.以上所有
解析:(E)
在选项中给出的所有技术都可以应用以获得好的集成。
在机器学习中,如果训练数据的一个小变化导致学习中的分类器的大变化,则该算法(或学习算法)被认为是不稳定的。
判断:对不稳定的分类器做Bagging是一个好主意。
A.正确
B.错误
解析:(A)
参考该论文的介绍部分(https://statistics.berkeley.edu/sites/default/files/tech-reports/421.pdf)
40假设有25个基分类器,每个分类器具有e = 0.35的错误率。
假设您使用平均作为集成技术。上述25个分类器的集成将会做出错误的预测的概率是多大?
注意:所有分类器都是相互独立的
A. 0.05
B. 0.06
C. 0.07
D. 0.09
解析:B
解析:参考这个链接(https://stats.stackexchange.com/questions/21502/how-are-classifications-merged-in-an-ensemble-classifier)
总体结果
答完所有题目得分如何?下图是所有测试者分数的分布情况图,这将有助于您评估您的表现:
你可以通过这里评估你的表现。超过230人参加了这项技能测试,其中最高分是31分。下面是一些关于分布情况的统计。
总体分布:
平均分:17.54
中位数:18
众数:21
还要以下一些有用的资源:
每个人都应该知道的5个关于集成建模的简单问题
https://www.analyticsvidhya.com/blog/2015/09/questions-ensemble-modeling/
集成建模中选择正确模型的“技巧”
https://www.analyticsvidhya.com/blog/2015/10/trick-right-model-ensemble/
用简单的英语解释集成学习的基础知识
https://www.analyticsvidhya.com/blog/2015/08/introduction-ensemble-learning/
原文发布时间为:2017-03-20
本文来自云栖社区合作伙伴“大数据文摘”,了解相关信息可以关注“BigDataDigest”微信公众号
最后更新:2017-05-22 15:33:09