Micro-F1 与 Macro-F1
1. Precision和Recall的计算名称含义TP(True Positive)真阳性:预测为正,实际为正FP(False Positive)假阳性:预测为正,实际为负TN(True Negative)真阴性:预测为负,实际为负FN(False Negative)假阴性:预测为负,实际为正(1)Precision(精确率):被认为正的样本中,实际上有多少是正的。Precision=TPTP+
1. Precision和Recall的计算
| 名称 | 含义 |
|---|---|
| TP(True Positive) | 真阳性:预测为正,实际为正 |
| FP(False Positive) | 假阳性:预测为正,实际为负 |
| TN(True Negative) | 真阴性:预测为负,实际为负 |
| FN(False Negative) | 假阴性:预测为负,实际为正 |
(1)Precision(精确率):被认为正的样本中,实际上有多少是正的。
Precision=TPTP+FP.{\rm Precision}=\frac {\rm TP}{\rm TP+FP}.Precision=TP+FPTP.
也就是说,该指标用于衡量:在预测出来为正的样本中,有多少是正确预测的。
(2)Recall(召回率):原本为正的样本中,有多少被找出来了。
Recall=TPTP+FN.{\rm Recall}=\frac {\rm TP}{\rm TP+FN}.Recall=TP+FNTP.
也就是说,该指标用于衡量:在样本空间中实际为正的样本中,有多少被正确预测出来。
可见,在上述两式中,只有分母不同,一个分母是预测为正的样本数,另一个是原来样本中所有的正样本数。
(3)Accuracy(准确率):对整个样本空间中的样本分类正确的一个比例。
Accuracy=TP+TNTP+FP+TN+FN.{\rm Accuracy}=\frac {\rm TP+TN}{\rm TP+FP+TN+FN}.Accuracy=TP+FP+TN+FNTP+TN.
2. F1 Score
统计TP、FP、TN、FN等指标数据可以用于计算精确率(Precision)和召回率(Recall),根据精确率和召回率可以计算出F1值,微观F1(Micro-F1)和宏观F1(Macro-F1)都是F1合并后的结果,是用于评价多分类任务的指标。
F1分数(F1-Score、F1-Measure),是分类问题的一个衡量指标,用于权衡Precision和Recall,被定义为精确率和召回率的调和平均数。
F1=2⋅Precision⋅RecallPrecision+Recall.{\rm F1}=2 \cdot \frac {\rm Precision \cdot Recall}{\rm Precision+Recall}.F1=2⋅Precision+RecallPrecision⋅Recall.
3. Micro-F1
第iii类的Precision和Recall可以表示为:
Precisioni=TPiTPi+FPi{\rm Precision}_i=\frac {{\rm TP}_i} {{\rm TP}_i+{\rm FP}_i}Precisioni=TPi+FPiTPi
Recalli=TPiTPi+FNi{\rm Recall}_i=\frac {{\rm TP}_i} {{\rm TP}_i+{\rm FN}_i}Recalli=TPi+FNiTPi
Micro-F1计算方式:
(1)先计算出所有类别的总的Precision和Recall:
Precisionmicro=∑i=1nTPi∑i=1nTPi+∑i=1nFPi {\rm Precision}_{micro}=\frac {\sum_{i=1}^n{\rm TP}_i} {\sum_{i=1}^n{\rm TP}_i+\sum_{i=1}^n{\rm FP}_i} Precisionmicro=∑i=1nTPi+∑i=1nFPi∑i=1nTPi
Recallmicro=∑i=1nTPi∑i=1nTPi+∑i=1nFNi {\rm Recall}_{micro}=\frac {\sum_{i=1}^n{\rm TP}_i} {\sum_{i=1}^n{\rm TP}_i+\sum_{i=1}^n{\rm FN}_i} Recallmicro=∑i=1nTPi+∑i=1nFNi∑i=1nTPi
(2)然后利用F1计算公式计算出来的F1值即为Micro-F1:
F1micro=2⋅Precisionmicro⋅RecallmicroPrecisionmicro+Recallmicro. F1_{micro}=2 \cdot \frac {{\rm Precision}_{micro}\cdot {Recall}_{micro}} {{\rm Precision}_{micro}+ {Recall}_{micro}}. F1micro=2⋅Precisionmicro+RecallmicroPrecisionmicro⋅Recallmicro.
因为其考虑了各种类别的数量,所以更适用于数据分布不平衡的情况。在这种情况下,数量较多的类别对F1的影响会较大。
4. Macro-F1
第iii类的Precision和Recall可以表示为:
Precisioni=TPiTPi+FPi{\rm Precision}_i=\frac {{\rm TP}_i} {{\rm TP}_i+{\rm FP}_i}Precisioni=TPi+FPiTPi
Recalli=TPiTPi+FNi{\rm Recall}_i=\frac {{\rm TP}_i} {{\rm TP}_i+{\rm FN}_i}Recalli=TPi+FNiTPi
Macro-F1计算方式:
(1)对各类别的Precision和Recall求平均:
Precisionmacro=∑i=1nPrecisionin {\rm Precision}_{macro}=\frac {\sum_{i=1}^n{\rm Precision}_i} {n} Precisionmacro=n∑i=1nPrecisioni
Recallmacro=∑i=1nRecallin {\rm Recall}_{macro}=\frac {\sum_{i=1}^n{\rm Recall}_i} {n} Recallmacro=n∑i=1nRecalli
(2)然后利用F1计算公式计算出来的F1值即为Macro-F1。
F1macro=2⋅Precisionmacro⋅RecallmacroPrecisionmacro+Recallmacro. F1_{macro}=2 \cdot \frac {{\rm Precision}_{macro}\cdot {Recall}_{macro}} {{\rm Precision}_{macro}+ {Recall}_{macro}}. F1macro=2⋅Precisionmacro+RecallmacroPrecisionmacro⋅Recallmacro.
因为对各类别的Precision和Recall求了平均,所以并没有考虑到数据数量的问题。在这种情况下,Precision和Recall较高的类别对F1的影响会较大。
更多推荐


所有评论(0)