統計學(二) 筆記 - 第十六章 迴歸分析 - 模型建立(Regression Analysis - Model Building)

筆記說明

此筆記用途在於台北科技大學資訊與財金管理系大二下統計學重點整理
並非所有人都適用,部分對我而言稍加容易的內容並不會寫在此內。
這是觀看影片心得後的筆記,老師上課可能不太適用會忘記抄到

一般線性模型與二階模型 General Linear Model and a second-order model

  • 統計學(二) 筆記 - 第十五章 複迴歸(Multiple Regression) by 大衞的筆記中,我們知道所有的回歸線性方程式中所有自變數都是一次項。
  • 我們的自變數用 \(p\) 來表示,因此線性模型方程式的表達會是
    \(y = \beta_0 + \beta_1 z_1 + \beta_2 z_2 + … + \beta_p z_p + \mathcal{E} \),原本在第 15 章中,\(z\) 的位置是 \(x\),但在這邊,\(z\) 可以是許多 \(x\) 的組合,如: \(z_1 = x_1 * x_2 * x_3 \)
  • 我們進行舉例,\(y = \beta_0 + \beta_1 z_1 + \beta_2 z_2 + … + \beta_p z_p + \mathcal{E} \) 的變化
    • staright-line relationship
      • 當 \(z_1 = x_1\)
      • 則 \(y = \beta_0 + \beta_1 x_1 + \mathcal{E}\),
    • 曲線型模型 curvilinear realtionship
      • 當 \(z_1 = x_1, z_2 = x_1^2\)
      • 則 \(y = \beta_0 + \beta_1 x_1 + \beta_2 x_1^2 \mathcal{E}\)

自變數內交互作用 Interaction

我們想要觀察原始資料中的兩個自變數(分別為 \(x_1, x_2\)),是否有關連性,我們可以使用 a second-order model with two predictor vaiables(透過二階模型預測兩遍數)

公式為:\(y = \beta_0 + \beta_1 x_1 + \beta_2 x_2 + \beta_3 x_1^2 + \beta_4 x_2^2 + \beta_5 x_1 x_2 + \mathcal{E} \),而 \(\beta\) 後面的項目則是我們的 \(z\),舉例:\(z_5 = x_1 x_2\)

舉例

在這張圖中,可以明顯看出來在 Selling Prices 是 2.00 時,投入越多的廣告費用則獲益越大,但 Selling Prices 是 2.50 時,投入越多的廣告費用沒有比 2.00 大,在 Selling Prices 是 3.00 時,廣告的效益幾乎沒有了。
Difference of 是原始資料在相同的銷售價額中,投入最少的廣告費用與最多的廣告費用差額

在這張圖中,上面的公式的 \(\beta_3 x_1 x_2\) 是 PriceAdv,可以看出銷售價格與廣告費用有負相關
我們對 PriceAdv 做假設檢定,也可以得出 \(p = 0.000\),表示拒絕 \(H_0\),此變數與 y 有關係
\(adj(R^2)\) 也表現良好,來到 97.5%,很棒的結果
F 檢定也判定出所有的自變數都與 y 有關聯,\(p = 0.000\)

關於應變數的轉換 Transformations Involving the Dependent Variable

  • 在有時候我們會遇到有些自變數沒有變異數的狀況(EX: 交互作用),遇到這些問題我們要怎麼解決呢?
    • 方法 A: 將回歸方程式的 \(\mathcal{E} \) 改為 \(e = 2.71828 \) 也就是 \(ln_{10}\)
    • 方法 B: 將 y 變成 \(1/y\) 後,我們的回歸方程式改成去預測 \(1/y\)

有些非線型的模型可以透過數學轉換為線性模型 Nonlinear Models That are Intrinsically Linear

  • 假設我們模型中有 \(\beta_0, \beta_1, …, \beta_p\),且她們的 z 有些有 \(x^n\),大於或等於 a second-order model
  • 這時候我們可以進行一些數學的轉換來讓他們變成線性模型
    • EX: 原本的非線性方程式 \(E(y) = \beta_0 \beta_1^x\)
    • 我們可以透過 log 進行轉換, \(ln \ E(y) = ln \beta_0 + x ln \beta_1\),把前面的公式每項變數改為 \(y’ = \beta_0’ + beta_1’ x\),這樣就成為了一個線性模型!

確認何時進行刪除與增加變數 Determining When to Add or Delete Variables

  • 我們有時候沒有辦法確定現在模型中的所有應變數都是適合預測
  • 刪除 A 應變數,我們能保證刪除她更好預測嗎?
  • 增加 B 應變數,我們能保證有加入他更適合預測嗎?
  • 此時我們使用 F 檢定來進行判斷
    • 公式概念:\(F = \frac{(SSE(\text{增加 or 缺少的應變數})) / \text{number of extra terms}}{MSE(\text{增加 or 缺少的應變數})}\)
    • 不懂 SSE、MSE 則可以看 判定係數 by 大衛的筆記
    • 公式:\(F = \frac{(SSE(x_1) - SSE(x_1, x_2)) / 1 }{(SSE(x_1, x_2)) / (n-p-1)}\)
      • 這邊我們假設,全部的應變數最多有兩個,我們刪除 \(x_2\) 的情況
      • 因此 \(\text{number of extra terms} = 1\) 移除了 \(x_2\)
      • \(p=1\),因為我們使用的參數只剩下 \(x_1\)
    • 接下來我們透過 F 檢定計算出 \(p-value\) 後去對 \(\alpha\) 比較
      • Reject \(H_0\) 就可以執行此命令
      • 如果沒有,就不進行改動
  • 除了使用 F 檢定我們也可以用 t 檢定進行刪除或增加變數,還記得我們之前有在複回歸做顯著性測試嗎?
    • 我們會找出所有應變數的 t,如果 t not reject \(H_0\) 我們就可以移除此變數
    • 如果沒有,那我們可以將 t 值最小的進行移除,記住,每移除一個變數就必須重做一次回歸,因為我們沒有辦法保證移除一個變數後,整個回歸方程式的線依然不變,有可能我們移除此變數後,其他變數的 t 值就改變。

選擇變數的程序 Variable Selection Procedures

變數選擇:逐步回歸 Variable Selection: Stepwise Regression

  • 一開始我們先只有一個自變數在回歸方程式,然後跑一遍
  • 再來我們進行疊代
    • 移除疊代
      • 設定 \(\alpha\) 值
      • 移除一個應變數
      • 判斷移除後的回歸方程式的 F 檢定 p-value 是否有大於 \(\alpha\)
      • 如果有,可以移除;如果沒有,不可以移除
    • 增加疊代
      • 如果已經不能再做移除疊代,則做增加疊代
      • 設定 \(\alpha\) 值,必須小於移除疊代的 \(\alpha\) 不同,不可以等於,這樣則會無窮迴圈
      • 增加一個應變數
      • 判斷移除後的回歸方程式的 F 檢定 p-value 是否有小於 \(\alpha\)
      • 如果有,可以增加,並重新進行移除疊代;如果沒有,不可以增加
  • 如此來找出最好的回歸方程式
  • 流層圖如下

變數選擇: 不斷消除 Variable Selection: Backward Elimination

  • 一開始我們所有自變數在回歸方程式,然後跑一遍
  • 再來我們進行疊代
    • 移除疊代
      • 設定 \(\alpha\) 值
      • 移除一個應變數
      • 判斷移除後的回歸方程式的 F 檢定 p-value 是否有小於 \(\alpha\)
      • 如果有,可以移除,並重複此步驟;如果沒有,就不在需要進行疊代
  • 如此來找出最好的回歸方程式
  • 流層圖如下

舉例:房地產公司想針對 A 地區做房價預測,於是他找出 25 筆當地房屋成交資料,我們透過 Backward Elimination 找出迴歸分析需要的自變數,\(alpha = 0.05\)

資料如下

  • 現在我們有四個自變數(House Size, Bedrooms, Bathrooms, Cars),與一個因變數(price),開始進行迴歸分析中的變數選擇: 不斷消除
    • 我們可以發現 Cars 的 p-value 最大並且大於 0.05(\(\alpha\)),因此我們進行移除。

    • 我們可以發現 Bedrooms 的 p-value 最大並且大於 0.05(\(\alpha\)),因此我們進行移除。

    • 我們可以發現 Bathrooms 的 p-value 最大並且大於 0.05(\(\alpha\)),因此我們進行移除。

    • 我們可以發現 Bathrooms 的 p-value 最大,可是小於 0.05(\(\alpha\)),因此我們無法移除。

    • 因此我們到這邊就好,不需要再做改變
  • 接下來我們根據只有 house size 做回歸方程式,預測的回歸方程式為 \(\hat{y} = -9.8669 + 11.3383(\text{House Size})\)

變數選擇: 不斷增加 Variable Selection: Forward Elimination

  • 一開始我們先只有一個自變數在回歸方程式,然後跑一遍
  • 再來我們進行疊代
    • 增加疊代
      • 設定 \(\alpha\) 值
      • 增加一個應變數
      • 判斷移除後的回歸方程式的 F 檢定 p-value 是否有小於 \(\alpha\)
      • 如果有,增加此自變數;如果沒有,就不在需要進行疊代
  • 如此來找出最好的回歸方程式
  • 流層圖如下

變數選擇: 最佳子集合 Variable Selection: Best-Subest Regression

  • 由於變數選擇: 不斷增加、變數選擇: 不斷消除、變數選擇:逐步回歸,這三種變數選擇方式都不一定可以找出最好的結果,但一定可以找出離最佳解最近的組合。
  • 那我們要找出最佳解,怎麼找呢?排列組合
  • 我們可以定義我們要用幾個自變數進行迴歸分析,之後進行排列組合,並且每種組合輸出他的回歸方程式。
  • 再來我們在每種組合中找出最棒的組合回歸方程式,也就是 \(\text{adjust} R^2\) 最高。
  • 我們就使用她進行回歸方程式。
  • 當然,我們也不一定要限定幾個,我們可以全部都來,從 1 個自變數到 n 個自變數都差不多。

舉例:我們想要預測高爾夫球比賽分數結果,下面會顯示我們的變數有哪些,請使用變數選擇: 最佳子集合找出迴歸分析需要的自變數,\(alpha = 0.05\)

  • 變數名稱與內容如下

  • 資料有 Part1、Part2、Part3 由於這是舉例,因此就不類舉完整資料給大家看

  • 我們先用共線性進行判斷,看看哪兩個變數有共線性,看起來沒有明顯共線性,圖表如下

  • 再來我們進行排列組合,這裡只印出在使用 n 種自變數下,前兩個最好的\(\text{adjust} R^2\)

  • 再來我們使用最好的\(\text{adjust} R^2\) 進行迴歸分析(也就是上面圖片中倒數第三個, n=4, \(\text{adjust} R^2 = 66.8\))
    • 其中我們可以看到 p-value 都有達顯著性水準(三顆星)
    • 其中三顆星的標準如下,0.01、0.005、0.001

針對虛擬變數做實驗設計複回歸方法 Multiple Regression Approach to Experimental of dummy variable

舉例:製造商想要知道 Buffalo, Pittsburgh, Detroit 三個地方的工廠經理工時是否一樣,因此我們透過簡單隨機抽樣抽取樣本後,透過平均工時得知是哪地方的工廠經理,我們再針對這三個地方做回歸方程式、顯著性測試

資料如下

  • 定義類別至虛擬變數
    • \(A=0, B=0\) 為 Buffalo
    • \(A=1, B=0\) 為 Pittsburgh
    • \(A=0, B=1\) 為 Detroit
  • 因此將資料分類後,如下圖

  • 因此我們的期望值計算為 \(E(y) = \beta_0 + \beta_1 A + beta_2 B\)
    • For Buffalo: \(E(y) = \beta_0 + \beta_1 (0) + beta_2 (0) = \beta_0\)
    • For Pittsburgh: \(E(y) = \beta_0 + \beta_1 (1) + beta_2 (0) = \beta_1\)
    • For Detroit: \(E(y) = \beta_0 + \beta_1 (0) + beta_2 (1) = \beta_2\)
  • 因此,我們透過電腦計算好的回歸方程式如下。

  • 變數對於母體之顯著性測試
    • 首先,我們可以知道,在一般的母體顯著性測試中,\(H_0\) 都假設 y 與自變數沒有關係,這裡也是如此。
      原因:如果 y 與自變數沒有任何關係,則理論上我用所有的自變數來預測 y 時,那 y 應該都要保持一樣的數字,才合理。
    • 因此我們的假設檢定如下
      • \(H_0: \beta_1 = \beta_2 = 0\)
      • \(H_1:\) 不符合上面公式
    • 進行 F 檢定,根據 ANOVA 公式計算,可以發現 \(0.003 = p-value < 0.05 = \alpha\),因此拒絕 \(H_0\)
    • 結論:可以透過工廠的場地此變數來推估工廠經理的工作時數。

資料序列相關與 Durbin-Watson Test, Autocorrelation and the Durbin-Watson Test

  • 當 y 預測值會隨著時間的週期、順序,而有著不一樣的可能時,就不適用我們一般的複回歸方程式。
  • 通常如果與時間有相關的 data 我們會稱為 autocorrelation: 序列相關、時間相關
    • Positive Autocorrelation,前一期的殘差會使下一期殘差為正

    • Negative Autocorrelation,前一期的殘差會使下一期殘差為負

  • 如果資料擁有此現象時,則違反了假設模型下的誤差項 Model Assumptions About the Error Term E
  • \(\mathcal{E}\) 為獨立變數,每一個變數的 \(\mathcal{E}\) 都不同,互相獨立*,因為 \(\mathcal{E} \) 不在是獨立變數了

Durbin-Watson Test

  • 由於我們的 \(\mathcal{E}\) 不再符合我們的假設模型,因此我們幫他建立新公式
  • \( \mathcal{E}_t = \rho \mathcal{E}_{t-1} + z_t\)
  • Durbin-Watson Test 假設檢定
    • 我們的 Durbin-Watson Test 假設檢定就是要檢定我們的資料是否有 Autocorrelation。
    • \(H_0: \rho = 0 \)
    • \(H_1: \rho > 0, \rho < 0, \rho != 0\),都可以分別代表,正相關、負相關、有相關;再適合的時機使用就好。
  • Durbin-Watson Test Statistic 的公式則為
    • \(d = \frac{\sum_{t=2}^n \ (e_t - e_{t-1} \ )^2 }{ \sum_{t=1}^n \ (e_t^2)}\),通常都透過電腦去計算
    • 其中 \(e_t = y_t - \hat{y}_t\),實際資料減去估計資料,也就是殘差
  • Durbin-Watson Test 公式判讀
    • 我們可以觀察此公式 \(d = \frac{\sum_{t=2}^n \ (e_t - e_{t-1} \ )^2 }{ \sum_{t=1}^n \ (e_t^2)}\)
    • 我們假設,完全相關時則 \( e_t - e_{t-1} = 0\)
      如果是完全相關,那每一個殘差值則必須完全相同,因此 \(d = 0\)
    • 我們假設,完全相關時則 \( e_t - e_{t-1} = -2 \ \text{or} \ 2 \),這裡我們將每個 \(e_t\) 都假設只會有 1,-1 兩種結果。
      如果是完全相關,那每一個殘差值則必須完全不相同,因此 \(d = 4\)
    • 因此我們可以知道
      • 當 \(d = 0\) 資料正相關
      • 當 \(d = 4\) 資料負相關
      • 因此我們可透過前面兩點推出,當 \(d = 2\) 資料無相關
  • Durbin-Watson Test Statistic 檢定結果
    • 當資料筆數大於 15 時,才能進行解釋,當資料筆數大於 50 時,才有解釋的準確度
    • 通常我們做 \(\alpha\) 後,Durbin-Watson Test Statistic 會給予 \(d_L\)、\(d_U\),分別是檢定的上下界線。
      • 如果我們計算出來的 Durbin-Watson Test Statistic 洛在此上下界線則無法進行判讀。
      • 這是因為這個地方過於模糊,無法肯定是有關係還是沒關係;類似於 Type 2 Error
    • 假設檢定
      • 正相關判讀
        • \(H_0: \rho = 0 \) 資料不相關
        • \(H_1: \rho > 0 \) 資料正相關
        • 用數線表示;英文補充說明 Inconclusive: 無法下結論、No evidence of positive autocorrelation: 資料不相關

      • 負相關判讀
        • \(H_0: \rho = 0 \) 資料不相關
        • \(H_1: \rho < 0 \) 資料負相關
        • 由於剛剛的公式判讀,因此我們得知完全負相關時必須接近於 4,因此我們會直接將 \(d_L\)、\(d_U\) 同乘 4,此區間則是無法判讀,而比 \(4-d_L\) 大的就是資料負相關
        • 用數線表示;英文補充說明 Inconclusive: 無法下結論、No evidence of positive autocorrelation: 資料不相關

      • 資料相關判讀
        • \(H_0: \rho = 0 \) 資料不相關
        • \(H_1: \rho != 0 \) 資料 (正 or 負) 相關
        • 由於剛剛的公式判讀,因此我們得知完全負相關時必須接近於 4,因此我們會直接將 \(d_L\)、\(d_U\) 同乘 4,此區間則是無法判讀,而比 \(4-d_L\) 大的就是資料負相關
        • 用數線表示;英文補充說明 Inconclusive: 無法下結論、No evidence of positive autocorrelation: 資料不相關

舉例:這裡有一份透過 minitab 產生的資訊,請針對 Durbin-Watson Test 進行解讀

資料如下

  • 我們可以透過 ANOVA 表(Analysis of Variance) 得知這邊資料總數有 19 個
  • 解釋能力高達 93.94%,非常不賴
  • 我們可以從第二張圖看到,minital 的 Durbin-Watson Test 為 0.7981
  • 我們進行查表,由於表中的 n = 20,我們的資料總數有 19,19 與 20 非常相近,因此我們直接看 n=20 的 Durbin-Watson Test
  • 結論與分析
    • 再 0.5 的顯著性測試中,\(d_L = 1.20, d_U = 1.41\),\(d <= d_L\) 因此資料呈現於正相關。
    • 由於經過 Durbin-Watson Test 可以得知這份資料有強烈的序列相關,因此我們應該要加入一個時間變數來降低 Durbin-Watson Test 使回測具有可用性、可靠性
  • 版權聲明: 本部落格所有文章除有特別聲明外,均採用 Apache License 2.0 許可協議。轉載請註明出處!
  • © 2020-2024 John Doe
  • Powered by Hexo Theme Ayer
  • PV: UV: