绘图过程很简单:给定m个正例子,n个反例子,根据学习器预测结果进行排序,先把分类阈值设为最大,使得所有例子均预测为反例,此时TPR和FPR均为0,在(0,0)处标记一个点,再将分类阈值依次设为每个样例的预测值,即依次将每个例子划分为正例。设前一个坐标为(x,y),若当前为真正例,对应标记点为(x,y+1/m),若当前为假正例,则标记点为(x+1/n,y),然后依次连接各点。
下面举个绘图例子: 有10个样例子,m=5个正例子,n=5个反例子,分成两个随机排列AB对比。
A:[反正正正反反正正反反] 
B : [反正反反反正正正正反]
按照上面的绘图过程(),可以得到学习器对应的ROC曲线点
A:y:[0,0,0.2,0.4,0.6,0.6,0.6,0.8,1,1,1]
x:[0,0.2,0.2,0.2,0.2,0.4,0.6,0.6,0.6,0.8,1]
首先A[0]=反,然后(x,y)=(0,0);     
然后A[1]=正,(x,y)=(0,0+1/(m=5))=(0,0.2);
然后A[2]=正,(x,y)=(0,0.2+1/(m=5))=(0,0.4);
.........
B:y:[0,0,0.2,0.2,0.2,0.2,0.4,0.6,0.8,1,1]
x:[0,0.2,0.2,0.4,0.6,0.8,0.8,0.8,0.8,0.8,1]

ROC曲线手画-LMLPHP

作者:石晓文的学习日记
链接:https://www.jianshu.com/p/75a163a17fb5
來源:简书
简书著作权归作者所有,任何形式的转载都请联系作者获得授权并注明出处。

05-28 00:43