首页 文章

使用Caret调整alpha / lambda

提问于
浏览
0

我的最终目标,使用下面的矩阵中的数据,使用glmnet方法在不同的lambda和alphas的网格上训练许多模型 . 也许还有另一种方法可以解决这个调优问题 .

x <- Macro[1:13,3:21]
x <- as.matrix(x)
y <- Macro[1:13,2:2]
y <- as.matrix(y)

myfit <- caret::train(x,y,
                  method = "glmnet",
                  tuneGrid = expand.grid(.alpha = seq(.05, 1, length = 15),
                                                     .lambda = c((5:10)/10)))

上面的代码返回以下错误:train.default中的错误(x,y,method =“glmnet”,tuneGrid = expand.grid(.alpha = seq(0.05,:Metric RMSE不适用于分类模型)

enter image description here

1 回答

  • 0

    问题是您的响应变量 y 是一个矩阵,但根据 train 的文档,它应该是 "A numeric or factor vector containing the outcome for each sample" . 因此,您只需从代码中删除 y <- as.matrix(y) 即可 .

相关问题