其實首先的問題來源於,
OLS中的R^2可以小於0嗎
前幾天一些原因被這個問題困倒(ง •_•)ง...
嗯。有可能!
因此想要先說說總平方和的分解,畢竟
這裡,SSR是殘差平方和,SST是總平方和。也就是R^2代表的是模型解釋的部分佔方差的多少比例。
最理想的情況,若完全沒有殘差,模型完美擬合,那麼R^2=1;最差的情況,如果回歸模型就是被解釋變量的均值。那其實完全沒有解釋力,殘差平方和等於總平方和,R^2=0。
當然,這裡是說有截距項的回歸模型!如果沒有截距,就有可能小於0。
繞回來,到底怎麼對總平方和進行分解。
說起下面這個多元回歸模型,它表示有n個樣本,p個解釋變量(包括截距)。
那麼,根據OLS估計殘差的性質,即殘差與Y^正交,可以得到下式。
即,
由於殘差均值為0,其和也為0。因此,
故,
即,
SST,SSE,SSR均大於等於0。至此,應該說R^2是不會小於0的。
但是在過原點回歸中,殘差均值可能並不為0。這會導致SST≠SSE+SSR。甚至可能SSR>SST。這就可能使R^2<0。
其實一般而言,無特殊情況,模型都是建議加上截距項的。舉個慄子,下面這種情況過原點回歸和有截距項的回歸就完全不一樣,甚至回歸係數是相反的。直觀從數據上看,過原點回歸顯然也不太合理。
不過剛剛進行分解的時候,一開始就用到了殘差與Y^正交的結論。因此又想到,
殘差為什麼與Y^正交?
理解這個問題,我們就可以更好理解OLS到底幹的是一件啥事。讓我們通過幾何的方式去理解。
先上結論,本質上說,OLS是使得Y被投影到由X的列張成的超平面上從而得到Y^。這樣,||Y-Y^||^2最小,即滿足最小二乘。
接下來解釋為什麼...上圖其實是一個簡化版的圖,在三維空間中比較好展示。我們先說說一般情況,如下圖,
Y^這個n維向量其實是X的列的線性組合,且X是給定的,因此方程其實是說,Y^就在X的列張成的超平面上。由於p<n(一般而言要求樣本量大於解釋變量數),且X的列線性無關(不然就有多重共線性),因此X的列張成的超平面其實是n維線性空間上的一個p維子空間。並且,可以理解,該超平面過原點(係數全為0那麼Y^就為0)。
因此,上上面那張三維的圖其實可以理解為是n=3,p=2的情況。三個坐標軸分別代表y_1,y_2,y_3,而Y^一定在一個過原點的超平面上。因此,如果想要達到最小二乘的目標,其實只需要把Y投影到由X的列張成的超平面上,並得到Y^。這樣,||Y-Y^||^2便達到最小,即Y-Y^垂直於該超平面。因此,Y-Y^顯然與Y^正交;由於Y^是X的線性組合,因此同時也與X正交。
也就是說,OLS使得估計出的殘差與解釋變量不相關,也與Y^不相關。
當然也還可以從正規方程的角度理解這事
最小二乘的解滿足如下正規方程,
也即,
因此,Y^其實就是投影矩陣P乘Y,這即是剛剛說到的投影的含義。
另外,移項就會發現,正規方程其實也與如下方程等價,
這其實也是說,殘差與解釋變量正交,也與Y^正交。這就與上文呼應!
參考資料
[1]http://staff.ustc.edu.cn/~zwp/teach/MVA/Lec9_slides.pdf
[2]http://mezeylab.cb.bscb.cornell.edu/labmembers/documents/supplement%205%20-%20multiple%20regression.pdf