概念
如果回歸分析中包括兩個或兩個以上的自變數,且因變數和自變數之間是線性關係,則稱為多元線性回歸分析。詳細原理這裡就不細說了,具體參照線性回歸。
數據組說明線性回歸
我們以一簡單數據組來說明什麼是線性回歸。假設有一組數據型態為 y=y(x),其中
x={0, 1, 2, 3, 4, 5}, y={0, 20, 60, 68, 77, 110}
如果我們要以一個最簡單的方程式來近似這組數據,則非一階的線性方程式莫屬。先將這組數據繪圖如下
圖中的斜線是我們隨意假設一階線性方程式 y=20x,用以代表這些數據的一個方程式。以下將上述繪圖的 MATLAB 指令列出,並計算這個線性方程式的 y 值與原數據 y 值間誤差平方的總合。
>> x=[0 1 2 3 4 5];
>> y=[0 20 60 68 77 110];
>> y1=20*x; % 一階線性方程式的 y1 值
>> sum_sq = sum((y-y1).^2); % 誤差平方總和為 573
>> axis([-1,6,-20,120])
>> plot(x,y1,x,y,'o'), title('Linear estimate'), grid
如此任意的假設一個線性方程式並無根據,如果換成其它人來設定就可能採用不同的線性方程式;所以我們必須要有比較精確方式決定理想的線性方程式。我們可以要求誤差平方的總和為最小,做為決定理想的線性方程式的準則,這樣的方法就稱為最小平方誤差(least squares error)或是線性回歸。MATLAB的polyfit函式提供了 從一階到高階多項式的回歸法,其語法為polyfit(x,y,n),其中x,y為輸入數據組n為多項式的階數,n=1就是一階 的線性回歸法。polyfit函式所建立的多項式可以寫成
從polyfit函式得到的輸出值就是上述的各項係數,以一階線性回歸為例n=1,所以只有 二個輸出值。如果指令為coef=polyfit(x,y,n),則coef(1)= , coef(2)=,...,coef(n+1)= 。注意上式對n 階的多 項式會有 n+1 項的係數。我們來看以下的線性回歸的示範:
>> x=[0 1 2 3 4 5];
>> y=[0 20 60 68 77 110];
>> coef=polyfit(x,y,1); % coef 代表線性回歸的二個輸出值
>> a0=coef(1); a1=coef(2);
>> ybest=a0*x+a1; % 由線性回歸產生的一階方程式
>> sum_sq=sum(y-ybest).^2); % 誤差平方總合為 356.82
>> axis([-1,6,-20,120])
>> plot(x,ybest,x,y,'o'), title('Linear regression estimate'), grid
線性回歸擬合方程
最小二乘法
一般來說,線性回歸都可以通過最小二乘法求出其方程,可以計算出對於y=bx+a的直線,其經驗擬合方程如下:
其相關係數(即通常說的擬合的好壞)可以用以下公式來計算:
理解回歸分析的結果
雖然不同的統計軟體可能會用不同的格式給出回歸的結果,但是它們的基本內容是一致的。我們以STATA的輸出為例來說明如何理解回歸分析的結果。在這個例子中,我們測試讀者的性別(gender),年齡(age),知識程度(know)與文檔的次序(noofdoc)對他們所覺得的文檔質量(relevance)的影響。
輸出:
Source | SS df MS Number of obs = 242
-------------+------------------------------------------ F ( 4, 237) = 2.76
Model | 14.0069855 4 3.50174637 Prob > F = 0.0283
Residual | 300.279172 237 1.26700072 R-squared = 0.0446
------------- +------------------------------------------- Adj R-squared = 0.0284
Total | 314.286157 241 1.30409194 Root MSE = 1.1256
------------------------------------------------------------------------------------------------
relevance | Coef. Std. Err. t P>|t| Beta
---------------+--------------------------------------------------------------------------------
gender | -.2111061 .1627241 -1.30 0.196 -.0825009
age | -.1020986 .0486324 -2.10 0.037 -.1341841
know | .0022537 .0535243 0.04 0.966 .0026877
noofdoc | -.3291053 .1382645 -2.38 0.018 -.1513428
_cons | 7.334757 1.072246 6.84 0.000 .
-------------------------------------------------------------------------------------------
輸出
這個輸出包括一下及部分。左上角給出方差分析表,右上角是模型擬合綜合參數。下方的表給出了具體變數的回歸係數。方差分析表對大部分的行為研究者來講不是很重要,我們不做討論。在擬合綜合參數中, R-squared 表示因變數中多大的一部分信息可以被自變數解釋。在這裡是4.46%,相當小。
回歸係數
一般地,我們要求這個值大於5%。對大部分的行為研究者來講,最重要的是回歸係數。我們看到,年齡增加1個單位,文檔的質量就下降 -.1020986個單位,表明年長的人對文檔質量的評價會更低。這個變數相應的t值是 -2.10,絕對值大於2,p值也<0.05,所以是顯著的。我們的結論是,年長的人對文檔質量的評價會更低,這個影響不是顯著的。相反,領域知識越豐富的人,對文檔的質量評估會更高,但是這個影響不是顯著的。這種對回歸係數的理解就是使用回歸分析進行假設檢驗的過程。
回歸誤差
由於線性回歸是直接計算的,故其誤差可確定
擴展閱讀: 1 《機率統計》