2. 昆明理工大学 云南省人工智能重点实验室, 昆明 650500
2. Yunnan Key Laboratory of Artificial Intelligence, Kunming University of Science and Technology, Kunming 650500, China
社交媒体事件检测任务是指从各类社交媒体的内容中挖掘热点事件。近年来,各类社交媒体平台迅速发展,社交媒体事件检测在控制信息传播和正确引导舆论等方面具有重要意义。同时,有效的社交媒体检测也为事件演化分析[1]、舆情分析[2]、情绪分析[3]、企业风险管理[4]以及政治选举预测[5]等下游任务提供了坚实的基础。
当社交媒体事件检测任务最初出现时,大多数研究将其视为增量聚类问题[6-9]、社区检测问题[10-14]或主题建模问题[15-18]来处理。然而,学者们往往忽视了社交消息文本中丰富的语义和结构信息。因此,相关研究者提出了基于图神经网络(GNN)的社交媒体事件检测方法[19-26],以有效捕获社交消息文本中深层语义信息和结构信息。此外,为了实现社交媒体增量事件检测,文[26]提出了KPGNN方法,设计了一套生命周期机制,有效解决了增量场景下事件知识保留和更新的难题。上述社交媒体事件检测方法在富资源语言(如英语)场景下取得了显著的效果,但是在低资源语言(如越南语)场景下性能还有很大的提升空间。因此,如何有效利用富资源语言知识来提升低资源语言社交媒体事件检测方法的性能成为了最近的研究热点。基于此,文[23]提出了基于跨语言模型参数知识迁移的社交媒体事件检测方法,借助预训练的跨语言模块LNMAP[27],实现将富资源语言(英语)的模型参数知识迁移到低资源语言中。文[28]提出了基于跨语言知识蒸馏的社交媒体事件检测方法,核心思想是利用知识蒸馏,将在富资源语言上训练的教师模型中的特征知识和关系知识蒸馏到低资源语言的学生模型中,在低资源场景下取得了显著的效果。
虽然上述研究尝试通过跨语言知识迁移等方式来缓解低资源问题,但在实际应用中,富资源和低资源数据通常分布在不同社交媒体平台上。现有的方法采用一种数据中心化的方式来进行知识的迁移,忽略了以上数据分布的这一特点。由于隐私和法律法规的限制,大量的高质量数据无法在不同平台之间流动,联邦蒸馏学习作为一种数据去中心化的学习架构,为这一情况提供了可能的解决方法。而且,面对大量的社交媒体事件数据,联邦蒸馏还可以降低数据传输和存储的成本,更符合实际应用的需求。
然而,现有的基于联邦蒸馏的框架还面临诸多挑战:1) 低资源数据缺失。由于数据稀缺等问题,单独构建低资源语言模型难度较大,在低资源场景下的社交媒体事件检测方面表现达不到预期。2) 语言迁移难度大。不同语言之间的语法和表达方式不同,分布在不同客户端的数据差异较大,导致模型漂移,从而影响知识蒸馏的效果。与此同时,富资源语言与低资源语言之间的数据共享受到诸多限制也是亟待解决的问题。3) 社会事件持续涌现。在现实场景中,社交媒体事件具有数据量大和增长速度快的特点,对模型接收和处理新信息的能力提出更高的要求。
本文提出了一种基于联邦知识蒸馏的跨语言社交媒体事件检测方法,在保护数据隐私的同时,将富资源客户端知识有效地蒸馏到低资源客户端,提高了低资源语言模型的性能。具体而言,针对低资源数据稀缺问题,在联邦学习框架下采用知识蒸馏策略,使得富资源客户端的数据能够有效地迁移到低资源客户端,并指导低资源客户端模型进行训练。同时,还训练了一个跨语言词嵌入模型,采用参数高效微调技术和三组对比损失,捕捉不同语言之间的语义差异,克服了不同语言之间的语义空间不一致的困难。此外,面对社交媒体上持续涌现的大量数据,本文在联邦学习框架下引入增量的生命周期,设计了一套四阶段的生命周期机制,使得模型能够不断适应传入的新数据,持续检测新的事件,从而达到数据增量检测的效果。实验结果表明,在低资源场景下,本文所提出的方法在社交媒体事件检测任务上取得了显著的效果。
1 方法介绍本方法包括跨语言词嵌入模块、消息表征图学习模块和联邦网络消息蒸馏模块。作为核心模块的联邦网络消息蒸馏模块框架如图 1所示。
![]() |
图 1 联邦网络消息蒸馏框架 |
1.1 任务定义
本文扩展了KPGNN[26]中的社交消息流和社交媒体事件的定义,并给出了联邦跨语言社交事件检测的定义以及符号说明。
定义1 社交消息流S是一组时间连续的社交媒体消息块序列,S=(M0, M1, …, Mi-1, Mi, …)。其中,Mi是由时间块[ti, ti+1)内的所有消息构成的社交媒体消息块,Mi={mp},mp为单条消息;每条社交媒体消息仅属于一类;M0和Mi(i≠0)分别是离线场景和在线场景下的消息块。
定义2 假设H为富资源客户端集合,L为低资源客户端集合,Mk, i为第k个客户端上第i个消息块,其中每个客户端上的消息块均是单种语言。富资源客户端上第i个消息块中的事件集合C{Mk, i|k∈H}包含低资源客户端事件集合C{Mk, i|k∈L},即C{Mk, i|k∈L}⊆C{Mk, i|k∈H}。在低资源客户端k上第t轮次,本地模型fk, l(Wk, l(t), x|x∈Mk, i, k∈L)通过本地客户端数据集微调以及间接获取富资源客户端本地模型fk, l(Wk, l(t), x|x∈Mk, i, k∈H)的知识进行学习。
本文方法的重点是在资源有限的客户端上训练一个单一语言的检测模型,而非专注于训练一个能够支持多种语言的检测模型。在Mi中,整个框架的目标是最小化所有低资源客户端上模型总损失Φ。
$ \varPhi=\sum\limits_{k \in L} p_{k} \Phi_{k}\left(\boldsymbol{W}_{k, 1}\right) . $ |
其中:Φk(Wk, l)为客户端k本地模型Wk, l总损失,pk表示客户端k的预定义聚合权重。
1.2 跨语言词嵌入跨语言词嵌入模块利用非英文到英文的平行语料训练了一个跨语言词嵌入模型,旨在实现非英文文本到英文文本的语义空间映射。通过借助参数高效微调技术LoRA[29]的低秩自适应策略,捕捉不同语言之间的语义差异。本文所设计的跨语言词嵌入模块M是在多语言预训练模型中的注意力矩阵Wq和Wv上增加一个旁支。具体而言,模型改进如下:
$ \begin{gathered} \boldsymbol{Q}_{\text {origin }}=\boldsymbol{X} \boldsymbol{W}_{q}, \\ \boldsymbol{V}_{\text {origin }}=\boldsymbol{X} \boldsymbol{W}_{v}, \\ \boldsymbol{Q}_{\text {lora }}=\boldsymbol{X}\left(\boldsymbol{W}_{q}+\text { scale } \cdot \boldsymbol{B} \boldsymbol{A}\right), \\ \boldsymbol{V}_{\text {lora }}=\boldsymbol{X}\left(\boldsymbol{W}_{v}+\text { scale } \cdot \boldsymbol{B} \boldsymbol{A}\right) . \end{gathered} $ |
其中:Qorigin和Vorigin分别代表改进前查询矩阵和值矩阵;Qlora和Vlora分别代表改进后查询矩阵和值矩阵;
为了使得所引入的LoRA模块不会损失英文语义,引入了一个指导模型M′,即被冻结的多语言预训练模型。利用对比学习来实现不同语言语义空间的映射,语义对齐损失为
$ \mathcal{L}_{\text {total }}=\mathcal{L}_{c_{1}}+\mathcal{L}_{c_{2}}+\mathcal{L}_{c_{3}} . $ |
其中
$ \mathcal{L}_{c_{1}}=-\sum\limits_{h=1}^{N} \ln \frac{\exp \left(\operatorname{sim}\left(M\left(x_{h}\right), M^{\prime}\left(y_{h}\right)\right) / \tau\right)}{\sum\limits_{j=1}^{N} \exp \left(\operatorname{sim}\left(M\left(x_{h}\right), M^{\prime}\left(y_{j}\right)\right) / \tau\right)}, $ |
$ \mathcal{L}_{c_{2}}=-\sum\limits_{h=1}^{N} \ln \frac{\exp \left(\operatorname{sim}\left(M\left(y_{h}\right), M^{\prime}\left(y_{h}\right)\right) / \tau\right)}{\sum\limits_{j=1}^{N} \exp \left(\operatorname{sim}\left(M\left(y_{h}\right), M^{\prime}\left(y_{j}\right)\right) / \tau\right)}, $ |
$ \mathcal{L}_{c_{3}}=-\sum\limits_{h=1}^{N} \ln \frac{\exp \left(\operatorname{sim}\left(M\left(x_{h}\right), M\left(y_{h}\right)\right) / \tau\right)}{\sum\limits_{j=1}^{N} \exp \left(\operatorname{sim}\left(M\left(x_{h}\right), M\left(y_{j}\right)\right) / \tau\right)}. $ |
其中:N是一个批次中样本的数量;sim(a1, a2)表示a1和a2之间的相似度;M′(text)和M(text)分别代表向M′和M中输入文本text得到的词嵌入编码;xh代表当前批次中第h个非英文文本;yh代表对应的英文文本;τ是温度参数,用于调节相似度的尺度。该损失函数的目标是最大化正样本对之间的相似度,同时最小化负样本对之间的相似度。
1.3 消息表征图学习模块 1.3.1 加权同构消息图构建为了充分利用社交数据中的关键信息,本文使用用户、实体和标签(hashtag)这3种元素,构建加权同构消息图。具体而言,当2条消息共享上述3种元素中的任意1种时,就在图中为它们添加1条边。直观而言,共享的元素数量越多,2条消息之间的关系就越紧密。因此,以共现元素的个数来作为边的权重,构建加权同构消息图。在初始消息的编码方面,本文遵循了KPGNN[26]中结合语义和时间信息的方法。对于时间信息,本文将时间戳转换为OLE日期,进而得到二维时间特征。对于语义信息,采用1.1节训练的M对消息进行统一编码,得到语义表征。最终消息表征是消息的语义表征以及时间特征在最后一个维度上的拼接。
1.3.2 GNN编码器本文选择GNN模型来作为特征提取器,主要原因有以下2点:1) GNN保留了强大的结构信息以及语义信息,并可以充分利用社交媒体上的用户、实体、标签等元素信息。2) 图神经网络参数较少,可以更灵活地适应各个客户端,减少联邦通信时间。为了深度融合丰富的语义和关系信息,GNN编码器在学习节点表示的过程中,迭代地汇总来自与当前节点直接相邻节点的信息。具体来说,第l层消息mp的表示为hmp(l),在(l+1) 层的更新可表示为
$ \boldsymbol{h}_{m_{p}}^{(l+1)} \leftarrow \mathop {||}\limits^{{\rm{heads}}}\left(\boldsymbol{h}_{m_{p}}^{(l)} \oplus \underset{\forall m_{q} \in N\left(m_{p}\right)}{\operatorname{Aggregator}}\left(\operatorname{Extractor}\left(\boldsymbol{h}_{m_{q}}^{(l)}\right)\right)\right. . $ |
其中:
在整体架构上,本文遵循了传统的基于知识蒸馏的服务器—客户端设计。服务器端,设计了1个全局模型Wg和1个全局锚点Ag来进行富资源客户端以及低资源客户端之间的通信。每个客户端包含1个本地模型Wk, l用于适应本地数据、1个全局模型Wk, g用于特征蒸馏、1个全局锚点Ak, g用于对齐各个客户端特征空间。并利用全局模型作为过程监督,全局锚点作为结果监督来实现知识的有效迁移。其中,本地模型根据本地数据进行更新以适应本地数据特点。全局模型在所有客户端之间共享,进行协作学习。本文利用生命周期机制来适应在线以及离线场景。
1.4.1 联邦聚合在生命周期不同阶段,联邦聚合方式略有不同,但也有一定的共性。假设当前块为Mk, i来介绍全局锚点聚合以及全局模型聚合。
本地锚点计算:本地锚点由Mk, i中每个簇内所有样本表征的均值来表示。因此,本地锚点是当前客户端上源自同一事件消息簇特性的综合体现。t轮次时,客户端k上局部锚点表征集合为
$ \boldsymbol{A}_{k, 1}^{(t)}=\left\{\boldsymbol{a}_{k, c_{1}}^{(t)}\right\}_{c_{1}=1}^{c_{1}} . $ |
其中:ak, cl(t)为客户端k上事件簇cl的局部锚点表征,Cl为客户端k上事件簇个数。事件簇cl的局部锚点表征为
$ \boldsymbol{a}_{k, c_{1}}^{(t)}=\frac{1}{\left|\mathcal{B}_{k, c_{1}}\right|} \sum\limits_{x \in \mathcal{B}_{k, c_{1}}} f_{k, 1}\left(\boldsymbol{W}_{k, 1}^{(t)}, x\right). $ |
其中:
全局锚点聚合: 中央服务器汇总来自参与聚合的客户端上本地锚点表征,聚合方式根据各个客户端消息块中消息个数进行加权平均,从而得到全局锚点表征集合为
$ \boldsymbol{A}_{\mathrm{g}}^{(t+1)}=\left\{\boldsymbol{a}_{c_{\mathrm{g}}}^{(t)}\right\}_{c_{\mathrm{g}}=1}^{C_{\mathrm{g}}} . $ | (1) |
其中:acg(t)为服务器上事件簇cg的全局锚点表征,Cg为事件簇个数。事件簇cg全局锚点表征为
$ \boldsymbol{a}_{c_{\mathrm{g}}}^{(t)}=\frac{1}{\sum\limits_{k \in S}\left|\mathcal{B}_{k, c_{1}}\right|} \sum\limits_{k \in S}\left|\mathcal{B}_{k, c_{1}}\right| \boldsymbol{a}_{k, c_{1}}^{(t)} . $ |
其中S为满足聚合条件的客户端集合,在生命周期不同阶段,S中元素会有所变化,这些变化将在1.2.4节进行阐述。
全局模型聚合:中央服务器接收并汇总来自所有客户端上的全局模型,通过聚合处理生成下一轮更新的全局模型
$ \boldsymbol{W}_{\mathrm{g}}^{(t+1)}=\frac{1}{\sum\limits_{k \in S} \gamma_{k}} \sum\limits_{k \in S} \gamma_{k} \boldsymbol{W}_{k, \mathrm{~g}}^{(t)} . $ | (2) |
其中γk表示客户端k上样本数量。
在每一轮次通信中,当本地训练完后,客户端k将{Ak, l(t)}, Wk, g(t)}上传至中央服务器,通过式(1)、(2)进行聚合,然后将聚合结果{Ag(t+1), Wg(t+1)}下拉至各个客户端,进行新一轮次的本地训练。
1.4.2 生命周期机制生命周期图如图 2所示。FedEvent的生命周期包括富资源客户端预训练(阶段1)、低资源客户端预训练(阶段2)、客户端检测(阶段3)以及维护(阶段4) 4个阶段。在阶段1,利用富资源客户端k上初始消息块Mk, 0(k∈H)构建一个初始的加权同构消息图并利用特定的算法训练初始模型。在阶段2,利用阶段1所训练的模型以中央服务器作为知识传输的媒介来辅助低资源客户端训练初始模型。在阶段3,为每个到来的块构建一个新的图,然后使用已训练好的模型直接检测每个到来的消息块。在阶段4,持续用最新的消息块训练模型,并利用联邦共蒸馏机制来实现各个客户端在线学习,使模型能够学习新知识。其中,阶段1和2用于离线学习,阶段4用于在线学习。阶段3和4交替进行,通过这种方式,模型不断适应传入的数据,可以检测新事件并更新模型的知识。通过生命周期机制,FedEvent能够更好地适应流媒体特性。
阶段1 富资源客户端预训练。该阶段的目标是在富资源客户端k上利用初始消息块Mk, 0(k∈H)训练一个鲁棒的本地模型Wk, l。随着新事件的不断涌现,事件的总数很难提前知道。考虑到交叉熵损失只适用于事件总数是已知和固定的情况,难以处理增量数据。因此,本文转向利用成对学习方法[24],保证簇内紧密性和簇间分离性。由于这种特性,使得在后续阶段2和3可以将富资源客户端清晰的簇间界限信息蒸馏至低资源客户端。该阶段总损失和任务特定损失分别为
$ \begin{align*} \mathcal{L}_{1}=\mathcal{L}_{1}^{P}= & \sum\limits_{\substack{\left(m_{p}, m_{p+}\right) \in \operatorname{Pos} \\ \left(m_{q}, m_{q-}\right) \in \operatorname{Neg}}} \max \left\{\mathcal{D}\left(\boldsymbol{h}_{m_{p}}, \boldsymbol{h}_{m_{p+}}\right)-\right. \\ & \left.\mathcal{D}\left(\boldsymbol{h}_{m_{q}}, \boldsymbol{h}_{m_{q-}}\right)+a, 0\right\} . \end{align*} $ | (3) |
![]() |
图 2 FedEvent生命周期机制 |
其中:Pos是来自相同事件簇的样本对集合,Neg是来自不同事件簇的样本对集合,a是边界距离超参数,D(, )计算Euclid距离,hmp、hmp+、hmq和hmq-分别是对消息mp、mp+、mq和mq-由GNN编码器所学习到的消息表征。
阶段2 低资源客户端预训练。该阶段目标是利用阶段1所训练出的本地模型来协助低资源客户端训练初始模型。本文提出了以全局模型为导向的过程监督及以全局锚点为导向的结果监督来实现知识的迁移。具体来说,对于富资源客户端,冻结本地模型,并以本地模型和全局模型分别作为教师模型和学生模型。学生模型学习富资源客户端数据特征的同时,也将学习教师模型的隐藏层输出,称为Local-To-Global策略。在低资源客户端,冻结全局模型,以全局模型和本地模型分别作为教师模型和学生模型,学生模型从教师模型中学习通用知识的同时,利用本地数据学习适合本地数据特征的知识,称为Global-To-Local策略。将以上2种策略作为以过程为导向的监督。并引入以全局锚点为导向的结果监督来统一各个客户端的簇心。从结果导向和过程导向2个方面进行知识迁移。在以过程为导向的监督学习中,学生模型可以根据本地数据特点,灵活地学习教师模型中特定或若干隐藏层的输出。各个客户端学生模型蒸馏损失可表示为
$ \mathcal{L}_{2}^{\mathrm{KD}}=\frac{1}{E} \sum\limits_{e=1}^{E} \operatorname{MSE}\left(\boldsymbol{H}_{e}^{\mathrm{t}} ; \boldsymbol{H}_{e}^{\mathrm{s}}\right) . $ |
其中:MSE表示均方误差函数,E代表学生模型要向教师模型学习的隐藏层个数,Het和Hes分别代表教师模型和学生模型第e个隐藏层的输出。
在本地客户端训练时,期待当前样本的特征可以与相应的全局锚点更接近,同时远离非相应的全局锚点,因此,利用对比学习来协调所有客户端的本地中心,以便在客户之间交换信息。对于样本x,锚点对齐损失为
$ \mathcal{L}_{2}^{A}=\mathcal{L}_{\mathrm{CE}}(\boldsymbol{s}, c) . $ | (4) |
其中:c为x所对应的事件簇编号,
$ s_{f}=\frac{\exp \left(\left\langle\boldsymbol{a}_{f}^{(t)}, f_{k}\left(\boldsymbol{W}_{k}^{(t)}, x\right) / \alpha\right\rangle\right)}{\sum\limits_{c_{\mathrm{g}}=1}^{C_{g}} \exp \left(\left\langle\boldsymbol{a}_{c_{\mathrm{g}}}^{(t)}, f_{k}\left(\boldsymbol{W}_{k}^{(t)}, x\right) / \alpha\right\rangle\right)}. $ |
其中:〈, 〉是内积;fk(Wk(t), x)为客户端k上输入x所得到的模型输出;Wk(t)为该客户端上模型参数;acg(t)为Ag(t+1)中某一个锚点表征;α是温度参数,用于控制模型输出的平滑程度。最小化
阶段2中参与聚合的客户端集合S包含所有富资源客户端,即式(1)、(2)中S=H,只有富资源客户端参与聚合。客户端k上,该阶段仅仅训练各个客户端上学生模型,该阶段总损失可表示为
$ \mathcal{L}_{2}=\mathcal{L}_{2}^{\mathrm{P}}+\mathcal{L}_{2}^{\mathrm{KD}}+\mathcal{L}_{2}^{\mathrm{A}} . $ |
其中
阶段3 客户端检测。在检测阶段,根据所训练出来的模型对[Mk, i, Mk, i+w]窗口内的消息块进行聚类,其中w代表窗口内消息块个数。基于距离的聚类算法如K-Means和基于密度的聚类算法如HDBSCAN[30]都可以对消息进行聚类。其中,HDBSCAN不需要指定类别的总数,非常适合增量的检测需求。因此,本文利用HDBSCAN算法进行消息检测。
阶段4 维护(客户端联合训练)。受文[31]工作的启发,本文设计了基于任务特定损失引导的共蒸馏机制来适应在线的场景。在此过程中,各个客户端的本地模型和全局模型均参与模型训练,相互学习并适应在线场景下的数据分布和模式变化。由于本地模型比全局模型更适应本地数据,本地模型编码的有用知识可以帮助指导全局模型。此外,本地模型只能从本地数据中学习,而全局模型融合了所有客户端的数据特性。因此,本地模型还可以从全局模型蒸馏的知识中受益。所以,本地模型和全局模型之间可以相互学习。基于此,本文设计了基于任务特定损失引导的共蒸馏机制,使本地模型及全局模型相互学习对方有用的知识。该阶段全局模型和本地模型蒸馏损失可表示为
$ \mathcal{L}_{3, 1}^{\mathrm{H}}=\mathcal{L}_{3, \mathrm{~g}}^{\mathrm{H}}=\frac{\frac{1}{E} \sum\limits_{e=1}^{E} \operatorname{MSE}\left(\boldsymbol{H}_{e}^{\mathrm{t}} ; \boldsymbol{H}_{e}^{\mathrm{s}}\right)}{\mathcal{L}_{3, 1}^{\mathrm{P}}+\mathcal{L}_{3, \mathrm{~g}}^{\mathrm{P}}}. $ |
该阶段中参与聚合的客户端集合S包含所有客户端,即式(1)、(2)中S=L∪H,代表所有客户端均参与聚合。该阶段总损失包含任务特定损失、基于任务特定损失的共蒸馏损失以及锚点对齐损失。因此,该阶段本地模型和全局模型的损失分别可表示为
$ \begin{aligned} \mathcal{L}_{3, 1} & =\mathcal{L}_{3, 1}^{\mathrm{P}}+\mathcal{L}_{3, 1}^{\mathrm{H}}+\mathcal{L}_{3, 1}^{\mathrm{A}}, \\ \mathcal{L}_{3, \mathrm{~g}} & =\mathcal{L}_{3, \mathrm{~g}}^{\mathrm{P}}+\mathcal{L}_{3, \mathrm{~g}}^{\mathrm{H}}+\mathcal{L}_{3, \mathrm{~g}}^{\mathrm{A}} . \end{aligned} $ |
其中:
1) 实验数据集。
为了评估FedEvent框架的性能,本文在一个大型公开的英文数据集Events2012[11]的基础上,根据其主题描述补充了中文和越南语事件样本,构建了低资源客户端(中文客户端、越南语客户端)上私有数据集,从而创建一个多客户端、跨语言的实验环境。首先,依据Twitter高质量筛选器指南,通过关键词、时间范围和语言限制进行初步的数据筛选。例如,使用查询语句“ (莫言AND奖) since: 2012-10-12 until: 2012-10-13 lang: zh”可以获得2012年10月12日至13日期间,包含关键词“莫言”和“奖”的中文推文。接下来,通过人工审核和数据清洗过程来确保数据的质量。在进行文本实体抽取时,中文和英文文本采用文本预处理库spacy进行处理,越南语文本利用文本预处理库Underthesea进行处理。假设k=0、1、2分别为英文客户端、中文客户端和越南语客户端。该数据集各个消息块统计信息如表 1所示。
消息块 | Mk, 0 | Mk, 1 | Mk, 2 | Mk, 3 | Mk, 4 | Mk, 5 | Mk, 6 | Mk, 7 | Mk, 8 | Mk, 9 | Mk, 10 |
中文消息数量/条 | 3 765 | 1 151 | 348 | 468 | 316 | 405 | 300 | 1 022 | 108 | 132 | 238 |
越南语消息数量/条 | 2 716 | 1 270 | 207 | 239 | 244 | 249 | 145 | 743 | 181 | 146 | 113 |
消息块 | Mk, 11 | Mk, 12 | Mk, 13 | Mk, 14 | Mk, 15 | Mk, 16 | Mk, 17 | Mk, 18 | Mk, 19 | Mk, 20 | Mk, 21 |
中文消息数量/条 | 234 | 297 | 204 | 714 | 248 | 175 | 757 | 346 | 290 | 101 | 267 |
越南语消息数量/条 | 140 | 426 | 264 | 387 | 325 | 113 | 350 | 246 | 155 | 80 | 292 |
2) 评价指标。
采用标准化互信息(NMI)和调整互信息(AMI)作为评价指标,以确保与以往社交媒体事件检测工作的可比性。
2.2 实验参数设置本文合并Hungging Face平台提供的中英平行语料库(https://huggingface.co/datasets/larryvrh/WikiMatrix-v1-En_Zh-filtered)和中越平行语料库(https://huggingface.co/datasets/harouzie/vi_en-translation)进行跨语言词嵌入模块的训练。其中,LoRA中r设置为4。全局模型采用双层图注意力网络(GAT),注意力头设置为4,隐藏层和输出层维度均设为32。模型学习率设置为0.001,批次大小设置为1 000。聚类算法HDBSCAN中核心样本的密度阈值(min_samples)设置为3,最小聚类大小(min_cluster_size)设置为10。
2.3 对比方法将FedEvent方法与下述社交事件检测方法进行离线和在线场景下的比较。
1) mBERT[32]: 一种多语言预训练模型,能够在多种语言上学习通用的语言表示,以捕捉深层次语义信息。
2) KPGNN[26]: 通过GAT结合三元损失函数获取语义及结构上的消息表示。
3) QSGNN[24]: 通过最佳的已知样本和可靠的知识转移,将知识从已知扩展到未知。
4) FedKP: 将FedAvg[33]与KPGNN[26]进行结合,让每个客户端都拥有一个KPGNN主干模型。
5) FedQS: 将FedAvg[33]中各个客户端主干模型设为QSGNN[24]。
2.4 主实验为了评估FedEvent方法的有效性,本文在每个低资源客户端上进行了离线评估及在线评估。使用该客户端数据集中第一周消息所构建的初始消息块Mk, 0进行了离线评估,并将随后21天的数据划分为消息块Mk, 1, Mk, 2, …, Mk, 21进行了在线评估。在离线以及在线场景下进行了对比和消融实验。由于M和mBERT均可对消息进行编码,编码结果也可处理该任务,因此,本文利用M对消息进行编码从而实现社交媒体事件检测的方法,命名为FE-M,通过和mBERT进行对比以凸显M的编码效果。实验结果如表 2—5所示,表中,FE-NC代表在FedEvent中消除跨语言词嵌入模块M,借用mBERT的预训练编码层对消息进行编码;FE-NA代表在FedEvent中消除锚点对齐损失。同时,为保证实验的公平性,除mBERT和FE-NC外,其他模型均使用M进行编码。
指标 | mBERT | KPGNN | QSGNN | FedKP | FedQS | FE-M | FE-NC | FE-NA | FedEvent | |||||||||||||||||
zh | vi | zh | vi | zh | vi | zh | vi | zh | vi | zh | vi | zh | vi | zh | vi | zh | vi | |||||||||
NMI | 0.23 | 0.01 | 0.59 | 0.42 | 0.62 | 0.44 | 0.63 | 0.47 | 0.64 | 0.53 | 0.41 | 0.13 | 0.66 | 0.45 | 0.68 | 0.60 | 0.70 | 0.63 | ||||||||
AMI | 0.14 | 0.01 | 0.47 | 0.31 | 0.51 | 0.35 | 0.52 | 0.37 | 0.53 | 0.36 | 0.30 | 0.12 | 0.53 | 0.34 | 0.58 | 0.45 | 0.62 | 0.45 | ||||||||
注: zh代表中文客户端,vi代表越南语客户端。 |
方法 | Mk, 1 | Mk, 2 | Mk, 3 | Mk, 4 | Mk, 5 | Mk, 6 | Mk, 7 | ||||||||||||||||||||||||||||||||||
NMI | AMI | NMI | AMI | NMI | AMI | NMI | AMI | NMI | AMI | NMI | AMI | NMI | AMI | ||||||||||||||||||||||||||||
zh | vi | zh | vi | zh | vi | zh | vi | zh | vi | zh | vi | zh | vi | zh | vi | zh | vi | zh | vi | zh | vi | zh | vi | zh | vi | zh | vi | ||||||||||||||
mBERT | 0.15 | 0.01 | 0.10 | 0.01 | 0.22 | 0.56 | 0.19 | 0.46 | 0.10 | 0.10 | 0.08 | 0.01 | 0.09 | 0.02 | 0.01 | 0.06 | 0.07 | 0.03 | 0.05 | 0.01 | 0.40 | 0.42 | 0.34 | 0.33 | 0.02 | 0.02 | 0.01 | 0.01 | |||||||||||||
KPGNN | 0.54 | 0.49 | 0.49 | 0.47 | 0.75 | 0.79 | 0.71 | 0.74 | 0.55 | 0.71 | 0.53 | 0.65 | 0.64 | 0.62 | 0.58 | 0.56 | 0.69 | 0.65 | 0.74 | 0.56 | 0.78 | 0.69 | 0.75 | 0.60 | 0.46 | 0.46 | 0.43 | 0.42 | |||||||||||||
QSGNN | 0.57 | 0.51 | 0.53 | 0.47 | 0.73 | 0.74 | 0.68 | 0.69 | 0.54 | 0.72 | 0.51 | 0.69 | 0.65 | 0.59 | 0.59 | 0.50 | 0.68 | 0.66 | 0.64 | 0.58 | 0.70 | 0.67 | 0.64 | 0.65 | 0.47 | 0.40 | 0.45 | 0.36 | |||||||||||||
FedKP | 0.58 | 0.55 | 0.54 | 0.53 | 0.74 | 0.77 | 0.69 | 0.73 | 0.58 | 0.80 | 0.55 | 0.78 | 0.65 | 0.65 | 0.58 | 0.59 | 0.74 | 0.69 | 0.71 | 0.61 | 0.84 | 0.73 | 0.75 | 0.72 | 0.53 | 0.55 | 0.52 | 0.51 | |||||||||||||
FedQS | 0.60 | 0.56 | 0.53 | 0.54 | 0.70 | 0.76 | 0.61 | 0.71 | 0.59 | 0.79 | 0.56 | 0.71 | 0.57 | 0.51 | 0.48 | 0.41 | 0.71 | 0.53 | 0.68 | 0.42 | 0.79 | 0.72 | 0.77 | 0.66 | 0.54 | 0.39 | 0.51 | 0.32 | |||||||||||||
FE-M | 0.39 | 0.14 | 0.33 | 0.13 | 0.57 | 0.57 | 0.49 | 0.47 | 0.39 | 0.21 | 0.31 | 0.16 | 0.50 | 0.47 | 0.43 | 0.42 | 0.40 | 0.34 | 0.31 | 0.28 | 0.62 | 0.56 | 0.58 | 0.47 | 0.01 | 0.15 | 0.01 | 0.12 | |||||||||||||
FE-NC | 0.51 | 0.45 | 0.49 | 0.40 | 0.70 | 0.68 | 0.66 | 0.63 | 0.63 | 0.78 | 0.60 | 0.73 | 0.63 | 0.67 | 0.60 | 0.61 | 0.69 | 0.63 | 0.66 | 0.63 | 0.82 | 0.71 | 0.80 | 0.64 | 0.50 | 0.48 | 0.47 | 0.42 | |||||||||||||
FE-NA | 0.56 | 0.55 | 0.50 | 0.54 | 0.79 | 0.75 | 0.75 | 0.70 | 0.66 | 0.82 | 0.61 | 0.78 | 0.67 | 0.62 | 0.61 | 0.55 | 0.75 | 0.67 | 0.72 | 0.59 | 0.89 | 0.77 | 0.86 | 0.71 | 0.53 | 0.55 | 0.50 | 0.51 | |||||||||||||
FedEvent | 0.61 | 0.62 | 0.55 | 0.57 | 0.81 | 0.82 | 0.76 | 0.79 | 0.70 | 0.87 | 0.66 | 0.84 | 0.70 | 0.65 | 0.65 | 0.58 | 0.74 | 0.69 | 0.69 | 0.60 | 0.91 | 0.80 | 0.89 | 0.73 | 0.58 | 0.58 | 0.55 | 0.54 |
方法 | Mk, 8 | Mk, 9 | Mk, 10 | Mk, 11 | Mk, 12 | Mk, 13 | Mk, 14 | ||||||||||||||||||||||||||||||||||
NMI | AMI | NMI | AMI | NMI | AMI | NMI | AMI | NMI | AMI | NMI | AMI | NMI | AMI | ||||||||||||||||||||||||||||
zh | vi | zh | vi | zh | vi | zh | vi | zh | vi | zh | vi | zh | vi | zh | vi | zh | vi | zh | vi | zh | vi | zh | vi | zh | vi | zh | vi | ||||||||||||||
mBERT | 0.28 | 0.18 | 0.23 | 0.13 | 0.10 | 0.09 | 0.03 | 0.03 | 0.33 | 0.18 | 0.27 | 0.13 | 0.29 | 0.47 | 0.23 | 0.41 | 0.33 | 0.02 | 0.29 | 0.01 | 0.42 | 0.44 | 0.37 | 0.39 | 0.27 | 0.38 | 0.20 | 0.31 | |||||||||||||
KPGNN | 0.72 | 0.75 | 0.65 | 0.66 | 0.74 | 0.71 | 0.69 | 0.64 | 0.80 | 0.82 | 0.86 | 0.79 | 0.74 | 0.52 | 0.70 | 0.50 | 0.75 | 0.61 | 0.70 | 0.53 | 0.75 | 0.75 | 0.74 | 0.72 | 0.41 | 0.58 | 0.37 | 0.52 | |||||||||||||
QSGNN | 0.74 | 0.71 | 0.68 | 0.64 | 0.79 | 0.71 | 0.76 | 0.63 | 0.81 | 0.79 | 0.83 | 0.76 | 0.71 | 0.53 | 0.67 | 0.49 | 0.71 | 0.44 | 0.65 | 0.37 | 0.66 | 0.55 | 0.63 | 0.49 | 0.42 | 0.62 | 0.38 | 0.56 | |||||||||||||
FedKP | 0.77 | 0.78 | 0.72 | 0.71 | 0.79 | 0.78 | 0.74 | 0.72 | 0.83 | 0.83 | 0.81 | 0.80 | 0.71 | 0.54 | 0.66 | 0.45 | 0.81 | 0.68 | 0.77 | 0.61 | 0.79 | 0.80 | 0.77 | 0.78 | 0.44 | 0.64 | 0.36 | 0.57 | |||||||||||||
FedQS | 0.78 | 0.75 | 0.71 | 0.70 | 0.79 | 0.76 | 0.78 | 0.70 | 0.84 | 0.80 | 0.80 | 0.74 | 0.72 | 0.57 | 0.68 | 0.48 | 0.73 | 0.66 | 0.67 | 0.60 | 0.70 | 0.64 | 0.68 | 0.60 | 0.40 | 0.61 | 0.31 | 0.55 | |||||||||||||
FE-M | 0.54 | 0.41 | 0.49 | 0.34 | 0.42 | 0.51 | 0.36 | 0.41 | 0.52 | 0.51 | 0.49 | 0.43 | 0.46 | 0.45 | 0.39 | 0.38 | 0.45 | 0.33 | 0.39 | 0.26 | 0.62 | 0.36 | 0.58 | 0.29 | 0.33 | 0.42 | 0.26 | 0.35 | |||||||||||||
FE-NC | 0.65 | 0.75 | 0.60 | 0.66 | 0.83 | 0.77 | 0.80 | 0.72 | 0.79 | 0.80 | 0.77 | 0.78 | 0.70 | 0.59 | 0.65 | 0.51 | 0.76 | 0.62 | 0.72 | 0.52 | 0.77 | 0.78 | 0.75 | 0.75 | 0.43 | 0.57 | 0.37 | 0.53 | |||||||||||||
FE-NA | 0.79 | 0.78 | 0.72 | 0.71 | 0.85 | 0.80 | 0.82 | 0.75 | 0.84 | 0.82 | 0.83 | 0.79 | 0.74 | 0.55 | 0.70 | 0.46 | 0.77 | 0.66 | 0.72 | 0.60 | 0.89 | 0.78 | 0.86 | 0.75 | 0.43 | 0.62 | 0.36 | 0.57 | |||||||||||||
FedEvent | 0.85 | 0.84 | 0.79 | 0.78 | 0.85 | 0.85 | 0.82 | 0.81 | 0.87 | 0.93 | 0.86 | 0.92 | 0.79 | 0.68 | 0.72 | 0.64 | 0.78 | 0.72 | 0.73 | 0.65 | 0.91 | 0.87 | 0.90 | 0.82 | 0.47 | 0.65 | 0.41 | 0.58 |
方法 | Mk, 15 | Mk, 16 | Mk, 17 | Mk, 18 | Mk, 19 | Mk, 20 | Mk, 21 | ||||||||||||||||||||||||||||||||||
NMI | AMI | NMI | AMI | NMI | AMI | NMI | AMI | NMI | AMI | NMI | AMI | NMI | AMI | ||||||||||||||||||||||||||||
zh | vi | zh | vi | zh | vi | zh | vi | zh | vi | zh | vi | zh | vi | zh | vi | zh | vi | zh | vi | zh | vi | zh | vi | zh | vi | zh | vi | ||||||||||||||
mBERT | 0.34 | 0.32 | 0.29 | 0.28 | 0.32 | 0.29 | 0.28 | 0.24 | 0.25 | 0.03 | 0.19 | 0.01 | 0.36 | 0.21 | 0.33 | 0.16 | 0.04 | 0.06 | 0.02 | 0.03 | 0.42 | 0.32 | 0.34 | 0.26 | 0.03 | 0.39 | 0.01 | 0.33 | |||||||||||||
KPGNN | 0.53 | 0.60 | 0.47 | 0.54 | 0.61 | 0.74 | 0.58 | 0.71 | 0.53 | 0.73 | 0.51 | 0.70 | 0.51 | 0.37 | 0.44 | 0.32 | 0.77 | 0.75 | 0.75 | 0.79 | 0.73 | 0.72 | 0.69 | 0.66 | 0.48 | 0.56 | 0.42 | 0.50 | |||||||||||||
QSGNN | 0.54 | 0.61 | 0.51 | 0.56 | 0.62 | 0.74 | 0.61 | 0.69 | 0.44 | 0.71 | 0.42 | 0.68 | 0.45 | 0.37 | 0.42 | 0.33 | 0.73 | 0.61 | 0.71 | 0.53 | 0.73 | 0.53 | 0.69 | 0.47 | 0.43 | 0.47 | 0.40 | 0.40 | |||||||||||||
FedKP | 0.59 | 0.65 | 0.56 | 0.59 | 0.89 | 0.85 | 0.88 | 0.82 | 0.52 | 0.73 | 0.47 | 0.70 | 0.66 | 0.49 | 0.62 | 0.44 | 0.79 | 0.68 | 0.77 | 0.63 | 0.78 | 0.78 | 0.75 | 0.75 | 0.52 | 0.63 | 0.47 | 0.57 | |||||||||||||
FedQS | 0.55 | 0.53 | 0.46 | 0.44 | 0.80 | 0.81 | 0.76 | 0.79 | 0.48 | 0.58 | 0.46 | 0.52 | 0.62 | 0.34 | 0.57 | 0.29 | 0.75 | 0.69 | 0.70 | 0.63 | 0.67 | 0.57 | 0.58 | 0.50 | 0.52 | 0.54 | 0.50 | 0.50 | |||||||||||||
FE-M | 0.47 | 0.41 | 0.39 | 0.32 | 0.59 | 0.43 | 0.56 | 0.35 | 0.36 | 0.50 | 0.31 | 0.44 | 0.32 | 0.28 | 0.28 | 0.23 | 0.51 | 0.29 | 0.46 | 0.23 | 0.51 | 0.29 | 0.42 | 0.31 | 0.03 | 0.29 | 0.01 | 0.24 | |||||||||||||
FE-NC | 0.55 | 0.61 | 0.55 | 0.55 | 0.65 | 0.79 | 0.62 | 0.76 | 0.56 | 0.63 | 0.52 | 0.60 | 0.55 | 0.47 | 0.48 | 0.42 | 0.74 | 0.73 | 0.72 | 0.68 | 0.74 | 0.70 | 0.68 | 0.67 | 0.57 | 0.57 | 0.50 | 0.52 | |||||||||||||
FE-NA | 0.61 | 0.64 | 0.46 | 0.58 | 0.89 | 0.77 | 0.87 | 0.73 | 0.56 | 0.75 | 0.53 | 0.70 | 0.70 | 0.58 | 0.67 | 0.49 | 0.82 | 0.75 | 0.81 | 0.70 | 0.78 | 0.81 | 0.72 | 0.78 | 0.59 | 0.59 | 0.51 | 0.52 | |||||||||||||
FedEvent | 0.70 | 0.67 | 0.63 | 0.60 | 0.83 | 0.80 | 0.80 | 0.76 | 0.63 | 0.83 | 0.58 | 0.78 | 0.73 | 0.60 | 0.69 | 0.51 | 0.75 | 0.83 | 0.73 | 0.80 | 0.80 | 0.88 | 0.77 | 0.83 | 0.62 | 0.66 | 0.55 | 0.63 |
对于每个客户端,将该客户端上的初始消息块Mk, 0按照70%、20%和10%的数据量比例划分为训练集、测试集以及验证集。本文比较了多机方法(联邦学习环境下)FedKP、FedQS、FE-NC、FE-NA、FedEvent与单机方法mBERT、KPGNN、QSGNN、FE-M的性能差异。实验结果表明,在离线场景下,多机方法优于单机方法。究其原因,是因为联邦学习框架可以整合来自各个客户端上的知识。具体而言,相比单机方法,多机方法的NMI和AMI在中文客户端上分别有1.6%~204.3%和2.0%~342.9%的显著提升,在越南语客户端上分别提升了2.3%~6 200%和0~4 400%。FedKP、FedQS方法虽然引入了联邦学习框架,效果也有提升,但并不明显,是因为各个客户端上的特征空间不一致以及不同语言之间的差异。而FedEvent利用全局锚点来统一各个客户端上的特征空间,利用本地模型来适应本地私有数据的特性,并利用全局模型来传递全局的知识。所以,FedEvent在处理分布式社交事件检测任务时,更适合来实现富资源客户端知识迁移至低资源客户端。具体而言,与FedKP、FedQS相比,FedEvent在NMI和AMI指标上分别提升了11.1%~34.0% 和17.0%~28.6%。
在线场景的实验结果如表 3—5所示,FedEvent在在线场景下大多都超过了其他方法。在线评估中,观察到不同块之间性能差异明显,可能是因为不同消息块中消息数量有着较大差异以及消息块中数据的长尾分布。
结合表 2—5,可以看出FE-M在离线场景和在线场景下的性能均显著优于mBERT,有效地缓解了mBERT在低资源语言文本表征上的不足。具体而言,在离线场景下,相比mBERT,FE-M的NMI和AMI在中文客户端上分别提升了78.3%和114.3%,在越南语客户端上分别提升了120.0%和110.0%。在线场景下,FE-M的NMI和AMI在中文客户端上分别提升了168.0%和445.6%,在越南语客户端上分别提升了462.8%和778.4%。可以看出,FE-M在越南语客户端上表现尤为突出,可能是mBERT对越南语的表征能力不如对中文那样强大。利用FE-M对消息进行表征后,效果更加明显,从而验证了本文提出的跨语言词嵌入可以有效地缓解不同语言输入特征空间不一致的问题。
2.5 对比实验CLKD是目前最先进的中心化蒸馏方法,以集中训练的方式将富资源语言上训练的教师模型中的特征知识以及关系知识蒸馏到低资源语言的学生模型中。为了探究本文所提出的去中心化蒸馏方法FedEvent与CLKD之间的性能差异,本文比较了2种方法的评估结果,如表 6和7所示。表中数据分别代表中文和越南语客户端上NMI或AMI的平均值。离线场景下,FedEvent优于CLKD;在线场景下,FedEvent与CLKD的性能非常接近。通过与中心化蒸馏方法的比较,进一步证明了去中心化方法FedEvent的显著优势。原因主要涉及2个方面:一方面,FedEvent通过锚点对齐损失来统一各个客户端上的簇心,使得全局模型拥有全局一致的知识。在此基础上,本地模型会结合全局知识以及本地数据进行微调,从而使其更加符合本地数据的特性。另一方面,FedEvent采用了自适应蒸馏策略来选择性地从教师模型中获取对己方有益的知识,从而避免了无益知识对模型性能的影响。
方法 | Mk, 0 | Mk, 1 | Mk, 2 | Mk, 3 | Mk, 4 | Mk, 5 | Mk, 6 | Mk, 7 | Mk, 8 | Mk, 9 | Mk, 10 | Mk, 11 | Mk, 12 | Mk, 13 | Mk, 14 | Mk, 15 | Mk, 16 | Mk, 17 | Mk, 18 | Mk, 19 | Mk, 20 | Mk, 21 |
CLKD | 0.64 | 0.59 | 0.81 | 0.80 | 0.68 | 0.73 | 0.84 | 0.59 | 0.86 | 0.87 | 0.88 | 0.77 | 0.75 | 0.87 | 0.60 | 0.71 | 0.83 | 0.74 | 0.64 | 0.79 | 0.84 | 0.64 |
FedEvent | 0.67 | 0.62 | 0.82 | 0.79 | 0.68 | 0.72 | 0.86 | 0.58 | 0.85 | 0.85 | 0.90 | 0.74 | 0.75 | 0.89 | 0.56 | 0.69 | 0.82 | 0.73 | 0.67 | 0.79 | 0.84 | 0.64 |
方法 | Mk, 0 | Mk, 1 | Mk, 2 | Mk, 3 | Mk, 4 | Mk, 5 | Mk, 6 | Mk, 7 | Mk, 8 | Mk, 9 | Mk, 10 | Mk, 11 | Mk, 12 | Mk, 13 | Mk, 14 | Mk, 15 | Mk, 16 | Mk, 17 | Mk, 18 | Mk, 19 | Mk, 20 | Mk, 21 |
CLKD | 0.49 | 0.55 | 0.77 | 0.77 | 0.62 | 0.66 | 0.79 | 0.57 | 0.82 | 0.83 | 0.84 | 0.68 | 0.69 | 0.85 | 0.51 | 0.63 | 0.82 | 0.71 | 0.60 | 0.77 | 0.78 | 0.58 |
FedEvent | 0.54 | 0.56 | 0.78 | 0.75 | 0.62 | 0.65 | 0.81 | 0.55 | 0.79 | 0.82 | 0.89 | 0.68 | 0.69 | 0.86 | 0.50 | 0.62 | 0.78 | 0.68 | 0.60 | 0.77 | 0.80 | 0.59 |
2.6 消融实验
通过对比表 2—5,可以看到,无论是在离线还是在线场景下,跨语言词嵌入模块和锚点对齐损失都显著提升了模型性能。离线场景下,FedEvent通过引入跨语言词嵌入模块,与FE-NC方法相比,在NMI和AMI指标上分别提升了19.8%和23.0%。在线场景下,分别提升了15.0%和6.3%。由于引入跨语言词嵌入模块后,FedEvent确保了不同客户端上输入特征空间的一致性,从而增强了蒸馏效果。
此外,锚点对齐损失也显著提升了模型性能,具体而言,在离线场景下,FedEvent相比未加入锚点对齐损失的方法(FE-NA),在NMI和AMI指标上均提升了3.9%,在线场景下,在NMI和AMI指标上分别提升了15.4%和7.6%。这进一步印证了锚点对齐损失的重要性。在缺少锚点对齐损失的情况下,低资源客户端不易捕获到锚点对齐的信息,导致蒸馏效果较差。
2.7 案例分析为了更直观地评估FedEvent的蒸馏效果,本文采用混淆矩阵来探究FedEvent和KPGNN之间差异,从而更直观地分析FedEvent获取先验知识的程度。选择KPGNN作为对照的主要原因在于,它与FedEvent在模型结构上具有一致性,因此能够更准确地反映出先验知识的获取程度。在窗口选择上,本文遵循文[34]的做法,选择在第5个窗口上进行实验。由于窗口中第1个消息块是知识蒸馏过程结束的第1块,保留了更多蒸馏到的知识,更能够探究知识蒸馏程度。因此,本文在英文和越南语客户端上均选择在第5个窗口中第1个消息块上进行案例分析,即在英文客户端上选择了M0, 17,在越南语客户端上选择了M2, 17。其中,英文客户端M0, 17块上共有2 676条消息,分散在35个簇中;越南语客户端M2, 17块上共有350条消息,分散在14个簇中。
混淆矩阵是一种特定的表格布局,用于可视化监督学习算法的性能。在混淆矩阵中,每一行代表预测标签,每一列代表真实标签。矩阵的每个单元格包含了在该实际标签和预测标签下的样本数量,可以更直观地了解预测值与真实值之间的差异。本实验中,混淆矩阵的行数和列数与越南语客户端的类簇个数一致。考虑到基于密度的聚类方法所获得的事件数量与实际事件数量之间的差异,本文统一采用K-Means方法来获得预测标签。本文共构建了3个混淆矩阵:第1个混淆矩阵代表FedEvent在中英文客户端上的真实结果与预测结果之间的关系;第2个混淆矩阵代表FedEvent在越南语客户端上的真实结果与预测结果之间的关系;第3个混淆矩阵代表KPGNN在越南语客户端上的预测结果与真实结果之间的关系。
通过比较图 3b和图 3c,可以发现FedEvent的聚类结果在对角线上大多比KPGNN更高,意味着其预测结果更集中,准确度更高。这一发现表明,即便在低资源环境下,FedEvent也能有效地帮助模型获取到一定的先验知识,从而提升性能。相反,KPGNN由于数据的限制,性能受到了显著影响。进一步地,通过比较图 3a和图 3b,可以观察到FedEvent在英文客户端某一类簇上的表现会直接影响在越南语客户端这一类簇上性能表现,这说明FedEvent会将英文客户端边界知识蒸馏至越南语客户端。而对于KPGNN而言,由于缺乏足够的先验知识,因此它在面对相似文本或共享相同元素的文本时,往往会出现判别能力不足的情况,从而导致模型识别错误。
![]() |
图 3 混淆矩阵实验结果 |
2.8 聚类结果可视化
为了验证FedEvent在处理窗口中最后一个消息块时仍能保持较好的边界信息,本文选择了在第2个窗口中最后一个消息块(即M1, 7和M2, 7)上采用t-SNE[35]对消息聚类结果进行了降维可视化。图 4展示了不同方法在中文客户端和越南语客户端上的可视化结果,其中mBERT(zh)表示mBERT模型在中文客户端上的结果,其他类似。与其他方法相比,FedEvent能够学习到更可区分的表示。同时,观察到FedEvent对M1, 7和M2, 7的聚类结果比FE-NA更加紧密,验证了锚点对齐损失在FedEvent中的重要性。此外,跨语言词嵌入模块的引入同样也提升了模型性能。
![]() |
图 4 聚类结果可视化图 |
3 结论
本文提出了基于联邦蒸馏的跨语言社交媒体事件检测方法。该方法采用生命周期机制以适应在线及离线场景下的事件检测需求,并通过过程监督以及结果监督实现知识的有效迁移。通过知识蒸馏技术,有效缓解了面对低资源语言时的挑战,并利用跨语言词嵌入模块,实现了不同语言间的语义空间映射。通过实验证明了该方法的有效性。下一步将探索针对低资源场景下长尾数据分布的社交媒体事件检测策略。
[1] |
ATEFEH F, KHREICH W. A survey of techniques for event detection in twitter[J]. Computational Intelligence, 2015, 31(1): 132-164. DOI:10.1111/coin.12017 |
[2] |
PENG H, LI J X, SONG Y Q, et al. Streaming social event detection and evolution discovery in heterogeneous information networks[J]. ACM Transactions on Knowledge Discovery from Data, 2021, 15(5): 89. |
[3] |
GASPAR R, PEDRO C, PANAGIOTOPOULOS P, et al. Beyond positive or negative: Qualitative sentiment analysis of social media reactions to unexpected stressful events[J]. Computers in Human Behavior, 2016, 56: 179-191. DOI:10.1016/j.chb.2015.11.040 |
[4] |
NISAR T M, YEUNG M. Twitter as a tool for forecasting stock market movements: A short-window event study[J]. The journal of finance and data science, 2018, 4(2): 101-119. DOI:10.1016/j.jfds.2017.11.002 |
[5] |
MAROZZO F, BESSI A. Analyzing polarization of social media users and news sites during political campaigns[J]. Social Network Analysis and Mining, 2018, 8(1): 1. DOI:10.1007/s13278-017-0479-5 |
[6] |
AGGARWAL C C, SUBBIAN K. Event detection in social Streams[C]//Proceedings of the 12th SIAM International Conference on Data Mining. Anaheim, USA: Society for Industrial and Applied Mathematics, 2012: 624-635.
|
[7] |
HU L M, ZHANG B, HOU L, et al. Adaptive online event detection in news streams[J]. Knowledge-Based Systems, 2017, 138: 105-112. DOI:10.1016/j.knosys.2017.09.039 |
[8] |
OZDIKIS O, KARAGOZ P, OGUZTÜZÜN H. Incremental clustering with vector expansion for online event detection in microblogs[J]. Social Network Analysis and Mining, 2017, 7(1): 56. DOI:10.1007/s13278-017-0476-8 |
[9] |
ZHANG K, ZI J, WU L G. New event detection based on indexing-tree and named entity[C]//Proceedings of the 30th Annual International ACM SIGIR Conference on Research and Development in Information Retrieval. Amsterdam, The Netherlands, USA: Association for Computing Machinery 2007: 215-222.
|
[10] |
FEDORYSZAK M, FREDERICK B, RAJARAM V, et al. Real-time event detection on social data streams[C]//Proceedings of the 25th ACM SIGKDD International Conference on Knowledge Discovery & Data Mining. Anchorage, USA: Association for Computing Machinery 2019: 2774-2782.
|
[11] |
LIU B, HAN F X, NIU D, et al. Story forest: Extracting events and telling stories from breaking news[J]. ACM Transactions on Knowledge Discovery from Data, 2020, 14(3): 31. |
[12] |
LIU F Z, XUE S, WU J, et al. Deep learning for community detection: progress, challenges and opportunities[C]// Proceedings of the 29th International Joint Conference on Artificial Intelligence. Yokohama, Japan : ijcai. org, 2021: 4981-4987.
|
[13] |
LIU Y P, PENG H, LI J X, et al. Event detection and evolution in multi-lingual social streams[J]. Frontiers of Computer Science, 2020, 14(5): 145612. DOI:10.1007/s11704-019-8201-6 |
[14] |
YU W R, LI J X, BHUIYAN M Z A, et al. Ring: Real-time emerging anomaly monitoring system over text streams[J]. IEEE Transactions on Big Data, 2019, 5(4): 506-519. DOI:10.1109/TBDATA.2017.2672672 |
[15] |
BECKER H, NAAMAN M, GRAVANO L. Beyond trending topics: Real-world event identification on twitter[C]// Proceedings of the 5th International AAAI Conference on Web and Social Media. Barcelona, Spain: AAAI Press, 2021: 438-441.
|
[16] |
CHENG X Q, YAN X H, LAN Y Y, et al. Btm: Topic modeling over short texts[J]. IEEE Transactions on Knowledge and Data Engineering, 2014, 26(12): 2928-2941. DOI:10.1109/TKDE.2014.2313872 |
[17] |
CORDEIRO M. Twitter event detection: Combining wavelet analysis and topic inference summarization[C]//Proceedings of the Doctoral Symposium on Informatics Engineering. Porto, Portugal: University of Porto, 2012: 11-16.
|
[18] |
ZHOU X M, CHEN L. Event detection over twitter social media streams[J]. The VLDB journal, 2014, 23(3): 381-400. DOI:10.1007/s00778-013-0320-3 |
[19] |
Chung H W, Garrette D, Tan K C, et al. Improving multilingual models with language-clustered vocabularies[C]// Proceedings of the 2020 Conference on Empirical Methods in Natural Language Processing (EMNLP). Pennsylvania, USA: Association for Computational Linguistics, 2020: 4536-4546.
|
[20] |
SU X, XUE S, LIU F Z, et al. A comprehensive survey on community detection with deep learning[J]. IEEE Transactions on Neural Networks and Learning Systems, 2024, 35(4): 4682-4702. DOI:10.1109/TNNLS.2021.3137396 |
[21] |
CUI W Q, DU J P, WANG D W, et al. MVGAN: Multi-view graph attention network for social event detection[J]. ACM Transactions on Intelligent Systems and Technology, 2021, 12(3): 27. |
[22] |
PENG H, LI J X, GONG Q R, et al. Fine-grained event categorization with heterogeneous graph convolutional networks[C]//Proceedings of the 28th International Joint Conference on Artificial Intelligence. Macao China: ijcai. org, 2019: 3238-3245.
|
[23] |
PENG H, ZHANG R T, LI S N, et al. Reinforced, incremental and cross-lingual event detection from social messages[J]. IEEE Transactions on Pattern Analysis and Machine Intelligence, 2023, 45(1): 980-998. DOI:10.1109/TPAMI.2022.3144993 |
[24] |
REN J Q, JIANG L, PENG H, et al. From known to unknown: Quality-aware self-improving graph neural network for open set social event detection[C]//Proceedings of the 31st ACM International Conference on Information & Knowledge Management. Atlanta, USA: Association for Computing Machinery, 2022: 1696-1705.
|
[25] |
REN J Q, JIANG L, PENG H, et al. Evidential temporal-aware graph-based social event detection via dempster-shafer theory[C]//2022 IEEE International Conference on Web Services (ICWS). Barcelona, Spain: IEEE Computer Society Press, 2022: 331-336.
|
[26] |
CAO Y W, PENG H, WU J, et al. Knowledge-preserving incremental social event detection via heterogeneous gnns[C]//Proceedings of the Web Conference 2021. Ljubljana, Slovenia: Association for Computing Machinery, 2021: 3383-3395.
|
[27] |
MOHIUDDIN T, BARI M S, JOTY S. LNMap: Departures from isomorphic assumption in bilingual lexicon induction through non-linear maping in latent space[C]//Proceedings of the 2020 Conference on Empirical Methods in Natural Language Processing (EMNLP). Pennsylvania, USA: Association for Computational Linguistics, 2020: 2712-2723.
|
[28] |
REN J Q, PENG H, JIANG L, et al. Transferring knowledge distillation for multilingual social event detection[EB/OL]. (2021-08-13)[2024-08-24]. https://doi.org/10.03084/arXiv.2108.03084.
|
[29] |
HU E J, SHEN Y L, WALLIS P, et al. Lora: Low-rank adaptation of large language models[C]//Tenth International Conference On learning Representations. Ithaca, NY: Springer, 2022.
|
[30] |
CAMPELLO R J G B, MOULAVI D, SANDER J. Density-based clustering based on hierarchical density estimates[C]// 17th Pacific-Asia Conference on Knowledge Discovery and Data Mining. Gold Coast, Australia: Springer, 2013: 160-172.
|
[31] |
WU C H, WU F Z, LYU L J, et al. Communication-efficient federated learning via knowledge distillation[J]. Nature Communications, 2022, 13(1): 2032. DOI:10.1038/s41467-022-29763-x |
[32] |
PIRES T, SCHLINGER E, GARRETTE D. How multilingual is multilingual BERT?[C]//Proceedings of the 57th Annual Meeting of the Association for Computational Linguistics. Florence, Italy: Association for Computational Linguistics, 2019: 4996-5001.
|
[33] |
MCMAHAN B, MOORE E, RAMAGE D, et al. Communication-efficient learning of deep networks from decentralized data[C]//Proceedings of the 20th International Conference on Artificial Intelligence and Statistics. Fort Lauderdale, USA : PMLR, 2017: 1273-1282.
|
[34] |
Li P, YU X Y, PENG H, et al. Relational prompt-based pre-trained language models for social event detection[J]. ACM Transactions on Information Systems, 2024, 1046. DOI:10.1145/3695869 |
[35] |
VAN DER, MAATEN L, HINTON G. Visualizing data using t-SNE[J]. Journal of machine learning research, 2008, 9(86): 2579-2605. |