NLP学习笔记19-模型的评估

一 序

   继续之前贪心NLP课程。之前的60节开始介绍的Python高及功能,争取春节假期期间补上。

二 模型的评价

在机器学习、数据挖掘、推荐系统完成建模之后,需要对模型的效果做评价

本文针对二元分类器。

准确率Accuracy

 

acc: \frac{number of correctly classified samples}{number of total} 

   准确率就是:正确的数/总数

当我们的样本不平衡(正样本和负样本比例差距很大)的时候,准确率就不适合用来评估模型。

老师举例子,肺癌假设1000人来检查,假设5个是确诊的,995是健康的。

那么即使我不做任何处理,对于新的数据,直接根据概率计算为健康的,准确率为99.5%。这样虽然准确率很高,但是没没有任何价值。

NLP学习笔记19-模型的评估_第1张图片

为了弥补准确率的不足,学习召回率。

NLP学习笔记19-模型的评估_第2张图片

这里,假设1000个人有10个得癌症的,召回了10个,其中真正得癌症的有8个。

P(Positive)和N(Negative) 表示模型的判断结果
T(True)和F(False) 表示模型的判断结果是否正确

FP:假正例
FN:假负例
TP:真正例
TN:真负例.

准确率Precision= \frac{TP}{TP+FP}

召回率(Recall)\frac{TP}{TP+FN}

召回率针对的是数据集中的所有正例,精确率针对的是模型判断出的所有正例.

NLP学习笔记19-模型的评估_第3张图片

召回率与精确率是一个互斥的关系,需要寻找到一个平衡点。一般情况下准确率高、召回率就低,召回率低、准确率高。

P精确率和R召回率指标有时候会出现的矛盾的情况,这样就需要综合考虑他们,最常见的方法就是F-Measure(又称为F-Score)。

F-Measure是Precision和Recall加权调和平均:

NLP学习笔记19-模型的评估_第4张图片

当参数\beta=1时,就是最常见的F1-Measure了:

F_{1}=\frac{2*P*R}{P+R}

 

NLP学习笔记19-模型的评估_第5张图片

多分类的情况类似,每个分离计算完求平均。

还有其他指标灵敏度等,ROC和PR曲线。老师没有讲。

最后的例子,以垃圾邮件为例,计算精确率,召回率

NLP学习笔记19-模型的评估_第6张图片

 

你可能感兴趣的:(NLP,机器学习,模型评估,指标,召回率,精确率)