機器學習筆試題精選(二)

dicksonjyl560101發表於2018-08-04

上次 機器學習筆試題精選(一)中,我們詳細解析了機器學習筆試 15 道題。今天,紅色石頭帶大家繼續“死磕”相關筆試題!

Q1. 假如我們使用 Lasso 迴歸來擬合資料集,該資料集輸入特徵有 100 個(X1,X2,…,X100)。現在,我們把其中一個特徵值擴大 10 倍(例如是特徵 X1),然後用相同的正則化引數對 Lasso 迴歸進行修正。

那麼,下列說法正確的是?

A. 特徵 X1 很可能被排除在模型之外

B. 特徵 X1 很可能還包含在模型之中

C. 無法確定特徵 X1 是否被捨棄

D. 以上說法都不對

答案: B

解析:Lasso 迴歸類似於線性迴歸,只不過它線上性迴歸的基礎上,增加了一個對所有引數的數值大小約束,如下所示:

min\ \frac1m\sum_{i=1}^m(y_i-\beta_0-x_i^T\beta)^2\ \ subject\ to\ \ ||\beta||_1\leq t

其中,t 為正則化引數。Lasso 迴歸其實就是在普通線性迴歸的損失函式的基礎上增加了個 β 的約束。那麼 β 的約束為什麼要使用這種形式,而不使用 β 的平方約束呢?原因就在於第一範數的約束下,一部分迴歸係數剛好可以被約束為 0。這樣的話,就達到了特徵選擇的效果。如下圖所示:

左邊是第二正規化,右邊是第一正規化。第一範數約束下,β 更有可能被約束成 0。這點非常類似於 L1 和 L2 正則化的區別,有興趣的請看我之前一篇文章:機器學習中 L1 和 L2 正則化的直觀解釋

因此,Lasso 迴歸適用於樣本數量較少,特徵維度較大的情形,便於從較多特徵中進行特徵選擇。例如 DNA 資料,特徵維度很大,我們只希望通過 Lasso 迴歸找出與某些疾病有關的 DNA 片段。

本題中,將特徵 X1 數值擴大 10 倍,他對應的迴歸係數將相應會減小,但不為 0,以此來保證仍然滿足 β 的正則化約束。

Q2. 關於特徵選擇,下列對 Ridge 迴歸和 Lasso 迴歸說法正確的是?

A. Ridge 迴歸適用於特徵選擇

B. Lasso 迴歸適用於特徵選擇

C. 兩個都適用於特徵選擇

D. 以上說法都不對

答案:B

解析:上一題我們已經介紹過,Lasso 迴歸會讓一部分迴歸係數剛好可以被約束為 0,起到特徵選擇的效果。

Ridge 迴歸又稱嶺迴歸,它是普通線性迴歸加上 L2 正則項,用來防止訓練過程中出現的過擬合。L2 正則化效果類似上一題左圖,限定區域是圓,這樣,得到的迴歸係數為 0 的概率很小,很大概率是非零的。因此,比較來說,Lasso 迴歸更容易得到稀疏的迴歸係數,有利於捨棄冗餘或無用特徵,適用於特徵選擇。

Q3. 如果線上性迴歸模型中增加一個特徵變數,下列可能發生的是(多選)?

A. R-squared 增大,Adjust R-squared 增大

B. R-squared 增大,Adjust R-squared 減小

C. R-squared 減小,Adjust R-squared 減小

D. R-squared 減小,Adjust R-squared 增大

答案:AB

解析:線性迴歸問題中,R-Squared 是用來衡量回歸方程與真實樣本輸出之間的相似程度。其表示式如下所示:

上式中,分子部分表示真實值與預測值的平方差之和,類似於均方差 MSE;分母部分表示真實值與均值的平方差之和,類似於方差 Var。一般來說,R-Squared 越大,表示模型擬合效果越好。R-Squared 反映的是大概有多準,因為,隨著樣本數量的增加,R-Squared 必然增加,無法真正定量說明準確程度,只能大概定量。

單獨看 R-Squared,並不能推斷出增加的特徵是否有意義。通常來說,增加一個特徵特徵,R-Squared 可能變大也可能保持不變,兩者不一定呈正相關。

如果使用校正決定係數(Adjusted R-Squared):

其中,n 是樣本數量,p 是特徵數量。Adjusted R-Squared 抵消樣本數量對 R-Squared 的影響,做到了真正的 0~1,越大越好。

增加一個特徵變數,如果這個特徵有意義,Adjusted R-Square 就會增大,若這個特徵是冗餘特徵,Adjusted R-Squared 就會減小。

Q4. 下面三張圖展示了對同一訓練樣本,使用不同的模型擬合的效果(藍色曲線)。那麼,我們可以得出哪些結論(多選)?

A. 第 1 個模型的訓練誤差大於第 2 個、第 3 個模型

B. 最好的模型是第 3 個,因為它的訓練誤差最小

C. 第 2 個模型最為“健壯”,因為它對未知樣本的擬合效果最好

D. 第 3 個模型發生了過擬合

E. 所有模型的表現都一樣,因為我們並沒有看到測試資料

答案:ACD

解析:1、2、3 模型分別對應的多項式階數由小到大,即模型由簡單到複雜。模型越簡單,容易發生欠擬合;模型越複雜,容易發生過擬合。第 1 個模型過於簡單,出現欠擬合;第 3 個模型過於複雜,對訓練樣本擬合得很好,但在測試樣本上效果會很差,即過擬合;第 2 個模型最為“健壯”,在訓練樣本和測試樣本上擬合效果都不錯!

Q5. 下列哪些指標可以用來評估線性迴歸模型(多選)?

A. R-Squared

B. Adjusted R-Squared

C. F Statistics

D. RMSE / MSE / MAE

答案:ABCD

解析:R-Squared 和 Adjusted R-Squared 的概念,我們在 Q3 有過介紹,它們都可以用來評估線性迴歸模型。F Statistics 是指在零假設成立的情況下,符合F分佈的統計量,多用於計量統計學中。

RMSE 指的是均方根誤差:

RMSE=\sqrt{\frac1m\sum_{i=1}^m(y^{(i)}-\hat y^{(i)})^2}

MSE 指的是均方誤差:

MSE=\frac1m\sum_{i=1}^m(y^{(i)}-\hat y^{(i)})^2

MAE 指的是評價絕對誤差:

MAE=\frac1m\sum_{i=1}^m|y^{(i)}-\hat y^{(i)}|

以上指標都可以用來評估線性迴歸模型。

Q6. 線性迴歸中,我們可以使用正規方程(Normal Equation)來求解係數。下列關於正規方程說法正確的是?

A. 不需要選擇學習因子

B. 當特徵數目很多的時候,運算速度會很慢

C. 不需要迭代訓練

答案:ABC

解析:求解線性迴歸係數,我們一般最常用的方法是梯度下降,利用迭代優化的方式。除此之外,還有一種方法是使用正規方程,原理是基於最小二乘法。下面對正規方程做簡要的推導。

已知線性迴歸模型的損失函式 Ein 為:

E_{in}=\frac1m(XW-Y)^2

對 Ein 計算導數,令 ∇Ein=0:

\nabla E_{in}=\frac2m(X^TXW-X^TY)=0

然後就能計算出 W:

W=(X^TX)^{-1}X^TY

以上就是使用正規方程求解係數 W 的過程。可以看到,正規方程求解過程不需要學習因子,也沒有迭代訓練過程。當特徵數目很多的時候,$X^TX$ 矩陣求逆會很慢,這時梯度下降演算法更好一些。

如果 $X^TX$ 矩陣不可逆,是奇異矩陣怎麼辦呢?其實,大部分的計算逆矩陣的軟體程式,都可以處理這個問題,也會計算出一個逆矩陣。所以,一般偽逆矩陣是可解的。

Q7. 如果 Y 是 X(X1,X2,…,Xn)的線性函式:

Y = β0 + β1X1 + β2X2 + ··· + βnXn

則下列說法正確的是(多選)?

A. 如果變數 Xi 改變一個微小變數 ΔXi,其它變數不變。那麼 Y 會相應改變 βiΔXi。

B. βi 是固定的,不管 Xi 如何變化

C. Xi 對 Y 的影響是相互獨立的,且 X 對 Y 的總的影響為各自分量 Xi 之和

答案:ABC

解析:這題非常簡單,Y 與 X(X1,X2,…,Xn)是線性關係,故能得出 ABC 結論。

Q8. 構建一個最簡單的線性迴歸模型需要幾個係數(只有一個特徵)?

A. 1 個

B. 2 個

C. 3 個

D. 4 個

答案:B

解析:最簡單的線性迴歸模型,只有一個特徵,即 Y = aX + b,包含 a 和 b 兩個係數。

Q9. 下面兩張圖展示了兩個擬合迴歸線(A 和 B),原始資料是隨機產生的。現在,我想要計算 A 和 B 各自的殘差之和。注意:兩種圖中的座標尺度一樣。

關於 A 和 B 各自的殘差之和,下列說法正確的是?

A. A 比 B 高

B. A 比 B 小

C. A 與 B 相同

D. 以上說法都不對

答案:C

解析:A 和 B 中各自的殘差之和應該是相同的。線性迴歸模型的損失函式為:

J=\frac1m(XW-Y)^2

對損失函式求導,並令 ∇J=0,即可得到 XW-Y=0,即殘差之和始終為零。

Q10. 如果兩個變數相關,那麼它們一定是線性關係嗎?

A. 是

B. 不是

答案:B

解析:相關不一定是線性關係,也有可能是非線性相關。

Q11. 兩個變數相關,它們的相關係數 r 可能為 0。這句話是否正確?

A. 正確

B. 錯誤

答案:A

解析:一般來說,相關係數 r=0 是兩變數相互獨立的必要不充分條件。也就是說,如果兩個變數相互獨立,那麼相關係數 r 一定為 0,如果相關係數 r=0,則不一定相互獨立。相關係數 r=0 只能說明兩個變數之間不存線上性關係,仍然可能存在非線性關係。

那麼,若兩個變數相關,存在非線性關係,那麼它們的相關係數 r 就為 0。

Q12. 加入使用邏輯迴歸對樣本進行分類,得到訓練樣本的準確率和測試樣本的準確率。現在,在資料中增加一個新的特徵,其它特徵保持不變。然後重新訓練測試。則下列說法正確的是?

A. 訓練樣本準確率一定會降低

B. 訓練樣本準確率一定增加或保持不變

C. 測試樣本準確率一定會降低

D. 測試樣本準確率一定增加或保持不變

答案:B

解析:在模型中增加更多特徵一般會增加訓練樣本的準確率,減小 bias。但是測試樣本準確率不一定增加,除非增加的特徵是有效特徵。

這題對應的知識點也包括了增加模型複雜度,雖然會減小訓練樣本誤差,但是容易發生過擬合。

Q13. 下面這張圖是一個簡單的線性迴歸模型,圖中標註了每個樣本點預測值與真實值的殘差。計算 SSE 為多少?

A. 3.02

B. 0.75

C. 1.01

D. 0.604

答案:A

解析:SSE 是平方誤差之和(Sum of Squared Error),SSE = (-0.2)^2 + (0.4)^2 + (-0.8)^2 + (1.3)^2 + (-0.7)^2 = 3.02

Q14. 假設變數 Var1 和 Var2 是正相關的,那麼下面那張圖是正確的?圖中,橫座標是 Var1,縱座標是 Var2,且對 Var1 和 Var2 都做了標準化處理。

A. Plot 1

B. Plot 2

答案:B

解析:顯然,Plot 2 顯示出 Var2 與 Var1 是正相關的,例如 Var2 = Var1。Plot 1 顯示出 Var2 與 Var1 是負相關的,例如 Var2 = -Var1。

Q15. 假設一個公司的薪資水平中位數是 $35,000,排名第 25% 和 75% 的薪資分別是 $21,000 和 $ 53,000。如果某人的薪水是 $1,那麼它可以被看成是異常值(Outlier)嗎?

A. 可以

B. 不可以

C. 需要更多的資訊才能判斷

D. 以上說法都不對

答案:C

解析:異常值(Outlier)指樣本中的個別值,其數值明顯偏離它(或他們)所屬樣本的其餘觀測值,也稱異常資料,離群值。目前人們對異常值的判別與剔除主要採用物理判別法和統計判別法兩種方法。

所謂物理判別法就是根據人們對客觀事物已有的認識,判別由於外界干擾、人為誤差等原因造成實測資料值偏離正常結果,在實驗過程中隨時判斷,隨時剔除。

統計判別法是給定一個置信概率,並確定一個置信限,凡超過此限的誤差,就認為它不屬於隨機誤差範圍,將其視為異常值剔除。當物理識別不易判斷時,一般採用統計識別法。

該題中,所給的資訊量過少,無法肯定一定是異常值。


相關文章