【阅读论文】-- ConfusionFlow: A Model-Agnostic Visualization for Temporal Analysis of Classifier Confusion

ConfusionFlow:用于分类器混淆时间分析的模型无关可视化
-
-
摘要
-
1 引言
-
2 问题空间表征
-
- 2.1 分析粒度
- 2.2 分析任务
-
3 相关工作
-
- 3.1 模型比较
- 3.2 训练的时间分析
- 3.3 类混乱
-
基于CONFUSIONFLOW的技术
混淆流矩阵表
类别表现与分布视图
详细分析视图
时间轴分析
数据集的选择策略
实施步骤
-
第五章 评价
-
案例分析:主动学习中的关键标签
-
示例说明:适用于多种分类场景
-
应用案例:神经网络剪枝技术
-
研究成果的总结与讨论
-
6 未来的工作
-
- 6.1 实例级分析
- 6.2 多标签分类
-
7 结论
-
致谢
-
参考文献
-

期刊平台: IEEE Transactions on Visualization and Computer Graphics(发表日期: 2022年)
摘要
作为主要的监督机器学习技术之一,在实际应用中得到了广泛的应用。然而,在面对各种各样的分类模型时,在为特定任务寻找最优分类器方面仍然面临着诸多挑战。在模型开发与调试阶段需要关注多个关键指标:首先是对分类器性能的量化评估;其次是对其随训练过程的学习曲线进行分析;最后是通过对比不同架构或优化策略来找出最佳方案。传统的单一指标评估方式难以满足深入分析的需求。为了更全面地理解分类器的行为特征,《ConfusionFlow》提供了一种交互式的可视化解决方案。该工具不仅能够展示各类别之间的混淆关系,并且能够直观地观察这些关系随着时间的变化而发生怎样的演变。此外,《ConfusionFlow》还支持对不同因素(如模型架构、训练数据等)的影响进行系统性研究。我们通过主动学习中的实例选择策略验证了该工具的有效性,并进一步探讨了其扩展性问题,在神经网络剪枝领域展示了该方法的一个典型应用案例。
1 引言
分类是机器学习中最常见的核心任务之一。许多来自不同领域的关键领域的问题都可以被框架为分类任务。许多复杂的先进模型架构如神经网络已经被广泛应用于各个领域,并且已经证明了其有效性。开发与部署这些模型面临诸多挑战。特别是多类别分类器在实际应用中表现尤为出色;它们能够识别并准确划分多个目标类别;而二元分类器则专注于识别并区分两种类别。
在分类器开发过程中,数据科学家面临着一系列挑战。他们需监控模型性能随时间的变化情况,并认识到这一概念具有双重性质。一方面,在机器学习开发中,通常采用增量式和迭代式的方式进行工作流程,并且通常是通过连续实验不断优化模型结构;另一方面,在实际训练中(即算法层面),这是一个动态优化过程,并且涉及不同阶段模型状态的变化情况。在上述情况下(即第一种情况),通过对比分析可以助于判断数据科学家是否沿着正确的发展方向推进项目;而在第二种情况下(即后一种情况),通过时间分析可以确定最佳停止训练时机以避免过拟合问题,并使模型能够泛化到未曾见过的新样本数据上。
模型的行为主要由超参数、优化器或损失函数的选择所决定。这些选择对整体性能的影响并不明显。当深入分析时,在某些特定情况下(例如通常涉及"混淆"的类对),这种影响也不那么显著。然而了解模型各分类别的性能信息有助于数据科学家做出更明智的决策。
为了应对这些挑战 数据科学家一般会运用三种不同类型的策略 第一 他们经常借助时间序列图表来考察单一价值的绩效指标 比如准确性 这种方法非常适合分析学习行为 但它本质上未能提供更细致的分类层次信息 第二 数据科学家会使用各种工具来进行分类器性能对比 然而这些工具往往同样未能提供类别的详细信息 或者它们并不特别适合时间序列分析 第三 数据科学家会基于混淆矩阵来评估各个类别上的表现[50] 不幸的是 经典型混淆矩阵严格的结构并不适合于模型对比或时间序列分析
到目前为止,较少有工具能够从时间、模型比较以及类别级别的综合运用角度进行分类分析。然而,在同一个工具中从所有这三个维度获取见解不仅能够(1)作为解析模型性能的基础依据;(2)有助于引导模型适应空间的方向;(3)提供对模型与其底层数据之间互动关系的深入理解。
我们论文的核心创新点是ConfusionFlow, 一种以精确度与召回率为核心指标设计的可视化工具, 可以实现时间上的优化, 不同类别间的对比分析以及同一类别内部的表现评估. 为此, 我们开发了一种传统混淆矩阵的时间适应方法.
作为次要贡献,在本研究中我们提出了以下关键内容:(1)全面分析了分类器性能在问题空间中的特征;(2)详细探讨了一个案例研究来展示ConfusionFlow在主动学习标记策略中的应用;(3)系统性评估了ConfusionFlow的可扩展性;(4)针对神经网络剪枝场景的应用情况进行了详细说明。
2 问题空间表征
开发新的分类模型或者现有模型适用于新兴应用场景的过程本质上是一种高度试验性质的任务。在这一过程中涉及了许多重要的设计抉择,比如选择架构类型、合适的优化策略以及一系列超参数设置,这些选项对学习过程的影响非常显著,并且直接影响最终分类器的表现质量。因此,在迭代过程中需要不断训练并评估基于不同架构或配置的各种分类器,在此我们采用术语配置来代表整个系统的组件包括但不限于:优化技术方案、各种超参数设置以及输入数据特征,这个设计过程要求用户在多次迭代过程中对比不同架构或配置的学习效果及其表现,为此,在实际应用环境中通常会对准确率与召回率等关键性能指标进行持续监控与评估,根据所采用的方法论框架,在这个研究领域内通常会在三个具体层级上展开深入分析研究
2.1 分析粒度
基于我们对相关领域的回顾(参考第3节),分类器的主要性能评估任务可以从以下三个维度展开(如图1所示):

L1 整体水平 - 在整体水平上,在分类器性能方面是通过整合所有数据集的结果生成一个总分来进行评估的。总体准确率通常被视为评估整体性能的标准指标。为了直观地呈现训练迭代中的变化情况,在全球范围内我们可以使用折线图来展示总的分数变化趋势。
第二层类别层级* 在具体标签类型下进行的性能评估基于结果集合计算得出。常见评估标准包括分类准确率、正精度和真正例率。在整体水平相当的情况下,在整个训练过程中这些指标的变化趋势可以通过折线图进行展示。混淆矩阵汇总了更为详细的信息。该研究成功地解决了多轮训练过程中动态展示混淆矩阵的问题。
L3 层级3 - 在实例级别的质量评估中,则是基于各个真实标签与预测标签(或预测类概率)之间的对比进行的评估。这种评估方法有助于识别出存在质量问题的数据样本。进一步分析这些问题时发现,在不同的模型架构与数据类型背景下所采取的具体策略往往呈现出显著差异性。具体而言,在面对不同的问题场景时可能会提取到不同类型的重要信息来源,并结合输入图像特征、神经元激活以及更高阶的概念(例如显著性图谱等)来进行深入分析研究[47]
三种层次是各个实例预测的不同水平的综合。图 1(右)直观展示了跨迭代可视化这些层次的数据,并用于评估训练效果。
ConfusionFlow 专为对每类总分数的时间分布进行分析而设计,并用于展示训练迭代中各类别间的混淆矩阵可视化效果。因此,在第二层(L2)上进行可视化呈现。
2.2 分析任务
ConfusionFlow 是一种专为数据科学与机器学习领域的从业者设计的产品(涵盖从模型开发者到实际应用者的一系列角色)。它建立在对这些群体在相关研究中反馈(参考第 3 章)以及我们合作伙伴实践经验的特性基础上,并将用户的意图与目标归类为特定的任务属性或目标,在此之后会逐步展开说明。(注:括号内容未做改动)
本研究探讨了比较轴在区分类型内和类型间差异方面的应用,并采用了基于内部与外部二分法的研究框架来解析单个类别结果及其与其他类别结果之间的关系。从内部视角出发进行分析的方法暗示了第2.1节中讨论的具体细节层级。对于类型间分析而言,则需要遵循基于多维度对比的原则来识别类别间的异质性特征。实际应用场景中通常会设计一组不同的分类配置方案,并通过这些方案来探索数据集共性和差异性特征之间的联系与区别。在与合作伙伴的讨论中发现,在实际应用场景中通常会设计一组不同的参数设置或模型架构来实现这一目标,并根据这些设定生成多样化的分析结果以供参考使用
第二个轴设计的时间序列分析项目(G2)。沿此轴线划分的主要类型包括用于常规的时间序列分析[2]的任务:如数据收集、趋势观察以及异常检测等核心环节。
由于这两个轴实现了完整的横切操作而导致六个主要分析任务被直接划分出来,并列出了T1至T6(如表1所示)。每个任务前都提供了一个具体案例来详细阐述如何将抽象化的基础性任务与ML分析流程建立关联。
在第2.1节中提到的事实表明:大部分现有工具仅在全局层次(L1)上实现对时间分析的支持(G2)。根据后续的文献调查结果可以看出,在类别的层面进行分类器(G1b)之间的比较相对较少。其创新性主要体现在以比较与时间的方式实现精确度与召回率导向下的类别级分析。
图 2 展示了同时开展高级任务 G1 和 G2 的所有可能情况,并特别聚焦于类别间的对比 (G1b)。该图表展示了最普遍的情形——即当模型与数据集分别为 C ⇔ D 和 X ⇔ Y 时,并且随着时间的推移而发生变化时 (X_i , X_j)。然而,在某些特殊情况下(例如数据集或模型保持固定),则可以从图 2 中概括的情况衍生出一系列特定的对比分析及/或时间研究任务:

- 在观察如何在恒定数据集(所有 t 的 X_t =X)上训练单个模型的简单情况下,用户仅对序列 C(θ_1)(X) · · · C(θ_T )(X) 感兴趣。这对应于绩效测量(T1 )和进度测量任务(T2 )。
- 为了比较两个分类模型 C 和 D 在相同测试集 X 上的最终性能,用户分析了 C(θ_T)(X) 与 D(ζ_T)(X)对。这是任务T4 的典型实现。
- 通常,需要临时比较分类器在两个不同数据集折叠(例如训练折叠和测试折叠)上的性能。这种情况意味着所有 t 都有 C = D、X_t =X 和 Y_t= Y,但 X\neq Y。用户现在需要将序列 C(θ_1)(X) · · · C(θ_T)(X) 与序列 C( θ_1)(Y)···C(θ_T)(Y)。该分析包括对趋势和异常的比较评估(任务 T5 和 T6 )。
- 一个更复杂的例子是主动学习期间两个分类器的比较(参见第 5.1 节)。在这种情况下,两个模型都在同一数据集上进行训练,但数据集随着时间的推移而变化。用户将序列 C(θ_1)(X_1) · · · C(θ_T )(X_T ) 与序列 D(ζ_1)(X_1) · · · D(ζ_T )(X_T ) 进行比较。所有细粒度任务 T1 到 T6 都可能与这个复杂的示例相关。
特别地,在表 1 中选取了一系列示例场景,并将其保留为与具体级别的无关性。这些任务(T1至T6)在每一个细节级别的范围内均展现出高度的相关性。特别地,ConfusionFlow 专注于使用户能够在类别 L2 的层次上完成特定的任务,并进一步整合了来自混淆矩阵分析的全局信息。
3 相关工作
近年来机器学习呈现复兴趋势,在深度学习的应用日益普遍的情况下,相应地对开发与监控相关工具的需求显著提升;与此同时人们对于现有技术深入理解的愿望也随之增强。在这一背景下算法设计领域持续关注着ML算法可解释性问题与算法设计领域的相互作用;特别是在数据可视化领域已展现出高度活跃的研究氛围针对数据可视化的挑战性探讨
在下文中
通过文献调查可以看出, 到目前为止, 尚未有工具专门针对在类细节级别(L2)上进行Comparative Analysis (特别是针对Model间, G1b) 和Time Analysis (G2) 这两个高级目标。
3.1 模型比较
研究者们对视觉比较的设计空间进行了系统分类,并将其划分为三个主要类别:包括并置布局、叠加效果以及显式表示形式[20]。通常情况下,在可视化单数性能指标时,机器学习模型倾向于采用叠加的方式;而对于多维数据(如向量、矩阵)或非结构化信息(如图像、文本),则多采用并置的方式以对比差异特征
在神经网络开发、调试和评估过程中发挥重要作用的一个著名可视化工具是Abadi等人创建的TensorFlow中的TensorBoard功能[1,58]。它整合了计算图可视化的展示与多种性能指标的数据呈现,并非为了在同一视图中对比多个机器学习模型而设计。此外,在数据集发生更改时对模型进行对比分析的能力是Google提供的What-If工具所具备的功能特性[57]。
针对特定模型架构设计的比较工具已由Ming团队开发:RNNVis。用于循环神经网络的研究者Wang团队开发了GANViz。此外,在生成对抗网络领域,Zeng团队推出了CNNComparator.在卷积神经网络中使用RNNVis,它提供了一个基于字形显示句子主界面.该系统允许并行比较两个不同配置或相同配置的不同模型状态.然而,RNNVis不具备即时访问类混淆度量功能.卷积神经网络中使用ShapeShop.该系统专为非专业人士设计,旨在让用户了解网络学习内容而非深入评估功能.
研究团队张等人开发了一个名为Manifold [62] 的数学模型框架。该框架具有通用性特点,在无需修改现有机器学习(ML)模型的情况下即可实现对不同模型的行为进行分析、比较以及诊断目的。研究者通过使用低分辨率散点图来直观地反映出每个模型在处理数据时所呈现出来的类别间的混乱状态,并且该方法能够帮助人们观察到不同模型在输出分类结果时所展现出的独特特征。值得注意的是,在这种多模态数据可视化方法下虽然可以通过颜色编码手段来反映各分类器之间的混乱程度但仍然缺乏一种系统化的方法来追踪各学习过程的具体行为轨迹
两个模型之间的比较不仅不能单独用于判断哪个模型自身性能更强, 还能作为构建新集成模型或进行交互性参数调节的工作流程的重要组成部分. 在 van den Elzen 和 van Wijk 的 BaobabView 软件[53]中, 用户不仅能够手动修剪决策树, 还能够对比生成树与原始树的表现(例如通过查看混淆矩阵进行分析). 另外, Talbot 等人提出的 EnsembleMatrix 工具[52]则展示了不同分类器对应的混淆矩阵, 从而帮助用户从整体上构建加权组合. 最后, 根据各类别的混淆情况, 可以进一步评估所构建集成模型的表现.
在这些技术中,每一项都能够以某种方式对多个模型及其状态进行性能对比(解决目标 G1b),然而可能会忽略时间相关因素(G2),或者无法生成类间混淆信息(L2)。
3.2 训练的时间分析
我们对模型训练所需时间进行系统回顾与整理,并将其划分为与模型训练相关的各个时间分析任务的详细阐述;随后重点概述了用于评估分类器质量特征的时间评估方法的相关内容
在数据挖掘、机器学习以及可视化研究领域中
现在,我们概述了解决这些一般时间分析任务的特定 ML 性能分析工具。
TensorBoard 和 GanViz 通过基于准确度或其他性能指标绘制的趋势图来增强其主要可视化效果。同样地,在Chung等人的ReVACNN系统中展示了一个额外窗口以呈现时间统计信息用于实时分析卷积神经网络的行为模式。此外,在CNNComparator中通过对比不同训练阶段的模型状态可以获取有限的时间相关信息以辅助分析
DeepEyes 方法由Pezzotti等研究者开发[42]。该方法是一种渐进行为分析界面,并整合了损失曲线、准确度分布以及困惑度直方图和激活模式图等关键指标的可视化表示方式。在模型训练过程中,在线呈现的损失曲线变化趋势也被设计成一种直观的教学辅助界面,在TensorFlow Playground[48]或其他生成对抗网络(GAN)研究平台上得到了广泛应用
Liu 等人开发的 DeepTracker 工具[34]采用立方体形式展示了性能数据,并沿用了三个维度中的一个维度进行训练。另外一种实现学习行为检查的方法是选择器或滑块装置,在主可视化界面或多个可视化界面中提供链接,并允许用户对各个迭代过程进行访问。蔡等人(参考文献[13])采用了该技术并在分类结果中进行了应用;Wang 等人也遵循了这一方法论。DQNViz 工具[55]专注于理解深度 Q 网络的表现;在 Bruckner 提出的 ML-o-scope 工具包中的一项视图中引入了元滑块装置与混淆矩阵相关联,在此过程中用户能够与具体实例进行交互式增强分析。此外,在 Alsallakh 等人提出的 Blocks 系统[4]中也实现了元滑块装置与混淆矩阵的相关联功能;该系统支持对神经网络潜在类层次结构的研究工作,并要求其可视化功能具备多层级展示能力
这些用于探索学习行为的工具中,并不任何一个都同时具备比较功能
3.3 类混乱
当对二级分类器的输出结果进行评估时,类间的混乱现象可以用不同的方式来解释。通常情况下,这种混乱现象指的是混淆矩阵各个单元格内所采用的数据聚合方法。然而,在个别实例中可能会出现一种情况:尽管整体上某个类别的概率很高,但在具体某个实例上却出现了多个类别表现出较高的置信度值。为了避免这种表述上的模糊性,在讨论此类问题时我们将其特别定义为'每个实例中的分类不确定性'。
到目前为止提及的作品中,在层级(L2)层面都支持性能分析功能的是BaobabView [53]、EnsembleMatrix [52]、ML-o-scope [12] 和 Blocks [4]. 这些工具均是通过标准混淆矩阵来可视化类别间的混淆关系,在每一次训练步骤以及最终分类器阶段均可实现这一功能.
混淆矩阵主要由 Kapil 等人开发的 ManiMatrix 工具构成其核心。 [30] 该工具主要用于交互式地调整分类边界。通过这一功能,研究人员能够深入研究限制一类与其他类别之间的混淆关系及其对整体分类系统的影响,其目的是通过提高模型对不同类别间的区分能力以及增强结果解读性来提升整体性能
除了混淆矩阵外,还引入了替代方案来评估 L2 级别分类器的性能表现。阿尔萨拉赫及其团队引入了一种名为混乱轮[3]的方法。这种方法由一个圆形和弦图构成,在外部环形图通过编码每个类别产生的误判(FN)、误报(FP)、正确检测(TP)和正确排除(TN)的数量来表示。 Ren等人的研究则专注于可视化每个实例的分类不确定性。可以通过绘制预测分数分布直方图来观察各个实例的表现,并使用并行坐标对其进行可视化编码比较。此外,在每个类别对应的迷你图表中都能看出整体上的分类混乱情况对比结果表明 Squares则允许同时在 L2 和 L3 层级上进行混合级别上的混淆分析比较
现有的分类层级的表现分析(L2)无法有效呈现学习行为(G2)在即时性和时间维度上的信息;此外,在比较不同类别(G1b)的学习行为特征时,现有工具表现出明显的局限性。
4 CONFUSIONFLOW 技术
由三个组成部分构成的ConfusionFlow界面如图3所示:其中(A)部分展示了一个或多个分类器在不同时间点上的混淆矩阵;(B)部分则呈现了各类别间的表现及分布情况,并展示了实例在各个类别中的分布情况;此外还有(C)部分提供了一个放大版的时间序列曲线视图以便于深入分析关键性能指标的变化趋势。另外该界面还具备(D)一个动态时间线工具方便用户选择训练步骤范围以及(E)一个数据加载控制面板它同时作为整个可视化的操作说明。

图 3 展示了通过 ConfusionFlow 比较神经网络在各种数据集上的图像分类性能。其中训练集(绿色)基于CIFAR-10[31]训练得到;测试集中包含橙色部分来自原始CIFAR-10的数据以及蓝色部分来自CIFAR-10.1[43]。
4.1 混淆流矩阵
ConfusionFlow 矩阵如图3.A及4所示是一种用于展示分类错误的数据可视化工具它支持对内部模型与外部模型的对比分析(G1)以及对训练进程的时间序列分析(G2)。传统的混淆矩阵通常用于反映单一模型在同一时间点上的分类结果而ConfusionFlow矩阵则能够通过小样本倍增技术针对每个单元格在传统混淆矩阵的基础上提供更为详细的时间序列信息以反映不同时间段内各类别间的误判情况这种做法相较于经典的方法具有显著提升效果因为它不仅能够展现单一模型在同一时间段内的误判情况还能通过对比不同时间段的数据变化趋势帮助评估模型性能随训练进度的变化趋势

ConfusionFlow 矩阵旨在同时启用时间分析 (G2) 和比较 (G1b),并保留熟悉化的混淆矩阵布局。这种设计要求每个分类模型的混淆可视化占用的空间相对较小的同时仍能充分展示细粒度的时间分辨率以便不同模型的时间进程能够清晰地区分为此方案采用了类别的典型热图表示方法来展示混淆值[7]。一维热图(有时被称为色域)已经被证明能够有效地支持时间序列比较任务特别是在任务完成时间方面[22]。右上角缩略图展示了通过这种惯用法对单个矩阵单元的时间混淆值进行编码的方法:每个单元包含一个加载模型的时间序列在折线图编码模式下多个时间序列会被叠加在同一图表中(叠加策略参见Gleicher等人[20])。将这种线状图形转换为一维热图后可以通过堆叠的方式进行比较从而避免过度绘制的问题(并置策略[20])。这些堆叠而成的热图有时被称为"烤宽面条图"[51]。通过将亮度编码为混淆值并赋予每个分类器独特的色调此方案实现了视觉上的统一性以增强用户的理解效果。具体而言实际应用中此类堆叠式热图构成了ConfusionFlow矩阵的整体架构

该系统提供了一个交互式选项允许用户切换至类内混淆度的时序折线图表示方式。该功能的存在基于两个主要理由:首先,在机器学习领域内的用户普遍偏好使用折线图表来展示时间性能指标;其次,在这种图表下易于比较不同时间段或不同模型之间的具体数值(T1及T4)。当采用时序折线图表时,并且同时选择了单个迭代选项(有关时间线选择器的信息,请参阅第 4.4 节),则会在该图表中叠加所选迭代对应的混淆值热图表作为背景(如图4右侧所示)。这种附加的热图表有助于增强时序折线图表中存在困惑对象对的视觉显著性;而这种显著性特征实际上已经由热图表编码机制所固有。

对于预设类别中的细胞而言,在时间轴上顺序排列(time依次从左至右排列),这一安排符合大多数用户的预期(expectation)。若采用热图编码方案,则可更方便地沿着指定的地基实况类(ground factual category)展开对比分析(comparative analysis)。
正确分类实例的数量被记录在经典混淆矩阵主对角线上。在功能良好的分类器中,这些数量通常显著高于混淆计数.为了确保用户能够专注错误行为分析并保持混淆值查找的有效性(T1 和 T4),我们决定用类标签替换ConfusionFlow矩阵中的主对角元素.通过这种方法,在非主对角线单元中实现了高度视觉对比,并有助于在矩阵中进行导航.
为了让各分类器整体性能对比清晰直观, 在右侧补充列展示了每个类别对应的假阴性时间曲线, 同时在底部补充行呈现了每个类别对应的误报数量. 通过在交叉点处使用对角线元素的方式展示分类器整体准确度随时间的变化趋势, 从而使得用户能够在全局层面上(标记为L1)进行所有分析任务T1至T6, 并且当该图表进入详细视图时(请参阅第4.3节)。
为了比较不同规模的数据集(T4 到 T6 )之间的模型表现,并以训练集与测试集为例,在ConfusionFlow中提供了将绝对准确度指标转换为相对表现度的功能。通过计算混淆计数与分类实例总数的比例关系,即可获得反映分类准确性相对于总实例数的比例这一关键指标。
针对异常检测任务(T3 和 T6),存在异常的类对或经过训练迭代后的峰值通常在默认设置下呈现明显的特征。然而,在某些情况下, 显著较高的混淆计数可能会掩盖其他细胞中的潜在有趣发现. 为了应对这一挑战, 在热图中我们提供了线性与对数刻度切换的功能. 通过指数缩放滑块调节参数后, 在较低数值区域能够获得更高的对比度. 在热图编码中, 则表现为增强数值差异的效果.
如果一个用户仅对某个字母表中的子集感兴趣,则可以在字母表选择对话框中限定可选的类别数量。为了保证混淆矩阵的有效性,在实际应用中必须至少选择两个类别进行比较。尽管在展示类别数量方面不存在技术限制(理论上可无限显示),但在实际操作中仍存在若干限制因素,在本章5.2节将对此进行详细阐述。另一条途径是采用类别聚合策略以减少可展示的类别数量。然而目前ConfusionFlow该功能受限于其对不同层次结构数据集的支持能力。
如图 3所示的 CIFAR-10 示例中
4.2 类表现和分布视图
对分类器性能进行全面分析(L2)不仅应该关注类别间的对比关系,还应当从整体上考察各类别的性能表现
为此

在图 3所示的CIFAR示例中,在经过微调后的模型上生成预测结果的过程中发现,在新测试集中特别低的是汽车类别以及卡车类别在召回率与精确度上的表现。通过精度、召回率及F1分数等指标可以看出,在这些指标上与原始模型相比有所下降,并且这种下降主要集中在两类具体分类任务上——特别是针对飞机实例的表现更为的理想化程度较低的情况而言
4.3 详细视图
在ConfusionFlow矩阵的所有单元格及各类性能图表中均可选择单独视图以实现更为详尽的展示(如图 3.C所示)。当选定特定细胞后,默认会将其时间发展过程以折线形式表示,并叠加各类分类器曲线以保持各模型/配置的一致色调。特别专注于解决的问题实例(T3和T6)包括精确识别其发生时间以及对比数值结果(T1和T4),而由于矩阵空间限制,在这一细节视图中仅能呈现有限信息。当导入新的性能数据集时,默认情况下会显示整体准确率指标,在这一细节视图中呈现这一指标是因为用户已对此图形较为熟悉
通过详细的视图验证,在常规迭代过程中的更新后的CIFAR-10.1测试集的兴趣混淆值(汽车与卡车)约为CIFAR-10测试集和训练集的两倍。
4.4 时间轴
ConfusionFlow 为用户提供了一个工具或平台来研究分类器在不同时间粒度下的行为表现及其错误情况。该方法涵盖了一阶时序任务(如 T1 和 T4)以及多阶时序任务(涉及 T2、T3、T5 和 T6)。图 3.D 的可视化展示可以帮助从粗粒度的时间分析转向对细节时间段进行更为深入的研究

在默认情况下,在加载性能数据时会设置为整个可用迭代区间。用户可以通过调整时间线上的选定区域边界来设置子集范围。所有相关的视图(例如ConfusionFlow矩阵或详细视图)会根据用户的设置进行实时更新。所选的时间范围对应于时间轴上的缩放设置。
该系统允许用户在多个视图间快速定位并对比特定时间步的数据。此外,在界面右侧的范围内设置一个可调节的时间窗口,并通过点击范围选择器下方的迭代编号按钮(Iteration Selector)来指定具体的训练步骤数量。当用户点击任意一个时间段后,在时间轴上绘制的一条黑色线条标识当前选定的具体迭代。随后,在所有相关的链接组件中(如模型架构图或数据加载流程),系统会以垂直线条的形式动态地将选定的具体迭代进行高亮显示。特别地,在ConfusionFlow矩阵中选择了折线图编码的情况下,默认情况下背景热图将按照第4.1节所述的方式进行更新
在图 3 的 CIFAR 示例中(原句),性能数据涵盖了50个不同的时期(替换为更自然的词汇)。该研究者同时聚焦于从纪元0到42的时间跨度(调整句子结构),并在细粒度视图中深入观察到了纪元22处出现的汽车与卡车混淆现象(使用更具体的表述)。
4.5 数据集选择
如上所述,在加载相应的性能数据时,在每个分类中鲜明地分配独特的色调。带有预设下拉提示的输入字段允许用户从预先加载的性能数据中选择多个分类配置(参见图 3.E)。选择后,输入字段将作为视觉图例使用,并以颜色框表示每次对应配置。

ConfusionFlow 是一种不依赖于模型架构的可视化工具。它表明 ConfusionFlow 所依赖的数据形式并不受特定模型设计的影响。在训练过程中,每次迭代后只需记录每个样本的分类器预测结果,并与其真实标签一并保存起来。除了本论文中的原型设计(参见下面的 4.6 节),我们还提供了用于记录和导出常用机器学习框架 TensorFlow 和 PyTorch 数据的 Python 代码示例。
在图 3 中显示的输入字段作为一个示例标注了用于比较的 CIFAR-10 数据集(绿色表示为 training set, 橙色表示为 testing set)以及最近提出的另一份新测试数据(蓝色表示为 test set)。这些数据已成功加载。
4.6 实施
构建在 Cayleydo Phovea 框架 2 和 Flask 框架 3 上的 ConfusionFlow 是一个服务型客户端应用程序。后端服务由 Python 开发人员编写。前端展示层由开发人员分别使用 D3.js 和 TypeScript 实现。ConfusionFlow 的代码(包含前述日志记录工具)可在 GitHub 上找到。
包含多个预加载示例数据集的ConfusionFlow(Prototype:https://confusionflow.caleydoapp.org)在支持下提供线上可用的服务
5 评价
为了检验ConfusionFlow的实际应用价值, 我们设计了三个典型场景. 第一个案例涉及与机器学习领域的专家合作开展的研究工作. 在这项研究中, 他们的团队利用ConfusionFlow这一工具, 直观对比主动学习中标注策略的选择. 第二个实验场景聚焦于评估该方法在处理大量数据集时的表现, 具体包括拥有高达10个类别的复杂分类问题. 最后一个实际应用则深入探讨了通过剪枝不同神经网络结构来优化模型性能的方法.
5.1 案例研究:主动学习中的有效标签
标记数据是监督机器学习任务中不可或缺的前提条件。人工标注过程要求对数据实例赋予语义信息。本研究面临的主要挑战包括如何选择合适的数据进行标注以提升模型性能,并尽可能减少标注者的负担。具体而言, 问题在于: 在现有资源限制下, 应该如何挑选最具代表性的样本进行详细标注, 同时又能实现以下两个目标: (a) 最大限度地提高分类器性能; (b) 降低注释者的劳动强度
在主动学习领域[46]中,视觉交互标签(VIAL)[10]是一种通过整合人类认知与算法优势以实现高效实例筛选的概念。为此提出一种创新方法:通过将主动学习与视觉交互界面整合,使得人类不仅能够探索而且能够高效地筛选实例 [8]。
本研究中采用的一种基于模型的方法称为Smallest Margin [59](引用文献59),该方法倾向于选择那些分类器预测结果最不确定的未标记样本作为学习对象。相比之下,在实际应用中人们通常会选择密度较高的区域中的样本进行标注(引用文献9),这种做法源于人类倾向于从数据密度较高的区域中选取样本的观点
我们邀请的专业合作伙伴致力于优化标签流程的有效性、效率以及人本化体验。鉴于最近的实证研究证明以人为本的策略与以模型为中心的策略具有互补优势[9](此处应为脚注),我们的专业合作伙伴表现出对深入分析不同策略之间差异的兴趣。
ConfusionFlow 允许我们的合作者将基于模型的最小裕度与基于人类的密集区域优先策略进行比较。作为第三种策略,基于真实信息的贪婪算法作为性能的理论上限。为了进行分析,我们的合作者选择了 MNIST 手写数字数据集 [33] 作为直观且完善的数据集,不需要领域知识。与其他数据集相比,MNIST 的另一个优势是用户能够明确标记大多数实例。
我们的合作者采用ConfusionFlow的时间分析模块来进行一段时间内标记过程的评估。因此,在每个训练周期中相当于完成了一次标记迭代(涉及实例选择、实际标记以及模型更新)。图5清晰展示了我们合作者如何直观对比不同策略(最小间隔法、密集区域优先法以及贪心算法)在执行 marking任务中的差异。

我们的合作团队主要以对比模型间的差异为主,并对模型内部的个体特征展开深入研究;鉴于分析过程具有探索性质,则将三个时间分析目标(G2)视为紧密关联;因此我们的合作团队的信息需求则包括六个具体任务(T1至T6),这些任务的具体内容请参见表 1)。
贪婪策略(图5,蓝)在初始阶段(A₁)展现出显著的性能提升(T₂),经过仅仅10次迭代(T₁),其准确率便已超过50%。作为一种衡量标准,在理论层面上来看,在其他对比算法中均无法超越贪婪算法的最大增长幅度(T₃)。该算法收敛速度较快(T₅),且其精确度处于同类算法中的领先地位(T₄)。值得注意的是,在仅有约50个标签的情况下(即参数数量约为标签数量的一半), 贪婪算法已经实现了接近80%的分类准确率(T₁).
我们的合作者在准确率曲线(T3)中识别出一个已知的异常模式,在经过十次实例(即所有标签均被访问过一次)后呈现(参见图5.A2)。这种现象的独特性在于它与贪婪策略(T6)密切相关:当引入第十一标签时,训练集出现失衡状态而导致分类精度在时间维度上显著下降。借助ConfusionFlow工具,我们的研究者得以将这一异常现象与其与类别0、4和9(T4)之间的混淆关系建立联系。未来重复实验将深入探讨该效应是否与特定类别的语义特性相关联,或是可由其他潜在因素所解释
最小保证金策略(图5,橙)始于一个极短且早期的时间窗口(实例3至6)(T3),这一模式与另外两种策略不同(T6)。随后呈现近乎线性增长的趋势直至第50个实例(T2),其中保证金策略的表现准确率达到约60%(T1).
最小保证金策略(图5,橙)始于一个极短且早期的时间窗口(实例3至6)(T3),这一模式与另外两种策略不同(T6)。随后呈现近乎线性增长的趋势直至第50个实例(T2),其中保证金策略的表现准确率达到约60%(T1).
在 ConfusionFlow 矩阵中 我们的合作者识别出 8 类 (T1) 与几乎所有剩余类别的显著混淆值(图 5.B1)。8 类的表现精度较低 在精度曲线上一目了然。一个值得注意的现象是 0 类与 8 类之间的混淆明显降低 始终从第35个时间步开始 (B2)。似乎个别标记实例有时能够产生影响 并辅助分类器实现其准确性。此外直至第50个实例左右时类别2的混淆水平相对较高 (T3)从而导致该类别出现大量误报 (B3)。
在图 5 中以绿色标注的密集区域优先级策略(Dense Areas First)于标注流程的初期阶段(T2)显示出轻微但稳定的提升趋势。经过约 50 个标签后,在测试集上的准确度达到了大约 55% 的水平。初步观察表明,在测试集上 Dense Areas First 和 Smallest Margin 策略呈现出相似的整体准确度曲线(T4)。
通过审阅 ConfusionFlow 矩阵后可知, 分析师得出了若干具有参考价值的见解。值得注意的是, 在分类过程中出现了不同类型的误判现象, 其中某些类别间的混淆持续了整个标记阶段(T2), 具体包括1与3、5与3、2与6等对比(如图5.C1所示)。相比之下, 在标记过程中出现不同强度水平的类别间混淆(T2), 其中一类混淆甚至有所上升(7 vs.9)。此外, 在这一阶段(T2), 某一类与其他类之间的混淆程度有所上升(7 vs.9)。值得指出的是, 在这一阶段(T2), 某一分类问题出现了显著的混乱趋势, 主要集中在第6类实例, 并出现在约第10个样本附近的位置上
基于我们合作者的观点,一个特别值得注意的是,随着时间的推移以及不同策略的影响,某些类别间的混淆模式呈现出显著差异。例如,在第9类与第4类的情景下,基于模型计算出的最小边距与基于人的密集区域优先策略所导致的混淆呈现出显著的行为差异(如图5.D3所示)。这一发现进一步证实了我们合作者的观点:不同的战略能够实现相互补充。
基于ConfusionFlow的技术手段进行分析后,这些合作者展现出对深入研究的兴趣.他们特别关注通过ConfusionFlow获得的类级别见解(L2)作为进入实例级别的起点.从而能够识别与类别相关的普遍模式并追踪单个图像性能的变化趋势.
5.2 用例:可扩展到多个类
经典的混淆矩阵用作一种类级聚合技术,并且能够很好地扩展至处理大量实例的大型数据集。
然而,在这种情况下(即当多个类别被考虑时),它统计了所有不同类别之间的分类错误信息,并且在这些情况下(即当类别数量增加时),每个单元格代表的是两个特定类别之间的关系区域。
如果将整个数据集中所包含的不同类别数量翻一番(即增加一倍),那么每个单元格所代表的信息区域面积就会减少为原来的四分之一。
ConfusionFlow 的可视化方式借鉴了经典混淆矩阵模型的一些可扩展性特征,在现有版本中能够充分支持最多支持15个类别这一需求。经过测试,在实际应用中该工具表现出色,并且其设计目标是尽可能满足大多数免费可用的多类分类数据集的需求:根据公开资料统计数据显示,在434份多类分类问题数据集中(参考文献[54]),有超过80%的数据集其类别数量均不超过15个。
然而,在一些类别数量较多的图像分类基准数据集中受到广泛欢迎的程度方面值得商榷:例如 ImageNet 数据库[参考文献: (Citation) ]拥有千禧系列(共包含 thousand 类别),Caltech 的 tenet 数据库[参考文献: (Citation) ]拥有 hundred-plus 类别(其中 tenet 数据库包含 hundred-plus 类别),而 CIFAR 系列数据库[参考文献: (Citation) ]则拥有 hundred 类别——值得注意的是这些数据库在可扩展性方面的表现如何
为此,在将该方法应用于对CIFAR-100数据集上的图像分类器进行训练时,在基于两种类减少策略、类选择以及类聚合(参考第4.1节)的基础上进行评估其混淆矩阵特征的表现。
CIFAR-100 数据集中包含的100个类别根据语义被划分为20个超级类别。每个超级类别内部进一步划分为五个子类别。如狐狸、豪猪等物种共同构成了中型哺乳动物这一超级类别。我们选择了该数据集的原因在于其内置了相应的类别聚合方案,这使得我们可以无偏地对比并评估两种减少混淆矩阵维度的方法。
进行了卷积神经网络的训练,并将来自CIFAR-100的数据集中的图像划分为100个类别之一。收集了来自1024个不同阶段(每个阶段对应一个epoch)的混淆数据,并对每个阶段后的模型性能分别进行评估:包括在当前分支下的训练表现以及在整个数据集上的测试表现。通过分析各阶段的类预测结果确定出相应的超类混淆矩阵
我们通过不同标准进行分类探讨:F1分数与非对角线混淆矩阵指标。随后,在上一周期测试集中筛选出 F1分数最低的前十个类别。这些类别包括了许多毛茸茸、棕色或灰色特征明显的动物(如熊、水獭等)。
我们观察到这些类别在ConfusionFlow矩阵中常相互混淆(参见补充信息中的图 S-4)。与年轻儿童(包括男孩、女孩和婴儿)的图像相关联的F1分数较低。ConfusionFlow重新缩放函数揭示出这三个与人类相关的类别的平均混淆程度显著高于动物类别。这表明动物类别的表现分散于更多类别中,并且每个类别的F1分数同样受到影响。
然而这些发现无需依赖时间数据即可获得。ConfusionFlow证实了所有这些类别都经历严重的过拟合(T4)这一现象。这种过拟合现象在多个性能指标上表现得尤为明显包括各个类别的精确度召回率以及F1分数图中同时也体现在整体准确度上(参考补充信息中的图S-2)。
但是,在这个子矩阵中找不到特定的类别配对;这些类别配对在训练过程中因过拟合而表现出明显的混淆程度降低。仅仅依赖于这种类别选择机制,则难以全面评估过拟合现象是否普遍存在以及它在不同类别间的影响程度如何。
在此基础上,我们进一步考察了二级选择机制的表现质量.通过分析测试集与最终训练阶段的混淆矩阵,我们识别了十项具有最大非对角元素的单元.这些单元详细说明了14个互异类别(如图S-5所示)。在这14个类别中,包含3种不同类型的树木以及4种不同类型的花卉.男孩与女孩分类又一次出现在列表中,这一发现与我们之前的结论相吻合.该方法的时间分析表明,树相关类别的性能不会像大多数其他类(T5)那样受到过度拟合的影响.
如果不选择CIFAR-100数据集来进行类选择策略的分析,则这些结果可能暗示着存在某种层次结构。然而,在这种情况下ConfusionFlow并非专为分析这种层级关系而设计,在这种情况下它仍然能够帮助我们建立对潜在层级关系的直觉。
我们利用所有20个超类的ConfusionFlow矩阵数据恢复了我们的评估结果(参考补充材料中的图S-3)。通过对精确率、召回率以及F1得分图表的分析发现,在测试集上的表现相比训练集(T5)显著下降。相较于树结构以外的其他分类器,在测试集上的性能表现明显下降。模型似乎难以有效地区分不同类型的大树。深入考察各超类内部的混淆情况后发现,在区分不同种类的大树方面存在明显的局限性
存在一些超类配对在其所属的超类间表现出较高的混淆度并暗示着随着时间推移可能存在的过拟合现象然而在时间序列分析中(T5)车辆1与车辆2这两个类别之间的混淆度随着数据样本数量的增长而持续上升
基于类聚合所揭示的见解
此外,在时间维度上进行分析也有助于识别过度拟合所引发的问题。具体而言,在拖拉机性能方面(标记为T5),这一现象表明随着时间的推移性能逐渐下降。值得注意的是,在这一过程中出现的时间异常(标记为T3)往往与火车和坦克之间的混淆有关(见图6.B)。值得注意的是,在长时间训练后尽管网络通常能够有效地区分火箭与其他车辆(如公共汽车),但在某些情况下其分类结果却出现了偏差(见图6.C),这些异常情况(T3)难以单独通过稀疏混淆矩阵的单个"快照"进行分析。

5.3 使用案例:神经网络修剪
神经网络往往极度过参数化,并包含数百上千万个权重;这些权重值与网络性能无直接影响。一种称为剪枝的技术是从神经网络中删除冗余参数。在网络训练阶段,按照特定策略动态地移除连接。有效的修剪会生成一个精简的模型;该模型不仅保持原有精度,在计算效率和内存占用方面均显著优于未经优化的复杂架构。这种轻量化设计特别适用于嵌入式设备;相比于原始密集型架构[18,35]而言,在相同条件下能够更快收敛并提供更好的泛化能力。
我们评估了 FashionMNIST 数据集中几种不同架构全连接网络的表现[60]。该数据集包含了时尚物体以灰度图像形式呈现的数据,并将其划分为十个类别(如牛仔裤、T恤衫等)。具体而言, 我们探讨了对神经网络进行剪枝后并利用Frankle和Carbin[18]所提出的初始权重重新初始化以获得稀疏网络的效果。通过ConfusionFlow的时间对比分析功能进行实验, 力求更深入地理解移除某些权重对模型分类能力的影响机制。
图7呈现了 Fashion-MNIST 数据集中训练的三种不同网络的 ConfusionFlow 可视化结果。其中绿色原生网络包含6层结构,每层均配备200个隐藏单元并采用ReLU激活函数;其对应的优化参数设置为学习率 0.012 和批次大小60。 orange变体通过每隔一个阶段裁剪 20% 的连接线路实现在线剪枝;在此基础上基于相同权重参数,在线裁剪后重建并重新训练 15 个 epoch 的稀疏结构;最终蓝色架构仅保留约4% 的原始连接线路以完成模型构建

从总精度图(图7.A)中明显可以看出,在线修剪网络之后重新初始化的稀疏网络的表现依然出色。然而,在线修剪网络之后重新初始化的稀疏网络的表现甚至一开始就比其他两个表现更好。(ConfusionFlow允许将这种全局(L1)准确性改进与成对类混淆相关联。)
对 ConfusionFlow 矩阵的分析表明,在未剪枝及在线剪枝网络的后期阶段(即 T7 之后),所有涉及运动鞋类别的配对(如运动鞋与凉鞋、踝靴与运动鞋等)之间的混淆频率显著上升(图7.B)。另一方面,在重新初始化的稀疏网络中继续学习以更加精准地区分这些类别(T5)。原始网络出现严重缺陷的另一个可能的原因似乎是与裤子及外套相关的类别表现不佳(见图 7.C),这两个类别在随后两个周期内(T6)呈现出极高的 FP 指标数值
尽管全局准确度图表明未剪枝和在线剪枝网络的准确性较显著下降,但这两个模型仍保持了约30%的准确性(T1)。ConfusionFlow矩阵进一步显示,后期epoch中的剩余准确性与其所涉及的具体分类表现出了显著的相关性(如图7.D所示)。通过提高不同种类上衣图像的混淆值,重新初始化后的稀疏网络在其他类别中实现了更好的泛化能力。
这些发现显示,ConfusionFlow 具备对分类器性能实施更加精细分析的能力,并使用户得以将准确性变化具体化到各个类别层次。
5.4 研究结果的总结和讨论
我们的合作者对ConfusionFlow的视觉设计印象深刻,并对其创新性体现在将熟悉的时间折线图与混淆矩阵相结合表示赞赏。这种直观且一致的设计方案帮助他们通过信息丰富的显示来导航分析结果。然而,在处理更多分类或模型的情况下,他们建议增加焦点+上下文功能(类似于LiveRAC等工具提供的功能)。
该系统通过对比分析功能(G1 + G2)对混淆矩阵的时间组合进行了详细研究,并特别关注了类别级别(L2)的表现情况。在分类器的学习过程中发现,在类别级别上混淆矩阵中的非对角线元素往往趋于稀疏化。采用细粒度时间学习策略(如主动学习中的逐批更新方法),可能会导致最终分类器难以准确反映常规模式特征。值得注意的是,在该系统的可扩展性研究中也发现了类似的规律性现象:当类别数量显著增加时(如L3及以上层次),混淆矩阵会呈现出更加稀疏的状态特征,并且这种稀疏性随类别层级的提升而愈发明显。通过分别考察不同层次的类别分布情况(从L2到更高层级),我们能够更全面地评估模型的行为特性及其稳定性表现。
可扩展性
双向分析
常见情况下,在推导出模型潜在用途后会采用ConfusionFlow这一工具。当具备对初始模型运行机制的先验知识时,通过ConfusionFlow获得的关键见解可以直接用于反馈并优化这些模型,并进而形成双向分析和开发工作流程。
通常来说,在多数情况下真正的双向性需要更多的工具。在本节所展示的三种典型场景中表明:整体分析的具体需求是根据领域和/或模型的不同而定制化的。(请注意:ConfusionFlow与模型无关)另外,在某些特殊的情境下会需要用到实例级别的信息(L3)
在讨论中将其归入双向迭代分析工作流程的一个环节后发现
6 未来的工作
6.1 实例级分析
由于ConfusionFlow专为可视化类别的信息(L2)提供展示功能,并不能进行实例级别的分析(L3)。但深入探索实例级别的学习动态将有助于发现可能被忽视的标签错误或异常样本。
目前团队正致力于开发InstanceFlow这一创新工具,旨在为这些问题提供解决方案. 该系统采用与Sankey类似的布局方式来呈现训练过程中的实例分类进展. 它将提供一些指标供用户筛选实例,例如关注类间转移频率.
特别针对神经网络分类器,在将这种实例级的类别混淆与基于特征的详细视图进行关联后, 可以进一步加深对学习行为的理解. 基于支持的模型架构, 这种详细视图可以上建于 Olah 等人先前的研究成果上. [41]此外, 还可参考与激活可视化相关的最新研究工作, 如[28]和[42].
6.2 多标签分类
多标签分类被视为一个机器学习问题,在其中多个类标签可被分配给实例。基于理论的基础上, ConfusionFlow 可发展成为一种用于可视化多标签分类器混淆的技术,其关键在于采用类别标签的组合而非沿每个矩阵轴单独的一个类别。然而,鉴于类别数量增加会导致可能组合数呈指数级增长的趋势,因此建议在工作流程中整合聚合方法。另一种方案是将 ConfusionFlow 技术与实例选择策略协同工作,从而实现对实例级别多标签混淆矩阵的可视化展示
7 结论
在本文中, 我们介绍了一种名为ConfusionFlow的新颖工具, 该工具用于可视化分类器混淆的时间进程特性。通过将时间序列上的混淆矩阵可视化与全局性能指标及类别特定指标相结合的方法, 该工具能够有效展示分类器行为的变化趋势及其与其他评估指标之间的关系特征。基于主动学习策略选取实例进行分析研究的方法评价了该工具交互式探索的有效性, 进一步分析了其在计算资源受限环境下的适用性, 并将其应用于神经网络剪枝过程中的一个具体场景以验证其实际应用价值。
ConfusionFlow并不是专为提供全面功能而设计的一个独立工具,并非专为单一用途而构建的概念它旨在与其他技术手段协同运作以实现更复杂的分析目标这一概念体现了对现有技术框架的深度理解而非简单叠加功能其核心理念是通过系统化的整合与优化来提升整体效能
致谢
该工作获得了上奥地利州(FFG 851460, 人类可解释性机器学习)以及奥地利科学基金(FWF P27975-NBL)的部分资助
参考文献



