如何评估机器学习模型的性能
副标题[/!--empirenews.page--]
您可以整天训练有监督的机器学习模型,但是除非您评估其性能,否则您永远无法知道模型是否有用。这个详细的讨论回顾了您必须考虑的各种性能指标,并对它们的含义和工作方式提供了直观的解释。 为什么需要评估? 让我从一个非常简单的例子开始。 罗宾和山姆都开始为工科大学准备入学考试。他们俩共享一个房间,并在解决数字问题时付出了相同的努力。他们俩全年学习了几乎相同的时间,并参加了期末考试。令人惊讶的是,罗宾清除了,但萨姆没有清除。当被问到时,我们知道他们的准备策略有一个区别,即“测试系列”。罗宾加入了一个测试系列,他过去通过参加那些考试来测试他的知识和理解力,然后进一步评估他落后的地方。但是山姆很有信心,他只是不断地训练自己。 以相同的方式,如上所述,可以使用许多参数和新技术对机器学习模型进行广泛的训练,但是只要您跳过它的评估,就不能相信它。 混淆矩阵 混淆矩阵 是一个模型的预测和数据点的实际类别标签之间的相关性的矩阵。 假设您正在建立一个模型来检测一个人是否患有糖尿病。进行训练测试拆分后,您获得了长度为100的测试集,其中70个数据点标记为正(1),而30个数据点标记为负(0)。现在,让我为您的测试预测绘制矩阵: 在70个实际的阳性数据点中,您的模型预测64个点为正,6个点为负。在30个实际负点中,它预测3个正点和27个负点。 注意: 在“ 真肯定”,“真否定”,“假肯定”和“假否定”表示法中 ,请注意,第二项(“正”或“负”)表示您的预测,而第一项则表示您预测的是对还是错。 基于上面的矩阵,我们可以定义一些非常重要的比率: TPR(真正率)=(真正/实际正) TNR(真负利率)=(真负/实际负) FPR(误报率)=(误报/实际负) FNR(假负率)=(假负/实际正数) 对于我们的糖尿病检测模型,我们可以计算以下比率: TPR = 91.4% TNR = 90% FPR = 10% FNR = 8.6% 如果您希望模型很聪明,那么模型必须正确预测。这意味着您的 “正肯定” 和 “负否定” 应尽可能高 ,同时,您需要将错误 肯定 和 错误否定 应尽可能少的 错误降至最低 。 同样在比率方面,您的 TPR和TNR 应该很高, 而 FPR和FNR 应该非常低 , 智能模型: TPR↑,TNR↑,FPR↓,FNR↓ 愚蠢的模型: TPR,TNR,FPR,FNR的任何其他组合 可能有人争辩说,不可能平等地照顾所有四个比率,因为最终没有一种模型是完美的。那我们该怎么办? 是的,它是真的。因此,这就是为什么我们要建立模型并牢记领域的原因。在某些领域要求我们将特定比率作为主要优先事项,即使以其他比率较差为代价。例如,在癌症诊断中,我们不能不惜一切代价错过任何阳性患者。因此,我们应该将TPR保持在最大值,将FNR保持在接近0的水平。即使我们预测有任何健康的患者被诊断出,也仍然可以,因为他可以进行进一步检查。 准确性 准确度是其字面意思,表示模型的准确度。 准确性=正确的预测/总预测 通过使用混淆矩阵,精度=(TP + TN)/(TP + TN + FP + FN) 准确性是我们可以使用的最简单的性能指标之一。但是让我警告您,准确性有时会导致您对模型产生错误的幻想,因此您应该首先了解所使用的数据集和算法,然后才决定是否使用准确性。 在讨论准确性的失败案例之前,让我为您介绍两种类型的数据集: 平衡的: 一个数据集,包含所有标签/类别几乎相等的条目。例如,在1000个数据点中,600个为正,400个为负。 不平衡: 一种数据集,其中包含偏向特定标签/类别的条目的分布。例如,在1000个条目中,有990个为正面类别,有10个为负面类别。 非常重要:处理不平衡的测试集时,切勿使用准确性作为度量。 为什么? 假设您有一个不平衡的测试集,其中包含 990(+ ve) 和 10(-ve) 的1000个条目 。最终,您以某种方式最终创建了一个糟糕的模型,该模型总是会因列车不平衡而始终预测“ + ve”。现在,当您预测测试集标签时,它将始终预测为“ + ve”。因此,从1000个测试设定点中,您可以获得1000个“ + ve”预测。然后你的准确性就会来 990/1000 = 99% 哇!惊人!您很高兴看到如此出色的准确性得分。 但是,您应该知道您的模型确实很差,因为它总是预测“ + ve”标签。 非常重要:同样,我们无法比较两个返回概率得分并具有相同准确性的模型。 有某些模型可以像Logistic回归那样给出每个数据点属于特定类的概率。让我们来考虑这种情况: 如您所见, 如果P(Y = 1)> 0.5,则预测为类1。 当我们计算M1和M2的精度时,得出的结果相同,但是很明显, M1比M2好得多通过查看概率分数。 Log Loss 处理了这个问题 ,我将在稍后的博客中进行解释。 精度和召回率 精度: 这是真实阳性率(TP)与阳性预测总数的比率。基本上,它告诉我们您的正面预测实际上是正面多少次。 回想一下: 它不过是TPR(上文所述的“真阳性率”)。它告诉我们所有正因素中有多少被预测为正。 (编辑:孝感站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |