论文地址:
CVPR 2020 Open Access Repository (thecvf.com)
摘要
端到端对抗注意力网络用于多模态聚类(EAMC)的方法旨在通过探索来自多个模态或视角的互补信息,将数据聚类成不同的组。
-
多模态聚类:
- 涉及将来自不同源或模态的数据进行聚类(例如图像、文本、数值数据等)。
- 挑战在于如何有效地结合来自不同模态的信息,以揭示数据的结构。
-
对抗学习:
- 该技术用于对齐不同模态的潜在特征分布。对抗过程帮助确保来自不同源的特征在共享空间中是兼容的。
- 具体来说,引入了一个判别器,学习区分真实与伪造(对齐)的特征,从而促使模型生成在各个模态中不可区分的特征。
-
注意力机制:
- 注意力机制用于量化各模态的重要性。它帮助模型集中注意力于最相关的模态,从而提升整体性能。
- 该机制为不同模态分配权重,突出哪些数据方面对聚类任务更为重要。
-
基于散度的聚类目标:
- EAMC的一个关键点是其基于散度的聚类目标,该目标:
- 分离性和紧凑性:鼓励聚类之间保持良好的分离性和紧凑性,确保聚类结果清晰且有意义。
- 单纯形几何:损失函数将输出空间的单纯形几何嵌入其中,从而促进更清晰、可解释的聚类结构。
- EAMC的一个关键点是其基于散度的聚类目标,该目标:
-
模态特定特征学习:
每种模态单独处理以提取模态特定的特征,确保每个模态的独特性被保留。
-
模态融合与聚类分配:
在每个模态的特征学习之后,将它们融合到一个共享空间中。然后,模型基于数据点在该空间中的接近度为其分配聚类标签。
-
训练过程:
- 提出的模型可以端到端训练,意味着所有组件(模态特定学习、融合和聚类)可以同时优化。
- 无需预训练的自动编码器,这通常是其他深度聚类方法所需要的步骤。
-
批量优化:
该模型使用批量优化方法进行训练,即在每次迭代时一次性更新整个模型,这种方式提高了训练效率。
-
实验验证:
在五个真实世界的数据集上进行的综合实验表明,EAMC方法在聚类质量和解释性方面优于其他聚类方法。
贡献:
- 端到端学习:与许多需要单独预训练步骤(如自动编码器)的方法不同,EAMC可以直接从头开始训练,简化了流程,提高了效率。
- 对抗学习与注意力机制:这些机制帮助模型学习多模态数据的联合表示,并集中注意力于最相关的信息,从而提高聚类性能。
- 基于散度的聚类目标:损失函数中融入单纯形几何,有助于产生更清晰、更可解释的聚类结果。
应用场景:
该方法特别适用于以下情境:
- 医疗数据:将图像、临床记录和基因数据结合,用于患者分群。
- 多媒体数据:聚类图像、文本和音频数据。
- 多传感器数据:使用来自不同传感器的数据进行事件或行为的聚类与分析。
总结:
提出的EAMC是一种强大的多模态聚类方法,它联合学习来自多个模态的深度表示,并通过对抗学习和注意力机制来提升聚类准确性和可解释性。实验结果表明,该方法在真实世界场景中表现出了优越性。
引言
随着数据采集技术的发展,多模态或视角数据已成为当前实际应用中数据资源的重要组成部分。例如,在视觉数据中,一张图像可以通过不同的描述符进行表示,如SIFT、HoG和LBP,而视频则包含音频信号和视觉信号;在网页新闻中,一条信息可以通过图片和文本进行传递。尽管每个模态具有其独特的信息和统计特性,不同模态通常会呈现相同的聚类结构。利用多模态数据学习结构化分区的理由是,它们能够通过模态间的互补信息提供对共同模式的全面估计[33]。近年来,多模态聚类在机器学习和计算机视觉领域获得了显著的发展[3, 47]。
一种简单的聚类方法是首先将不同模态的数据串联成单模态数据,然后使用单模态聚类方法。然而,这种方法无法保证良好的性能,甚至可能获得较差的结果。因此,主流研究方法是学习低维潜在表示,使得模态之间在潜在空间中达成共识。最近,已经提出了各种多模态聚类方法,包括基于典型相关分析(CCA)的方法[7, 39]、基于矩阵分解的方法[5, 42, 37]、基于子空间学习的方法[44, 45, 48]以及基于图模型的方法[32, 34]。尽管这些方法取得了良好的结果,但它们由于使用了浅层和线性嵌入函数,无法捕捉复杂数据的非线性特征,因此存在较大局限性。为了解决这一问题,一些基于多核学习的方法[11, 27]应运而生。然而,选择合适的核函数仍然是一项挑战。
随着深度神经网络(DNN)模型的快速发展,DNN已被广泛应用于单模态场景中的复杂特征提取,如图像聚类,且在多模态聚类任务中也逐渐发挥重要作用。现有的基于DNN的多模态聚类方法大致分为两类。第一类将多模态特征学习与聚类分配视为独立过程,代表性方法包括DCCA [2]和DMSC [1]。DCCA首先通过典型相关分析(CCA)最大化两种视角投影的深度特征之间的相关性,然后进行后续的K-means聚类。DMSC采用卷积神经网络进行多模态子空间学习,并基于学习到的亲和图进行谱聚类。这种两步学习策略可能会割裂特征学习和聚类分配之间的紧密联系,直接影响的是学习到的表示无法很好地适应预定义的聚类算法。为了解决这个问题,第二类方法将这两个过程统一到联合优化步骤中。DAMC [25]就是这种方法的代表。它通过预训练多视角自编码器,然后联合优化共识聚类中心、自编码器网络和对抗网络。尽管DAMC取得了令人满意的结果,但仍面临一些问题。一方面,它对每个模态一视同仁,忽略了不同模态之间的质量差异,这使得很难获得最佳的潜在表示用于聚类。另一方面,该方法使用的聚类损失过于依赖预训练阶段的良好初始化。此外,由于边缘样本被弱化,该损失也难以确保清晰的聚类结构,因此可能无法将样本正确地归类到相应的聚类中。
总体而言,这一研究方向仍处于初期阶段,至少有两个关键问题未被充分探讨:(1)如何学习多模态之间的深度融合表示?(2)什么样的损失函数适合用于训练深度神经网络进行多模态聚类分析?
本文提出了一种端到端对抗注意力多模态聚类(EAMC)方法,该方法将多模态特征学习、模态融合和聚类分析统一为一个联合过程。该方法基于对抗学习[14]、注意力机制[8]以及信息论散度度量[17]的概念。具体来说,通过引入对抗正则化项来对齐不同模态的潜在特征分布。通过对抗过程,可以更高效地实现模态不变性。作者认为,模态分布的更好对齐有助于后续的模态融合,特别是在通过加权平均潜在特征获得融合特征时。此外,通过引入注意力层来量化不同模态的重要性,从而自适应地为每个模态分配权重。进一步地,引入了基于散度的聚类损失来指导网络训练。定义的聚类损失明确地鼓励聚类之间的分离性和聚类内部的紧凑性,这些特性有助于提高聚类模型的可识别性。此外,输出空间的几何属性被嵌入到Cauchy-Schwartz散度中,以避免聚类划分的退化结构。值得一提的是,与现有的深度多模态聚类方法相比,提出的聚类模型可以从头开始训练,而无需基于自编码器的预训练。
图1展示了提出的网络架构的概览。一般而言,提出的方法包括三个主要部分,即模态特定特征学习、模态融合和聚类分配。模态特定特征学习旨在估计低维潜在空间中的数据相似性,它也充当特征编码器(或生成器),揭示数据的非线性。模态融合包括模态对齐和模态感知模块。具体而言,模态对齐模块通过一组判别器和生成器之间的极小极大博弈来引导特征分布的学习。同时,在模态感知模块中,通过三个全连接层和一个sigmoid层来学习各个模态的权重。最后,聚类分配层由两个全连接层和一个softmax层组成,用于根据定义的损失进行网络训练。总而言之,对多模态聚类领域的主要贡献如下:
- 提出了一种深度端到端的多模态聚类方法,将模态特定特征学习、模态融合和聚类分配统一为一个联合优化过程。此外,首次在模态融合过程中同时引入了对抗学习和注意力机制。
- 定义了一种新的判别性聚类损失来指导网络训练。该损失明确鼓励聚类之间的分离性和紧凑性,同时通过嵌入单纯形几何确保清晰的聚类结构。
- 在五个数据集上的实验结果证明了该方法的有效性和优越性。
模型
网络架构
所提出的网络架构由特定模态特征学习、模态融合和聚类分配三个部分组成,如图1所示。
(A) 特定模态特征学习
多模态数据的不同统计特性表明,在数据空间中融合不同的模态是非常困难的。为此,设计了一个特定模态特征学习模块,将数据转换到低维潜在空间。该模块执行特征学习的主要任务,同时还具有迷惑判别器的目标,这将在后面讨论。具体来说,对于第v个模态,首先对其对应的潜在特征进行编码,得到 Hv=Ev(Xv;θev),其中 Ev(.)表示第v个模态的编码器,参数化为 θev。然后基于 Hv,可以估计潜在空间中数据的度量,例如高斯度量。形式化表示为
其中 h_v_i 表示 Hv的第i列(即第i个样本),σ 代表带宽。注意,使用随机的独立同分布(i.i.d.)高斯权重来约束编码器网络,以避免数据度量结构的退化,这与现有的深度多模态聚类方法有所不同,后者通常通过解码器网络实现此目的。这一设计灵感来自最近在神经网络理论中的进展[12],++研究表明,当数据的内在维度与网络宽度成比例时,DNN可以通过使用随机i.i.d.高斯权重来保持数据的度量结构。++在实验中,这一条件可以得到满足,因为[12]证明数据在通过网络传播时,内在维度不会增加。
(B) 模态融合
模态融合模块旨在融合不同模态的多样信息,以进行综合估计。在模型中,该模块由模态对齐和模态感知子模块组成。
- 模态对齐子模块:用于对齐不同模态的潜在特征分布。该子模块包含 V−1个判别器,每个判别器由三层全连接层组成。具体来说,以第一个模态为基准,通过成对方式将判别器分配给第一个模态和其他模态之间的每一对。对于从分布 pv 中抽取的每个潜在特征 Hv(v=2,3,...,V),判别器 Dv 由参数 θdv表示,旨在验证其真实数据 h1i∈H1和假数据 hfi∈Hv 是否属于同一分布。在此过程中,判别器网络 Dv与编码器网络 Ev交替优化,以解决对抗性最小-最大问题[14]。通过这种方式,判别器网络可以引导编码器网络学习相同的潜在特征分布。注意,考虑所有可能的组合(最多 2V)会显著增加网络训练的负担。
- 模态感知子模块 :用于学习不同模态的权重,输入是连接后的特征 hh,输出是一个V维向量 w。通常,由三层全连接层和一层softmax层组成。使用以下公式描述该过程:其中,⋅ 表示连接操作,FCs(⋅)表示3层全连接层,τ是一个校准因子。sigmoid函数与校准因子一起,可以看作是避免为最相关的模态分配接近于1的分数的技巧。为了简化,模块中的参数表示为 θa。
此时,可以通过以下公式得到样本的融合表示: 然后,hf 会被输入到聚类层,以得到软聚类分配。
(C) 聚类分配
为了利用联合学习方法,在网络中部署了一个由 θc 参数化的聚类层。该聚类层位于融合层之上,由两层全连接层和一层softmax层组成。softmax层输出软聚类成员矩阵 A=[αqi],其中元素 αqi∈(0,1)表示数据点q分配到聚类 Ci的清晰聚类分配。然后,使用已定义的损失函数来指导网络训练。
损失函数
- 融合损失 (Fusion Loss)
在模型中,生成器(编码器)和判别器之间进行最小-最大博弈,以引导特征分布学习朝着第一个模态发展。为此,优化目标可以表示为:
此外,为了使不同模态的度量结构达到相互一致的目标,受到监督深度模型中伴随损失(companion loss)[23]成功应用的启发,在融合模块上施加以下损失:
其中,Kf 是基于融合特征和高斯核计算的度量矩阵,。额外的效果是,在度量级别上进一步考虑权重,从而使得融合结果更为可靠。
- 聚类损失 (Clustering Loss)
为了学习良好的划分结构,最近的研究[25, 41]通常使用基于Kullback-Leibler(KL)散度的损失来引导聚类过程。其原理是强调分配高置信度的样本点。然而,这种方法由于忽略了边际样本,未必能够强制聚类的紧凑性。在这一部分,引入了一种新的基于Cauchy-Schwarz散度的聚类损失来缓解这个问题。引入的聚类损失鼓励聚类之间的分离和聚类内部的紧凑性。同时,在优化过程中,它还明确利用了输出空间的几何结构。首先,回顾Cauchy-Schwarz(CS)散度的多分布概率密度函数(pdf)推广定义[17]:
其中,k表示分布的数量,pi和 pj分别表示聚类 Ci和 Cj的概率密度函数(pdf)。较大的散度值会导致良好分离且紧凑的聚类。根据数据驱动的方法[20],最大化(7)在实际中等价于最小化以下公式:
其中,K是基于高斯核的数据度量矩阵,α1,α2,...,αk是硬聚类分配矩阵 A∈Rn×k 的列向量。在架构中,将硬分配松弛为软分配,以保持损失的可微性。
此外,为了避免聚类划分退化,利用输出空间的性质,即由softmax激活函数引入的Rk中的单纯形,强制输出接近单纯形的一个角落。具体来说,将这一几何结构整合到CS散度中,形式如下:
其中,βi,βj是矩阵 B=[βqi]的第i、j列,且其中 ei表示单纯形的第i个角。通过这种方式,聚类分配向量将集中在不同的单纯形角落。在实验中,K 被替换为 Kf。
最后,希望聚类在n维观察空间中是正交的。数学上,可以表示为:
其中,triu(⋅)表示取其参数的严格上三角元素之和。现在,可以写出总的聚类损失:
优化训练
算法 1 中展示了详细的优化步骤。从对抗优化的角度来看,所提出的EAMC(即多模态聚类网络)通过交替优化以下过程来进行训练:
实验
我还挺喜欢这个融合的