關(guān)于回歸分析的筆記:
原理理解:
確定兩種及兩種以上變量相互依賴的定量關(guān)系的一種統(tǒng)計(jì)分析方法。
步驟:
1)確定目標(biāo)豆同,也就是因變量。接著確定自變量子房〔盏睿可以做散點(diǎn)圖觀察變量和自變量間的關(guān)系奥裸。
2)建立回歸方程模型:用最小二乘估計(jì),當(dāng)sse 即離差平方和達(dá)到最小的時(shí)候確定的自變量系數(shù)沪袭。
3)相關(guān)性分析
一個(gè)實(shí)際案例:父母的身高是否影響子女的身高湾宙?(聯(lián)系:預(yù)估分的高低是否影響考試成績(jī)?)
思考:用t檢驗(yàn)冈绊,把父母身高分為高矮兩組侠鳄,如果有影響,那么父母身高高的組子女身高應(yīng)該顯著高于父母矮的一組(聯(lián)系焚碌,預(yù)估分高的學(xué)生考試成績(jī)應(yīng)該顯著高于預(yù)估分低的)
這里預(yù)估分的高低有很多劃分標(biāo)準(zhǔn)畦攘,不同標(biāo)準(zhǔn)結(jié)果會(huì)不同霸妹。此時(shí)可以用回歸分析解決
-
線性回歸模型:
假設(shè)預(yù)測(cè)變量和預(yù)測(cè)值之間存在線性關(guān)系十电。
揭示兩個(gè)變量之間是否具有相關(guān)性,而非因果關(guān)系叹螟。預(yù)測(cè)變量:父母身高 預(yù)測(cè)值:子女身高 誤差項(xiàng):模型無(wú)法解釋的個(gè)體差異 線性回歸模型:回歸線加上誤差項(xiàng)來描述預(yù)測(cè)值和預(yù)測(cè)變量之間的關(guān)系
一 . 建立線性模型:
[]截距:每當(dāng)x增加一個(gè)單位鹃骂,y增加的多少。
[]似然:likelyhood罢绽,在假設(shè)我們的估計(jì)就是真實(shí)值的情況下畏线,觀測(cè)到我們手上數(shù)據(jù)的可能性有多大。相當(dāng)于一個(gè)概率值良价,當(dāng)然可能性越大越好寝殴。能夠衡量這種可能性的函數(shù)就叫似然函數(shù),似然最大的點(diǎn)就叫極大似然估計(jì)明垢。
[]最小二乘解:極大似然解的幾何意義:在所有截距和回歸系數(shù)的組合中蚣常,能夠是的誤差平方和最小的一組,這個(gè)組合就是最小二乘解痊银。
通過極大似然法計(jì)算最符合數(shù)據(jù)的回歸線抵蚊,從而建立因變量與自變量之間的線形模型。
二. 驗(yàn)證模型的合理性
1 . 系數(shù)驗(yàn)證:
驗(yàn)證線性模型中自變量和因變量是否具有顯著的線性關(guān)系——檢驗(yàn)回歸線的斜率是否為0溯革。此時(shí)每個(gè)樣本對(duì)應(yīng)的似然斜率呈現(xiàn)為一個(gè)正態(tài)分布贞绳,如果這個(gè)斜率的方差越小,那么對(duì)斜率的估計(jì)就越準(zhǔn)確致稀。(此處用F檢驗(yàn)和t檢驗(yàn))
由于斜率的方差與誤差項(xiàng)的方差是正比冈闭,與自變量方差成反比。因此抖单,采集數(shù)據(jù)樣本的時(shí)候拒秘,盡量涵蓋自變量所有范圍号显。
在對(duì)斜率進(jìn)行假設(shè)檢驗(yàn)之后,得到p值和置信區(qū)間躺酒。如果p>0.05,說明顯著押蚤,所以拒絕原假設(shè),
-
判別系數(shù) R2
R2=1-誤差平方和/總平方和羹应。越接近1越合理揽碘。
我們可以通過一次次增加回歸因子進(jìn)行判斷取舍,找到最合適的模型园匹。但是最終好的模型需要用新數(shù)據(jù)檢驗(yàn)雳刺,也就是預(yù)測(cè)集(我們回歸分析的一大目的就是做預(yù)測(cè),所以預(yù)測(cè)集用于驗(yàn)證)這時(shí)用預(yù)測(cè)集得到的樣本外R方裸违,越接近1就說明擬合最好掖桦。
如果檢測(cè)模型中有一個(gè)模型R方最高,而該模型下預(yù)測(cè)集的R方低供汛,說明該模型過擬合枪汪。3.其他標(biāo)準(zhǔn):
修正的R方:越接近1越好
AIC:越小越好
BIC:越小越好
三. 如果結(jié)果不顯著怎么辦?
1.思考統(tǒng)計(jì)功效是否足夠怔昨,想辦法多收集數(shù)據(jù)雀久,尤其距離平均值比較遠(yuǎn)的數(shù)據(jù)。
2.影響y的值趁舀,不止一個(gè)因素赖捌,還有其他因素“耄考慮多元回歸越庇。
二元回歸:性別做0/1分類
多元線性規(guī)劃:
先對(duì)第一個(gè)系數(shù)做中心化處理;增加交互因子(x1*x2);
注意:如果某一個(gè)因子的系數(shù)檢測(cè)出來不顯著奉狈,也可能是有其他因子是相互抵消關(guān)系卤唉,導(dǎo)致結(jié)果不顯著。
計(jì)算方差膨脹因子——VIF: 代表每個(gè)自變量與其他自變量的相關(guān)性嘹吨。所以越小越好搬味。
python 操作思路:
1,交叉驗(yàn)證:對(duì)訓(xùn)練數(shù)據(jù)集分成三類做交叉驗(yàn)證
from sklearn.linear_model import LinearRegression
from sklearn.cross_validation import KFold
alg=LinearRegression()
kf=KFold( len ,n_folds=?,random_state=1)
2, 確定特征集
3蟀拷,應(yīng)用回歸模型進(jìn)行擬合
predictions=[ ] #定義一個(gè)空列表
for train, test in kf:
train_predictors=...
train_target=…
alg.fit=(train_predictors, train_target). #擬合曲線
test_predictions=alg.predict( )
Predictions.append(test_predictions) #將測(cè)試結(jié)果放入list中
4碰纬,特征工程
選擇合適的特征作為進(jìn)行回歸擬合