两道面试题

在mitbbs上面看到的

  1. 有两个random variables x1, x2, correlation(x1,x2)=0. 现在 linearly regress y on x1,x2, 归化结果是 y_hat. 又知道 correlation(x1,y)=0.5, correlation(x2,y)=0.6. 问correlation(y, y_hat)=?
  2. 有两个random variables x1, x2, correlation(x1,x2)=0.98. 现在 linearly regress y on x1,x2, 怎么做,有什么问题?我回答colinearity, 又问如何处理,我说了两个办法,一是PCA,二是regularization方法比如Ridge和lasso。又问ridge和lasso在这里用哪个好,为什么?

贴上去我觉得不错的答案

  1. 答案:Sqrt(0.5^2 + 0.6^2)。假设x1,x2,y都是mean zero,corr(x1,y) 就是 y unit vector投到x1上的长度,同理 x2,corr( y, yhat) = 是y unit vector投到 x1,2平面上的长度x1,2垂直。所以y分别投到x1,x2上的和投到x1,2平面上组成直角三角形。
  2. 先orthogonalize X1,X2,再做linear regression:(1)regress X2 on X1, 取residual,作为新的变量,X2_hat。保证 X2_hat和X1是uncorrelated 。(2)regress y on X1, X2_hat