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