Statistic Learning 1

1. RSS, RSE, TSS等

RSS(Residual Sum of Squares)

RSS=e12+e22+e32+...+en2=(y1^β0^β1^x1)+...+(yn^β0^β1^xn)=i=1n(yiyi^)2RSS = e_1^2 + e_2^2 + e_3^2 + ... + e_n^2 \\ =(\hat{y_1} - \hat{\beta_0} - \hat{\beta_1}x_1) + ... + (\hat{y_n} - \hat{\beta_0} - \hat{\beta_1}x_n) \\ = \sum_{i=1}^n(y_i - \hat{y_i})^2

RSS定義了,在進行了迴歸之後,模型未能解釋的變量。

RSE(Residual Standard Error)

RSE=RSSn2=1n2i=1n(yiyi^)2RSE = \sqrt{\frac{RSS}{n-2}} \\ =\sqrt{\frac{1}{n-2}\sum_{i=1}^n(y_i-\hat{y_i})^2}

RSE說明了,即使再好的迴歸模型也存在着RSE置信區間之內的誤差,即模型對於數據的欠擬合程度。

TSS(Total Sum of Squares)

TSS=i=1n(yiy)TSS = \sum_{i=1}^n(y_i - \overline{y})

其中y=1nyi\overline{y} = \frac{1}{n}y_i。TSS定義了yy自身的方差,即衡量了YYyy固有的變化程度。

R2R^2

R2=TSSRSSTSS=1RSSTSSR^2 = \frac{TSS-RSS}{TSS} = 1-\frac{RSS}{TSS}

  • TSSTSS:衡量了YYyy固有的變化程度。
  • RSSRSS:進行迴歸之後,模型未能解釋的變量值
  • TSSRSSTSS-RSS:固有的變化程度 - 未能解釋的變量值 = 能解釋的變量值
  • TSSRSSTSS\frac{TSS-RSS}{TSS}:已經解釋的變量值佔所有固有變化的比例

R2R^2的變化區間爲(0,1)(0, 1),與yy的尺度無關。所以,理論上R2R^2越大應該越好,即大量的變量可以被迴歸所解釋。但實際場景中,R2R^2的值要看應用。

FstatisticF-statistic用於估計H0H_0

F=(TSSRSS)/pRSS/(np1)F = \frac{(TSS - RSS)/p}{RSS/(n-p-1)}

其中,nn爲樣本個數,pp爲多項式迴歸中的迴歸係數的個數

  • TSSTSSyy固有的方差,及固有的變量
  • RSSRSS:迴歸後,未能解釋的變量
  • TSSRSSTSS - RSS:迴歸後,能夠解釋的變量
  • TSSRSSp\frac{TSS-RSS}{p}:迴歸後,每個predictorpredictor所佔的解釋比例 (1)
  • RSSnp+1\frac{RSS}{n-p+1}:迴歸後,每個樣本未能被解釋的比例 (2)
  • σ=RSE=RSSn2\sigma=RSE=\sqrt{\frac{RSS}{n-2}}:每個樣本的未能被解釋的佔比 (3)

若對於上述的 (1),(2),(3)

  • (1)=(3),意味着每個predictorpredictor能解釋的佔比很低

  • (2)=(3),意味着每個樣本能比解釋的佔比很低

  • 可以推出Fstatistic=1F-statistic=1,即

    β1=β2=...=βn=0\beta_1 = \beta_2 = ...= \beta_n = 0

    說明各個predictorpredictor對預測yy都是沒有幫助的。

若對於上述的 (1),(2),(3)

  • (1)>(3),意味着每個predictorpredictor能解釋的佔比很高

  • (2)=(3),意味着每個樣本能比解釋的佔比很低

  • 可以推出可以推出Fstatistic>1F-statistic>1,可以推出

    βi,i{1,2,...,p}0至少有一\beta_i,i\in\{1,2,...,p\}不爲0

FstatisticF-statistic,用於檢驗部分predictors是否爲0

Fstatistic=(RSS0RSS)/qRSS/(np1)F-statistic = \frac{(RSS_0 - RSS)/q}{RSS/(n-p-1)}

  • RSS0RSS_0:省略了qqpredictorspredictors的模型的RSSRSS
  • RSS0RSSRSS_0 - RSS:即這qqpredictorpredictor能夠解釋的變量
  • (RSS0RSS)q\frac{(RSS_0 - RSS)}{q}:平均每個qq能解釋的變量的比例
  • RSSnp1\frac{RSS}{n-p-1}:平均每個樣本未能被解釋的比例

如果使用個體的tstatistict-statistic和相關的pvaluep-value來衡量變量和響應之間的關係,很可能會得到錯誤的結論。

2. Variable selection

在一個多元迴歸式中,究竟哪些變量是和yy有關係的?將沒有關係的找出來

  • 若是p=2p=2,即有兩個predictorpredictor,那麼需要設計4個模型

    • No variable
    • 只包含X1X_1
    • 只包含X2X_2
    • 包含了X1,X2X_1,X_2

    然後對每個模型,可用如下指標進行檢驗:R2,BIC,AIC,CpR^2, BIC, AIC, C_p。但是當pp特別打的時候,如p=20p=20,那麼就需要2202^{20}個子集,這樣做效率過低。故需要其他的手段

  • Forward Selection

    先假設一個參數爲空的模型,只有截距β0\beta_0。此外,有訓練好了的ppvariablevariable。一個個往模型中加variablevariable,並保證最低的RSSRSS。滿足某個條件的時候停止

  • Backward Selection

    先假設所有的variablevariable都要。然後,選擇pvaluep-value最大的刪除。不斷地重複,直到滿足某條件;如設定好pvaluep-value的閾值。

  • Mixed Selection

    先假設一個參數爲空的模型。然後,不斷地加VariableVariable進去,且保證加進去的使pvaluep-value最小,一旦超過了某個閾值,該variablevariable就先放在一旁。最後,pvaluep-value分成兩份,一份使得整個模型的pvaluep-value都較小,另一份使得pvaluep-value都較大。

3. Model Fit

兩個衡量指標:R2,RSER^2,RSE

  • 對於RSERSE來說,具有較多變量的模型都有更大的RSERSE,只要RSSRSS增長的幅度比pp小,如下公式:

    RSE=1np1RSSRSE = \sqrt{\frac{1}{n-p-1}RSS}

4. Prediction

  • 兩個error

    • Random Error ϵ\epsilon不可控錯誤。即其他不明的錯誤未考慮進來,完美的變量是不可能被找到的,只能被估計。
    • Model Bias是可控變量。可以通過不斷地做實驗,或訓練模型來減少它。
  • 兩個interval

    • Confidence interval。針對大部分城市的銷售量區間,95%95\%的區間內包含了真實的值。
    • Prediction interval。針對某個特定城市的銷售量區間,95%95\%的區間包含了真實的值。
    • 兩個interval擁有相同的中心,但是prediction interval的範圍比confidence interval的更加廣。

5. 兩個強假設

Predictors and Responses are additive and linear

  1. Additive

    Predictor xix_i的改變,那麼yy也相應的改變βi\beta_i的大小,和其他的predictors無關。即xix_i造成的影響和其他的predictors相互獨立。

  2. Linear

    Predictorxix_i每次的改變1unit1-unit對於yy來說效果是一致的,無任何疊加的變化。

移除Additive假設,擴展線性迴歸

  • 當爲線性迴歸的時候,

    Y=β0+β1x1+β2x2+ϵY = \beta_0 + \beta_1x_1 + \beta_2x_2 + \epsilon

    此時x1x_1的變化,會使得YY的變化只和β1x1\beta_1x_1相關,未考慮到x2x_2對於x1x_1的影響,可能也會對YY造成影響。

  • 對線性迴歸進行擴展,如下:

    Y=β0+β1x1+β2x2+β3x1x2+ϵ=β0+(β1+β3x2)x1+β2x2+ϵ=β0+β1~x1+β2x2+ϵY = \beta_0 + \beta_1x_1 + \beta_2x_2 + \beta_3x_1x_2 + \epsilon \\ =\beta_0 + (\beta_1 + \beta_3x_2)x_1 + \beta_2x_2 + \epsilon \\ =\beta_0 + \tilde{\beta_1}x_1 + \beta_2x_2 + \epsilon

    此時,x1x_1的變化會有x2x_2的參與,x1x_1x2x_2interactioninteraction被考慮了進來。舉個例子:流水線個數和員工人數,決定了生產量。現在增加流水線,提升了生產量;但生產量的提升,不僅僅是流水線的功勞,還有員工的功勞,即員工和流水線的相互作用interactioninteraction

  • Hierarchical Principle(層次性原則)

    若是一個模型中包含了interactioninteraction,那麼這個模型也必須包含主要的影響因子x1, x2x_1, ~x_2,即使x1, x2x_1, ~ x_2相關係數的pvaluep-value很大。也就是說,當x1, x2x_1, ~x_2interactioninteraction很重要的時候,x1, x2x_1,~x_2造成的影響也沒多少人感興趣了。但是它們得包含在模型中,否則會違背x1, x2x_1,~x_2相關這件事。

移除Linear假設,擴展到Non-linear Relationship

mpg=β0+β1horsepower+β2horsepower2+ϵmpg = \beta_0 + \beta_1horsepower + \beta_2horsepower^2 + \epsilon

上述式子將mpgmpghorsepowerhorsepower的關係變爲了非線性,可以看出來是一個二次的曲線。但需要注意的是,這仍是一個線性表達式,可以用線性迴歸的方法求解相關係數。因爲改變的只是式子中的predictorpredictor而已,並不是相關係數。

6. Potential Problems

Non-linearity of the response-predictor relationships

  • 殘差ei=yiyi^e_i = y_i - \hat{y_i}

    殘差圖(Residual PlotResidual ~ Plot)最好是橄欖球狀,否則說明response和predictors是非線性關係

Correlation of Error Terms

Linear RegressionModelLinear ~ Regression Modelϵi,i{1,2,...}\epsilon_i, i\in\{1,2,...\}應該是故不相關的。

  • 現有計算regressioncoefficientsregression coefficients的方法都是基於ϵi\epsilon_i互不相關的假設。即當前數據的ϵ\epsilon不會影響到下一數據的ϵ\epsilon。否則當前計算出的standard errorstandard ~ error將低估了正確的SD,因爲沒考慮到這種相關性,導致錯的離譜。預測的區間和真實的比將會更寬,如95%95\%的置信區間其實並沒有0.95這麼高
  • 舉個例子
    • 假設將已有的nn數據複製了一份,共有2n2n份數據用於訓練模型
    • 雖然標準差是2n2n個樣本的,但其實真實有效的數據只有nn份。兩份數據存在了相關性
    • 訓練得到的coefficientcoefficient是針對2n2n份數據的,導致真實的置信區間縮小了2\sqrt2倍。
  • time series datatime ~ series ~ data(時序序列數據)中經常會出現correlationcorrelation的問題。比如說,**鄰近時間點採集的數據,都會有相關的ϵ\epsilon。**如果存在相關性,那麼在殘差圖中就會發現追蹤現象,即臨近殘差將會有相近的值。
  • CorrelationCorrelation對於Linear RegressionLinear ~ Regression很重要。若是數據來自同一個家庭,一樣的喫飯習慣,都會使得數據存在相關性。若是線性迴歸中,各個樣本之間能夠獨立,將會有更大的意義。

Non-constant variance of error terms(誤差項的不恆定方差)

  • 一般來說,線性迴歸模型滿足該假設

    誤差項有恆定的方差var(ϵi)=σ2var(\epsilon_i) = \sigma^2

  • 但如果responseresponse的值不斷地增加,該方差就會越來越大。當面對這個問題的時候,一個可行的方法就是對responseresponse進行y\sqrt y或者logYlogY

Outliers(離羣點)

  • 雖然離羣點對於迴歸線的影響可能不大,但對於RSERSER2R^2指標都有着極大的影響,這導致對模型的分析出現嚴重的錯誤。比如說,confidence intervalconfidence ~ intervalpvaluep-value的計算都出現問題。

  • 可以通過

    Studenized residuals=eiRSSStudenized ~ residuals = \frac{e_i}{RSS}

    來計算,如果該值大於3,則該點爲離羣點

高槓杆點

  • 高槓杆點勢必離羣點更危險的點,因爲它容易帶偏回歸線。

  • 對於高槓杆點的判斷可通過如下公式

    hi=1n+(xix)in(xix)2 (1n,1)h_i = \frac{1}{n}+\frac{(x_i - \overline{x})}{\sum_{i^{'}}^n(x_{i^{'}} - \overline{x})^2} ~ \in (\frac{1}{n}, 1)

    若是(xix)(x_i - \overline{x})越大,則hih_i越大,說明了該點更可能爲高槓杆點。通常hi>P+1nh_i > \frac{P+1}{n}的點都是高槓杆點。

Collinearity(共線性)

  • 兩個predictorspredictors過於相關了,可以通過VIFVIF指標來檢測

    VIF(β^j)=11RXjXj2VIF(\hat{\beta}_j) = \frac{1}{1-R^2_{X_j|X_{-j}}}

  • 共線性使得各個變量之間互相關。而Linear RegressionLinear ~ Regression假設各個邊緣之間獨立,否則對預測會造成影響。但在現實生活中,數據間往往存在着相關性,但機器學習側重於預測的準確率。若準確率很高,則不用過於關注。

7. 幾個問題總結

sales和budget之間是否存在關係?

  • 通過多元迴歸將sale和TV,Radio,Newspaper聯繫起來
  • 測試H0,βi=0,i{1,2,3,...}H_0,\beta_i=0,i\in\{1,2,3,...\}是否成立,使用FstatisticF-statistic作爲指標,pvaluep-value越低,說明存在關係的可能性越大。

Relationship有多強?

  • RSERSE估計了標準誤差
  • R2R^2記錄了ResponseResponse中可以通過PredictorPredictor解釋的變量佔比

哪個媒體對sales有貢獻?

  • 檢查每個predictorpredictortstatistict-statistic相關的pvaluep-value
  • pvaluep-value越低,說明貢獻越大

每個媒體在salessales上的影響有多大?

  • βj^\hat{\beta_j}的標準差可用來構建置信區間。若置信區間內不包含00且遠離00,那麼說明response和該predictor佔一定關係。

  • 此外,共線性會導致標準差變大。故需要檢測共線性是某predictor置信區間出現0的原因,通過VIFVIF來檢測。

  • 若想檢驗單個變量對sale的影響,可以各自做線性迴歸。

預測能力有多強?

  • 若使用預測區間

    Y=f(x)+ϵY = f(x) + \epsilon

  • 若使用置信區間

    Y=f(x)Y = f(x)

預測區間比置信區間更加廣闊,因爲預測區間加入了不可控變量ϵ\epsilon

是否爲線性關係?

residual plotresidual ~ plot可用來檢測非線性

廣告數據存在協同性嗎?

  • 標準的線性迴歸模型假設predictorspredictorsresponseresponse之間存在加性關係,即各個prediction互相獨立。
  • 每個predictor造成的影響不依賴其他的predictors

線性迴歸與K-NN Regression比較

  • 線性迴歸是基於parametricparametric類方法,有很好的優點

    • 僅需估計有限個β\beta
    • 可以用統計方法進行分析

    但也有缺點

    • F(X)F(X)的強假設,若數據和假設無關,造成準確率很低
  • 這時候就需要nonparametricnon-parametric的方法了,如KNN RegressionKNN ~ Regression,如下

    f(x0)^=1KxiN0yi\hat{f(x_0)} = \frac{1}{K}\sum_{x_i \in N_0} y_i

    • 當K很大時,以MSEMSE爲衡量指標不會比Linear RegressionLinear ~ Regression差多少。但是當kk很小的時候,KNN RegerssionK-NN ~ Regerssion就很差了。
    • 在現實生活中,當predictors的個數很多的時候,對於KNN RegressionKNN ~ Regression就會有維度災難,其MSEMSE很大。故大多是場合還是基於Linear RegressionLinear ~ Regression

本文爲作者原創,轉載需註明出處!

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章