如何使大型混淆矩阵更易于阅读?


9

我最近发布了369个类的数据集(link)。我对它们进行了一些实验,以了解分类任务的难度。通常,如果有混淆矩阵来查看所犯错误的类型,我会喜欢它。但是,一个矩阵并不实用。369×369

有没有办法提供有关大型混淆矩阵的重要信息?例如,通常有很多0并不是那么有趣。是否可以对类进行排序,以使大多数非零条目都位于对角线附近,以便允许显示作为完整混淆矩阵一部分的多个矩阵?

这是一个大混淆矩阵的例子

野外的例子

EMNIST的图6 看起来不错:

在此处输入图片说明

很容易看到很多情况。但是,这些只有班级。如果使用,而不是只有一列的整个页面,这可能可能是3倍之多,但也仍然只有3 26 = 78类。甚至没有接近369类HASY或1000种ImageNet。26326=78

也可以看看

我对CS.stackexchange的类似问题


我很可惜;-)您可以为每个课程尝试一个对所有的混淆矩阵。给定它们,行为不是典型的外观或类,并仅对它们使用完整的混淆矩阵。
DaL

1
为什么不只是报告每个类别的模型的准确性。谁真正需要查看整个矩阵?
Darrin Thomas

1
@DarrinThomas不仅是在论文中进行报告。这也是我自己分析错误。
Martin Thoma

1
首先,您可以按行规范化值,然后将其绘制为热图。此外,您可以按类别精度(对角线的归一化值)对类别进行排序。我想这将大大提高可读性。
Nikolas Rieble

1
我可能应该再次在math.SE / stackoverflow中问这个问题。我很确定有一些算法可以对行/列进行重新排序,以使大多数值都接近对角线。
马丁·托马

Answers:


4

您可以应用我在硕士学位论文(第48ff页)中描述的一种称为混淆矩阵排序(CMO)的技术:

  1. 以这种方式对列/行进行排序,以使大多数错误都沿着对角线。
  2. 将混淆矩阵拆分为多个块,以便可以轻松打印/查看单个块,并且可以删除一些块,因为数据点很少。

很好的副作用:此方法还会自动将相似的类聚类在一起。我的硕士论文的图5.12显示:

在此处输入图片说明

您可以应用混淆矩阵排序 clana


有关实现,请参见github.com/MartinThoma/clana
Martin Thoma,

1

建议不要尝试寻找其他方式来可视化数据,而不是尝试对列和行进行重新排序。

一世Ĵ一世Ĵ。同样,您可以具有〜20个细粒度的混淆矩阵:对于每个群集,您可以显示类的混淆矩阵,对于每个群集中的〜20个类。当然,您也可以使用分层聚类来扩展它,并在多个粒度上具有混淆矩阵。

可能还有其他可能的可视化策略。

作为一般的哲学观点:它也可能有助于阐明您的目标(您想从可视化中获得什么)。您可以区分两种可视化用途:

  • 探索性分析:您不确定要查找的内容;您只需要可视化可以帮助您在数据中查找有趣的模式或工件的可视化。

  • 带有消息的图形:您有一条特定的消息要让读者摘走,并且想要设计一个可视化图表来帮助支持该消息或为该消息提供证据。

它可以帮助您了解要针对的目标,然后针对此目标设计可视化:

  • 如果您要进行探索性分析,而不是尝试选择一个完美的可视化,尝试创建尽可能多的可视化通常会很有帮助。不用担心它们是否完美;如果每个人都存在缺陷,那就没关系,因为每个人可能会给您一个关于数据的潜在不同观点(这在某些方面可能是好的,而在另一些方面则是坏的)。

  • 如果您有想要传达的特定消息或想要发展的主题,请寻找支持该主题的可视化效果。在不知道主题/消息可能是什么的情况下很难提出具体建议。


0

重要的是要知道为什么EMNIST混淆矩阵看起来不错。

但是我觉得奇怪的是,他们并没有保持颜色较高的数字,而是保持最深的颜色,例如,大多数包含零的空缺失分类的灰度级比包含整数的灰度级要深。似乎不一致。

我将尝试使用EMINST样式,但保持一致,其中颜色表示单元格中的条目数。白色表示零个完整,黑色表示最多的个。

理想的分类是黑色的对角线以及完全白色的上下三角形。如果三角形中有任何灰色斑点,则表示存在问题。即使在1000个班级上,这也会有所帮助。对于ImageNet,其中的类是分层的,也许对列进行排序,以便子类在父类的右边分组,这会导致方形的深色斑点。

同样,如果您获得图像的前5个响应,则类可能不会互斥,因此lap_dog图像的狗分类仍应为真,因此在这种混淆矩阵中,更通用的类应更暗比精确分类(如果将颜色标准化)。因此,左上角的方块将最暗。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.