Pretraining Language Models with Text-Attributed Heterogeneous Graphs

news/2025/2/25 23:53:12

Pretraining Language Models with Text-Attributed Heterogeneous Graphs

EMNLP

推荐指数:#paper/⭐⭐#​

贡献:

  1. 我们研究了在更复杂的数据结构上预训练LM的问题,即,TAHG。与大多数只能从每个节点的文本描述中学习的PLM不同,我们提出了一个新的预训练框架,使LM能够捕获不同节点之间的拓扑连接。
  2. 作者引入了一个拓扑感知的预训练任务去预测文本图的节点是否在文本图中。这可以使得LM可以利用高阶的信号
  3. 作者设计了一种文本增强策略来丰富无文本节点的语意信息,以缓解文本不平衡问题

异构文本属性图介绍(TAHGs)

G = ( V , E , U , R , X ) \mathcal{G}=(\mathcal{V},\mathcal{E},\mathcal{U},\mathcal{R},\mathcal{X}) G=(V,E,U,R,X),依次分别代表:节点属性,边,节点类型,边类型,节点文本描述。

模型架构

image

第一个模块提取目标节点的上下文,比国内通过联合优化LM和异构图神经网络来预测哪些节点涉及文本图。第二个模块是为了引入节点不平衡的文本描述。值得注意的是,当预训练结束之后,我们只使用PLM在下游任务上测试。

拓扑捕获阶段

这一部分,如上所示,我们的目的是捕获节点之间的一阶和高阶信息。

首先,我们定义context图。(及一个节点的邻域图)。 G u K \mathcal{G}_{u}^{K} GuK代表节点u的K阶内邻居集合。当K大于2,及捕获高阶信息。

Context 图预测(Context Graph Prediction)(GCP)

TAHGs包含多阶邻居信息。和大多数PLM对单个文本进行预训练不同,我们提出了上下文图预测来训练LM捕获丰富的关系信息。

首先,我们得到节点V的表征如下:

H G = f H G N N ( G ) ∈ R ∣ V ∣ × d , H^{\mathcal{G}}=f_{HGNN}\left(\mathcal{G}\right)\in\mathbb{R}^{|\mathcal{V}|\times d}, HG=fHGNN(G)RV×d,其初次输入是通过下面的式子(文本编码)得到的。

f H G N N ( ⋅ ) f_{HGNN}(\cdot) fHGNN()可以表示任何异构图神经网络。

之后,我们编码文本图节点u的描述通过LM:

h L M u = M E A N ( f L M ( X u ) ) ∈ R d , \boldsymbol{h}_{LM}^u=\mathrm{MEAN}(f_{LM}\left(X_u\right))\in\mathbb{R}^d, hLMu=MEAN(fLM(Xu))Rd,

为了捕获节点u的异构性,我们引入了一个映射头在PLM的最后一层。下一步,我们预测节点v是否在context 图中:(这是一个二分类问题)

y ^ u , v = sigmoid ⁡ ( h L M u ⊤ W ϕ ( v ) H v G ) \hat{y}_{u,v}=\operatorname{sigmoid}\left(\boldsymbol{h}_{LM}^{u}{}^{\top}\boldsymbol {W}_{\phi(v)}\boldsymbol{H}_{v}^{\mathcal{G}}\right) y^u,v=sigmoid(hLMuWϕ(v)HvG)

y u , v = 1 y_{u,v}=1 yu,v=1如果 G u K G_u^K GuK包含v,否则为0。

预训练策略

在这个工作中,我们使用BERT以及R-HGCN。

预测上述所有节点的context graph 概率是很困难的( y u , v y_{u,v} yu,v),因此我们使用负样本采样去优化上述公式。为了生成负样本,我们采样k个邻居对于每个跳,负样本从 V ∖ V u K \mathcal{V}\setminus\mathcal{V}_{\boldsymbol{u}}^{K} VVuK中采样,负样本比是5(一个正样本对应5个负样本)。对于GCPtask,我们使用MLM任务去帮助LMs更好的处理文本。最终的优化目标为:

L u = L u M L M + L u C G P = − log ⁡ P ( X ~ u ∣ X u ∖ X ˉ u ) − ∑ v ∈ V u K log ⁡ y ^ u , v − ∑ i = 1 5 E v i ′ ∼ P n ( V ∖ V u K ) log ⁡ ( 1 − y ^ u , v i ′ ) , \mathcal{L}_{u}=\mathcal{L}_{u}^{MLM}+\mathcal{L}_{u}^{CGP}=-\log P(\tilde{X}_{u}|X_{u\setminus\bar{X}_{u}})-\sum_{v\in\mathcal{V}_{u}^{K}}\log\hat{y}_{u,v}-\sum_{i=1}^{5}\mathbb{E}_{v_{i}^{\prime}\sim P_{\boldsymbol{n}}(\mathcal{V}\setminus\mathcal{V}_{\boldsymbol{u}}^{K})}\log\left(1-\hat{y}_{u,v_{\boldsymbol{i}}^{\prime}}\right), Lu=LuMLM+LuCGP=logP(X~uXuXˉu)vVuKlogy^u,vi=15EviPn(VVuK)log(1y^u,vi),

X ~ u \tilde{X}_{u} X~u代表扰动的节点,原始文本的masking rate是40%。 P n ( ⋅ ) P_n(\cdot) Pn()代表正太噪音分布。

文本增强策略

TAGs中有文本丰富的图,也有textless的图。textless的图不足以反映他们的语意,因此我们涉及了一种文本增强策略来解决这个问题。这个策略首先根据TAHGs中的链接结合其邻居的文本描述,来丰富无文本节点的语意,然后通过LM来增强文本。

具体的是,对于text-rich的节点u,我们可以使用token作为输入: M u M_{u} Mu=

[ C L S ] X u [ S E P ] [\mathrm{CLS}]X_{u}\mathrm{[SEP]} [CLS]Xu[SEP]。对于text-less的节点u,我们可以拼接它的文本和k个邻居采样的文本作为输入: M u M_{u} Mu= X u   [ S E P ]   X N u 1  [SEP] ... [SEP] X N k   [ S E P ] , X_{u}\mathrm{~[SEP]~}X_{\mathcal{N}_u^1}\text{ [SEP] ... [SEP]}X_{\mathcal{N}^k} \mathrm{~[SEP],} Xu [SEP] XNu1 [SEP] ... [SEP]XNk [SEP],

通过如上的增强,我们可以将PLM的输入从 X X X更替为 M u M_u Mu

下游任务的微调

在下游任务中,我们抛弃了HGNN,只使用预训练的LM来生成语意信息通过LM编码器。我们探索了不同的headers(映射头)。对于下游任务,LM是冻结的,只有header会被微调。

实验结果+我自己的分内心:

image

image

从表2可以看出,作者提出的GCP好像么有啥特别大的效果(数值上与w/ RGCN对比)。但是,作者的方法又比其他人的方法好一点点,那么,其原因可能是:作者提出的第二部分:文本增强起作用了。这个文本增强的方法,也类似于24年唐杰组的虚拟节点​​

image

从该表可以看出,TAS的性能其实比neighbors only 和textless-only两者较高的的高一丢丢。可以猜测,TAS的最大的作用是增强了其的稳定性


http://www.niftyadmin.cn/n/5866976.html

相关文章

电机控制的空间矢量调制 (SVPWM)

目录 概述 1 电机控制的空间矢量调制 (SVPWM)介绍 2 实现原理 2.1 设计要求 2.2 SVPWM 的实现 3 SVPWM的C语言 3.1 代码文件 3.2 STM32G4平台上验证 4 源代码文件 概述 本文主要介绍电机控制的空间矢量调制 (SVPWM),空间矢量调制 (SVPWM) 是感应电机和永磁…

【计算机网络】传输层协议(UDP TCP)

目录 1. 端口号 端口号的划分 2. UDP UDP协议格式 在系统中的描述 缓冲区 使用注意事项 3. TCP 缓冲区 TCP协议格式 标记位 面向字节流 确认应答机制 流量控制 超时重传 连接管理 滑动窗口 延迟应答 捎带应答 快重传 拥塞控制 粘包问题 TIME_WAIT状态 总结 1. 端口…

w227springboot旅游管理系统设计与实现

🙊作者简介:多年一线开发工作经验,原创团队,分享技术代码帮助学生学习,独立完成自己的网站项目。 代码可以查看文章末尾⬇️联系方式获取,记得注明来意哦~🌹赠送计算机毕业设计600个选题excel文…

【Unity】鱼群效果模拟

鱼群效果模拟 文章目录 鱼群效果模拟Boid算法实现方式version1_CPUversion2_GPUversion3_Multilaterationversion4_Bitonic_Sorting (GPU友好)version5_Skinning (TODO) 细节项优化项参考链接 Boid算法 Boid算法是一种模拟群体行…

ASP.NET Core Clean Architecture

文章目录 项目地址一、项目主体1. CQRS1.1 Repository数据库接口1.2 GetEventDetail 完整的Query流程1.3 创建CreateEventCommand并使用validation 2. EFcore层2.1 BaseRepository2.2 CategoryRepository2.3 OrderRepository 3. Email/Excel导出3.1 Email1. IEmail接口层2. Ema…

C++的allactor

https://zhuanlan.zhihu.com/p/693267319 1 双层内存配置器 SGI设计了两层的配置器,也就是第一级配置器和第二级配置器。同时为了自由选择,STL又规定了 __USE_MALLOC 宏,如果它存在则直接调用第一级配置器,不然则直接调用第二级配…

华为数通 HCIP-Datacom H12-831 新题

2024年 HCIP-Datacom(H12-831)变题后的新题,完整题库请扫描上方二维码,新题在持续更新中。 某台IS-IS路由器自己生成的LSP信息如图所示,从LSP信息中不能推断出以下哪一结论? A:该路由器某一个接口的IPv6地…

本地VSCode远程连wsl2中的C++环境的开发配置指南

请参考上一遍文章:在windows上安装wsl2,在wsl2中配置C开发环境-CSDN博客