too*_*oom 9 metric loss scikit-learn
我只是将sklearn中的日志丢失应用于逻辑回归:http://scikit-learn.org/stable/modules/generated/sklearn.metrics.log_loss.html
我的代码看起来像这样:
def perform_cv(clf, X, Y, scoring):
kf = KFold(X.shape[0], n_folds=5, shuffle=True)
kf_scores = []
for train, _ in kf:
X_sub = X[train,:]
Y_sub = Y[train]
#Apply 'log_loss' as a loss function
scores = cross_validation.cross_val_score(clf, X_sub, Y_sub, cv=5, scoring='log_loss')
kf_scores.append(scores.mean())
return kf_scores
Run Code Online (Sandbox Code Playgroud)
但是,我想知道为什么由此产生的对数损失是负的.我希望它们是正面的,因为在文档中(参见上面的链接),日志丢失乘以-1,以便将其变为正数.
我在这里做错了吗?
是的,这应该发生.这不是其他人建议的"错误".实际的日志丢失只是您获得的数字的正面版本.
SK-Learn的统一评分API总是最大化分数,因此需要最小化的分数被否定才能使统一评分API正常工作.因此,如果得分应该被最小化并且如果它是应该被最大化的得分则保持为正,则返回的得分被否定.
这也在使用管道的sklearn GridSearchCV和scikit-learn交叉验证中描述,带有均方误差的负值
| 归档时间: |
|
| 查看次数: |
10076 次 |
| 最近记录: |