人智導(九):迴歸方法的精化

人智導(九):迴歸方法的精化

標準迴歸的不足

  • 標準的迴歸公式:f(X)=β0+β1X1+β2X2++βpXpf(X) = \beta_0 +\beta_1X_1 +\beta_2X_2+\dots +\beta_pX_p
  • 觀測變量(特徵)越多,方差越大
  • 需要訓練數據量n>>p才能獲得較低方差
  • 迴歸模型的精度和解釋性能改進:低方差(泛化)、低偏差(準確)
  • 不太相關的觀測變量會導致模型的複雜性
  • 改進思路:選擇關鍵的觀測變量(特徵)

特徵(子集)選擇

  • 特徵(子集)選擇:從p個觀測變量中(X1,X2,,Xp)(X_1,X_2,\dots ,X_p)選擇出與YY較相關的子集,通過這個子集實現迴歸模型
  • 最佳子集選擇算法:
    • 對於k=1,2,,pk=1,2,\dots ,p
      • 構建出所有的CpkC^k_p個迴歸模型
      • 篩選出CpkC^k_p組合中均方誤差RSS最小的模型MkM_k
    • 從得到的M1,M2,,MpM_1,M_2,\dots ,M_p模型中通過交叉驗證再宣傳預測均方誤差最小的模型,所對應的即爲最佳子集。
  • 特點:簡單而低效,需要從2p2^p中搜索出一個最佳,不適合處理pp很大的情況
  • 前向選擇迴歸算法:
    • 對於k=0,1,2,,p1k=0,1,2,\dots ,p-1
      • 構建所有的p-k個迴歸模型,通過逐次累加一個相應變量的方式
      • 在這p-k個模型中篩選出均方誤差RSS最小的模型Mk+1M_{k+1}
    • 從得到的M1,M2,,MpM_1,M_2,\dots ,M_p模型中通過交叉驗證再選出預測均方誤差最小的模型,即爲目標子集
  • 特點:僅需從p(p+1)2\frac{p(p+1)}{2}個模型空間中搜索出目標子集,但不能保證得到的子集是最佳的(模型RSS最小)

示例:

  • 數據集有三個觀測變量X1,X2,X3X_1,X_2,X_3(p=3)
  • 最佳的1-變量模型包含X1X_1;最佳的2-變量模型包含X2X_2X3X_3
  • 前向選擇算法不能找出最佳的2-變量模型,因其不包括最佳的1-變量模型
    子集選擇是優化模型的過程:
  • 選擇所有的觀測變量,總是有最小RSS(偏差)但方差最大
  • 減少觀測變量(子集選擇),提升模型泛化能力(test MSE)
  • 方差大則過擬合,偏差大則欠擬合(準確性差)

正則化方法

  • 迴歸公式: f(X)=β0+β1X1+β2X2++βpXpf(X) = \beta_0+\beta_1X_1+\beta_2X_2+\dots +\beta_pX_p 估算係數β0,β1,,βp\beta_0,\beta_1,\dots ,\beta_p通過最小化RSS:RSS=Σi=1n(yiβ0Σj=1pβjXij)2RSS = \Sigma^n_{i=1}(y_i -\beta_0-\Sigma^p_{j=1}\beta_jX_{ij})^2
  • 正則化方法:
    • 使用所有的pp個觀測變量,約束變量的係數β0,β1,,βp\beta_0, \beta_1 ,\dots ,\beta_p使RSS取值儘可能趨於零
    • 迴歸係數的取值限定在一個小範圍內,將有效降低模型的方差

嶺迴歸(Ridge Regression)方法

嶺迴歸方法:
在這裏插入圖片描述

  • 類似於最小二乘法,但隙數的估算β^R\hat{\beta}^R通過最小化公式:Σi=1n(yiβ0Σj=1pβjXij)2 + λΣj=1pβj2=RSS + λΣj=1pβj2\Sigma^n_{i=1}(y_i-\beta_0-\Sigma^p_{j=1}\beta_jX_{ij})^2 ~+~\lambda\Sigma^p_{j=1}\beta^2_j = \\RSS~+~\lambda\Sigma^p_{j=1}\beta^2_j
  • 其中λ0\lambda \ge 0爲調試參數(超參數):
    • λ=0\lambda = 0,約束不起作用,如同標準的線性迴歸
    • λ\lambda \to \infty,約束影響越大,係數β^R\hat{\beta}^R儘可能小

嶺迴歸係數的正則化(標準化):

  • L2L_2範數:β2=Σj=1pβj2\Vert \beta\Vert _2 = \sqrt{\Sigma^p_{j=1}\beta^2_j}
  • λ\lambda增加,L2L_2降低,如圖

在這裏插入圖片描述

  • 一般地,所有變量需被標準化:x~ij=xij1nΣi=1n(xijxˉj)2\tilde{x}_{ij} = \frac{x_{ij}}{\sqrt{\frac{1}{n}\Sigma^n_{i=1}(x_{ij}-\bar{x}_j)^2}}
  • 嶺迴歸方法:是一種平衡“方差-偏差”技術
    • 交叉驗證test MSE選擇最優的λ\lambda
    • λ\lambda的增加,導致方差降低而偏差上升
    • 如下圖,綠線爲方差,黑線爲偏差,紅線爲嶺迴歸的test MSE
      在這裏插入圖片描述

Lasso迴歸算法

Lasso迴歸算法:
在這裏插入圖片描述

  • 類似於最小二乘法,但係數的估算β^L\hat{\beta}^L通過最小化公式: Σi=1n(yiβ0Σj=1pβjxij)2 + λΣj=1pβj=RSS + λΣj=1pβj\Sigma^n_{i=1}(y_i-\beta_0-\Sigma^p_{j=1}\beta_jx_{ij})^2~+~\lambda\Sigma^p_{j=1}|\beta_j|\\=RSS~+~\lambda\Sigma^p_{j=1}|\beta_j|
  • 其中λ0\lambda \ge 0爲調試參數:
    • λ=0\lambda = 0,約束不起作用,如同標準的線性迴歸
    • λ\lambda \to \infty,約束影響越大,係數β^L\hat{\beta}^L將盡可能小
      在這裏插入圖片描述

Lasso係數的正則化(標準化):

  • L1L_1範數:β1=Σj=1pβj\Vert\beta\Vert_1 = \Sigma^p_{j=1}|\beta_j|
  • λ\lambda增加,L1L_1降低;λ\lambda增加足夠大,L1L_1會使某些變量係數爲0
    在這裏插入圖片描述
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章