【问题标题】:How can I use packages (e.g. glmnet) within mlr in R?如何在 R 的 mlr 中使用包(例如 glmnet)?
【发布时间】:2020-09-22 23:54:53
【问题描述】:

我想减少特征并想使用弹性网络回归。因此,我想使用 glmnet-package 及其内置函数,如 cv.glment 并绘制结果等。问题是我的数据依赖于时间,所以我使用了嵌套时间序列交叉验证和 mlr-包裹。 glmnet-package 使用了 k-fold-cross-validation。 有没有办法像 glmnet-package 那样获取绘图?我的想法是使用源代码并更改一些部分,但我最终没有奏效。 我还能尝试什么?提前致谢。

【问题讨论】:

    标签: r package glmnet mlr


    【解决方案1】:

    有点不清楚您想要什么或您的问题是什么。也许以下有帮助:

    • glmnet 在 {mlr3learners} 中可用
    • 时空 CV 可在 {mlr3spatiotempcv} 中获得

    请注意,{mlr} 已被弃用。不过,它包含两个可供您使用的 glmnet 学习器。

    关于{glmnet}算法的内部CV:您可以关闭它并自己优化收缩参数。

    但同样,您还不清楚您想要什么,因为您最终要求情节。一次只关注一个问题。

    【讨论】:

    • 非常感谢您的回答。对不起,我不清楚的问题。我想用套索做特征选择。我用过 mlr 和 cv.glmnet。对于 glmnet 包,有 fit=glmnet(x,y) 和 plot(fit) 或 coef(fit,s=0.1) 等函数。如何使用 mlr 访问这些功能,如何查看 lasso 选择了哪些功能?
    • 这些是应用于拟合模型的 {glmnet} 包的通用函数。你需要通过mlr::getLearnerModel()从mlr对象中提取这个对象。
    猜你喜欢
    • 1970-01-01
    • 2020-06-17
    • 1970-01-01
    • 2019-05-25
    • 1970-01-01
    • 2013-09-11
    • 2018-11-09
    • 2017-12-05
    • 1970-01-01
    相关资源
    最近更新 更多