插入符号训练对glmnet是否对alpha和lambda交叉验证?


20

R caret包是否同时针对模型alpha和模型lambda进行交叉验证glmnet?运行此代码,

eGrid <- expand.grid(.alpha = (1:10) * 0.1, 
                     .lambda = (1:10) * 0.1)

Control <- trainControl(method = "repeatedcv",repeats = 3,verboseIter =TRUE)

netFit <- train(x =train_features, y = y_train,
          method = "glmnet",
          tuneGrid = eGrid,
          trControl = Control)

培训日志如下所示。

Fold10.Rep3: alpha=1.0, lambda=NA 

什么lambda=NA意思


3
如何使用train将family =“ binomial”和type.measure =“ auc”传递给glmnet模型?
diugalde

Answers:


16

train 确实调整了两者。

基本上,您仅alpha在训练时需要,并且可以lambda使用的不同值获得预测predict.glmnet。也许值lambda = "all"或其他信息会更有用。

最高


1
如何指定字母值序列?没有给出lambda序列?
diugalde

类似于:alpha.seq = seq(0,1,.01)您不需要使用上面的确切方法。见插入符号文档
Redeyes10

12

这个问题比较老,但是最近我不得不处理这个问题,并找到了这个问题作为参考。

这是另一种方法:

λαλα

αλλλλ>0λ


最近,这是更好的答案
javadba
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.