为scikit-learn的LassoCV评分指标

时间:2017-05-22 05:22:28

标签: python scikit-learn cross-validation lasso

我使用了scikit-learn的LassoCV功能。在交叉验证期间,默认使用scoring metric是什么?

我希望交叉验证基于"均方误差回归损失"。可以将此指标与LassoCV一起使用吗?可以为LogisticRegressionCV指定评分指标,因此也可以使用LassoCV吗?

2 个答案:

答案 0 :(得分:2)

LassoCV使用R ^ 2作为评分指标。来自docs

  

默认情况下,参数搜索使用估算器的分数函数   评估参数设置。这些是   sklearn.metrics.accuracy_score用于分类和    sklearn.metrics.r2_score for regression

要使用其他评分指标,例如均方误差,您需要使用GridSearchCVRandomizedSearchCV(而不是LassoCV)并将scoring参数指定为scoring='neg_mean_squared_error'。来自docs

  

可以通过评分指定替代评分功能   参数 GridSearchCV RandomizedSearchCV 以及许多   专业的交叉验证工具如下所述。

答案 1 :(得分:1)

我认为公认的答案是错误的,因为它引用了Grid Search的文档,但是LassoCV使用正则化路径,而不是grid search。 实际上,在LassoCV的文档页面中,它说损失函数为:

(1 / (2 * n_samples)) * ||y - Xw||^2_2 + alpha * ||w||_1

这意味着它最小化了MSE(加上LASSO术语)。