【机器学习】为什么随机分类时,AUC = 0.5?

关于ROC和AUC的介绍,可以参考维基百科。

这里仅谈个人对随机分类下ROC曲线的理解,即为什么随机分类时,AUC = 0.5?

若理解有误,恳请大佬指导↖(^ω^)↗

 

一、混淆矩阵:

【机器学习】为什么随机分类时,AUC = 0.5?_第1张图片

 

二、ROC曲线:

横坐标:FPR = b1 / ( b1 + b2 ) = 预测为正,实际为负 / 总负样本数 = 负样本预测错误数 / 总负样本数

纵坐标:TPR = a1 / ( a1 + a2 ) = 预测为正,实际为正 / 总正样本数 = 正样本预测正确数 / 总正样本数 = 正样本的召回率

 

 

三、分类器

总样本:1000

正样本:100;占比10%(可以理解为随机抽取样本,为正样本的概率为10%

负样本:900;占比90%

 

1、随机模型:

  • 模型预测:将样本集随机分为10等份,使其y分别等于0.1,0.2, 0.3,0.4,0.5,0.6,0.7,0.8,0.9,1.0

  • 分类 (y<=阈值时,预测为正样本)

    • 当阈值threshold = 0.1时,100个样本被预测为正样本,即a1+b1 = 100,a1=100*10%,b1=100*90%,TPR=100*10%/100=0.1,FPR =100*90%/900 = 0.1,正样本的precision=100*10%/100=0.1

    • 当阈值threshold = 0.2时200个样本被预测为正样本,即a1+b1 = 200,a1=200*10%,b1=200*90%,TPR=200*10%/100=0.2,FPR =200*90%/900 = 0.2,正样本的precision=200*10%/200=0.1

    • ......

    • 当阈值threshold = 1.0时,1000个样本被预测为正样本,即a1+b1 = 1000,a1=1000*10%,b1=1000*90%,TPR=1000*10%/100=1.0,FPR =1000*90%/900 = 1.0,正样本的precision=1000*10%/1000=0.1

【机器学习】为什么随机分类时,AUC = 0.5?_第2张图片

  • precision(正样本)=0.1,AUC=0.5

2、优于随机模型:

  • precision(正样本)>0.1,AUC > 0.5

3、劣于随机模型:

  • precision(正样本)<0.1,AUC < 0.5

你可能感兴趣的:(数据挖掘,机器学习)