机器学习——评价指标
评价指标
- 真阳性(True Positive, TP):标签为正类,预测为正类
- 假阳性(False Positive, FP):标签为负类,预测为正类(错检)
- 假阴性(False Negative, FN):标签为正类,预测为负类(漏检)
- 真阴性(True Negative, TN):标签为负类,预测为负类
准确率(Accuracy)
定义:
A
c
c
u
r
a
c
y
=
T
P
+
T
N
T
P
+
F
N
+
F
P
+
T
N
Accuracy=\frac{TP+TN}{TP+FN+FP+TN}
Accuracy=TP+FN+FP+TNTP+TN
即所有分类正确的样本占全部样本的比例
精确率/查准率(Precision)
定义:
P
r
e
c
i
s
i
o
n
=
T
P
T
P
+
F
P
Precision=\frac{TP}{TP+FP}
Precision=TP+FPTP
即预测是正例的结果中,确实是正例的比例,Precision同样是衡量误检
在较高的查准率的情况下,误检可能较低,但是漏检较高
查全率(Recall)
定义:
R
e
c
a
l
l
=
T
P
T
P
+
F
N
Recall=\frac{TP}{TP+FN}
Recall=TP+FNTP
即所有正例的样本中,被找出的比例。Recall同样是衡量漏检
在要求不出错的情况下,需要大的查全率,即可能设定的阈值很低,但是误检可能较高
F1-score
综合评定Precision和Recall
定义:
F
1
s
c
o
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
F1_{score}=\frac{2.Precision.Recall}{Precision+Recall}
F1score=Precision+Recall2.Precision.Recall
ROC和AUC
AUC是一种模型分类指标,且仅仅是二分类模型的评价指标。AUC是Area Under Curve的简称,那么Curve就是ROC(Receiver Operating Characteristic),翻译为“接收者操作特性曲线”。ROC是一条曲线,AUC是一个面积值
ROC曲线为FPR与TPR之间的关系曲线,这个组合以FPR对TPR,即是以代价对收益,显然收益越高,代价越低,模型的性能就越好。
- x轴为假阳性率(FPR):在所有的负样本中,分类器预测错误的比例
F P R = F P F P + T N FPR=\frac{FP}{FP+TN} FPR=FP+TNFP - y轴为真阳性率(TPR):在所有的正样本中,分类器预测正确的比例(等于Recall)
T P R = T P T P + F N TPR=\frac{TP}{TP+FN} TPR=TP+FNTP
**AUC定义:**AUC值为ROC曲线所覆盖的区域面积,显然,AUC越大,分类器分类效果越好。 - AUC=1,是完美分类器
- 0.5<AUC<1,优于随机猜测。有预测价值
- AUC=0.5,跟随机猜测一样,没有预测价值
- AUC<0.5,比随机猜测还差,但只要总是反预测就行
PR曲线
PR曲线的横坐标是精确率P,纵坐标是召回率R。评价标准和ROC一样,先看平滑不平滑。一般来说,在同一测试集,上面的比下面的好。当P和R的值接近时,F1值最大,此时画连接(0,0)和(1,1)的线,线和PRC重合的地方的F1是这条线最大的F1(光滑的情况下),此时的F1对于PRC就好像AUC对于ROC一样。
IOU和mIOU
就是IOU(Intersection over Union),交集占并集的大小
I
O
U
=
J
a
c
c
a
r
d
=
∣
A
∩
B
∣
∣
A
∪
B
∣
=
∣
A
∩
B
∣
∣
A
∣
+
∣
B
∣
−
∣
A
∩
B
∣
IOU=Jaccard=\frac{|A\cap{B}|}{|A\cup{B}|}=\frac{|A\cap{B}|}{|A|+|B|-|A\cap{B}|}
IOU=Jaccard=∣A∪B∣∣A∩B∣=∣A∣+∣B∣−∣A∩B∣∣A∩B∣
mIOU一般都是基于类进行计算的,将每一类的IOU计算之后累加,再进行平均,得到的就是mIOU
AP和mAP
AP(average Precision)和mAP(mean average Precision)常用于目标检测任务中。AP就是每一类的Precision的平均值。而mAP是所有类的AP的平均值。
AUC的含义以及是否对正负样本比例敏感?
AUC定义:AUC值为ROC曲线所覆盖的区域面积,显然,AUC越大,分类器分类效果越好。
AUC还有另一个意义:分别随机从正负样本集中抽取一个正样本,一个负样本,正样本的预测值大于负样本的概率。
AUC对正负样本比例不敏感
AUC的两种计算方法
- 计算ROC曲线覆盖的区域面积
- 根据定义:分别随机从正负样本集中抽取一个正样本、一个负样本,正样本的预测值大于负样本的概率。根据古典概率模型
A U C = ∑ ( p r e d p o s > p r e d n e g ) p o s i t i v e n u m ∗ n e g a t i v e n u m AUC=\frac{\sum(pred_{pos}>pred_{neg})}{positive_{num}*negative_{num}} AUC=positivenum∗negativenum∑(predpos>predneg)
分母是正负样本总的组合数,分子是正样本大于负样本的组合数
讲讲分类、回归、推荐、搜索的评价指标
- 分类指标:
**Accuracy:**即所有分类正确的样本占全部样本的比例
**Precision:**查准率
**Recall:**查全率
F1-score衡量Precision和Recall之间的联系
AUC值为ROC曲线所覆盖的区域面积 - 回归指标:
均方误差(MSE)
均方根误差(RMSE)
MAE(平均绝对误差)
R squared - 推荐任务评价指标:
离线评估 - 评分预测
对于评分预测模型:训练数据集训练好数据,测试数据集预测用户对物品的评分。 - 对于top N模型:对排名进行评估。评价指标:准确率,召回率,F1
在线评估 - A/B test
将用户划分为A,B两组,A实验组用户,接受所设计的推荐算法推荐的商品,B对照组用户,接受基线方法推荐的商品。通过对比两组用户的行为来评估推荐算法的性能。
CTR:用户点击率,通过该算法计算出的被点击的项目占推荐项目总数的百分比
CR:用户转化率,用户购买的项目占被点击的项目的比率