检查结果的混淆矩阵

数据挖掘 机器学习 混淆矩阵
2022-02-16 07:30:54

我是 StackExchange 的新用户和数据科学的新学习者。我正在努力更好地理解如何估计收集的结果,特别是从运行某些分析的数据集中提取的假用户。

使用特定的算法,我找到了一些用户

User_Alg

user1
user2
user3
user28
user76
user67

我想估计我的算法与包含所有手动标记的假用户的数据集相比的准确性:

User_Dat
user1
user5
user28
user76
user67
user2
user29

如您所见,在我提取的列表 ( User_Alg) 中有一些用户丢失了,即未包含在手动标记的列表中(数据集中的所有假用户User_Dat我曾想过使用混淆矩阵来检查准确性,但我想从比我更有统计和机器学习经验的人那里了解这种方法是否可行以及它的外观如何,或者您是否推荐另一种方法.

感谢您的关注和时间。

2个回答

混淆矩阵确实是分析实验结果的一种非常有用的方法。它为所有可能的类提供了真实类 X 预测为类 Y 的实例的确切数量(或百分比)。因此,它提供了系统分类正确与否的详细图片。

但是如果想将分类器的性能总结为一个单一的值,那么混淆矩阵就有点过于详细了。这在想要比较两个不同的分类器时特别有用,因为没有比较两个混淆矩阵的通用方法。这就是为什么人们经常使用评估措施:对于二元分类,最常见的是:

  • 准确率,即正确预测的数量除以实例总数。
  • F-score,它本身就是准确率和召回率的调和平均值。具有讽刺意味的是,F-score 比准确度更准确地描述了性能,因为它考虑了不同类型的可能错误。

混淆矩阵是对分类器进行评分的好方法。还有一些额外的指标只是来自混淆矩阵的摘要统计信息。其中一些是:

  • 准确度——你的预测有多少是正确的。您可以通过真阳性的总数 + 真阴性的总数除以数据点的数量(在您的情况下为用户)来计算。(TP + TN) / 总预测。
  • 精度 - 预测阳性的百分比是正确的。所以真正的阳性除以预测阳性的总数,TP / (TP + FP)。
  • 回忆 - 你捕获的阳性总数的百分比是多少?真阳性数除以总人口中的阳性总数,TP / (TP + FN)。
  • 真阴性率 - 预测阴性的百分比是正确的。TN / (TN + FP)。

一般来说,精度不会被太频繁地使用,因为它可能会非常误导偏斜的频率。数据科学通常关注我提到的其他指标。准确率和召回率之间几乎总是存在权衡,而了解用例可以让您权衡权衡。例如,癌症诊断血液测试通常更倾向于召回而不是精确度,因此它不会错过任何真正的阳性结果。后续测试(例如 MRI)通常可以帮助区分真阳性和假阳性,我可能会猜测这偏向于精确度,因此没有患者接受不必要的手术。为了更好地理解权衡,有时会生成 ROC 曲线(误报率与召回率图)。这个维基百科页面是一个很好的起点:https://en.wikipedia。