4

【回归分析】理论与实现

 3 years ago
source link: https://www.guofei.site/2017/11/22/regression.html
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
neoserver,ios ssh client

【回归分析】理论与实现

2017年11月22日

Author: Guofei

文章归类: 4-1-统计模型 ,文章编号: 408


版权声明:本文作者是郭飞。转载随意,但需要标明原文链接,并通知本人
原文链接:https://www.guofei.site/2017/11/22/regression.html

Edit
X\ Y 分类 连续 分类+连续 分类 列联表分析
LR LR LR 连续 ttest
ANOVA OLS回归 协方差分析ANCOVA

线性回归

大图见于这里

大图见于这里

一元线性模型

为简化记号,记:
lxy=∑i=1n(xi−x¯)(yi−y¯)=∑i=1nxiyi−nx¯y¯lxy=∑i=1n(xi−x¯)(yi−y¯)=∑i=1nxiyi−nx¯y¯
lxx=∑i=1n(xi−x¯)2=∑i=1nx2i−nx¯2lxx=∑i=1n(xi−x¯)2=∑i=1nxi2−nx¯2
lyy=∑i=1n(yi−y¯)2=∑i=1ny2i−ny¯2lyy=∑i=1n(yi−y¯)2=∑i=1nyi2−ny¯2

对于一元线性回归模型:
{yi=β0+β1xi+εiεi∼(i.i.d)N(0,σ2){yi=β0+β1xi+εiεi∼(i.i.d)N(0,σ2)

用最小二乘法得到:
β^1=lxylxxβ^1=lxylxx
β^0=y¯−β^1x¯β^0=y¯−β^1x¯

可以证明:
β^1∼N(β1,σ2lxx)β^1∼N(β1,σ2lxx)
β^0∼N(β0,(1n+x¯2lxx)σ2)β^0∼N(β0,(1n+x¯2lxx)σ2)
Cov(β^0,β^1)=−x¯lxxσ2Cov(β^0,β^1)=−x¯lxxσ2

参数的区间估计

(上面的结论用于显著性检验,下面以β1β1为例) H0:β1=0,H1:β1≠0H0:β1=0,H1:β1≠0
已知β^1∼N(β1,σ2lxx)β^1∼N(β1,σ2lxx),
其中σ2σ2未知,所以构造t统计量
t=β^1sβ^1∼t(n−2)t=β^1sβ^1∼t(n−2)
其中,sβ^1=σ^2lxx−−−√,σ^2=∑i=1n(yi−y^i)2n−2sβ^1=σ^2lxx,σ^2=∑i=1n(yi−y^i)2n−2

y的区间估计

(上面三条结论也可以用来求出预测值的置信区间)
(根据正态分布的加法)
对 x=x0x=x0 处做预测 y^0=β1x0+β0∼N(β1x0+β0,(1n+(x0−x¯)2lxx)σ2)y^0=β1x0+β0∼N(β1x0+β0,(1n+(x0−x¯)2lxx)σ2)
得到区间估计(y^−t1−α/2(n−2)sy^,y^+t1−α/2(n−2)sy^)(y^−t1−α/2(n−2)sy^,y^+t1−α/2(n−2)sy^)
其中,sy^=(x0−x¯)2lxx)σ^2−−−−−−−−−−−√,σ^2=∑i=1n(yi−y^i)2n−2sy^=(x0−x¯)2lxx)σ^2,σ^2=∑i=1n(yi−y^i)2n−2

另一种写法

SST=∑i=1n(yi−y¯)2SST=∑i=1n(yi−y¯)2SSR=∑i=1n(y^i−y¯)2=lxylxxSSR=∑i=1n(y^i−y¯)2=lxylxxSSE=∑i=1n(yi−y^i)2SSE=∑i=1n(yi−y^i)2

结论:
SST=SSR+SSESST=SSR+SSE
F=SSR/1SSE/(n−2)F=SSR/1SSE/(n−2) 相关系数r2=l2xylxxlyy=SSRSSTr2=lxy2lxxlyy=SSRSST

正则化方法

  • lasso

Python实现

大图见于这里

大图见于这里

AIC

模型的似然函数为L(θ,x)L(θ,x),其中θθ的维度为p,那么1:
AIC=−2lnL(θ,x)+2pAIC=−2ln⁡L(θ,x)+2p

把AIC用于回归,等价于AIC=nln(SSE)+2pAIC=nln⁡(SSE)+2p

逐步回归

1. 前进法

每次增加一个feature进入模型,按照F检验的显著性作为评判指标

2. 后退法

每次剔除一个最不重要的feature,仍然是F检验作为指标

3. 逐步法

每引入一个feature,对已经进入模型的feature组个检验,直到最后。
有可能产生死循环,所以进入和剔除时对显著性水平的要求不同,从而防止死循环。

参考资料

  1. 《应用回归分析》,人民大学出版社 


您的支持将鼓励我继续创作!

About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK