使用lambda.min来取代用glmnet训练的模型的系数

时间:2017-01-23 02:22:42

标签: r glmnet

我正在使用glmnet来训练逻辑回归模型,然后尝试获取具有特定lambda的系数。我在这里使用了简单的例子:

load("BinomialExample.RData")

fit = glmnet(x, y, family = "binomial")
coef(fit, s = c(0.05,0.01))

我已检查fit$lambda的值,但是,我在fit$lambda中找不到0.05或0.01的具体值。那么coef怎样才能返回lambda不在fit$lambda向量中的系数。

1 个答案:

答案 0 :(得分:0)

coef.glmnet的帮助中解释了这一点,特别是exact参数:

  

<强> exact

     

只有当s(lambda)的值与原始模型拟合中使用的值不同时,此参数才有意义。如果exact=FALSE(默认),则预测函数使用线性插值来对s(lambda)的值进行预测,这些值与拟合算法中使用的值不一致。虽然这通常是一个很好的近似,但它有时可能有点粗糙。使用exact=TRUE,将这些不同的s值与object$lambda合并(并排序),并在进行预测之前重新设置模型。