![]() 簡介如果你要問我兩個機(jī)器學(xué)習(xí)中最直觀明了且通俗易懂的算法——那必然就是K近鄰算法和基于樹的算法了。這兩個算法都易于理解,也很容易解釋,并且能夠很好地去向人們展示。最近,我們就針對這兩種算法,整理了一些測試題。 如果你是機(jī)器學(xué)習(xí)的新手,也要在理解這兩種算法的基礎(chǔ)上進(jìn)行測試。它們雖然簡單,但是卻十分強(qiáng)大且被廣泛運(yùn)用在工業(yè)領(lǐng)域。這些技能測試能夠幫助你測試你在K近鄰算法方面的技術(shù)能力。因為它們是為測試你在K近鄰算法上的基礎(chǔ)知識與應(yīng)用能力而量身定制的。 有超過650人注冊參加考試。如果你錯過了這個測試也沒關(guān)系,下面就是測試的問題與答案。 技能測試試題與答案解析1)【True or False】KNN算法在測試時花費更多計算,而不是訓(xùn)練時。 A) TRUE B)FALSE 答案:A 解析:算法的訓(xùn)練階段僅包括存儲訓(xùn)練樣本的特征向量和類標(biāo)簽。 在測試階段,通過在最接近該查詢點的k個訓(xùn)練樣本中分配最頻繁的標(biāo)簽來對測試點進(jìn)行分類——因此這方面計算更多。 2)下圖中,若使用K近鄰算法,最佳K值應(yīng)在哪里取得?
A) 3 B)10 C) 20 D)50 答案:B 解析:當(dāng)K為10時,驗證的錯誤率最低,所以K值應(yīng)取10. 3)下圖哪種度量距離不能用于KNN算法? A)Manhattan B)Minkowski C)Tanimoto D) Jaccard E)Mahalanobis F) 所有都可以 答案:F 解析:所有的度量距離都可以用于KNN。 4)關(guān)于KNN哪種觀點是對的? A)它可以用于分類 B)它可以用于回歸 C)它可以用于分類和回歸 答案:C 解析:我們也可以使用KNN來解決回歸問題。在這種情況下,預(yù)測可以基于k個最相似實例的均值或中值。 5)下面關(guān)于KNN算法哪種說法是正確的? 1.如果所有的數(shù)據(jù)是同樣的大小,KNN算法表現(xiàn)比較好 2.KNN算法適用于小數(shù)據(jù)輸入,而大量數(shù)據(jù)輸入時會遇到困難。 3.KNN算法并沒有對正在處理的問題的功能形式進(jìn)行假設(shè)。 A)1和2 B)1和3 C)只有1 D)以上所有 答案:D 解析:以上所有的說法都是正確的 6)以下哪種機(jī)器學(xué)習(xí)算法可用于輸入分類和連續(xù)變量的缺失值? A )KNN B)線性回歸 C)邏輯回歸 答案:A 解析:k-NN算法可用于估算分類和連續(xù)變量的缺失值。 7)關(guān)于曼哈頓距離哪種觀點是對的? A)它可以用于連續(xù)變量 B)它可以用于分類變量 C)兩者都可以 D)兩者都不可以 答案:A 解析:曼哈頓距離用于計算實值特征之間的距離。 8)對于k-NN中的分類變量,我們使用以下哪種距離測量? 1.漢明距離 2.歐幾里得距離 3.曼哈頓距離 A)1 B)2 C)3 D)1和2 E )2和3 F )1和2和3 答案:A 解析:在連續(xù)變量的情況下使用歐幾里得距離和曼哈頓距離,而在分類變量的情況下使用漢明距離。 9)以下哪一項是歐幾里德距離算法下,兩個數(shù)據(jù)點A(1,3)和B(2,3)之間的距離? A)1 B)2 C)4 D)8 答案:A 解析:sqrt( (1-2)^2 + (3-3)^2) = sqrt(1^2 + 0^2) = 1 10)以下哪一項將是曼哈頓距離算法下,兩個數(shù)據(jù)點A(1,3)和B(2,3)之間的距離? A)1 B)2 C)4 D)8 答案:A 解析:sqrt( mod((1-2)) + mod((3-3))) = sqrt(1 + 0) = 1 11題,12題內(nèi)容 假設(shè)已經(jīng)給出了以下數(shù)據(jù),其中x和y是兩個輸入變量,分類結(jié)果是因變量。
下面是散點圖,在二維空間里顯示上面的數(shù)據(jù):
11)假設(shè)您想要使用KNN(K值為3)中的歐式距離預(yù)測新數(shù)據(jù)點x = 1和y = 1的類。那么這個數(shù)據(jù)點屬于哪個類? A)+類 B)-類 C)不能確定 D)不是上面這些結(jié)果 答案:A 解析:所有三個最近點都是+類,所以這一點將被歸類為+ 類。 12)在上一個問題中,您現(xiàn)在想要使用7-NN而不是3-KNN,以下x = 1和y = 1屬于哪個類? A)+類 B)-類 C)不能確定 答案:B 解析:現(xiàn)在這一點將被歸類為 - 類,因為有4個-類點和3個+類點在圓圈中。 13題,14題的內(nèi)容: 假設(shè)您已經(jīng)給出了以下2類數(shù)據(jù),其中“+”表示正類,“-”表示負(fù)類。
13)在KNN中,下面哪個K值,可以值得交叉驗證的誤差值最??? A)3 B)5 C)上面都可以 D)上面都不可以 答案:B 解析:K為5時,交叉驗證的誤差值最小。 14)下面哪個是K為5時,交叉驗證集的偏差? A)2/14 B)4/14 C)6/14 D)8/14 E)以上都不是 答案:E 解析:K為5時,正確結(jié)果為10/14。 15)就偏差而言,關(guān)于K,下面哪個是正確的? A)增加K時,偏差會增加 B)減小K時,偏差會增加 C)不能確定 D)以上都不對 答案:A 解析:大K意味著簡單的模型,簡單的模型總是有高偏差。 16)就方差而言,關(guān)于K,下面哪個是正確的? A)增加K時,方差會增加 B)減小K時,方差會增加 C)不能確定 D)以上都不對 答案:B 解析:簡單的模型一般會有較小的方差。 17)通常我們在K-NN算法中使用了以下兩個距離(歐式距離和曼哈頓距離)。這些距離在兩個點A(x1,y1)和B(x2,Y2)之間。你的任務(wù)是通過查看以下兩個圖來標(biāo)記兩個距離。關(guān)于下圖,以下哪個選項是正確的?
A)左邊是曼哈頓距離,右邊是歐幾里德距離 B)左邊是歐幾里德距離,右邊是曼哈頓距離 C)左邊或右邊都不是曼哈頓距離 D)左或右都不是歐幾里德距離 答案:B 解析:左邊是歐幾里德距離如何工作的圖形描述,而右邊是曼哈頓距離。 18)在KNN中發(fā)現(xiàn)有噪聲,你會做下面哪種選擇? A)增加K的值 B)減小K的值 C)噪聲與K值無關(guān) D)以上都不對 答案:A 解析:增加K值能夠讓你更加相信分類結(jié)果。 19)在KNN中,由于維度等原因,很容易產(chǎn)生過擬合。那么你會采用下面哪種方法來解決這個問題呢? 1.維度降低 2.特征選擇 A)1 B)2 C)1和2 D)以上都不對 答案:C 解析:兩種方法都是可以的。 20)下面兩個陳述哪個是對的? 1.KNN是一種基于記憶的方法,因為分類器在我們收集到新的數(shù)據(jù)時會立即適應(yīng)。 2.在最壞的情況下,用于分類新樣本的計算復(fù)雜度隨著訓(xùn)練數(shù)據(jù)集中的樣本數(shù)量線性增長。 A)1 B)2 C)1和2 D)以上都不對 答案:C 解析:兩個都是對的,顯而易見。 21)假設(shè)給出下面的圖像(左邊為1.中間為2,右邊為3),現(xiàn)在你的任務(wù)是找出每幅圖中的KNN中的K值,其中K1表示第一個K,K2表示第二個K,K3表示第三個K。
A) K1 > K2 > K3 B) K1 < K2 C) K1 = K2 = K3 D) None of these 答案:D 解析:K3是K值最高的,而最低的是K1。 22)下圖中哪個k 最少可以給出一個交叉驗證準(zhǔn)確度?
A)1 B)2 C)3 D)5 答案:B 解析:如果k值為2,則它會提供最低的交叉驗證精度。 23)現(xiàn)在有一家公司建立了一個KNN分類器,可以在訓(xùn)練數(shù)據(jù)時獲得100%的準(zhǔn)確性。當(dāng)他們在客戶端部署這個模型的時候發(fā)現(xiàn)這個模型一點都不準(zhǔn)確,可能是下面哪一項出錯了? 注:模型已經(jīng)成果部署,除了模型性能外,客戶端沒有發(fā)現(xiàn)其他技術(shù)問題。 A)它可能是一個過擬合了的模型 B)這個模型不適用 C)無法解釋 D)以上都不是 答案:A 解析:在一個過度擬合的模塊中,它可以在訓(xùn)練數(shù)據(jù)上表現(xiàn)良好,但它并不足以推廣給新數(shù)據(jù)而達(dá)到同樣的結(jié)果。 24)下面兩個關(guān)于KNN的陳述,哪個是對的? 1.在k值非常大的情況下,我們可以將來自其他類的點包括在鄰域中。 2.在k值太小的情況下,算法對噪聲非常敏感。 A)1 B)2 C)1和2 D)以上都不對 答案:C 解析:這兩個都是顯而易見的正確。 25)關(guān)于KNN分類器,下面哪個說法是正確的? A)K值越大,分類的精度越高 B)使用較小的K值,決策邊界教平滑 C)決策邊界是線性的 D)KNN沒有明確的訓(xùn)練步驟 答案:D 解析:選項A,并不總是這樣,K值不能太小,也不能太大; 選項B,C,決策邊界可能是有鋸齒狀的。 26)【True or False】能夠使用一個1-NN分類器去構(gòu)建一個2-NN分類器。 A) TRUE B)FALSE 答案:A 解析:可以通過集成1-NN分類器來實現(xiàn)2-NN分類器。 27)在k-NN中,當(dāng)你增加/減少k的值時會發(fā)生什么? A)隨著K值增加,決策邊界會更加平滑 B)隨著K值減小,決策邊界會更加平滑 C)決策邊界是否平滑與K值無關(guān) D)以上都不對 答案:A 解析:增加K值,決策邊界會更加平滑 28)下面兩個關(guān)于KNN的陳述,哪個是對的? 1.我們可以在交叉驗證的幫助下選擇k的最佳值。 2.歐幾里德距離將每個特征視為同等重要。 A)1 B)2 C)1和2 D)以上都不對 答案:C 解析:兩個說法都是正確的 29題,30題內(nèi)容 假設(shè)你已經(jīng)訓(xùn)練好了KNN模型,現(xiàn)在你想要在測試集上進(jìn)行預(yù)測。在測試之前,你想要計算KNN模型用于預(yù)測測試集的時間。 注:計算兩次觀察之間的距離需要花費時間D。 29)如果測試數(shù)據(jù)中有N(非常大)個觀測值,1-NN所需的時間是多少? A ) NxD B ) NxDx2 C ) (NxD)/2 D ) 以上都不對 答案:A 解析:當(dāng)N的值非常大時,計算每個觀測值時間就是N*D。 30)1-NN,2-NN,3-NN 所用時間之間的關(guān)系是什么? A) 1-NN >2-NN >3-NN B) 1-NN < 2-NN < 3-NN C) 1-NN = 2-NN = 3-NN D) 以上都不對 答案:C 解析:每個K的訓(xùn)練時間都是相同的。 總體分布下面是參加測試者的得分分布圖:
在分布圖中可見,超過250人進(jìn)行了測試,最高分為24分。 |
|
|