当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Python sklearn make_scorer用法及代码示例


本文简要介绍python语言中 sklearn.metrics.make_scorer 的用法。

用法:

sklearn.metrics.make_scorer(score_func, *, greater_is_better=True, needs_proba=False, needs_threshold=False, **kwargs)

从性能指标或损失函数中得分。

此工厂函数包装了评分函数以在 GridSearchCV cross_val_score 中使用。它接受一个评分函数,例如 accuracy_score mean_squared_error adjusted_rand_indexaverage_precision 并返回一个可调用函数,该函数对估计器的输出进行评分。调用的签名是(estimator, X, y),其中estimator 是要评估的模型,X 是数据,y 是地面实况标签(或在无监督模型的情况下为 None)。

在用户指南中阅读更多信息。

参数

score_func可调用的

带有签名 score_func(y, y_pred, **kwargs) 的评分函数(或损失函数)。

greater_is_better布尔,默认=真

score_func 是分数函数(默认),表示高是好的,还是损失函数,表示低是好的。在后一种情况下,记分器对象将 sign-flip 的结果是 score_func。

needs_proba布尔,默认=假

score_func 是否需要 predict_proba 才能从分类器中获得概率估计。

如果为真,对于二进制 y_true ,评分函数应该接受一维 y_pred (即正类的概率,形状 (n_samples,) )。

needs_threshold布尔,默认=假

score_func 是否采取连续决策确定性。这仅适用于使用具有 decision_function 或 predict_proba 方法的估计器的二进制分类。

如果为真,对于二进制 y_true ,评分函数应该接受一维 y_pred(即,正类或决策函数的概率,形状 (n_samples,) )。

例如 average_precision 或 roc 曲线下的面积不能单独使用离散预测来计算。

**kwargs附加论点

要传递给score_func 的附加参数。

返回

scorer可调用的

返回标量分数的可调用对象;越大越好。

注意

如果 needs_proba=Falseneeds_threshold=False ,分数函数应该接受预测的输出。如果 needs_proba=True ,评分函数应该接受 predict_proba 的输出(对于二进制 y_true ,评分函数应该接受正类的概率)。如果 needs_threshold=True ,当 decision_function 不存在时,评分函数应该接受 decision_function 或 predict_proba 的输出。

例子

>>> from sklearn.metrics import fbeta_score, make_scorer
>>> ftwo_scorer = make_scorer(fbeta_score, beta=2)
>>> ftwo_scorer
make_scorer(fbeta_score, beta=2)
>>> from sklearn.model_selection import GridSearchCV
>>> from sklearn.svm import LinearSVC
>>> grid = GridSearchCV(LinearSVC(), param_grid={'C': [1, 10]},
...                     scoring=ftwo_scorer)

相关用法


注:本文由纯净天空筛选整理自scikit-learn.org大神的英文原创作品 sklearn.metrics.make_scorer。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。