本文主要是介绍谣言检测常用评价指标,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
谣言检测通常是一个二分类任务,常用评价指标包括Precision、Recall、Accuracy、F1-score、Micro-F1、Macro-F1等。
Precision和Recall
名称 | 含义 |
---|---|
TP(True Positive) | 真阳性 预测为正,实际为正 |
FP(False Positive) | 假阳性 预测为正,实际为负 |
TN(True Negative) | 真阴性 预测为负,实际为负 |
FN(False Negative) | 假阴性 预测为负,实际为正 |
Precision(正确率):在认为是正的样本中,有多少是正的
P r e c i s i o n = T P T P + F P Precision=\frac {TP}{TP+FP} Precision=TP+FPTP
Recall(召回率):原本为正的样本中,有多少被找出来了
R e c a l l = T P T P + F N Recall=\frac{TP}{TP+FN} Recall=TP+FNTP
Accuracy(准确率):整个样本空间中的样本分类正确的比例
A c c u r a c y = T P + T N T P + F P + T N + F N Accuracy=\frac{TP+TN}{TP+FP+TN+FN} Accuracy=TP+FP+TN+FNTP+TN
F1-score
统计TP、FP、TN、FN等指标数据可以用于计算精确率(Precision)和召回率(Recall),根据精确率和召回率可以计算出F1值。
F1分数(F1-Score、F1-Measure),是分类问题的一个衡量指标,用于权衡Precision和Recall,被定义为精确率和召回率的调和平均数。
F 1 = 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 F1=2\cdot \frac{Precision\cdot Recall}{Precision + Recall} F1=2⋅Precision+RecallPrecision⋅Recall
Micro-F1、 Macro-F1
微观F1(Micro-F1)和宏观F1(Macro-F1)都是F1合并后的结果,是用于评价多分类任务的指标。
第i类的Precision和Recall可以表示为:
P r e c i s i o n i = T P i T P i + F P i Precision_i=\frac {TP_i}{TP_i+FP_i} Precisioni=TPi+FPiTPi
R e c a l l i = T P i T P i + F N I Recall_i=\frac{TP_i}{TP_i+FN_I} Recalli=TPi+FNITPi
Micro-F1:
(1)先计算所有类别总的Precision和Recall:
P r e c i s i o n m i c r o = ∑ i = 1 n T P i ∑ i = 1 n T P i + ∑ i = 1 n F P i Precision_{micro}=\frac {\sum_{i=1}^nTP_i}{\sum_{i=1}^nTP_i+\sum_{i=1}^nFP_i} Precisionmicro=∑i=1nTPi+∑i=1nFPi∑i=1nTPi
R e c a l l m i c r o = ∑ i = 1 n T P i ∑ i = 1 n T P i + ∑ i = 1 n F N I Recall_{micro}=\frac{\sum_{i=1}^nTP_i}{\sum_{i=1}^nTP_i+\sum_{i=1}^nFN_I} Recallmicro=∑i=1nTPi+∑i=1nFNI∑i=1nTPi
(2)计算调和平均数:
F 1 m i c r o = 2 ⋅ P r e c i s i o n m i c r o ⋅ R e c a l l m i c r o P r e c i s i o n m i c r o + R e c a l l m i c r o F1_{micro}=2\cdot \frac{Precision_{micro}\cdot Recall_{micro}}{Precision_{micro} + Recall_{micro}} F1micro=2⋅Precisionmicro+RecallmicroPrecisionmicro⋅Recallmicro
微观F1(Micro-F1)考虑了各种类别的数量,所以更适用于数据分布不平衡的情况,数量较多的类别会对F1的影响较大。
Macro-F1:
(1)先计算所有类别平均的Precision和Recall:
P r e c i s i o n m a c r o = ∑ i = 1 n P r e c i s i o n i n Precision_{macro}=\frac {\sum_{i=1}^nPrecision_i}{n} Precisionmacro=n∑i=1nPrecisioni
R e c a l l m a c r o = ∑ i = 1 n R e c a l l i n Recall_{macro}=\frac{\sum_{i=1}^nRecall_i}{n} Recallmacro=n∑i=1nRecalli
(2)计算调和平均数:
F 1 m a c r o = 2 ⋅ P r e c i s i o n m a c r o ⋅ R e c a l l m a c r o P r e c i s i o n m a c r o + R e c a l l m a c r o F1_{macro}=2\cdot \frac{Precision_{macro}\cdot Recall_{macro}}{Precision_{macro} + Recall_{macro}} F1macro=2⋅Precisionmacro+RecallmacroPrecisionmacro⋅Recallmacro
宏观F1(Macro-F1)对各类别的Precision和Recall直接求平均,不考虑类别数量,Precision和Recall值较高的类别对F1的影响会比较大。
这篇关于谣言检测常用评价指标的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!