Statistics 板


LINE

※ 引述《anovachen ( )》之铭言: : 例如下列R程式码模拟结果: 我不太懂你模拟的意义在哪里? 我提供一个反例问你 library(car) n = 100; p = 5 X = matrix(NA, n, p) X[,1:(p-2)] = rnorm((p-2) * n) X[,p-1] = X[,1] + X[,2] + rnorm(n,0,0.5) X[,p] = X[,3] + X[,4] + rnorm(n,0,0.5) cor(X) # 一般而言,我们认为cor > 0.7,可能存在multicollinearity : [,1] [,2] [,3] [,4] [,5] : [1,] 1.00000000 -0.19604544 0.06225474 0.63444937 0.5073527 : [2,] -0.19604544 1.00000000 -0.06263743 0.54292224 0.3159969 : [3,] 0.06225474 -0.06263743 1.00000000 0.01226171 0.6073165 : [4,] 0.63444937 0.54292224 0.01226171 1.00000000 0.7277750 : [5,] 0.50735268 0.31599693 0.60731647 0.72777496 1.0000000 # 根据correlation matrix可知X4, X5还有 X1,X2,X4之间高相关 # 我们应该可以猜测存在multicollinearity Beta = rep(1, p) # 公平比较,因此五组变数的斜率设为一样 Y = 3 + X %*% Beta + rnorm(n, 0, 0.1) dat = data.frame(Y, X) summary(lm(Y ~ ., dat))$coef : Coefficients: : Estimate Std. Error t value Pr(>|t|) : (Intercept) 3.01484 0.00872 345.75 <2e-16 *** : X1 0.97862 0.01928 50.76 <2e-16 *** : X2 0.99301 0.02074 47.89 <2e-16 *** : X3 0.96549 0.01675 57.64 <2e-16 *** : X4 0.97222 0.02425 40.09 <2e-16 *** : X5 1.03393 0.01442 71.71 <2e-16 *** # 由上表可知检定结果都是显着,而估计值都跟真实值靠近 (VIF = vif(lm(Y ~ ., dat))) : X1 X2 X3 X4 X5 : 5.526498 4.764776 4.258915 13.936465 9.189339 mean(VIF) : 7.535199 # 而VIF 跟 平均VIF如上所示,确实有multicollinearity存在 # 但是系数的估计跟检定都未受影响,请问multicollinearity到底有什麽影响? # 自问自答把剩下的补完 # VIF_j可以解释成 其方根倍的se(beta_j)为你所看到的SE... # 上句话很绕口,重说一次,VIF_j的方根可以解释为 你实际得到的se与真实se的倍数 # 一般解决这种问题有数种方式,可以自行上网寻找 # 其中一种就是ridge regression,此处以ridge regression算出其se为何? lambda = 10 ^ (seq(-3,1.3,length = 100)) # Given lambda MSE_CV_f = function(lamb, fold){ X_tr = cbind(1, X[index != fold,]) X_te = cbind(1, X[index == fold,]) Y_tr = Y[index != fold] Y_te = Y[index == fold] mean((Y_te - X_te %*% solve(t(X_tr) %*% X_tr + lamb * diag(ncol(X_tr)), t(X_tr) %*% Y_tr))^2) } # 用cross-validation去找最恰当的lambda fold = 10 index = sample(rep(1:fold, n/fold), n) MSE_CV = sapply(lambda, function(lamb){ mean(sapply(1:5, function(fold) MSE_CV_f(lamb, fold))) }) (lambda_hat = lambda[which.min(MSE_CV)]) : [1] 0.001 beta_ridge = solve(t(cbind(1, X)) %*% cbind(1, X) + lambda_hat * diag(ncol(cbind(1, X))), t(cbind(1, X)) %*% Y) sd_beta_ridge = diag(solve(t(cbind(1, X)) %*% cbind(1, X) + lambda_hat * diag(ncol(cbind(1, X)))) * sum((Y - cbind(1, X) %*% beta_ridge)^2/(n-2))) table_ridge = cbind(beta_ridge, sd_beta_ridge, beta_ridge / sd_beta_ridge) dimnames(table_ridge) = list(c("Intercept", paste0("X",1:5)),c("Coef.", "SE", "t")) table_ridge : Coef. SE t : Intercept 3.0148113 7.292708e-05 41340.077 : X1 0.9785612 3.565188e-04 2744.767 : X2 0.9929565 4.123900e-04 2407.809 : X3 0.9654641 2.690656e-04 3588.211 : X4 0.9722463 5.640260e-04 1723.762 : X5 1.0339477 1.994020e-04 5185.241 # 这样看不明显,我补上两个SE的比值 summary(lm(Y ~ ., dat))$coef[,2] / sd_beta_ridge : (Intercept) X1 X2 X3 X4 X5 : 119.56581 54.08005 50.28349 62.24999 42.99675 72.31116 # 结论:multicollinearity影响se的大小,并非影响斜率的估计(其估计还是BLUE) # 这篇已经偏离原问题,此处仅是回应前篇模拟的结果与结论 # 顺带提到有关多重共线性的影响 --



※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 36.238.199.20
1F:推 anovachen:模型去掉其中一个解释变数就可能造成其他回归系数出问题 03/12 23:54
你可以说明你这句话的意思吗? 你有没有写过一个问题是 现在考虑 Y = B0 + B1*X1 + B2*X2 + 误差 如果我现在X1 跟 X2有正的covariance 假设X1跟X2的平均值都为0、B0=0 那麽[X1 X2]' * [X1 X2]的反对角线会是一个大於零的数 则cov(X1,X2)便会影响到B1与B2的估计, 因此,你删掉一个不独立的变数当然会影响其他斜率的估计。
2F:→ anovachen:而且小样本+回归系数母数很小的时候更容易发生这问题 03/12 23:58
3F:→ anovachen:所以才要看VIF 03/12 23:59
LSE的估计值都已经是不偏、最小variance,你要说明什麽?
4F:→ anovachen:另外,ridge regression是偏误估计量... 03/12 23:59
RR估计确实是有偏的,可是一般而言,可以获得较stable的结果。
5F:推 anovachen:纯粹从实务经验来讲,回归系数可以反应效果大小, 03/13 00:08
这里跟实务又有什麽关系了?你如果资料不是全部都标准化 你的回归系数还有受到单位大小影响,不能反映效果大小
6F:→ anovachen:共线性会让去掉某个解释变数後,另外某个变数回归系数 03/13 00:09
7F:→ anovachen:由显着变不显着(或反之),由正变负(或反之)... 03/13 00:09
这点刚刚已经回答过了,有相关的变数去掉当然会影响系数估计的大小 显着跟不显着其实主要是因为se的估计而导致
8F:→ anovachen:这样研究人员根本不晓得要怎麽解释研究结果。 03/13 00:09
你可以更具体的说明什麽叫做研究人员不晓得怎麽解释研究结果吗? 整理: 1. 有多重共线性时,其中一个解决方式是只留下correlation高的其中一个变数 但是有时候研究者关心的是全部变数的效果大小时,你要研究者怎麽取舍? 2. 承第一个问题,这时候RR提供一个牺牲unbias,而提供一个比较stable的结果 因此,RR是另外一种解决方式 3. 去除掉correlation较高的变数,会使得估计值有影响是自然现象, 但是correlation高的一组变数会使得X'X的反矩阵不稳定, 因此,SE往往是高估,而检定结果便会受到影响, PS: 此处我不认为估计值的大小跟多重共线性有关。
9F:→ anovachen:英文维基百科Consequences of multicollinearity上写的 03/13 00:20
10F:→ anovachen:大致上是我懂的,某些情况甚至也是经历过的 03/13 00:20
11F:→ anovachen:您可以评论维基百科的那个段落... 03/13 00:21
我引述其中一段: So long as the underlying specification is correct, multicollinearity does not actually bias results; it just produces large standard errors in the related independent variables. 我在说的便是这一点,多重共线性不会影响系数的估计,只会导致SE过大。
12F:→ anovachen:如果要把全部的解释变数都放进模型,之前我试过主成分 03/13 00:25
13F:→ anovachen:回归 03/13 00:25
请问主成分回归的系数,你要怎麽解释? 往往主成分的构成是难以找到一个适当的解释,这是为人所诟病的 但是RR的好处就是保留原变数,而且提供相对稳定的估计
14F:→ anovachen:在当时的情况,我不会去解释回归系数,因为我是做 03/13 00:27
15F:→ anovachen:资料探勘,要做预测模型 03/13 00:27
如果做预测模型,那麽大的SE跟小的SE不会影响预测结果 那麽这时候用原本的回归式做预测还比较快,毕竟斜率还是不偏
16F:→ anovachen:如果是流行病学研究遇到这问题,就要考虑干扰因子 03/13 00:28
你是指confounding factor吗?这个跟此处问题有何关系?
17F:→ anovachen:通常我会把干扰因子配对後作conditional logistic回归 03/13 00:30
18F:→ anovachen:但那是因为资料属性的关系((都是二分类型的反应变项 03/13 00:31
19F:→ anovachen:而不会把干扰因子也丢进模型里 03/13 00:31
你想说的是干扰因子会影响系数的大小吗? 那麽在回归的开头便会跟你说 如果你研究的是因果关系时 必须要特别注意confounding factor所带来的效果 还要有理论上的支持,此两者的因果关系, 因为线性关系不imply因果关系 所以你要建模时,这些本就该考量
20F:→ anovachen:同意你的说法...但有些学生是一股脑的把资料库的变数 03/13 00:42
21F:→ anovachen:丢进去模型里.... 03/13 00:42
22F:→ anovachen:然後上台报告时就开始不晓得怎麽解释了= = 03/13 00:42
这个是那些学生的问题...这里没要讨论这个
23F:→ anovachen:不过作预测模型时,共线性的影响都是参考别人的经验, 03/13 00:42
24F:→ anovachen:我不确定有共线性时,模型是否会因此不稳定(如何证明? 03/13 00:43
怎样叫做模型的不稳定?预测不好?
25F:→ anovachen:维基讲共线性那边提到的statistically robust 03/13 00:44
那段再说明最好的模型Y只跟X相关,而X之间相关只是最低限度的相关, (这句不太会翻译) 则这样的模型便具有统计上的稳健性质
26F:→ anovachen:可能换了某组sample就预测不准这样... 03/13 00:46
所以你要找找看prediction error了,我如果没记错 multicollinearity跟estimate、prediction都没关系~~ ※ 编辑: celestialgod 来自: 36.238.199.20 (03/13 00:56)
27F:推 andrew43:共线性对预测结果会有不稳定性。可以这样想像: 03/13 11:16
28F:→ andrew43:假如我有一个 y=b0+b1x1+b2x2 的回归式且x1和x2高度相关 03/13 11:17
29F:→ andrew43:则以三维座标来检视这个回归结果可以发现, 03/13 11:17
30F:→ andrew43:x1和x2的样本在空间中接近连成一线,而使y的预测平面 03/13 11:18
31F:→ andrew43:可任意地以这条x1和x2组成的线旋转。 03/13 11:19
32F:→ andrew43:因此,假如欲预测一个离这条共线较远的样本,那就不准了 03/13 11:21
33F:→ andrew43:或是说很大的机会是非常不准。 03/13 11:22







like.gif 您可能会有兴趣的文章
icon.png[问题/行为] 猫晚上进房间会不会有憋尿问题
icon.pngRe: [闲聊] 选了错误的女孩成为魔法少女 XDDDDDDDDDD
icon.png[正妹] 瑞典 一张
icon.png[心得] EMS高领长版毛衣.墨小楼MC1002
icon.png[分享] 丹龙隔热纸GE55+33+22
icon.png[问题] 清洗洗衣机
icon.png[寻物] 窗台下的空间
icon.png[闲聊] 双极の女神1 木魔爵
icon.png[售车] 新竹 1997 march 1297cc 白色 四门
icon.png[讨论] 能从照片感受到摄影者心情吗
icon.png[狂贺] 贺贺贺贺 贺!岛村卯月!总选举NO.1
icon.png[难过] 羡慕白皮肤的女生
icon.png阅读文章
icon.png[黑特]
icon.png[问题] SBK S1安装於安全帽位置
icon.png[分享] 旧woo100绝版开箱!!
icon.pngRe: [无言] 关於小包卫生纸
icon.png[开箱] E5-2683V3 RX480Strix 快睿C1 简单测试
icon.png[心得] 苍の海贼龙 地狱 执行者16PT
icon.png[售车] 1999年Virage iO 1.8EXi
icon.png[心得] 挑战33 LV10 狮子座pt solo
icon.png[闲聊] 手把手教你不被桶之新手主购教学
icon.png[分享] Civic Type R 量产版官方照无预警流出
icon.png[售车] Golf 4 2.0 银色 自排
icon.png[出售] Graco提篮汽座(有底座)2000元诚可议
icon.png[问题] 请问补牙材质掉了还能再补吗?(台中半年内
icon.png[问题] 44th 单曲 生写竟然都给重复的啊啊!
icon.png[心得] 华南红卡/icash 核卡
icon.png[问题] 拔牙矫正这样正常吗
icon.png[赠送] 老莫高业 初业 102年版
icon.png[情报] 三大行动支付 本季掀战火
icon.png[宝宝] 博客来Amos水蜡笔5/1特价五折
icon.pngRe: [心得] 新鲜人一些面试分享
icon.png[心得] 苍の海贼龙 地狱 麒麟25PT
icon.pngRe: [闲聊] (君の名は。雷慎入) 君名二创漫画翻译
icon.pngRe: [闲聊] OGN中场影片:失踪人口局 (英文字幕)
icon.png[问题] 台湾大哥大4G讯号差
icon.png[出售] [全国]全新千寻侘草LED灯, 水草

请输入看板名称,例如:Gossiping站内搜寻

TOP