性能度量

2017-05-17  本文已影响0人  程序猿爱打DOTA

分类中使用错误率和精度

查准率(precision),查全率(recall)

P = TP/(TP+FP)

R= TP/(TP+FN)


F度量

F1 = 2*P*R/(P+R)

Fi = (1+i^2)*P*R/(i^2*P +R)

i>1时认为R影响更大

i<1时认为P影响更大


“宏查准率”: 

macro-P = 1/n*ΣPi

"微查准率“:

micro-P = TPavg/(TPavg+FPavg)  


回归中使用均方误差

ROC曲线(受试者工作特征)

学习器为测试样本生成一个实值或概率预测,然后将这个预测值与一个分类阈值进行比较,大于则分为正类,小于则为负类。

将测试样本根据预测实值进行排序,“最可能”是正例的排在最前面,“最不可能”是正例的排在最后面。分类过程相当与在这个排序中以某个“截断点”将样本分成两部分。

若更重视查全率,选择靠后位置进行截断,若更重视查准率,选择靠前位置进行截断。

根据学习器的预测结果对样例排序,按此顺序逐个把样本作为正例进行预测,每次计算“真正例率”,“假正例率”,分别以它们为横、纵坐标作图,得到ROC曲线。


AUC(Area Under ROC Curve)

ROC曲线下的面积,用于比较两个学习器的优劣


代价敏感错误率与代价曲线:

不同类型的错误所造成的后果严重程度不同

代价矩阵:   0      1

           0       0   cost01

           1   cost10   0

在非均等代价下,我们希望不再是简单地最小化错误次数,而是希望最小化“总体代价”

此时,ROC曲线不能直接反映出学习器的期望总体代价,代价曲线:

横轴是[0,1]的正例概率代价

P(+)cost = p * cost01 / (p*cost01 + (1-p) * cost10)

纵轴是[0,1]的归一化代价

Cost = (FNR*p*cost01+FPR*(1-p)*cost10)/(p*cost01+(1-p)*cost10)

其中p是样例为正例的概率

上一篇下一篇

猜你喜欢

热点阅读