check_scoring#
- sklearn.metrics.check_scoring(estimator=None, scoring=None, *, allow_none=False, raise_exc=True)[源代码]#
根据用户选项确定评分者。
如果无法对估计器进行评分,将引发TypHelp。
- 参数:
- estimator实现“fit”或无的估计器对象,默认=无
用于适应数据的对象。如果
None
,那么该功能可能会出错,具体取决于allow_none
.- scoring字符串、可调用、列表、tuple、set或dict,默认=无
要使用的记分器。如果
scoring
代表单个分数,可以用途:单个字符串(请参阅 的 scoring 参数:定义模型评估规则 );
可调用(参见 可召唤得分手 )返回单个值。
如果
scoring
代表多个分数,可以用途:列表、多元组或唯一字符串集;
a callable returning a dictionary where the keys are the metric names and the values are the metric scorers;
一个以指标名称作为键并调用值的字典。呼叫者需要有签名
callable(estimator, X, y)
.
如果无,则提供的估计器对象的
score
方法被使用。- allow_none布尔,默认=假
是否返回无或如果否则引发错误
scoring
并且估计器没有score
法- raise_exc布尔,默认=True
是否引发异常(如果多指标评分中的评分者子集失败)或返回错误代码。
如果设置为
True
,引发不及格得分者的例外。如果设置为
False
,作为评分器失败的结果,将传递异常详细信息的格式化字符串。
如果
scoring
是列表、tuple、set或dict。如果scoring
是字符串或可调用的。Added in version 1.6.
- 返回:
- scoring可调用
带有签名的scorer可调用对象/函数
scorer(estimator, X, y)
.
示例
>>> from sklearn.datasets import load_iris >>> from sklearn.metrics import check_scoring >>> from sklearn.tree import DecisionTreeClassifier >>> X, y = load_iris(return_X_y=True) >>> classifier = DecisionTreeClassifier(max_depth=2).fit(X, y) >>> scorer = check_scoring(classifier, scoring='accuracy') >>> scorer(classifier, X, y) 0.96...
>>> from sklearn.metrics import make_scorer, accuracy_score, mean_squared_log_error >>> X, y = load_iris(return_X_y=True) >>> y *= -1 >>> clf = DecisionTreeClassifier().fit(X, y) >>> scoring = { ... "accuracy": make_scorer(accuracy_score), ... "mean_squared_log_error": make_scorer(mean_squared_log_error), ... } >>> scoring_call = check_scoring(estimator=clf, scoring=scoring, raise_exc=False) >>> scores = scoring_call(clf, X, y) >>> scores {'accuracy': 1.0, 'mean_squared_log_error': 'Traceback ...'}