MFAN论文阅读笔记(待复现)
论文标题:MFAN: Multi-modal Feature-enhanced Attention Networks for Rumor Detection
论文作者:Jiaqi Zheng, Xi Zhang, Sanchuan Guo, Quan Wang, Wenyu Zang, Yongdong Zhang
论文来源:IJCAI 2022
代码来源:Code
介绍
一系列基于深度神经网络融合文本和视觉特征以产生多模态后表示的多媒体谣言检测器被提出,其表现出比单独使用文本数据更好的性能。然而,这些研究的一个共同局限性是它们没有同时考虑图形社会背景,这已被证明有利于提高检测性能。
源帖子的社会语境通常包括转发用户和相应的评论。基于这些实体和它们之间的联系,可以构造一个异构图来建模结构信息.然后,可以利用图注意网络(GAT)和图卷积网络(GCN)等图模型来聚合相邻节点信息,以获得用于谣言检测的更好的节点表示。
然而,现有的基于图的检测器存在以下几个局限性:
- 节点表示学习的质量高度依赖于实体之间的可靠链接。由于隐私问题或数据爬行的限制,可用的社交图数据很可能缺乏实体之间的一些重要链接。因此,有必要对社交图上的潜在链接进行补充,以实现更准确的检测;
- 图上相邻节点之间可能存在各种潜在关系,而传统的图神经网络(GNN)邻域聚集过程可能无法区分它们对目标节点表示的影响,导致性能较差;
- 如何将学习到的社交图特征与其他情态特征(如视觉特征)有效整合,目前的研究较少。
为解决上述挑战,提出了一种新的多模态特征增强注意网络(MFAN)用于多模态谣言检测:
- 该网络可以有效地将文本、视觉和社交图特征结合在一个统一的框架中;
- 引入自监督损失来对齐不同视图中的源后表示,以实现更好的多模态融合;
- 通过增强图拓扑和邻域聚合过程来改进社交图的特征学习;
- 本文的实验表明,所提出的模型可以有效地识别谣言,并在两个大规模的真实世界数据集上优于最先进的基线
相关工作
本文的工作与相关研究的比较见表1。本文工作的独特之处在于:联合使用文本、视觉和社会图形特征,涉及多模态对齐以更好地融合,并利用潜在的关系来增强图形特征。
问题定义
\(P= \{ p_1, p_2, ..., p_n \}\)为一组有文字有图片的社交媒体多媒体帖子。
对于每个帖子\(p\in P\),\(p_i = \{ t_i, v_i, u_i, c_i \}\),其中\(t_i\),\(v_i\)和\(u_i\)分别表示发布该帖子的文本,图像和用户。\(c_i=\{ c_i^1, c_i^2, ..., c_i^j \}\)表示\(p_i\)的评论集,每条评论都是由相应的用户\(u_i^j\)发布的。
为了表示用户在社交媒体上的行为,建立一个图\(G = \{V, A, E\}\),其中\(V\)是节点的集合,包括用户节点、评论节点和帖子节点。\(A\in \{ 0,1 \}^{|V|*|V|}\)是节点之间的邻接矩阵,用来描述节点之间的关系,包括发帖、评论、转发。\(E\)是边的集合。
将谣言检测定义为一个二元分类任务。\(Y\in \{0,1\}\)表示类别标签,其中\(Y = 1\)表示谣言,否则\(Y = 0\)。目标是学习函数\(F(p_i) = y\) 来预测给定帖子的标签。
方法
图1:提出的框架MFAN。首先通过特征提取器获得社交媒体上一篇文章的文本、视觉和图形三种模态特征。然后利用视觉特征增强文本特征,利用社交网络中的潜在关系增强图形特征。在上述两个增强的特性之间执行模态对齐。采用跨模态共注意机制获取每两个模态之间的增强特征。然后将所有增强的模态特征集成到谣言检测中。
概括:重点是有效地结合文本、视觉和社交图特征来改进谣言检测。为此,首先提取三种类型的特征。
为了产生更好的社交图特征,提出在GAT的基础上对图拓扑和聚合过程进行改进。然后,捕获跨模态交互和对齐,以实现更好的多模态融合。最后,将增强的多模态特征连接起来进行分类。本文还采用对抗训练来提高鲁棒性。整个体系结构如图1所示。
文本和视觉特征提取器
文本表示
用CNN和池化来提取句子的语义特征。
首先对于每个帖子\(p_i\),将其问题\(t_i\)进行填充或截断,使其具有相同数量的token,即\(L\):
\(o_j^i\)表示 \(t_i\) 的第 \(j\) 个词的词嵌入。
然后,我们在词嵌入矩阵\(O^i_{j:j+k−1}\)上应用卷积层,得到特征映射\(s^i_j\),其中\(k\)为接受野的大小。我们记为\(s^i=\{ s_{i1}, s_{i2},···,s_{i(L−k+1)}\}\)。然后,我们在\(s^i\)上使用max池,得到\(\hat{s^i}=max(s^i)\)。我们使用不同接受域\(k\in\{3,4,5\}\)的\(d/3\)滤波器来获得不同粒度的语义特征。
最后,我们将所有过滤器的输出连接起来,形成\(t_i\)的整体文本特征:
视觉(图像)表示
使用在ImageNet数据库上训练的预训练模型ResNet50来提取图像\(v_i\)的特征。
首先,我们提取ResNet50最后第二层的输出,并将其表示为\(V^i_r\)。然后,我们将其通过一个全连通层,得到与文本特征具有相同维数的最终视觉特征,即
其中,\(W_v\)为全连通层的权矩阵,\(\sigma(·)\)为sigmoid等激活函数。
增强的社交图特征学习
推断隐藏关联
为了缓解缺失链接的问题,提出在社交网络中推断节点之间的隐藏关联。
根据网络同质性,相似的节点可能比不相似的节点更容易相互连接。因此,我们计算不同节点之间的特征相似度,并推断相似度高的节点之间的联系。
具体来说,定义节点嵌入矩阵\(X\in \mathbb{R}^{|V|\times d}\)。
\(X\)中有三种类型的节点,我们使用句子向量作为帖子和评论节点的初始嵌入,并使用用户发布的帖子节点嵌入的平均值作为初始用户嵌入。
然后利用余弦相似度计算节点\(n_i\)和\(n_j\)之间的相关性\(\beta_{ij}\):
\(x_i\)和\(x_j\)是\(n_i\)和\(n_j\)的节点嵌入。
如果相似度大于0.5,则推断它们之间存在一条潜在边,即:
然后用推断出的潜在边对原始邻接矩阵\(A\in \mathbb{R}^{|V|*|V|}\)进行增强。令\(a_{ij}\)为\(A\)的元素,\(a_{ij}=1\)表示\(n_i\)和\(n_j\)之间存在一条边。则增强后:
捕捉多方面的邻居关系
使用GAT捕获社会图结构信息。传统的GAT不同,本文引入了符号注意机制来捕获相邻节点之间的正相关和负相关,以获得更好的图特征。
GAT的关键是邻域信息的聚合。
对于节点\(n_i\)和其相邻节点集合\(\mathcal{N}_i=\{ \acute{n_1}, \acute{n_2}, ..., \acute{n_{|\mathcal{N}_i|}} \}\),先计算节点\(n_i\)和其相邻节点集合\(\mathcal{N}_i\)之间的注意力权重集合\(\xi_i=\{ \acute{e_{i1}}, \acute{e_{i2}}, ..., \acute{e_{i|\mathcal{N}_i|}} \}\):
其中,\(||\)表示连接操作,\(\hat a\)和\(W\)是可学习的参数,\(x_i\)和\(\acute{x_j}\)是\(n_i\)和\(\acute{n_j}\)的节点嵌入,\(\acute{n_j}\in \mathcal{N}_i\)。
然后,使用softmax函数对注意力权值进行权值归一化操作。
注意力权值可能出现负数(两个节点向量方向相反),在使用softmax函数后这个值会变成一个很小的正值。
实际上,节点间的注意权值包含潜在的正、负关系,直接使用softmax函数会忽略。比如权值“-0.9”经过softmax函数后会变为0.09,但这种较大的负向关系也可能有利于谣言检测。例如,它可以反映伪装行为,如谣言传播者购买一些诚实的用户作为粉丝或评论反对源帖子,它们的节点向量可以本质上负相关。这正是现有的GATs所忽略的负相关关系。
为解决此问题,设计了符号注意力GAT,捕捉节点间的正负关系:
然后将两个向量连接在一起,并通过一个全连接层来获得最终的节点特征。\(n_i\)的节点特征为:
其中,\(W_n\)是全连接层的权值矩阵,\(\sigma(·)\)为激活函数,\(X_j\)为\(\mathcal{N}_i\)的特征矩阵。
图特征提取器
本节介绍如何在增强社交图和符号GAT的基础上获得社交图特征。
首先,我们通过增加推断的潜在边来增强原始社交图,并初始化图中的三种节点类型。对于帖子和评论节点,我们使用它们的文本特征作为初始嵌入。对于用户节点,我们使用他们的帖子和评论嵌入的平均值作为初始嵌入来反映用户特征。
然后使用Signed GAT从增强的社交图中提取图结构特征。对于每个节点,利用公式(9)更新其嵌入,得到更新后的节点嵌入矩阵\(\hat{X} \in \mathbb{R}^{|V| \times d}\)。
然后采用多头注意机制从不同角度捕捉特征。将每个head的更新节点嵌入连接在一起作为整体图特征:
其中\(H\)表示头部的数量。那么第\(i\)个帖子\(p_i\)的图特征\(R^i_g\)对应于\(\hat G\)的第\(i\)列。
多模态特征融合
由于有三种类型的模态,本文采用了具有共同注意方法的分层融合模式。为了捕获跨模态关系的不同方面并增强多模态特征,本文使用自监督损失来强制跨模态对齐。
跨模态共同注意机制
使用共同注意机制来捕获不同模态之间的相互信息。它通过学习不同模态特征之间的注意权值来增强跨模态特征。
具体来说,对于每个模态,我们首先使用多头自注意来增强模态内特征表示。例如,对于文本特征\(R^i_t\),分别用\(Q^i_t=R^i_tW^Q_t\),\(K^i_t=R^i_tW^K_t\),\(V^i_t=R^i_tW^V_t\)来计算其查询矩阵、键矩阵和值矩阵。
然后,我们生成文本模态的多头自注意特征:
其中,\(W^O_t\)是输出的线性变换。对\(R^i_v\)和\(R^i_g\)进行相同的操作得到\(Z^i_v\)和\(Z^i_g\)。
然后利用共注意机制生成增强的多模态特征。具体来说,为了对\(p_i\)进行文本-视觉共注意,首先执行与上述自注意类似的操作,但将\(R^i_t\)替换为\(Z^i_v\),得到查询矩阵\(Q^i_v\),将\(R^i_t\)替换为\(Z^i_t\),得到键矩阵\(K^i_t\)和值矩阵\(V^i_t\)。然后我们得到交叉模态增强特征\(Z^i_{vt}\):
其中,\(W^O_{vt}\)是输出的线性变换。
注意,\(Z^i_{vt}\)表示利用视觉特征基于相关性得到的增强文本特征。基于相同的共同注意过程,我们可以通过交换两种模态在公式(12)中的作用,得到增强的视觉特征。
多模态对齐
基于共同注意机制,我们可以获得利用视觉特征增强的文本特征等。但对于原帖,其不同形式的表述应具有内在联系。这种模态之间的联系不包括在共同注意机制之内。因此,引入了多模态对齐,通过加强文章的增强文本特征,使其接近增强的图形特征,以改进在每个模态中学习到的表示。
具体来说,对于帖子\(p_i\),其增强的图特征\(Z^i_g\)和增强的文本特征\(Z^i_{vt}\)被变换到同一模态特征空间:
其中,\(\acute{W_g}\)和\(\acute{W_t}\)是可学习的参数。
然后用模态对齐的MSE损失来缩小\(\acute{Z^i_g}\)和\(\acute{Z^i_t}\)的距离:
然后得到对齐的文本特征\(\widetilde{Z^i_t}\)和图形特征\(\widetilde{Z^i_g}\),用于下面的多模态融合。
融合上述多模态特征
再次对三个模态特征对\(\widetilde{Z^i_t}\),\(\widetilde{Z^i_g}\)和\(Z^i_v\)执行上述的跨模态共注意机制,最终得到6个跨模态增强特征:\(\widetilde{Z^i_{tv}}\),\(\widetilde{Z^i_{vt}}\),\widetilde{Zi_{gt}},\widetilde{Zi_{tg}},\widetilde{Zi_{gv}},\widetilde{Zi_{vg}}。然后将它们连接起来作为最终的多模态特征:
对抗性训练分类
将帖子\(p_i\)的最终多模态特征\(Z^i\)输入到全连接层中,预测\(p_i\)是否为谣言:
然后使用交叉熵损失函数:
最终的损失可以表示成:
其中\(\lambda_c\)和\(\lambda_a\)用来平衡两种损失。
由于社交媒体中的文本内容可能不遵循严格的语法规则,为了适应这种语法的不规则性,我们在文本嵌入层面添加了对抗性扰动,以增强模型的鲁棒性。我们使用了PGD,这是一种广泛使用的对抗性训练方法。具体来说,我们在每次训练迭代中计算文本特征的梯度,并使用它来计算添加到文本特征中的对抗性扰动。然后我们在更新后的文本特征上重新计算梯度。我们重复这个过程\(k\)次,并使用球面空间来限制扰动的程度。最后,将上述对抗梯度累积到原始梯度,然后用于参数更新。
实验