逻辑回归5-ROC曲线的绘制

1 曲线绘制

关于ROC曲线的绘制过程,通过以下举例进行说明
假设有6次展示记录,有两次被点击了,得到一个展示序列(1:1,2:0,3:1,4:0,5:0,6:0),前面的表示序号,后面的表示点击(1)或没有点击(0)。然后在这6次展示的时候都通过model算出了点击的概率序列,下面看三种情况。

1.1 概率的序列是(1:0.9,2:0.7,3:0.8,4:0.6,5:0.5,6:0.4)

绘制的步骤是:

1)把概率序列从高到低排序,得到顺序(1:0.9,3:0.8,2:0.7,4:0.6,5:0.5,6:0.4);
与题目已知序列一起,得到序列(概率从高到低排)

1 1 0 0 0 0
0.9 0.8 0.7 0.6 0.5 0.4

2)从概率最大开始取一个点作为正类,取到点1,计算得到TPR=0.5,FPR=0.0;

3)从概率最大开始,再取一个点作为正类,取到点3,计算得到TPR=1.0,FPR=0.0;

4)再从最大开始取一个点作为正类,取到点2,计算得到TPR=1.0,FPR=0.25;

5)以此类推,得到6对TPR和FPR。

然后把这6对数据组成6个点(0,0.5),(0,1.0),(0.25,1),(0.5,1),(0.75,1),(1.0,1.0)。

这6个点在二维坐标系中能绘出来。
逻辑回归5-ROC曲线的绘制

1.2 概率的序列是(1:0.9,2:0.8,3:0.7,4:0.6,5:0.5,6:0.4)

绘制的步骤是:

6)把概率序列从高到低排序,得到顺序(1:0.9,2:0.8,3:0.7,4:0.6,5:0.5,6:0.4);
与题目已知序列一起,得到序列(概率从高到低排)

1 0 1 0 0 0
0.9 0.8 0.7 0.6 0.5 0.4

7)从概率最大开始取一个点作为正类,取到点1,计算得到TPR=0.5,FPR=0.0;

8)从概率最大开始,再取一个点作为正类,取到点2,计算得到TPR=0.5,FPR=0.25;

9)再从最大开始取一个点作为正类,取到点3,计算得到TPR=1.0,FPR=0.25;

10)以此类推,得到6对TPR和FPR。

然后把这6对数据组成6个点(0,0.5),(0.25,0.5),(0.25,1),(0.5,1),(0.75,1),(1.0,1.0)。

这6个点在二维坐标系中能绘出来。
逻辑回归5-ROC曲线的绘制

1.3 概率的序列是(1:0.4,2:0.6,3:0.5,4:0.7,5:0.8,6:0.9)

绘制的步骤是:

11)把概率序列从高到低排序,得到顺序(6:0.9,5:0.8,4:0.7,2:0.6,3:0.5,1:0.4)
与题目已知序列一起,得到序列(概率从高到低排)

0 0 0 0 1 1
0.9 0.8 0.7 0.6 0.5 0.4

12)从概率最大开始取一个点作为正类,取到点6,计算得到TPR=0.0,FPR=0.25;

13)从概率最大开始,再取一个点作为正类,取到点5,计算得到TPR=0.0,FPR=0.5;

14)再从最大开始取一个点作为正类,取到点4,计算得到TPR=0.0,FPR=0.75;

15)以此类推,得到6对TPR和FPR。

然后把这6对数据组成6个点(0.25,0.0),(0.5,0.0),(0.75,0.0),(1.0,0.0),(1.0,0.5),(1.0,1.0)。

这6个点在二维坐标系中能绘出来。
逻辑回归5-ROC曲线的绘制

2 小结

1.构建模型,把模型的概率值从大到小进行排序
2.从概率最大的点开始取值,一直进行tpr和fpr的计算,然后构建整体模型,得到结果
3.其实就是在求解积分(面积)

上一篇:linux – 没有PAM验证用户的正确方法是什么?


下一篇:原来ROC曲线更加健壮地反映模型的效果,看来还是比较关键的(就像逻辑回归,你总是希望模型让0/1分类的数据尽可能都向两端靠对不对,ROC就是反映这个好坏的指标)