混淆矩阵-不再那么令人混淆了

机器学习基础,了解混淆矩阵的所有方面
在本文中 , 我们将重点了解混淆矩阵和使用混淆矩阵(I类错误 , II类错误和准确度)计算的指标 。在分类算法的情况下使用此方法来确定/评估模型的性能 。

混淆矩阵-不再那么令人混淆了

文章插图
 
我们从建立数据集开始 , 同时建立任何统计或ML模型 。将该数据集分为两部分:培训和测试 。保留测试数据集 , 并使用训练数据集训练模型 。一旦模型准备好进行预测 , 我们就尝试对测试数据集进行预测 。一旦将结果分割成类似于上图所示的矩阵 , 就可以看到我们的模型能够预测正确的数量以及其预测错误的数量 。
混淆矩阵-不再那么令人混淆了

文章插图
 
我们使用测试数据集中的数字填充上图中所示的4个单元格(例如 , 具有1000个观察值) 。
· TP(真阳性):在测试数据集中该列的实际标签为"是" , 而我们的逻辑回归模型也预测为"是" 。(500观察)
· TN(真阴性):在测试数据集中该列的实际标签为"否" , 而我们的逻辑回归模型也预测为"否" 。(200观察)
· FP(假阳性):在测试数据集中该列的实际标签为"否" , 但我们的逻辑回归模型预测为"是" 。(100观察)
· FN(假阴性):在测试数据集中该列的实际标签为"是" , 但我们的逻辑回归模型预测为"否" 。(200观察)
这4个单元格构成了"混淆矩阵" , 就像矩阵一样 , 它可以通过清晰地描绘模型的预测能力来减轻对模型优劣的所有混淆 。
混淆矩阵是一个表 , 通常用于描述分类模型(或"分类器")对一组已知真实值的测试数据的性能 。
关于混淆矩阵可以理解的其他指标类型I错误
混淆矩阵-不再那么令人混淆了

文章插图
 
类型1错误也称为误报 , 当分类模型错误地为最初的错误观察结果预测真实结果时发生 。
例如:假设我们的物流模型正在处理垃圾邮件而非垃圾邮件电子邮件用例 。如果我们的模型将原本很重要的电子邮件标记为垃圾邮件 , 那么这就是我们的模型I型错误的示例 。在这个特殊的问题陈述中 , 我们很敏感地尽可能地减少Type I错误 , 因为进入垃圾邮件的重要电子邮件可能会造成严重后果 。
3. II型错误
混淆矩阵-不再那么令人混淆了

文章插图
 
II型错误也称为假阴性 , 当分类模型错误地为原始真实观察结果预测错误结果时 , 就会发生II型错误 。
例如:假设我们的逻辑模型正在处理一个用例 , 它必须预测一个人是否患有癌症 。如果我们的模型将患有癌症的人标记为健康人并将其分类错误 , 则这就是我们的模型发生的II型错误的例子 。在这个特殊的问题陈述中 , 我们对尽可能减少II型错误非常敏感 , 因为在这种情况下 , 如果假阴性继续影响患者 , 则假阴性可能导致死亡 。
4.准确性现在 , 以上讨论的三个指标都是通用指标 , 与您拥有的培训和测试数据的种类以及为问题陈述所部署的分类算法的种类无关 。
我们现在正着手讨论非常适合特定类型数据的指标 。
让我们从这里开始谈论准确性 , 这是最适合平衡数据集的指标 。请参考下图 , 该图源于本文 。
混淆矩阵-不再那么令人混淆了

文章插图
> Source: Link
 
如您所见 , 平衡数据集是一个由训练数据平均代表1和0 , 是和否 , 正负的数据集 。另一方面 , 如果两个类别标签的比率出现偏差 , 则我们的模型将偏向一个类别 。
假设我们有一个平衡的数据集 , 让我们学习什么是准确性 。
混淆矩阵-不再那么令人混淆了

文章插图
 
精度是测量结果与真实值的接近程度 。它告诉我们分类模型能够多么准确地预测问题陈述中给出的类别标签 。
例如:假设我们的分类模型正在尝试预测客户流失情况 。在上图中 , 在总共700个实际损耗的客户(TP + FN)中 , 该模型正确地能够正确分类500个损耗的客户(TP) 。同样 , 在300个保留客户(FP + TN)中 , 该模型正确地能够正确分类200个保留客户(TN) 。


推荐阅读