计算分类模型性能

在机器学习领域,我们经常需要评估分类模型的性能。其中一个重要指标是接收者操作特征曲线下面积(ROC AUC)。roc_auc_score 函数就是用来计算这一指标的。让我们一起来了解这个函数以及它的参数。

roc_auc_score 函数概述

roc_auc_score 函数属于 sklearn.metrics 模块,它的作用是计算ROC AUC分数,用于衡量二分类模型的预测性能。ROC AUC分数是ROC曲线下方的面积,范围在0到1之间,分数越高表示模型的性能越好。

参数说明

sklearn.metrics.roc_auc_score(y_true, y_score, average='macro', sample_weight=None)
  • y_true:真实的目标标签,通常是一个包含0和1的一维数组或列表,代表样本的实际分类情况。
  • y_score:模型预测的分数,通常是一个包含样本预测概率的一维数组或列表。
  • average:用于多类别问题时计算宏平均的方式,可选值为 ‘macro’、‘micro’ 或 None。默认为 ‘macro’。
  • sample_weight:样本权重,可选参数,用于对不同样本的重要性进行加权。

示例代码

假设我们有一份真实标签和模型预测分数的数据,我们可以使用 roc_auc_score 函数来计算ROC AUC分数。

from sklearn.metrics import roc_auc_score

# 示例数据
y_true = [0, 1, 1, 0, 1, 0]
y_score = [0.3, 0.7, 0.8, 0.4, 0.6, 0.2]

# 计算ROC AUC分数
roc_auc = roc_auc_score(y_true, y_score)

print("ROC AUC 分数:", roc_auc)

在这个示例中,我们使用了一个包含6个样本的数据集,y_true 是真实标签,y_score 是模型的预测分数。

Logo

旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。

更多推荐