圓州率
🌐

Feature Image

線性回歸診斷與治療 (Diagnostic and Remedial)

數學, 資料科學, 機器學習, 監督式學習
線性回歸對模型合理性與殘差項的檢驗。
   最後更新:

診斷與治療 (Diagnostic and Remedial)

要確定模型是否合適,須檢驗模型的前提,即常態假設 ε1,ε2,,εni.i.d.N(0,σ2)\contia{\varepsilon}{n} \iid N (0, \sigma^2),但實際上 εi\varepsilon_i 是未知的,因此會用殘差項 eie_i 估計 εi\varepsilon_i

ei=YiY^i=Yib0b1Xi \begin{align*} e_i = Y_i - \hat Y_i = Y_i - b_0 - b_1 X_i \end{align*}

前面的範例中能看到 R2R^2 高達 0.90.9 但卻不是適合的模型,原因就是其殘差違反常態假設。

建立模型後需檢驗殘差是否滿足常態假設,因為 tt 檢定、FF 檢定與各種顯著性檢定是基於常態假設所做的推論,若常態假設被違反,各種推論都是不可信的。

特別注意 eie_i 並非獨立的隨機變數,因為計算 b0b_0b1b_1 涉及到所有 YY。但若常態假設成立,eiN(0,σ2)e_i \approx N (0, \sigma^2),多數情況下非獨立的影響可以忽略不計。而我們的目標是要驗證

  1. 模型是否合理:E(Y^)=E(Y)E (\hat Y) = E (Y)
  2. 殘差是否常態:eiN(0,σ2)e_i \approx N (0, \sigma^2)
    1. E(ei)0E (e_i) \approx 0
    2. σ2(ei)σ2\sigma^2 (e_i) \approx \sigma^2
    3. σ(ei,ej)0\sigma (e_i, e_j) \approx 0

模型合理性

檢查 XXYY 的圖,理想上該看到 XXYY 呈現現性關係

fit_model_1.png

而非下圖

fit_model_2.png

解決方案:考慮不同回歸模型 Yi=β0+β1Zi+εiY_i = \beta_0 + \beta_1 Z_i + \varepsilon_i,例如 Zi=Xi2Z_i = X_i^2

影響點 (Influence Points)

影響點 (Influence Points) 指的是會嚴重帶偏模型的點,發生在遠離群集的點,被稱為異常點 (outlier)

影響點是一種異常點,但異常點不一定是影響點

用紅點將異常點畫出,下圖的異常點僅稍微影響斜率,但對模型影響不大

influence_1.png

而下圖的異常點的影響力大到將模型的正負號改變

influence_2.png

最後一種是,多數的點並沒有線性關係,但異常點卻影響了整條斜率

influence_3.png

解決方案:檢查異常點的來源,僅在能確定是錯誤的前提下,才將異常點移除。

殘差常態檢驗

需檢驗的項目

  1. 殘差直方圖 (histogram)
  2. 殘差時間序列圖 (time sequence plot, iieie_i)
  3. 殘差對 (XiX_ieie_i)
  4. 殘差對預測值 (Y^i\hat Y_ieie_i)

殘差直方圖 (Histogram)

下圖理想的殘差直方圖 (histogram),其呈現常態的模式

histogram.png

殘差時間序列圖 (time sequence plot, iieie_i)

R 語言程式範例

參考資料

  1. 書籍:Applied linear statistical models. NETER, John, et al. 1996.
  2. 網站:Stat 501