TP、TN、FP、FN

这 4 个名词表示的是数量。

TP:True Positive,表示把 【实际恶意应用】 预测为 【恶意应用】 的个数;
FP:False Positive,表示 【实际正常应用】 预测为 【恶意应用】 的个数;
TN:Ture Negative,表示把 【实际正常应用】 预测为 【正常应用】 的个数;
FN:False Negative,表示 【实际恶意应用】 预测为 【正常应用】 的个数;

注意1: 【正常应用】在此文中与【良性应用】是一个意思。
注意2: TP 的含义,决定了之后的公式表示。 在此文中,TP 表示把「实际恶意应用」判定为「恶意应用」,这是此文讨论的基准。 在有些论文中, TP 表示把「良性应用」判定为「良性应用」,此时所有的公式都要相应改变。

True 表示预测对了。
False 表示预测错了。

对于【检测恶意应用】来说,Positive 是指,检出了恶意应用。Negative 是指没有检查出恶意应用。 再强调一次:这是本文的基准。有些论文中基准不一样。

Postive 虽然检查出了【恶意应用】,但是存在把【正常应用】判定为【恶意应用】,这是误报,也就是 FP (False Positive) 所对应的结果是误报。

Negative 判断出了哪些 app 是【正常应用】,但是这里面有【恶意应用】,也就是没有判断出来它是恶意的,这是漏报,也就是 FN(False Negative) 对应的结果是漏报。

总结:
FP (False Positive)表示误报。
FN (False Negative)表示漏报。

从含义来看, T P + F N TP + FN TP+FN 表示样本中全部的恶意应用。
F P + T N FP + TN FP+TN 表示样本中全部的正常应用。
T P + T N TP + TN TP+TN 表示预测准确的个数。

这两个值( T P + F N TP + FN TP+FN F P + T N FP + TN FP+TN)会被用到比例中,见下面的各种率。

下面的概念中,以【检测恶意应用】为例来说明。

召回率 Recall

其他名称:查全率,命中率,真阳性率。

含义:检测出来的恶意应用的个数(TP)占样本中所有恶意应用个数的比例。
公式为:
R e c a l l = T P T P + F N Recall = \frac {TP} {TP + FN} Recall=TP+FNTP
或者
T P R = T P T P + F N TPR = \frac {TP} {TP + FN} TPR=TP+FNTP

T P + F N TP+FN TP+FN 表示所有的恶意应用。即【被判定为恶意应用的恶意应用的个数】 + 【被判定为正常应用的恶意应用的个数】之和。也就是不管被判定为什么,它们原本就是恶意应用的个数。

F N FN FN 是漏报个数, T P + F N TP+FN TP+FN 是所有恶意应用的个数,如果漏报增加, T P + F N TP+FN TP+FN 之和是不变的,那么 T P TP TP 就会减少,召回率下降。
漏报增多,导致召回率下降。

命中率 TPR: True Positive Rate

其他名称:召回率,查全率,真阳性率。

见「召回率」。

误报率 FPR: False Positive Rate

含义:把正常应用判定为恶意应用的个数(FP)占所有正常应用个数的比例。
公式:
F P R = F P F P + T N FPR = \frac {FP} {FP + TN} FPR=FP+TNFP

F P + T N FP + TN FP+TN 表示样本中全部的正常应用。

准确率 Accuracy

含义:检测结果为 True 的个数占总样本个数的比例
A c c u r a c y = T P + T N T P + T N + F P + F N Accuracy = \frac{TP + TN}{TP + TN + FP + FN} Accuracy=TP+TN+FP+FNTP+TN

T P + T N TP + TN TP+TN 表示预测准确的个数。
T P + T N + F P + F N TP + TN + FP + FN TP+TN+FP+FN 为所有样本的个数。

精确度 Precision

含义:被认定为恶意应用的 app 中,有多少是真正的恶意应用。
公式:
P r e c i s i o n = T P T P + F P Precision = \frac{TP} {TP+FP} Precision=TP+FPTP

T P + F P TP+FP TP+FP 表示被判定为恶意应用的个数。其中包含了真正的恶意应用,也包含了被误判的正常应用。

T P TP TP 的上限是所有的恶意应用都被正确识别出来,即 T P TP TP 的上限是所有恶意应用的个数。
F P FP FP 是误报,当 T P TP TP 固定,误报增加时,精确度下降。
误报增多,导致精确度下降。

综合查全率 F-Measure

平均上述的 Precision 和 Recall 指标后的综合评测标准。
其公式如下:
F - m e a s u r e = 2 × P r e c i s i o n × R e c a l l P r e c i s i o n + R e c a l l F\text-measure = \frac{2 × Precision × Recall} {Precision + Recall} F-measure=Precision+Recall2×Precision×Recall

参考

https://www.cnblogs.com/by-dream/p/7668501.html 这个链接 中 给出的是通用意义上的解释,在对应具体的场景时,Recall 和 Precision 的公式是不一样的。

以及其他论文中的解释。

Logo

开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!

更多推荐