【问题标题】:What is the proper way to use glmnet with caret?将 glmnet 与插入符号一起使用的正确方法是什么?
【发布时间】:2017-05-31 20:23:53
【问题描述】:

我在阅读 glmnet 文档时发现了这个:

还要注意 cv.glmnet 的结果是随机的,因为折叠 是随机选择的。用户可以通过运行来减少这种随机性 cv.glmnet 多次,并平均误差曲线。

以下代码使用带有重复 cv 的插入符号。

library(caret)

ctrl <- trainControl(verboseIter = TRUE, classProbs = TRUE, 
                     summaryFunction = twoClassSummary, method = "repeatedcv", 
                     repeats = 10) 

fit <- train(x, y, method = "glmnet", metric = "ROC", trControl = ctrl)

这是通过插入符号交叉验证运行 glmnet 的最佳方式吗?还是直接运行 glmnet 更好?

【问题讨论】:

    标签: r r-caret glm glmnet


    【解决方案1】:

    您需要定义最佳方式。你想用吗

    • 仅在数据集上进行正则化回归以进行特征选择? (在这种情况下,请使用 glmnet——Max Kuhn 暗示您最好使用具有内置 CV 功能的模型,因为它们已经针对预测器选择和最小化错误进行了优化)。见下文。

      “在许多情况下,使用这些具有内置特征选择的模型将比搜索例程的算法更有效 正确的预测变量在模型外部。内置功能 选择通常将预测器搜索算法与 参数估计,通常用一个单一的优化 目标函数(例如错误率或可能性)。”(库恩,插入符号 包文档:caret feature selection overview)

    • 或者你在比较不同的模型,其中之一是 glmnet?在这种情况下,插入符号可能是一个不错的选择。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-04-10
      • 2013-01-02
      • 1970-01-01
      • 2020-08-27
      • 2020-07-10
      • 2020-09-29
      • 1970-01-01
      • 2012-05-12
      相关资源
      最近更新 更多