python - 如何评估 scikit 学习 LogisticRegression 的成本函数?

标签 python machine-learning scikit-learn logistic-regression scikits

在使用 sklearn.linear_model.LogisticRegression 拟合训练数据集后,我想获得训练数据集和交叉验证数据集的成本函数值。

是否可以让 sklearn 简单地给我它最小化的函数的值(在拟合最小值时)?

该函数在 http://scikit-learn.org/stable/modules/linear_model.html#logistic-regression 的文档中说明。 (取决于选择的正则化)。但是我找不到如何让 sklearn 给我这个函数的值。

我原以为这就是 LogisticRegression.score 所做的,但它只是返回准确度(其预测正确分类的数据点的分数)。

我找到了sklearn.metrics.log_loss,但这当然不是被最小化的实际函数。

最佳答案

不幸的是,没有“好的”方法来做到这一点,但是有一个私有(private)函数 _logistic_loss(w, X, y, alpha, sample_weight=None)https://github.com/scikit-learn/scikit-learn/blob/master/sklearn/linear_model/logistic.py , 因此你可以手动调用它

from sklearn.linear_model.logistic import _logistic_loss
print _logistic_loss(clf.coef_, X, y, 1 / clf.C)

其中 clf 是您学习的 LogisticRegression

关于python - 如何评估 scikit 学习 LogisticRegression 的成本函数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35956902/

相关文章:

tensorflow - categorical_crossentropy 损失形状中的 ValueError

python - PCA 上的组件数量受样本数量限制

python - SVM sklearn verbose 仅​​显示点

python - 使用 OneVsRestClassifier 时全为零

python - Pandas 蟒 : how to get values on data frame every 10 steps?

Python 模拟 : Mocking a function inside the function I'm testing

python - ValueError - 将图像数组输入字典

python - 如何在 scikit-learn ColumnTransformer 中保留列名称?

python - 如何从类中调用外部函数 - python

python - 日志记录:如何设置日志文件的换行符?