本题要求根据真实标签与预测概率计算二分类 AUC,对应 Solution.binaryAUC(y, pred)。
实现二分类模型的 AUC(Area Under ROC Curve)计算。
给定 n 个样本的真实标签 y(0 或 1)和模型预测概率 y^(0 到 1 的浮点数),计算 ROC 曲线下的面积(AUC 值)。
AUC 的物理含义:随机抽取一个正样本和一个负样本,正样本预测概率大于负样本预测概率的概率。
第一行包含一个整数 n(2≤n≤104),表示样本数量。
接下来 n 行,每行两个值:真实标签 yi(0 或 1)和预测概率 y^i(0≤y^i≤1,保留 4 位小数)。
保证至少有一个正样本和一个负样本。
输出 AUC 值,保留 4 位小数。
输入
4
1 0.9
0 0.4
1 0.6
0 0.3
输出
1.0000
说明
正样本的预测概率(0.9,0.6)均大于负样本的预测概率(0.4,0.3),AUC=1.0。
输入
6
1 0.8
0 0.7
1 0.5
0 0.6
1 0.3
0 0.2
输出
0.5556
说明
3 个正样本(0.8,0.5,0.3)、3 个负样本(0.7,0.6,0.2),共 9 对。正样本预测概率大于负样本的有 5 对(0.8>0.7/0.6/0.2,0.5>0.2,0.3>0.2),5/9≈0.5556。
Scan the QR code below with WeChat to sign in
First-time scan will create your account automatically
请使用微信扫描下方二维码完成注册