天天看點

關于內建模組化,這有40個給資料科學家的技能測試題及解答

關于內模組化組化,這有40個給資料科學家的技能測試題及解答

介紹

內建模組化是提高個人機器學習模型能力的有效方法。如果你想在任何機器學習競賽排行榜排名靠前,或者你想改進你正在建構的模型,那麼內建模組化就是你接下來要走的路。

下面這張圖檔總結了內建模型的力量:

關于內模組化組化,這有40個給資料科學家的技能測試題及解答

考慮到內建模組化的重要性,我們決定給出40道題目測試我們社群關于內建模組化的問題。測試包括整體模組化的基礎及其實際應用。

總共有1411名參與者注冊了技能測試。如果你錯過了測試,這裡你将有有機會看看你能答對多少問題。

↓↓↓繼續往下讀!

關于內模組化組化,這有40個給資料科學家的技能測試題及解答

問答

1

以下哪個算法不是內建方法的示例?

a.額外樹回歸/ extra tree regressor

b.随機森林

c.梯度增強

d.決策樹

解析:(d)

選項d是正确答案。在決策樹的情況下,我們建構單個樹并且不需要任何內建。

2

以下哪一項關于內建分類器的說法是正确的?

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是正确的。

5

【判斷】內建學習隻适用于監督式學習方法。

a.正确

b.錯誤

解析:(b)

通常,我們将內建技術用于監督式學習算法。但是,你可以将內建用于非監督式學習算法。

參考資料(https://en.wikipedia.org/wiki/consensus_clustering)。

6

【判斷】當模型中存在顯著的多樣性時,內建将産生壞的結果。

注意:所有獨立的模型都有有意義的、良好的預測。

內建是一門将多種學習者(個體模型)組合在一起以提高模型的穩定性和預測能力的學問。是以,建立多樣化模型的內建是得到更好的結果的非常重要的一個因素。

7

下面哪些關于在內建模組化中使用的較弱模型是正确的?

1.    他們有比較低的方差,而且他們通常不會過度拟合

2.    他們有很高的偏差,是以他們不能解決困難的學習問題

3. 他們有很大的差異,并且他們通常不會過度拟合

d. 以上都不是

解析:(a)

能力較弱的學習者(模型)對于問題的某一特定部分都比較确定。是以,低方差和高偏差的能力較弱的學習者往往不會過度拟合。

8

【判斷】分類器的內建可能或可能不比其中任何一個獨立模型更準确。

a. 正确

b. 錯誤

通常,內建将會改進模型,但它不一定百分百正确。 是以,選項a是正确的。

9

【判斷】如果你使用一個不同基本模型的內建,是否有必要調整所有基本模型的超參數以提高整體表現?

a. 是

b. 否

c. 無法确定

調整是不必要的。能力較弱的學習者(模型)的內建也可以産生一個好的模型。

10

一般來說,如果獨立基本模型____________,內建方法的效果就更好。

注意:假設每個獨立的基本模型有大于50%的精确度。

a.預測之間的相關性較低

b.預測之間的相關性較高

c.相關性對內建輸出沒有任何影響

d.以上都不對

內建模組化成員之間較低的相關性可以提高模型的誤差校正能力。所有在內建模組化時,優選使用具有低相關性的模型。

11

在選舉中,n個候選人互相競争,人們對候選人投票。選民投票時互不溝通。

下面的內建方法中哪一個類似于上面讨論的選舉程式?

提示:人就像內建方法中的基本模型。

a.bagging

b.提升/boosting

c.a或b.

d.以上都不是

在bagging內建中,各個模型的預測不會彼此依賴。是以a選項是正确的。

12

假設給你基于'n'個不同的模型(m1,m2,…, mn)對測試資料給出'n'個預測。下列哪些方法可以用于組合對這些模型的預測?

注意:我們正在處理一個回歸問題

1.中位數;2.産品;3.平均;4.權重總和;5.最小和最大;6.廣義平均規則

a. 1,3和4

b. 1, 3和6

c. 1, 3, 4和6

所有上述選項都是用于聚合不同模型的結果的有效方法(在回歸模型的情況下)。

13

假設,您正在處理一個二分類問題。并且有3個70%的精确度的模型。

如果你想使用多數表決方法來內建這些模型。那你能得到的最大精确度是多少?

a. 100%

b. 78.38%

c. 44%

d. 70

參考下表列出的模型m1,m2和m3。

實際輸出

m1

m2

m3

輸出

14

如果你想使用多數表決來內建這些模型。你能得到的最小精确度是多少?

a.總是大于70%

b.總是大于等于70%

c.可能小于70%

15

我們如何對一個集合中的不同模型的輸出配置設定權重?

1.使用算法傳回最佳權重;2.使用交叉驗證選擇權重;3.給更精确的模型賦予高權重

以上所有決定內建中單個模型的權重的選項都是正确的。

16

下列哪一個關于平均內建的選項是正确的?

a.它隻能用于分類問題

b.它隻能用于回歸問題

c.它既可以用于分類問題也可以用于回歸問題

在分類和回歸中都可以使用平均內建。在分類中,您可以對預測機率進行平均,而在回歸中,您可以直接平均不同模型的預測。

17

假設你對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]

可以應用以下步驟來擷取選項a的結果

1.給出預測的排名

2.對這些排名使用最小最大縮放比例

你可以在python中運作以下代碼來獲得所需的結果。

關于內模組化組化,這有40個給資料科學家的技能測試題及解答

18

在上述快照中,線a和b是關于2個模型(m1,m2)的預測。 現在,你想要應用一個內建,通過使用權重平均的方法聚合這兩個模型的結果。如果你對模型m1和m2分别賦予0.7, 0.3的權重,那麼下面的哪一條線更有可能是這個內建的輸出。

關于內模組化組化,這有40個給資料科學家的技能測試題及解答

a) a

b) b

c) c

d) d

e) e

19

以下哪項關于權重多數投票的說法是正确的?

1.我們想給表現更好的模型賦予更高的權重;2.如果對較差模型的集體權重投票高于最佳模型,那麼較差的模型可以推翻最佳模型;3.投票是權重投票的特殊情況

e. 以上均不

所有的說法都是正确的。

20

假設在一個分類問題中,對于以下三個模型,你得到了以下機率:m1,對于測試資料集的五個觀察結果。

output

.70

.80

.75

.50

.64

.30

.20

.35

.49

.51

.60

如果機率門檻值大于或等于0.5歸為類别“1”或者機率門檻值小于0.5歸為類别“0”,那麼下列哪個将是這些觀察的預測類别?

注意:你正在對三種模型應用平均方法來內建給定的預測。

a.

b.

c.

d. none of these(以上都不是)

取每個觀察的每個模型的預測的平均值,然後應用門檻值0.5就可以得到答案b。

例如,在模型(m1,m2和m3)的第一次觀察中,輸出是0.70,0.80,0.75,取這三個數的平均值得到0.75,這大于0.5,意味着該觀察屬于類别1。

21

d. none of these(以上都不是)

取每個觀察的每個模型的預測的權重平均,然後應用門檻值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。

22

假設在二分類的問題中,您已經為測試資料集的五個觀測值給出了模型(m1,m2,m3)的預測。

如果我們使用多數方法,下列哪一個将是輸出內建模組化?

對每個觀察的每個模型的預測采取多數投票。

例如,對于模型(m1,m2和m3)的第一次觀察的輸出為1,1,0,如果對這三個模型預測取多數投票,那麼類别1将獲得2票,這意味着該觀察屬于類别1。

23

當使用權重投票方法時,下列哪一個将是輸出內建模組化?

提示:m1,m2和m3的投票數分别為自身的2.5倍,6.5倍和3.5倍。

解決方案:(c)

參考問題20, 21和22中的步驟操作。

24

以下哪項關于堆疊(stacking)的說法是正确的?

1.在多個機器學習模型的預測上訓練機器學習模型

2.與分類方法相比,邏輯回歸在第二階段肯定會做的更好

3.第一階段模型在訓練資料的全部/部分特征空間上訓練

a.1和2

1.在堆疊中,在多個基礎模型的預測上訓練一個機器學習模型。

2.沒有必要 - 我們可以使用不同的算法來聚合結果。

3.第一階段模型在所有的原始特征上訓練。

25

以下哪一項是堆疊的優勢?

更強大的模型

更好的預測

執行時間的縮減

和2

和3

以上所有

選項1和2是堆疊的優點,而選項3不正确,因為堆積需要更多的時間

26

以下哪個圖表示堆疊?

關于內模組化組化,這有40個給資料科學家的技能測試題及解答
關于內模組化組化,這有40個給資料科學家的技能測試題及解答

c.   none of these(以上都不是)

a是正确的,因為它通過在d1,d2和dl的輸出上應用函數f來聚合基本模型的結果。

27

以下哪一個選項可能是堆疊的步驟之一?

1.将訓練資料分成k個折疊

2.在每個k-1折疊上訓練k個模型,并對剩餘的一個得到折疊預測

3.将測試資料集合分成k個折疊,并通過不同的算法獲得每個折疊的預測

解決方案:(a)

第三個選項不正确,因為我們不會在堆疊中為測試資料建立折疊。

28

以下哪項是堆疊和混合之間的差別?

a.與混合相比,堆疊具有較不穩定的cv

b.在混合中,你可以建立不折疊預測

c.堆疊比混合更簡單

隻有選項d是正确的。

29

假設您使用n個具有k個折疊資料的不同的機器學習算法的堆疊。

以下哪項關于一個級别(m個基本型号+ 1個堆疊器)堆疊是正确的?

注意:

在這裡,我們正在研究二分類問題

所有基本模型都在所有特征上訓練

您正在使用基本模型的k折疊

a.在第一階段後你将隻有k個特征

b.在第一階段後你将隻有m個特征

c.在第一階段後你将有k + m個特征

d.在第一階段後你将有k * n個特征

e.以上都不是

解決方案:(b)

如果你有m個基礎模型在堆疊。這将為第二階段模型生成m個特征。

30

關于裝袋,以下哪項是真的?

1.bagging可以并行化

2.bagging的目的是減少偏差而不是方差

3.bagging有助于減少過度拟合

1.在bagging中,基模型不依賴于彼此,是以可以平行

2-3 bagging适用于高方差低偏差模型,或者你可以說是複雜模型。

31

【判斷】在boosting中,獨立的基礎學習者是可以平行的。

在boosting中,你總是試圖添加新模型以糾正先前模型的弱點。是以它是順序的。

32

以下是兩個內建模組化:

1.    e1(m1,m2,m3)

2.    e2(m4,m5,m6)

上面的mx是獨立的基本模型。

如果對e1和e2給出以下條件,則下列哪一項更有可能被選擇?

e1:基模型精度高,但模型具有相同的類型或者說是低多樣化

e2:基模型的準确性很高,但它們具有不同的類型或者說是高多樣化

a. e1

b. e2

c.e1和e2中的任一個

我們必須選擇e2,因為它包含多種模型。是以選項b是正确的。

33

假設,你有2000個不同的模型和他們的預測,并且你想要內建最佳x模型的預測。現在,下列哪一項是用來選擇最佳的x模型的可能的方法?

a.逐漸向前選擇

b.逐漸向後消除

c.以上兩者

您可以應用這兩種算法。在逐漸向前選擇中,您将從預測開始一次添加一個模型的預測,如果這樣提高了整體的精度。在逐漸向後消除中,你将從全部特征開始并且一個一個的移除模型預測,如果在移除模型的預測後提高了精度。

34

假設,您想要應用逐漸前向選擇方法來為內建模組化選擇最好的模型。以下哪項是正确的步驟順序?

注意:您有超過1000個模型預測

1.向內建中一個一個的添加模型預測(或者取平均值),這樣提高了驗證集中的名額

2.從空內建開始

3.從具有驗證集合的最大性能的嵌套集合中傳回內建

a. 1-2-3

b. 1-3-4

c. 2-1-3

選項c是正确的。

35

【判斷】相比之bagging,dropout是計算複雜的方法

因為在dropout中,權重是共享的,并且子網絡的內建是一起訓練的。

36

dropout在神經網絡中可以被認為是一個內建技術,其中多個

子網絡通過“丢棄”神經元之間的某些連接配接而一起訓練。

假設,我們有一個單一的隐層神經網絡如下所示。

有多少種子網絡的組合可以用于分類?

關于內模組化組化,這有40個給資料科學家的技能測試題及解答

b. 9

c. 12

d. 16

e. none of the above(以上都不是)

有16種可能的組合,其中隻有9種是可行的。不可行的是(6,7,12,13,14,15,16)。

關于內模組化組化,這有40個給資料科學家的技能測試題及解答

37

模型能力是如何影響随機失活率(dropout rate)的(其中模型能力意味着神經網絡近似複雜函數的能力)?

a.模型能力随随機失活率的增加而增加

b.模型能力随随機失活率的增加而減少

c.模型能力不受随機失活率增加的影響

當退出率較低時,子網絡有更多的神經元。 是以它們更複雜,也導緻總體模型複雜性的增加。參考dl book的第11章(http://www.deeplearningbook.org/contents/guidelines.html)。

38

可以調整以下哪些參數來找到好的基于算法的內建模型bagging?

1.最大樣本數

2.最大特征

3.樣品引導

4.特征引導

b. 2和4

c. 1,2和3

d. 1,3和4

e.以上所有

解析:(e)

在選項中給出的所有技術都可以應用以獲得好的內建。

39

在機器學習中,如果訓練資料的一個小變化導緻學習中的分類器的大變化,則該算法(或學習算法)被認為是不穩定的。

判斷:對不穩定的分類器做bagging是一個好主意。

參考該論文的介紹部分(http://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

解析:參考這個連結(http://stats.stackexchange.com/questions/21502/how-are-classifications-merged-in-an-ensemble-classifier)

總體結果

答完所有題目得分如何?下圖是所有測試者分數的分布情況圖,這将有助于您評估您的表現:

關于內模組化組化,這有40個給資料科學家的技能測試題及解答

你可以通過這裡評估你的表現。超過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”微信公衆号

繼續閱讀