【机器学习基础】1、分类算法的评估方法
分类算法的评估
1、常用术语
分类目标一般分为正例(positive)和反例(negative)。
- True positives(TP): 被正确地划分为正例的个数,即实际为正例且被分类器划分为正例的实例数;
- False positives(FP): 被错误地划分为正例的个数,即实际为负例但被分类器划分为正例的实例数;
- False negatives(FN):被错误地划分为负例的个数,即实际为正例但被分类器划分为负例的实例数;
- True negatives(TN): 被正确地划分为负例的个数,即实际为负例且被分类器划分为负例的实例数。
预测类别 | |||
P | N | ||
实际类别 | P | TP | FN |
N | FP | TN |
2、评价指标
正确率(accuracy)
a
c
c
u
r
a
c
y
=
(
T
P
+
T
N
)
/
(
P
+
N
)
accuracy = (TP+TN)/(P+N)
accuracy=(TP+TN)/(P+N)
即被分对的样本在所有样本中的占比。
错误率(error rate)
e
r
r
o
r
r
a
t
e
=
(
F
P
+
F
N
)
/
(
P
+
N
)
error rate = (FP+FN)/(P+N)
errorrate=(FP+FN)/(P+N)
即被分错的样本在所有样本中的占比。其中
a
c
c
u
r
a
c
y
=
1
−
e
r
r
o
r
r
a
t
e
accuracy = 1 - error rate
accuracy=1−errorrate。
灵敏度(sensitivity)
s
e
n
s
i
t
i
v
i
t
y
=
T
P
/
P
sensitivity = TP/P
sensitivity=TP/P
表示的是所有正例中被分对的比例,衡量了分类器对正例的识别能力。
特异性(specificity)
s
p
e
c
i
f
i
c
i
t
y
=
T
N
/
N
specificity = TN/N
specificity=TN/N
表示的是所有负例中被分对的比例,衡量了分类器对负例的识别能力。
精度(precision)
p
r
e
c
i
s
i
o
n
=
T
P
/
(
T
P
+
F
P
)
precision=TP/(TP+FP)
precision=TP/(TP+FP)
精度是精确性的度量,表示被分为正例的示例中实际为正例的比例。
召回率(recall)
r
e
c
a
l
l
=
T
P
/
(
T
P
+
F
N
)
=
T
P
/
P
=
s
e
n
s
i
t
i
v
i
t
y
recall=TP/(TP+FN)=TP/P=sensitivity
recall=TP/(TP+FN)=TP/P=sensitivity
召回率是覆盖面的度量,度量有多个正例被分为正例,可以看到召回率与灵敏度是一样的。
F1-score
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=\frac{2 \times precision \times recall}{precision + recall}
F1=precision+recall2×precision×recall
也称为综合分类率,精度和召回率反映了分类器分类性能的两个方面。综合考虑查准率与查全率
计算速度
分类器训练和预测需要的时间;
鲁棒性
处理缺失值和异常值的能力;
可扩展性
处理大数据集的能力;
可解释性
分类器的预测标准的可理解性,像决策树产生的规则就是很容易理解的,而神经网络的一堆参数就不好理解,我们只好把它看成一个黑盒子。
ROC曲线和PR曲线
ROC曲线是(Receiver Operating Characteristic Curve,受试者工作特征曲线)的简称,是以灵敏度(真阳性率)为纵坐标,以1减去特异性(假阳性率)为横坐标绘制的性能评价曲线。
可以将不同模型对同一数据集的ROC曲线绘制在同一笛卡尔坐标系中,ROC曲线越靠近左上角,说明其对应模型越可靠。
也可以通过ROC曲线下面的面积(Area Under Curve, AUC)来评价模型,AUC越大,模型越可靠。
PR曲线是Precision Recall Curve的简称,描述的是precision和recall之间的关系,以recall为横坐标,precision为纵坐标绘制的曲线。该曲线的所对应的面积AUC实际上是目标检测中常用的评价指标平均精度(Average Precision, AP)。AP越高,说明模型性能越好。