上文介紹了簡單的一元線性回歸邓梅,再進(jìn)一步將自變量擴展到多維,就是今天這邊介紹的重點——多元線性回歸。例如假設(shè)因變量Y與自變量X1,...祖乳,Xk之間存在線性關(guān)系:
注:其中?表示誤差項
在金融中,也經(jīng)常會寫成以下形式秉氧,這就是我們常說的alpha(超額收益)和beta(風(fēng)險收益)的由來
回歸的原理與一元線性回歸類似眷昆,需要找到最優(yōu)的擬合平面(超平面),同樣還是需要使用最小二乘法汁咏,使得平方誤差值最小亚斋。一旦得到了回歸系數(shù)(既各β系數(shù)),我們就可以通過該模型對于X的新觀測值進(jìn)行Y值預(yù)測了攘滩,每個βj告訴我們?nèi)绻渌禂?shù)保持不變的情況下帅刊,Y會隨著其變化的程度。
首先轰驳,我們先構(gòu)造一個已知的線性模型Y=X1+X2厚掷,其中X2我們通過在平方拋物線加上X1得到弟灼,所以可以線性模型也可寫為Y=2X1+X1^2:
有了原始數(shù)據(jù)后,我們就可以使用
statsmodels
對其進(jìn)行線性回歸了最終得到的線性模型為:
可以看到這里模型中X1前的系數(shù)是1冒黑,而沒有考慮X2=X^2+X1田绑,這是因為在回歸過程中是元素是被分割開來處理的。
多元線性回歸示例
在真實的股票分析過程中抡爹,也有類似的情況掩驱,例如對兩只股票數(shù)據(jù)進(jìn)行線性回歸,可能會得到很高的β值冬竟,但是如果我們再引入一只第三方股票(例如標(biāo)普500ETF)欧穴,可能才能發(fā)現(xiàn)前兩只股票的關(guān)聯(lián)都是源于與這只基準(zhǔn)股票,通過這種方法泵殴,可以更為準(zhǔn)確地衡量兩只股票的顯著性涮帘。
第一步,我們先獲取兩只股票(AT&T與Fiserv)與標(biāo)普500ETF(SPY)的價格數(shù)據(jù)笑诅,并對AT&T與Fiserv進(jìn)行一輪線性回歸
第二步调缨,再引入標(biāo)普500ETF的數(shù)據(jù),將其作為另一個自變量引入回歸過程
得到回歸線后吆你,緊接著的一個問題就是如何對其進(jìn)行驗證弦叶,我們先采用一個最直觀的辦法——將自變量、因變量預(yù)測值繪制為圖表妇多,可以過濾一些明顯存在的問題伤哺。
注:黃色為預(yù)測值,藍(lán)色為AT&T的真實價格
當(dāng)然者祖,也可以使用更為專業(yè)的統(tǒng)計學(xué)分析進(jìn)行深入的驗證與分析立莉,summary()函數(shù)提供了多元線性回歸的一些統(tǒng)計學(xué)數(shù)據(jù)。
注:OLS表示使用的為最小二乘法
R-squared/Adj. R-squared 指標(biāo)表示回歸線對數(shù)據(jù)的擬合程度
F-statistic/Prob (F-statistic) 表示模型是否能顯著預(yù)測因變量的變化
const代表常量(α)咸包,x1標(biāo)識自變量前系數(shù)(β1)桃序,x2標(biāo)識自變量前系數(shù)(β2)
得到的回歸線為Y=10.8489 - 0.1936X1 + 0.1836X2
模型假設(shè)
如上這些統(tǒng)計學(xué)指標(biāo)是否有效杖虾,取決于如下的一些假設(shè)(與上篇文章中一元線性回歸的假設(shè)一致):
- 自變量不是隨機的
- 誤差項的方差在觀測集內(nèi)為常量(這條對于評估擬合的好壞程度至關(guān)重要)
- 誤差項不是自相關(guān)的烂瘫,杜賓-沃森統(tǒng)計用于檢測自相關(guān)性,如果結(jié)果接近于2奇适,那么則不存在自相關(guān)坟比。
- 誤差項服從正態(tài)分布。如果這個條件不滿足嚷往,則有些統(tǒng)計則無法使用葛账,如F檢驗。
除此之外皮仁,多元線性回歸模型還需要一個額外的假設(shè): - 自變量間不存在嚴(yán)格線性關(guān)系籍琳,否則就會出現(xiàn)相同的線性方程有為多種表現(xiàn)方式的情況菲宴,從而無法計算出唯一的β系數(shù)。
模型選擇
如何為因變量找到最合適的模型趋急,是我們關(guān)注的究極目的喝峦。引入太多的自變量,可能會導(dǎo)致過度擬合呜达,但如果自變量過少谣蠢,擬合效果又會太差。目前業(yè)內(nèi)最為主流的做法是逐步回歸法查近。前向逐步回歸從一個“空模型”起步眉踱,對每個獨立的自變量進(jìn)行檢驗,從中選擇使得模型最優(yōu)的一個霜威,通常使用AIC或BIC進(jìn)行衡量(越小越好)谈喳。然后之后每步從剩下的自變量中選出一個增加到模型中,使用線性檢驗該自變量組合戈泼,并通過AIC與BIC找到最優(yōu)的一個選擇叁执,這樣最終就能得到一個最優(yōu)的模型。這種方法也有其局限性矮冬,如果特定的自變量在算法執(zhí)行的前段就被剔除出算法谈宛,該方法可能會找不到理論上的最優(yōu)模型,所以在現(xiàn)實使用中胎署,逐步回歸法還是需要結(jié)合人為的判斷吆录。
模型選擇示例(自變量間存在嚴(yán)格線性關(guān)系)
首先我們手工構(gòu)建一個包含4個自變量的線性模型:
為自變量生成對應(yīng)的序列數(shù)據(jù),各自變量間都有一定的關(guān)系琼牧,但需要注意的是對于X4變量恢筝,這里直接將其賦值為X1的數(shù)據(jù)的5倍(嚴(yán)格線性關(guān)系)
我們使用
statsmodels
直接對其進(jìn)行多元線性回歸,注:可以看到結(jié)果中Beta2與Beta3擬合還是非常準(zhǔn)確的巨坊,但是Beta1和Beta4則存在較大差異
由此可見撬槽,自變量間的嚴(yán)格線性關(guān)系會導(dǎo)致回歸系數(shù)的不確定(逐步回歸法也無法規(guī)避該問題)在這種情況下,就應(yīng)該人為將X4剔除趾撵。
原理也很容易理解侄柔,因為如果X1與X4間存在嚴(yán)格線性關(guān)系(如X1=X2),那么線性方程就可以轉(zhuǎn)化出無數(shù)的可能性(Y=X1+X2=0.5X1+1.5X2=1.5X1+0.5X2)占调。
還有很多方式去檢查模型與自變量的優(yōu)劣暂题,這部分會在之后的文章中再深入介紹。
本篇就到這里究珊,感謝閱讀薪者,歡迎訂閱:)