2025-11-20 05:34:04
ROC画成直线通常是因为模型没区分能力或者数据特殊。比如假设100个样本全被模型判成0.5概率,调阈值时每降0.1阈值,假正例和假负例同时增加相同比例,所以TPR和FPR像爬楼梯一样匀速上升,连成直线。
这时候数据可能存在两种情况:一种是模型根本没学任何特征,随机猜的话AUC就是0.5,ROC就是45度直线;另一种是数据有重复标签,比如30个正类全被预测0.7,70个负类全预测0.3,当阈值从0.8降到0.2时,每降低0.1阈值就多算10个假正例,同时多算10个假负例,导致FPR和TPR同步增加。比如当阈值0.5时,假正例刚好是30个,假负例70个,这时候FPR=30/(30+70)=30%,TPR=30/(30+20)=60%,刚好落在直线y=x+30%的位置。但这种情况在实际数据中很少见,因为真实数据通常有波动,模型预测概率不会完全相同。
本题链接: