计算交叉验证R2R2从平均交叉验证误差

机器算法验证 r 交叉验证 r平方 岭回归 网络
2022-03-21 06:28:00

我目前cv.glmnet在 R 中使用。我想计算两个训练R2和交叉验证R2. R 给出平均交叉验证误差,对于拟合模型,给出偏差比。

  1. 被交叉验证R2等于1(mean cross-validated error/variance in y),或者在 R 中,max(1-fit$cvm/var(y))fit$cvm来自所有尝试过的正则化模型的平均交叉验证错误向量在哪里)?

  2. 正在训练R2与偏差率相同,即fit$glmnet.fit$dev.ratio最佳模型?

  3. 如果 1 和 2 的答案是肯定的,那么这对于加权glmnet拟合是否仍然成立,例如cv.glmnet(x,y,weight=1/(1+y))

1个回答

混乱是由最初发布的代码中的一个符号拼写错误引起的(见上面的评论)。

答案是:

  1. 是的。
  2. 是的,但仅适用于高斯 GLM(据我从glmnet包描述中了解到)。
  3. 取决于你如何定义R2为加权回归。偏差率将考虑权重(我不知道具体如何),而R2通过平均误差定义(显然)不会。