R2的意義以及出現負數的情況

R2 是什麼?

R2 是評價模型的一個指標,它表示模型可解釋的方差占總方差的比例

在瞭解其定義之前,我們先看一下SST,SSR,SSE的概念

SSR 是the sum of squares due to regression

SSR = sum_{i=1}^{i=n}(hat{y_i}-bar{y})^2 tag{1}

SST是the sum of squares total

SST = sum_{i=1}^{i=n}(y_i-bar{y})^2 tag{2}

SSE是the sum of squares error

SSE = sum_{i=1}^{i=n}(y_i-hat{y_i})^2 tag{3}

公式太抽象瞭,我們在圖像中看一下SST SSR SSE 所表示的含義,見下圖

我們瞭解清楚以上概念之後,我們就來看一下R2的定義

其定義為

R2 = 1 – frac{SSE}{SST} = 1 – frac{sum_{i=1}^{n} (y_i-hat{y_i})^2}{sum_{i=1}^{n}(y_i-bar{y})^2} tag{4}

或者

R2 = frac{SSR}{SST} = frac{sum_{i=1}^{n}(hat{y_i}-bar{y})^2}{sum_{i=1}^{n}(y_i-bar{y})^2} tag{5}

需要註意:在我們構建模型時,以及計算以上統計值時,有以下潛在默認的條件

所有的樣本點不可能是同一個點,即不存在y1=y2=….yn的情況

樣本點y是存在方差的,方差不為0,即{sum_{i=1}^{n}(y_i-bar{y})^2} not=0

我們來詳細看一下公式4,我們來分析以下幾種情況

R2取1時,hat{y_i} =y_i即預測值等於真實值,完美預測(見下圖)

當R2取0到1之間的數字時,表示模型可以解釋的因變量方差比例

重點來瞭,當R2=0時,意味著hat{y_i} = bar{y},即所有的預測值均為均值

為什麼有的時候R2會是負數

我們從上面的公式和解釋上來看,R2應該是一個取值區間為0,1之間的數字,換句話說,模型預測最差的情況也就是R2=0,所有預測值均為均值的情況

而事實真是如此嗎?其實並不是的!

真實情況是:在訓練集中,R2的最小取值為0,也就是說,模型預測最差也就是所有的預測值是均值的情況

但在測試集中,即我們用訓練好的模型去預測一個新得模型時,最差得結果當然不是所有預測值被預測為均值,它有可能更差呀,比如以下情況

  • 當在測試集中出現瞭一些異常值
  • 當在訓練集得到得模型並不適用於測試集時;也是說選擇的模型並不適合測試集合數據時

出現異常值模型不適合

總而言之

在訓練集中,R2最小取值為0,不會出現負數的情況

當用模型去預測一個新的數據集時,因為種種原因完全可能出現R2為負數的情況

接下來,我們從公式的角度上來看一下

在線性回歸的訓練集中, 滿足SST = SSE+SSR; 因為SST、SSE、SSR均大於等於0,所以SSE一定小於或者等於SST

具體證明過程如下:

begin{aligned} SST &= sum_{i=1}^{n}(y_i-bar{y})^2\ & = sum_{i=1}^{n}(y_i-hat{y_i})^2+2sum_{i=1}^n(y_i-hat{y_i})(hat{y_i}-bar{y})+sum_{i+1}n(hat{y_i}-bar{y})^2\ &= SSE + 2sum_{i=1}^n(y_i-hat{y_i})(hat{y_i}-bar{y}) + SSR end{aligned} tag{6}

對於公式6的中間項

begin{aligned} sum_{i=1}^n(y_i-hat{y_i})(hat{y_i}-bar{y}) &= sum_{i=1}^n(y_i-beta_0-beta_1x_i)(beta_0+beta_1x_i-bar{y}) \ &= (beta_0-bar{y})sum_{i=1}^n(y_i-beta_0-beta_1x_i)+beta_1sum_{i=1}^n(y_i-beta_0-beta_1x_i)x_i end{aligned} tag{7}

在最小二乘法過程中得到的兩個公式

frac{partial{SSE}}{partial{beta_0}} = sum_{i=1}^{i=n}2(y_i-(beta_0+beta_1 x_i))(-1)=0 tag{8}

frac{partial{SSE}}{partial{beta_1}} = sum_{i=1}^{i=n}2(y_i-(beta_0+beta_1 x_i))(-x_i) =0 tag{9}

根據公式8和9 可知公式7為0,那麼SST = SSE+SSR,根據公式R2一定大於等於0;而成立的條件是模型在該數據集上采用瞭最小二乘方法進行參數估計;很顯然當預測新的數據集時,並不一定滿足SST=SSE+SSR, 甚至SSE還可能大於SSR,R2可能會出現負數

赞(0)