前两天看到了一篇关于 ROC 的推送文章,突然发现这块上学时的知识已经逐渐开始忘却了,顺便复习一下这部分知识顺手记录下来。
混淆矩阵

二分类问题的混淆矩阵可以衍生出 Precision 和 Recall。F1 是这两个指标的几何平均。这个指标的问题在于类别不平衡的时候,比如 99 个 A 类,1 个 B 类,分类器全部预测成 A,此时,P=0.99,R=0.99,F1=0.99,这肯定不行的对吧。
PR 曲线
PR 曲线要做的事情是对于所有的待预测 instance,计算出 positive 的概率,首先认为没有正例。
那么显然此时的 P 可以认为是 1,R 则是 0.(实际上是 P=0/0,不过我们可以暂时这么记住,初始点就是在左上角就可以。) 如下图所示。
| P | N | |
|---|---|---|
| Y | 0 | 0 |
| N | A | B |
下一步我们把 positive概率最大的判断为正例,那么势必会从 A 里面移上来一个。只要我们的模型不太拉胯,那么大概率 top1 的正例是对的,也就是说,从 A 里面移上来一个(如下图所示)。此时,P=1,R=1/A。这意味着,在 PR 图上,从初始点向右画的一小段曲线。
| P | N | |
|---|---|---|
| Y | 1 | 0 |
| N | A-1 | B |
以此类推,假设前十个我们从预测对了,都是成功的从 PN 位置把真正例移动到 YP 一格中,那么在 PR 图上就是从起始点不停向右画出了 10 个 point,最后一个点是 (P=1,R=10/A)。直到第 11 个,我们预测错了(如下图所示)。那么注意这个点是 (P=10/11,R=10/A)。相比第十个点,是 P 下降,R 不变,体现在 PR 图中就是在第十个


10万+

被折叠的 条评论
为什么被折叠?



