前 言
在人工智能领域,机器学习的效果需要用各种指标来评价。本文将阐述机器学习中的常用性能评价指标,矢量卷积与神经网格的评价指标不包括在内。
训练与识别
当一个机器学习模型建立好了之后,即模型训练已经完成,我们就可以利用这个模型进行分类识别。
比如,给模型输入一张电动车的照片,模型能够识别出这是一辆电动车;输入一辆摩托车的照片,模型能够识别出这是一辆摩托车。前提是:在模型训练过程中,进行了大量电动车照片、摩托车照片的反复识别训练。
但即便模型具备了识别电动车、摩托车的能力,并不代表每次都能百分百正确识别。当然,我们肯定希望识别正确率越高越好。识别正确率越高,代表模型性能越良好。
具体有哪些指标可以评价模型性能的优良呢?我们从下面的例子来详细了解。
例如,一个测试样本集S总共有100张照片,其中,电动车的照片有60张,摩托车的照片是40张。给模型(二分类模型)输入这100张照片进行分类识别,我们的目标是:要模型找出这100张照片中的所有电动车。这里所说的目标即为正例(Positives),非目标即为负例(Negatives)。
假设模型给出的识别结果如下图:
从上表结果可以看出,在100张照片中,模型识别给出了50个电动车目标,剩下50个则是摩托车。这与实际的情况有出入(实际是:电动车60个,摩托车40个),因而有些识别是错误的。正确的识别数据体现在TP和TN(T代表True),错误的识别数据则体现在FP和FN(F代表False)。
在识别给出的50个电动车目标中,其中只有40个是对的(TP:真的电动车),另外10个则识别错了(FP:假的电动车,实际是摩托车)。
以上四个识别结果数值(TP、FP 、TN、FN)就是常用的评估模型性能优良的基础参数。在进一步详细说明TP、FP 、TN、FN各符号的含义之前,我们先来了解正例(正样本)、负例(负样本)的概念。
正例与负例
正例(Positives):你所关注的识别目标就是正例。
负例(Negatives):正例以外的就是负例。
例如,在上面的例子中,我们关注的目标是电动车,那么电动车就是正例,剩下摩托车则是负例。
再如,假设在一个森林里,有羚羊、驯鹿、考拉三种动物,我们的目标是识别出羚羊,那么羚羊就是正例,驯鹿和考拉则是负例。
正例与负例图示1
又如,有一堆数字卡片,我们的目标是要找出含有数字8的卡片,那么含有数字8的卡片就是正例,剩于其他的都是负例。
正例与负例图示2
混淆矩阵
了解了正例(Positives)和负例(Negatives)的概念,我们就可以很好地理解TP、FN、TN、FP的各自含义(其中T代表True,F代表False,P即Positives,N即Negatives):