1. RSS, RSE, TSS等
RSS(Residual Sum of Squares)
R S S = e 1 2 + e 2 2 + e 3 2 + . . . + e n 2 = ( y 1 ^ − β 0 ^ − β 1 ^ x 1 ) + . . . + ( y n ^ − β 0 ^ − β 1 ^ x n ) = ∑ i = 1 n ( y i − y i ^ ) 2 RSS = e_1^2 + e_2^2 + e_3^2 + ... + e_n^2 \\ =(\hat{y_1} - \hat{\beta_0} - \hat{\beta_1}x_1) + ... + (\hat{y_n} - \hat{\beta_0} - \hat{\beta_1}x_n) \\ = \sum_{i=1}^n(y_i - \hat{y_i})^2 RSS=e12+e22+e32+...+en2=(y1^−β0^−β1^x1)+...+(yn^−β0^−β1^xn)=i=1∑n(yi−yi^)2
RSS定义了,在进行了回归之后,模型未能解释的变量。
RSE(Residual Standard Error)
R S E = R S S n − 2 = 1 n − 2 ∑ i = 1 n ( y i − y i ^ ) 2 RSE = \sqrt{\frac{RSS}{n-2}} \\ =\sqrt{\frac{1}{n-2}\sum_{i=1}^n(y_i-\hat{y_i})^2} RSE=n−2RSS=n−21i=1∑n(yi−yi^)2
RSE说明了,即使再好的回归模型也存在着RSE置信区间之内的误差,即模型对于数据的欠拟合程度。
TSS(Total Sum of Squares)
T S S = ∑ i = 1 n ( y i − y ‾ ) TSS = \sum_{i=1}^n(y_i - \overline{y}) TSS=i=1∑n(yi−y)
其中 y ‾ = 1 n y i \overline{y} = \frac{1}{n}y_i y=n1yi。TSS定义了 y y y自身的方差,即衡量了 Y Y Y中 y y y固有的变化程度。
R 2 R^2 R2
R 2 = T S S − R S S T S S = 1 − R S S T S S R^2 = \frac{TSS-RSS}{TSS} = 1-\frac{RSS}{TSS} R2=TSSTSS−RSS=1−TSSRSS
- T S S TSS TSS:衡量了 Y Y Y中 y y y固有的变化程度。
- R S S RSS RSS:进行回归之后,模型未能解释的变量值
- T S S − R S S TSS-RSS TSS−RSS:固有的变化程度 - 未能解释的变量值 = 能解释的变量值
- T S S − R S S T S S \frac{TSS-RSS}{TSS} TSSTSS−RSS:已经解释的变量值占所有固有变化的比例
R 2 R^2 R2的变化区间为 ( 0 , 1 ) (0, 1) (0,1),与 y y y的尺度无关。所以,理论上 R 2 R^2 R2越大应该越好,即大量的变量可以被回归所解释。但实际场景中, R 2 R^2 R2的值要看应用。
F − s t a t i s t i c F-statistic F−statistic用于估计 H 0 H_0 H0
F = ( T S S − R S S ) / p R S S / ( n − p − 1 ) F = \frac{(TSS - RSS)/p}{RSS/(n-p-1)} F=RSS/(n−p−1)(TSS−RSS)/p
其中, n n n为样本个数, p p p为多项式回归中的回归系数的个数
- T S S TSS TSS: y y y固有的方差,及固有的变量
- R S S RSS RSS:回归后,未能解释的变量
- T S S − R S S TSS - RSS TSS−RSS:回归后,能够解释的变量
- T S S − R S S p \frac{TSS-RSS}{p} pTSS−RSS:回归后,每个 p r e d i c t o r predictor predictor所占的解释比例 (1)
- R S S n − p + 1 \frac{RSS}{n-p+1} n−p+1RSS:回归后,每个样本未能被解释的比例 (2)
- σ = R S E = R S S n − 2 \sigma=RSE=\sqrt{\frac{RSS}{n-2}} σ=RSE=n−2RSS:每个样本的未能被解释的占比 (3)
若对于上述的 (1),(2),(3) 式
-
(1)=(3),意味着每个 p r e d i c t o r predictor predictor能解释的占比很低
-
(2)=(3),意味着每个样本能比解释的占比很低
-
可以推出 F − s t a t i s t i c = 1 F-statistic=1 F−statistic=1,即
β 1 = β 2 = . . . = β n = 0 \beta_1 = \beta_2 = ...= \beta_n = 0 β1=β2=...=βn=0
说明各个 p r e d i c t o r predictor predictor对预测 y y y都是没有帮助的。
若对于上述的 (1),(2),(3) 式
-
(1)>(3),意味着每个 p r e d i c t o r predictor predictor能解释的占比很高
-
(2)=(3),意味着每个样本能比解释的占比很低
-
可以推出可以推出 F − s t a t i s t i c > 1 F-statistic>1 F−statistic>1,可以推出
至 少 有 一 β i , i ∈ { 1 , 2 , . . . , p } 不 为 0 至少有一\beta_i,i\in\{1,2,...,p\}不为0 至少有一βi,i∈{1,2,...,p}不为0
F − s t a t i s t i c F-statistic F−statistic,用于检验部分predictors是否为0
F − s t a t i s t i c = ( R S S 0 − R S S ) / q R S S / ( n − p − 1 ) F-statistic = \frac{(RSS_0 - RSS)/q}{RSS/(n-p-1)} F−statistic=RSS/(n−p−1)(RSS0−RSS)/q
- R S S 0 RSS_0 RSS0:省略了 q q q个 p r e d i c t o r s predictors predictors的模型的 R S S RSS RSS
- R S S 0 − R S S RSS_0 - RSS RSS0−RSS:即这 q q q个 p r e d i c t o r predictor predictor能够解释的变量
- ( R S S 0 − R S S ) q \frac{(RSS_0 - RSS)}{q} q(RSS0−RSS):平均每个 q q q能解释的变量的比例
- R S S n − p − 1 \frac{RSS}{n-p-1} n−p−1RSS:平均每个样本未能被解释的比例
如果使用个体的 t − s t a t i s t i c t-statistic t−statistic和相关的 p − v a l u e p-value p−value来衡量变量和响应之间的关系,很可能会得到错误的结论。
2. Variable selection
在一个多元回归式中,究竟哪些变量是和 y y y有关系的?将没有关系的找出来
-
若是 p = 2 p=2 p=2,即有两个 p r e d i c t o r predictor predictor,那么需要设计4个模型
- No variable
- 只包含 X 1 X_1 X1
- 只包含 X 2 X_2 X2
- 包含了 X 1 , X 2 X_1,X_2 X1,X2
然后对每个模型,可用如下指标进行检验: R 2 , B I C , A I C , C p R^2, BIC, AIC, C_p R2,BIC,AIC,Cp。但是当 p p p特别打的时候,如 p = 20 p=20 p=20,那么就需要 2 20 2^{20} 220个子集,这样做效率过低。故需要其他的手段
-
Forward Selection
先假设一个参数为空的模型,只有截距 β 0 \beta_0 β0。此外,有训练好了的 p p p个 v a r i a b l e variable variable。一个个往模型中加 v a r i a b l e variable variable,并保证最低的 R S S RSS RSS。满足某个条件的时候停止
-
Backward Selection
先假设所有的 v a r i a b l e variable variable都要。然后,选择 p − v a l u e p-value p−value最大的删除。不断地重复,直到满足某条件;如设定好 p − v a l u e p-value p−value的阈值。
-
Mixed Selection
先假设一个参数为空的模型。然后,不断地加 V a r i a b l e Variable Variable进去,且保证加进去的使 p − v a l u e p-value p−value最小,一旦超过了某个阈值,该 v a r i a b l e variable variable就先放在一旁。最后, p − v a l u e p-value p−value分成两份,一份使得整个模型的 p − v a l u e p-value p−value都较小,另一份使得 p − v a l u e p-value p−value都较大。
3. Model Fit
两个衡量指标: R 2 , R S E R^2,RSE R2,RSE
-
对于 R S E RSE RSE来说,具有较多变量的模型都有更大的 R S E RSE RSE,只要 R S S RSS RSS增长的幅度比 p p p小,如下公式:
R S E = 1 n − p − 1 R S S RSE = \sqrt{\frac{1}{n-p-1}RSS} RSE=n−p−11RSS
4. Prediction
-
两个error
- Random Error ϵ \epsilon ϵ不可控错误。即其他不明的错误未考虑进来,完美的变量是不可能被找到的,只能被估计。
- Model Bias是可控变量。可以通过不断地做实验,或训练模型来减少它。
-
两个interval
- Confidence interval。针对大部分城市的销售量区间, 95 % 95\% 95%的区间内包含了真实的值。
- Prediction interval。针对某个特定城市的销售量区间, 95 % 95\% 95%的区间包含了真实的值。
- 两个interval拥有相同的中心,但是prediction interval的范围比confidence interval的更加广。
5. 两个强假设
Predictors and Responses are additive and linear
-
Additive
Predictor x i x_i xi的改变,那么 y y y也相应的改变 β i \beta_i βi的大小,和其他的predictors无关。即 x i x_i xi造成的影响和其他的predictors相互独立。
-
Linear
Predictor x i x_i xi每次的改变 1 − u n i t 1-unit 1−unit对于 y y y来说效果是一致的,无任何叠加的变化。
移除Additive假设,扩展线性回归
-
当为线性回归的时候,
Y = β 0 + β 1 x 1 + β 2 x 2 + ϵ Y = \beta_0 + \beta_1x_1 + \beta_2x_2 + \epsilon Y=β0+β1x1+β2x2+ϵ
此时 x 1 x_1 x1的变化,会使得 Y Y Y的变化只和 β 1 x 1 \beta_1x_1 β1x1相关,未考虑到 x 2 x_2 x2对于 x 1 x_1 x1的影响,可能也会对 Y Y Y造成影响。
-
对线性回归进行扩展,如下:
Y = β 0 + β 1 x 1 + β 2 x 2 + β 3 x 1 x 2 + ϵ = β 0 + ( β 1 + β 3 x 2 ) x 1 + β 2 x 2 + ϵ = β 0 + β 1 ~ x 1 + β 2 x 2 + ϵ Y = \beta_0 + \beta_1x_1 + \beta_2x_2 + \beta_3x_1x_2 + \epsilon \\ =\beta_0 + (\beta_1 + \beta_3x_2)x_1 + \beta_2x_2 + \epsilon \\ =\beta_0 + \tilde{\beta_1}x_1 + \beta_2x_2 + \epsilon Y=β0+β1x1+β2x2+β3x1x2+ϵ=β0+(β1+β3x2)x1+β2x2+ϵ=β0+β1~x1+β2x2+ϵ
此时, x 1 x_1 x1的变化会有 x 2 x_2 x2的参与, x 1 x_1 x1和 x 2 x_2 x2的 i n t e r a c t i o n interaction interaction被考虑了进来。举个例子:流水线个数和员工人数,决定了生产量。现在增加流水线,提升了生产量;但生产量的提升,不仅仅是流水线的功劳,还有员工的功劳,即员工和流水线的相互作用 i n t e r a c t i o n interaction interaction。
-
Hierarchical Principle(层次性原则)
若是一个模型中包含了 i n t e r a c t i o n interaction interaction,那么这个模型也必须包含主要的影响因子 x 1 , x 2 x_1, ~x_2 x1, x2,即使 x 1 , x 2 x_1, ~ x_2 x1, x2相关系数的 p − v a l u e p-value p−value很大。也就是说,当 x 1 , x 2 x_1, ~x_2 x1, x2的 i n t e r a c t i o n interaction interaction很重要的时候, x 1 , x 2 x_1,~x_2 x1, x2造成的影响也没多少人感兴趣了。但是它们得包含在模型中,否则会违背 x 1 , x 2 x_1,~x_2 x1, x2相关这件事。
移除Linear假设,扩展到Non-linear Relationship
m p g = β 0 + β 1 h o r s e p o w e r + β 2 h o r s e p o w e r 2 + ϵ mpg = \beta_0 + \beta_1horsepower + \beta_2horsepower^2 + \epsilon mpg=β0+β1horsepower+β2horsepower2+ϵ
上述式子将 m p g mpg mpg与 h o r s e p o w e r horsepower horsepower的关系变为了非线性,可以看出来是一个二次的曲线。但需要注意的是,这仍是一个线性表达式,可以用线性回归的方法求解相关系数。因为改变的只是式子中的 p r e d i c t o r predictor predictor而已,并不是相关系数。
6. Potential Problems
Non-linearity of the response-predictor relationships
-
残差 e i = y i − y i ^ e_i = y_i - \hat{y_i} ei=yi−yi^
残差图( R e s i d u a l P l o t Residual ~ Plot Residual Plot)最好是橄榄球状,否则说明response和predictors是非线性关系
Correlation of Error Terms
L i n e a r R e g r e s s i o n M o d e l Linear ~ Regression Model Linear RegressionModel的 ϵ i , i ∈ { 1 , 2 , . . . } \epsilon_i, i\in\{1,2,...\} ϵi,i∈{1,2,...}应该是故不相关的。
- 现有计算 r e g r e s s i o n c o e f f i c i e n t s regression coefficients regressioncoefficients的方法都是基于 ϵ i \epsilon_i ϵi互不相关的假设。即当前数据的 ϵ \epsilon ϵ不会影响到下一数据的 ϵ \epsilon ϵ。否则当前计算出的 s t a n d a r d e r r o r standard ~ error standard error将低估了正确的SD,因为没考虑到这种相关性,导致错的离谱。预测的区间和真实的比将会更宽,如 95 % 95\% 95%的置信区间其实并没有0.95这么高
- 举个例子
- 假设将已有的 n n n数据复制了一份,共有 2 n 2n 2n份数据用于训练模型
- 虽然标准差是 2 n 2n 2n个样本的,但其实真实有效的数据只有 n n n份。两份数据存在了相关性。
- 训练得到的 c o e f f i c i e n t coefficient coefficient是针对 2 n 2n 2n份数据的,导致真实的置信区间缩小了 2 \sqrt2 2倍。
- 在 t i m e s e r i e s d a t a ( 时 序 序 列 数 据 ) time ~ series ~ data(时序序列数据) time series data(时序序列数据)中经常会出现 c o r r e l a t i o n correlation correlation的问题。比如说,**邻近时间点采集的数据,都会有相关的 ϵ \epsilon ϵ。**如果存在相关性,那么在残差图中就会发现追踪现象,即临近残差将会有相近的值。
- C o r r e l a t i o n Correlation Correlation对于 L i n e a r R e g r e s s i o n Linear ~ Regression Linear Regression很重要。若是数据来自同一个家庭,一样的吃饭习惯,都会使得数据存在相关性。若是线性回归中,各个样本之间能够独立,将会有更大的意义。
Non-constant variance of error terms(误差项的不恒定方差)
-
一般来说,线性回归模型满足该假设
误差项有恒定的方差 v a r ( ϵ i ) = σ 2 var(\epsilon_i) = \sigma^2 var(ϵi)=σ2
-
但如果 r e s p o n s e response response的值不断地增加,该方差就会越来越大。当面对这个问题的时候,一个可行的方法就是对 r e s p o n s e response response进行 y \sqrt y y或者 l o g Y logY logY。
Outliers(离群点)
-
虽然离群点对于回归线的影响可能不大,但对于 R S E RSE RSE, R 2 R^2 R2指标都有着极大的影响,这导致对模型的分析出现严重的错误。比如说, c o n f i d e n c e i n t e r v a l confidence ~ interval confidence interval, p − v a l u e p-value p−value的计算都出现问题。
-
可以通过
S t u d e n i z e d r e s i d u a l s = e i R S S Studenized ~ residuals = \frac{e_i}{RSS} Studenized residuals=RSSei
来计算,如果该值大于3,则该点为离群点
高杠杆点
-
高杠杆点势必离群点更危险的点,因为它容易带偏回归线。
-
对于高杠杆点的判断可通过如下公式
h i = 1 n + ( x i − x ‾ ) ∑ i ′ n ( x i ′ − x ‾ ) 2 ∈ ( 1 n , 1 ) h_i = \frac{1}{n}+\frac{(x_i - \overline{x})}{\sum_{i^{'}}^n(x_{i^{'}} - \overline{x})^2} ~ \in (\frac{1}{n}, 1) hi=n1+∑i′n(xi′−x)2(xi−x) ∈(n1,1)
若是 ( x i − x ‾ ) (x_i - \overline{x}) (xi−x)越大,则 h i h_i hi越大,说明了该点更可能为高杠杆点。通常 h i > P + 1 n h_i > \frac{P+1}{n} hi>nP+1的点都是高杠杆点。
Collinearity(共线性)
-
两个 p r e d i c t o r s predictors predictors过于相关了,可以通过 V I F VIF VIF指标来检测
V I F ( β ^ j ) = 1 1 − R X j ∣ X − j 2 VIF(\hat{\beta}_j) = \frac{1}{1-R^2_{X_j|X_{-j}}} VIF(β^j)=1−RXj∣X−j21
-
共线性使得各个变量之间互相关。而 L i n e a r R e g r e s s i o n Linear ~ Regression Linear Regression假设各个边缘之间独立,否则对预测会造成影响。但在现实生活中,数据间往往存在着相关性,但机器学习侧重于预测的准确率。若准确率很高,则不用过于关注。
7. 几个问题总结
sales和budget之间是否存在关系?
- 通过多元回归将sale和TV,Radio,Newspaper联系起来
- 测试 H 0 , β i = 0 , i ∈ { 1 , 2 , 3 , . . . } H_0,\beta_i=0,i\in\{1,2,3,...\} H0,βi=0,i∈{1,2,3,...}是否成立,使用 F − s t a t i s t i c F-statistic F−statistic作为指标, p − v a l u e p-value p−value越低,说明存在关系的可能性越大。
Relationship有多强?
- R S E RSE RSE估计了标准误差
- R 2 R^2 R2记录了 R e s p o n s e Response Response中可以通过 P r e d i c t o r Predictor Predictor解释的变量占比
哪个媒体对sales有贡献?
- 检查每个 p r e d i c t o r predictor predictor的 t − s t a t i s t i c t-statistic t−statistic相关的 p − v a l u e p-value p−value
- p − v a l u e p-value p−value越低,说明贡献越大
每个媒体在 s a l e s sales sales上的影响有多大?
-
β j ^ \hat{\beta_j} βj^的标准差可用来构建置信区间。若置信区间内不包含 0 0 0且远离 0 0 0,那么说明response和该predictor占一定关系。
-
此外,共线性会导致标准差变大。故需要检测共线性是某predictor置信区间出现0的原因,通过 V I F VIF VIF来检测。
-
若想检验单个变量对sale的影响,可以各自做线性回归。
预测能力有多强?
-
若使用预测区间
Y = f ( x ) + ϵ Y = f(x) + \epsilon Y=f(x)+ϵ
-
若使用置信区间
Y = f ( x ) Y = f(x) Y=f(x)
预测区间比置信区间更加广阔,因为预测区间加入了不可控变量 ϵ \epsilon ϵ。
是否为线性关系?
r e s i d u a l p l o t residual ~ plot residual plot可用来检测非线性
广告数据存在协同性吗?
- 标准的线性回归模型假设 p r e d i c t o r s predictors predictors和 r e s p o n s e response response之间存在加性关系,即各个prediction互相独立。
- 每个predictor造成的影响不依赖其他的predictors
线性回归与K-NN Regression比较
-
线性回归是基于 p a r a m e t r i c parametric parametric类方法,有很好的优点
- 仅需估计有限个 β \beta β
- 可以用统计方法进行分析
但也有缺点
- 有 F ( X ) F(X) F(X)的强假设,若数据和假设无关,造成准确率很低
-
这时候就需要 n o n − p a r a m e t r i c non-parametric non−parametric的方法了,如 K N N R e g r e s s i o n KNN ~ Regression KNN Regression,如下
f ( x 0 ) ^ = 1 K ∑ x i ∈ N 0 y i \hat{f(x_0)} = \frac{1}{K}\sum_{x_i \in N_0} y_i f(x0)^=K1xi∈N0∑yi
- 当K很大时,以 M S E MSE MSE为衡量指标不会比 L i n e a r R e g r e s s i o n Linear ~ Regression Linear Regression差多少。但是当 k k k很小的时候, K − N N R e g e r s s i o n K-NN ~ Regerssion K−NN Regerssion就很差了。
- 在现实生活中,当predictors的个数很多的时候,对于 K N N R e g r e s s i o n KNN ~ Regression KNN Regression就会有维度灾难,其 M S E MSE MSE很大。故大多是场合还是基于 L i n e a r R e g r e s s i o n Linear ~ Regression Linear Regression。
本文为作者原创,转载需注明出处!