分类问题中评价指标
基本概念
TP、True Positive 真阳性:预测为正,实际为正
FP、False Positive 假阳性:预测为正,实际为负
FN、False Negative 假阴性:预测与负、实际为正
TN、True Negative 真阴性:预测为负、实际为负。
以分类问题为例:
$\text { 实际情况: }\left\{\begin{array}{c}\text { 数字: } 1 & 2 & 3 & 4 & 5 & 6 & 7 & 8 & 9 \\ \text { 类别: } A & A & A & A & B & B & B & C & C\end{array}\right.$
$\text { 预测情况: }\left\{\begin{array}{lllllllll}\text { 数字: } 1 & 2 & 3 & 4 & 5 & 6 & 7 & 8 & 9 \\\text { 类别: } A & A & B & C & B & B & C & B & C\end{array}\right.$
真阳性:“预测为正,实际也是正”。指预测正确,是哪个类就被分到哪个类
预测值:
A:1 2 B:3 5 6 8 C:4 7 9
实际值:
A:1 2 3 4 B:5 6 7 C:8 9
假阳性:“预测为正,实际为负”。预测为某个类,但实际不是。
预测值:
A:1 2 B:3 5 6 8 C:4 7 9
实际值:
A:1 2 3 4 B:5 6 7 C:8 9
假阴性:“预测为负,实际为正”。找实际值对象有几个预测错误。
实际值:
A:1 2 3 4 B:5 6 7 C:8 9
预测值:
A:1 2 3(B) 4(C) B:5 6 7(C) C:8(B) 9
具体情况看如下表格:
$\begin{array}{|l|l|l|l|l|}\hline & \text { A } & \text { B } & \text { C } & \text { 总计 } \\\hline \text { TP } & 2 & 2 & 1 & 5 \\\hline \text { FP } & 0 & 2 & 2 & 4 \\\hline \text { FN } & 2 & 1 & 1 & 4 \\\hline\end{array}$
精确率和召回率
$\text { 精确率 } \mathrm{P}=\frac{\text { TP真阳性 }}{T P \text { 真阳性 }+F P \text { 假阳性 }}$
计算我们预测出来的某类样本中,有多少是被正确预测的。针对预测样本而言。
$\text { 召回率 } \mathrm{R}=\frac{T P \text { 真阳性 }}{T P \text { 真阳性 }+F N \text { 假阴性 }}$
针对原先实际样本而言,有多少样本被正确的预测出来了。
对于类别A:
$precision = 2/(2+0) = 100%$
$recall = 2/(2+2) = 50%$
对于类别B:
$precision = 2/(2+2) = 50%$
$recall = 2/(2+1) = 67%$
对于类别C:
$precision= 1/(1+2) = 33%$
$recall = 1/(1+1) = 50%$
F1-Score
F1分数(F1 Score),是统计学中用来衡量二分类模型精确度的一种指标,用于测量不均衡数据的精度。它同时兼顾了分类模型的精确率和召回率。F1分数可以看作是模型精确率和召回率的一种加权平均,它的最大值是1,最小值是0。
$F_{1}=2 \cdot \frac{\text { precision } \cdot \text { recall }}{\text { precison }+\text { recall }}$
Micro-averaged F1-Score
Micro F1 不需要区分类别,直接使用总体样本的准召计算 F1 score。
$precision = 5/(5+4) = 0.5556$
$recall = 5/(5+4) = 0.5556$
$F1 = 2 * (0.5556 * 0.5556)/(0.5556 + 0.5556) = 0.5556$
Macro-averaged F1
先计算出每一个类别的准召及其 F1 score,然后通过求均值得到在整个样本上的 F1 score。
类别A的:
$F 1_{A}=2 \times \frac{1 \times 0.5}{1+0.5}=0.6667$
类别B的:
$F 1_{B}=2 \times \frac{0.5 \times 0.67}{0.5+0.67}=0.57265$
类别C的:
$F 1_{C}=2 \times \frac{0.33 \times 0.5}{0.33+0.5}=0.39759$
整体的f1为上面三者的平均值:
$F1 = (0.6667 + 0.57265 + 0.39759)/3 = 0.546$
参考:
https://zhuanlan.zhihu.com/p/64315175
https://www.kaggle.com/enforcer007/what-is-micro-averaged-f1-score/notebook
https://blog.csdn.net/lyb3b3b/article/details/84819931
因上求缘,果上努力~~~~ 作者:图神经网络,转载请注明原文链接:https://www.cnblogs.com/BlairGrowing/p/15487250.html