【问题标题】:Balanced_accuracy is not a valid scoring value in scikit-learnBalanced_accuracy 不是 scikit-learn 中的有效评分值
【发布时间】:2025-12-12 08:55:02
【问题描述】:

与这篇文章超级相似:ValueError: 'balanced_accuracy' is not a valid scoring value in scikit-learn

我正在使用:

scoring = ['precision_macro', 'recall_macro', 'balanced_accuracy_score']
clf = DecisionTreeClassifier(random_state=0)
scores = cross_validate(clf, X, y, scoring=scoring, cv=10, return_train_score=True)

我收到错误:

ValueError:“balanced_accuracy_score”不是有效的评分值。 使用 sorted(sklearn.metrics.SCORERS.keys()) 获取有效选项。

我做了推荐的解决方案并升级了scikit(在环境中):

当我检查可能的得分手时:

sklearn.metrics.SCORERS.keys()
dict_keys(['explained_variance', 'r2', 'max_error', 'neg_median_absolute_error', 'neg_mean_absolute_error', 'neg_mean_squared_error', 'neg_mean_squared_log_error', 'neg_root_mean_squared_error', 'neg_mean_poisson_deviance', 'neg_mean_gamma_deviance', 'accuracy', 'roc_auc', 'roc_auc_ovr', 'roc_auc_ovo', 'roc_auc_ovr_weighted', 'roc_auc_ovo_weighted', 'balanced_accuracy', 'average_precision', 'neg_log_loss', 'neg_brier_score', 'adjusted_rand_score', 'homogeneity_score', 'completeness_score', 'v_measure_score', 'mutual_info_score', 'adjusted_mutual_info_score', 'normalized_mutual_info_score', 'fowlkes_mallows_score', 'precision', 'precision_macro', 'precision_micro', 'precision_samples', 'precision_weighted', 'recall', 'recall_macro', 'recall_micro', 'recall_samples', 'recall_weighted', 'f1', 'f1_macro', 'f1_micro', 'f1_samples', 'f1_weighted', 'jaccard', 'jaccard_macro', 'jaccard_micro', 'jaccard_samples', 'jaccard_weighted'])

还是找不到?问题出在哪里?

【问题讨论】:

  • 也许您的代码仍然依赖于旧版本?尝试打印 sklearn 的版本
  • 在 jupyter notebook 中打印的命令是什么?

标签: python scikit-learn


【解决方案1】:

根据docs for valid scorersbalanced_accuracy_score scorer function对应的scoring参数的值为"balanced_accuracy",和我的其他回答一样:

变化:

scoring = ['precision_macro', 'recall_macro', 'balanced_accuracy_score']

到:

scoring = ['precision_macro', 'recall_macro', 'balanced_accuracy']

它应该可以工作。

我确实发现文档在这方面有些欠缺,而且删除 _score 后缀的约定也不一致,因为所有聚类指标在其 scoring 参数值中的名称中仍然包含 _score .

【讨论】:

    最近更新 更多