来源:EMNLP 2019
论文链接
代码及数据集链接

摘要

短文本分类在新闻和推特中找到了丰富和有用的标记,以帮助用户找到相关信息。由于在许多实际应用案例中缺乏有标记的训练数据,因此迫切需要研究半监督短文本分类。现有的研究主要集中在长文本上,并且由于稀疏性和有限的标记数据,而现有的研究应用在短文本上表现令人不满意。本文提出了一种新的基于异构图神经网络的半监督短文本分类方法,该方法充分利用了标记数据少、未标记数据大的特点,通过信息沿图传播实现半监督短文本分类。特别是,我们提出了一种灵活的HIN(异构信息网络)框架来对短文本建模,它可以集成任何类型的附加信息,以及捕捉它们的关系,以解决语义稀疏性。在此基础上,提出一种基于两级注意力机制的异构图注意力网络(HGAT),嵌入HIN 进行文本分类,其中两级注意力包括节点级和类型级注意力机制。注意力机制可以学习不同相邻节点的重要性以及不同节点(信息)类型对当前节点的重要性。大量的实验结果表明,我们提出的模型在六个基准数据集上都显著优于最新的方法。

1、背景

本文提出了一种新的基于异构图神经网络的半监督短文本分类方法,该方法充分利用有限标记数据和大量未标记数据,允许信息通过构建的图传播。特别,我们首先提出了一个灵活的 HIN 框架 ,用于短文本建模,它能够包含任何附加的信息(例如实体和主题),以及捕捉文本和附加信息之间的丰富关系。然后,我们提出一种基于两级注意力机制的异构图注意力网络(HGAT),嵌入HIN 进行文本分类,其中两级注意力包括节点级和类型级注意力机制。我们的 HGAT 方法考虑了不同节点类型的异构性。此外,双层注意机制捕获不同相邻节点的重要性(降低噪声信息的权重)和不同节点(信息)类型对当前节点的重要性。本文的主要贡献概括如下:

  1. 据我们所知,这是第一次尝试使用 HIN 对短文本和附加信息进行建模,并将 HIN 上的图神经网络用于半监督分类。
  2. 提出了一种新的基于双层注意机制的异构图注意网络(HGAT),该机制可以学习不同相邻节点的重要性以及不同节点(信息)类型对当前节点的重要性。
  3. 大量的实验结果表明,我们提出的HGAT模型在6个基准数据集上显著优于7种最新方法。

2、模型

2.1、短文本异构信息网络HIN

我们首先提出了一个用于短文本建模的HIN框架,它能够集成任何附加信息,并捕获文本和附加信息之间的丰富关系。这样就减少了短文本的稀疏性。

以往的研究从知识库中挖掘潜在主题和外部知识,以丰富短文本的语义。然而它们没有考虑语义关系信息,如实体关系。短文本的 HIN 框架是灵活的,它整合任何额外的信息和建模它们丰富的关系。这里,我们考虑两种类型的附加信息,即主题和实体。如图1所示,我们构造图G=(V,E)G=(V,E)G=(V,E) , 它包括短文本集D={d1,⋯,dm}D=\{d_1,\cdots,d_m\}D={d1​,⋯,dm​} 、主题集T={t1,⋯,tK}T=\{t_1,\cdots,t_K\}T={t1​,⋯,tK​}和实体集E={e1,⋯,en}E=\{e_1,\cdots,e_n\}E={e1​,⋯,en​}做为节点,即V=D∪T∪EV=D\cup T\cup EV=D∪T∪E。边集 EEE表示它们之间的关系。网络构建的细节描述如下。

首先,我们利用 LDA 挖掘潜在主题T来丰富短文本的语义。每个主题ti=(θ1,⋯,θw)t_i=(\theta_1,\cdots,\theta_w)ti​=(θ1​,⋯,θw​)( www表示词汇量)是由单词的概率分布表示。我们把每个文档分配给前前P 个概率最高的主题。因此,如果将文档分配给主题,则会在文档和主题之间建立边。其次,我们识别文档 D 中的实体 E ,并使用实体链接工具 TAGME 将它们映射到 Wikipedia。如果文档包含实体,则在文档和实体之间建立边。我们将一个实体作为一个整体词,使用基于Wikipedia语料库的word2vec 学习实体嵌入。为了进一步丰富短文本的语义,促进信息传播,我们考虑了实体之间的关系。特别是,如果基于嵌入计算的两个实体之间的相似性得分(余弦相似性)高于预定义的阈值δ,则在它们之间建立一条边。通过结合主题、实体和关系,我们丰富了短文本的语义,从而大大有利于后续的分类任务。例如,如图1所示,短文本“the seed of Apple’s Innovation: In an era when most technology…”,被实体“Apple Inc”和“company”,以及主题“technology”,丰富了语义信息。因此,可以很有把握地把该短文本将其正确地归类为“business”类别。

2.2、HGAT模型

然后,我们提出了一种新的双层次注意机制(包括节点级和类型级)的 HGAT 模型(如图2所示),嵌入 HIN 来进行短文本分类。HGAT 利用异构图卷积来考虑不同类型信息的异构性。此外,双层注意机制捕获不同相邻节点的重要性(降低噪声信息的权重)和不同节点(信息)类型对特定节点的重要性。最后,它通过 softmax 层预测文档的标签。

2.2.1、异构图卷积

首先考虑节点(信息)的异构类型,描述 HGAT 中的异构图卷积。众所周知,GCN((Kipf and Welling, 2017) 是一个多层神经网络,它直接在同构图上操作,并根据节点邻域的性质归纳出节点的嵌入向量。具体来说就是,对于图G=(V,E)G=(V,E)G=(V,E),VVV、EEE是节点集和边集。 X∈R∣V∣×qX\in R^{|V|\times q}X∈R∣V∣×q是包含所有节点特征向量的矩阵。邻接矩阵A′=A+IA'=A+IA′=A+I包含自连接。度矩阵为 对角矩阵MMM,其中Mi,i=∑jAi,j′M_{i,i}=\sum_j A'_{i,j}Mi,i​=∑j​Ai,j′​。层之间传播规则如下:
H(l+1)=σ(A~⋅H(l)⋅W(l))H^{(l+1)}=\sigma(\tilde{A}\cdot H^{(l)}\cdot W^{(l)})H(l+1)=σ(A~⋅H(l)⋅W(l))其中A~=M−12A′M−12\tilde{A}=M^{-\frac{1}{2}}A'M^{-\frac{1}{2}}A~=M−21​A′M−21​ 是归一化邻接矩阵。W(l)W^{(l)}W(l)是一个特定层的可训练变换矩阵。σ(·)表示激活函数,如ReLU。H(l)H^{(l)}H(l) 是节点的第 lll 层隐式表示,H0=XH_0=XH0​=X。

不幸的是,由于节点异构性问题,GCN 不能直接应用于短文本的 HIN。具体来说,在 HIN中,我们有三种类型的节点:文档、主题和实体。它们具有不同特征空间。对于文档d∈D,我们使用 TF-IDF 向量作为其特征向量xdx_dxd​。对于主题 t∈T,单词分布 xt=(θ1,⋯,θw)x_t=(\theta_1,\cdots,\theta_w)xt​=(θ1​,⋯,θw​)用于表示主题特征向量。对于每个实体,为了充分利用相关信息,我们将其词向量嵌入和其维基百科文本的TF-IDF向量连接起来表示实体特征向量 xvx_vxv​。

对于包含不同类型节点 T={τ1,τ2,τ3}T=\{τ_1,τ_2,τ_3\}T={τ1​,τ2​,τ3​} 的 HIN,一种简单的方法是通过将不同类型节点的特征空间连接在一起来构造一个新的大特征空间。例如,每个节点表示为一个特征向量,与该节点类型不相关的维度取值为0。我们将这种使GCN适应 HIN 的基本方法称为 GCN-HIN。但是,由于忽略了不同信息类型的异构性,它的性能会降低。

为了解决这一问题,我们提出了异构图卷积,它考虑了不同类型信息的差异,并用不同类型信息各自的变换矩阵将它们投影到一个隐空间中,变换矩阵W考虑不同特征空间的差异,并将其投影到隐式公共空间Rq(l+1)\mathbb{R}^{q(l+1)}Rq(l+1)中。H(l+1)=σ(∑τ∈TA~τ⋅Hτ(l)⋅Wτ(l))H^{(l+1)}=\sigma(\sum_{\tau\in\Tau }\tilde{A}_{\tau}\cdot H_{\tau}^{(l)}\cdot W_{\tau}^{(l)})H(l+1)=σ(τ∈T∑​A~τ​⋅Hτ(l)​⋅Wτ(l)​)其中A~τ∈R∣V∣×∣Vτ∣\tilde{A}_{\tau}\in\mathbb{R}^{|V|\times|V_{\tau}|}A~τ​∈R∣V∣×∣Vτ​∣是A~τ\tilde{A}_{\tau}A~τ​ 的子矩阵,它的行表示所有节点,列表示节点的 τττ类型的邻居。节点的表示 H(l+1)H^{(l+1)}H(l+1)通过用各个类型 τττ 的变换矩阵Wτ(l)∈Rq(l)×q(l+1)W_{\tau}^{(l)}\in \mathbb{R}^{q^{(l)}\times q^{(l+1)}}Wτ(l)​∈Rq(l)×q(l+1),对各类型 τττ 下节点的嵌入Hτ(l)H_{\tau}^{(l)}Hτ(l)​聚合得到。变换矩阵 WWW 考虑不同特征空间的差异,并将其投影到公共空间Rq(l+1)\mathbb{R}^{q^{(l+1)}}Rq(l+1)中。初始化 Hτ(0)=XτH_{\tau}^{(0)}=X_{\tau}Hτ(0)​=Xτ​。

2.2.2、双层注意力

通常,给定一个特定的节点,不同类型下相邻节点可能会对其产生不同的影响。例如,相同类型的相邻节点可以携带更多有用的信息。此外,同类型下各相邻节点也可能具有不同的重要性。为了同时捕捉节点级和类型级的不同重要性,我们设计了一种新的双层注意力机制。

类型级注意力。给定一个特定的节点 vvv ,类型级注意力学习不同类别邻居的权重。特别地,节点vvv的类型 τττ 下嵌入表示是 hvτ=∑u∈NvτA~v,uhuh_v^{\tau}=\sum_{u\in N_v^{\tau}}\tilde{A}_{v,u}h_uhvτ​=∑u∈Nvτ​​A~v,u​hu​, NvτN_v^{\tau}Nvτ​是 vvv 的类型τττ 邻居集合。然后,我们基于节点 vvv 当前嵌入hvh_vhv​ 和hvτh_v^{\tau}hvτ​计算节点 vvv关于类型 τττ 领域的注意力得分:avτ=σ(μτT[hv∣∣hvτ])a_v^{\tau}=\sigma(\mu_{\tau}^T[h_v||h_v^{\tau}])avτ​=σ(μτT​[hv​∣∣hvτ​])其中 || 表示连接, μτ\mu_{\tau}μτ​是类型 τττ 注意力向量(参数),对所有节点共享参数。σ(·)表示激活函数,如Leaky ReLU。

然后,我们通过使用 softmax 函数对所有类型的注意得分进行规范化,获得类型级别的注意权重:ατ=exp(aτ)∑τ′∈Texp(aτ′)\alpha_{\tau}=\frac{exp(a_{\tau})}{\sum_{\tau'\in \mathcal{T}}exp(a_{\tau'})}ατ​=∑τ′∈T​exp(aτ′​)exp(aτ​)​

节点级注意力。我们设计了节点级的注意力,以捕捉不同相邻节点的重要性,并降低噪声节点的权重。进一步表述,给一个类型 τττ 的特定节点 vvv,和其类型为 τ′\tau'τ′的邻居 v′∈Nvτ′v'\in N_v^{\tau'}v′∈Nvτ′​。利用嵌入hvh_vhv​和 hv′h_{v'}hv′​以及类型级注意力得分 ατ\alpha_{\tau}ατ​计算节点 vvv关于v′∈Nvτ′v'\in N_v^{\tau'}v′∈Nvτ′​的节点级注意力得分:bvv′=σ(VT⋅ατ′[hv∣∣hv′])b_{vv'}=\sigma(V^T\cdot\alpha_{\tau'}[h_v||h_{v'}])bvv′​=σ(VT⋅ατ′​[hv​∣∣hv′​])其中 VVV是注意向量(参数)。然后,我们使用softmax函数将节点级的注意力得分标准化:βvv′=exp(bvv′)∑i∈Nvexp(bvi)\beta_{vv'}=\frac{exp(b_{vv'})}{\sum_{i\in N_v}exp(b_{vi})}βvv′​=∑i∈Nv​​exp(bvi​)exp(bvv′​)​

最后,我们将包括类型级和节点级注意的双层注意机制改进方程2,引入到异构图卷积中。现在每层之间的传播如下:H(l+1)=σ(∑τ∈TBτ⋅Hτ(l)⋅Wτ(l))H^{(l+1)}=\sigma(\sum_{\tau\in\mathcal{T} }\mathcal{B}_{\tau}\cdot H_{\tau}^{(l)}\cdot W_{\tau}^{(l)})H(l+1)=σ(τ∈T∑​Bτ​⋅Hτ(l)​⋅Wτ(l)​)其中Bτ\mathcal{B}_{\tau}Bτ​是注意力矩阵,(Bτ)i,j=βi,j(\mathcal{B}_{\tau})_{i,j}=\beta_{i,j}(Bτ​)i,j​=βi,j​。

2.3、模型训练

最后,我们将最后一层的节点(短文本)表示取出来并通过交叉熵来进行训练。需要注意的是,HGAT 是半监督算法,这里的 loss 也是在少量标签数据上计算的。Z=softmax(H(L))Z=softmax(H^{(L)})Z=softmax(H(L))L=−∑i∈Dtrain∑j=1CYij⋅log⁡Zij+η∣∣Θ∣∣2\mathcal{L}=-\sum_{i\in D_{train}}\sum_{j=1}^CY_{ij}\cdot\log Z_{ij}+\eta||\Theta||_2L=−i∈Dtrain​∑​j=1∑C​Yij​⋅logZij​+η∣∣Θ∣∣2​

3、实验

本文在 6 个数据集上进行了大量实验。数据集描述见 Table 1。

Baseline 的选择也较为全面,包括同样将文本数据建模为图的 TextGCN 和异质图神经网络 HAN。对比结果见 Table 2,可以看出本文所提出的 HGAT 有明显的优势。经典的 LSTM 和 CNN 在短文本分类上表现并不好。

另外,本文也测试了 HGAT 的多个变种,如 Table 3 所示。其中,GCN-HIN是将GCN应用于异质图中,不属于该类型的维度上为0;HGAT w/o ATT是去掉双层注意力机制;HGAT-Type只考虑类型级注意力;HGAT-Node只考虑节点级注意力。

最后,作者也测试标签数量对模型效果的影响,见 Figure 3. 可以看出,随着标签数量的增加,所有模型的表现都有不同程度的提升。

作者也尝试了不同的构图方式对模型的影响,见 Figure 4.

最后,作者通过一个 case study 来说明 attention 的作用,见 Figure 5,颜色越深代表注意力分数越大。受益于注意力机制,HGAT 有较好的可解释性。

4、总结

本文创新地将短文本分类转化为异质图建模来解决数据稀疏和歧义的问题。同时,HGAT 通过层次注意力机制更好的实现了信息聚合,所学习到的短文本的表示更加准确。最后,大量的实验验证了本文所提出算法的有效性。

HGAT-用于半监督短文本分类的异构图注意力网络相关推荐

  1. 监督分类空白处也被分类了_用于半监督短文本分类的异构图注意网络

    文章:Heterogeneous Graph Attention Networks for Semi-supervised Short Text Classification. Linmei Hu,T ...

  2. 图注意力网络_EMNLP 2019开源论文:针对短文本分类的异质图注意力网络

    本文同步发表在 PaperWeekly EMNLP 2019开源论文:针对短文本分类的异质图注意力网络​mp.weixin.qq.com 本文由北邮和南洋理工联合发表在自然语言处理顶会 EMNLP 2 ...

  3. 【论文翻译】HCGN:面向集体分类的异构图卷积网络深度学习模型

    HCGN:面向集体分类的异构图卷积网络深度学习模型 摘要 集合分类是研究网络数据的一项重要技术,旨在利用一组具有复杂依赖关系的互联实体的标签自相关性.随着各种异构信息网络的出现,集合分类目前正面临着来 ...

  4. HGANMDA:用于miRNA与疾病关联预测的分层图注意力网络(Molecular Therapy)

    HGANMDA:Hierarchical graph attention network for miRNA-disease association prediction https://www.sc ...

  5. 【2020-COLING】Regularized Graph Convolutional Networks for Short Text Classification 用于短文本分类的正则化图卷积网络

    文章目录 摘要 1 引言 2 提出的方法 3 图构建 3.1 产品查询分类PQC 3.2 4 实验和结果 5 结论 论文题目:Regularized Graph Convolutional Netwo ...

  6. 用于半监督高光谱异常检测的Frequency‐to‐spectrum mapping GAN

    基于深度学习的高光谱异常检测算法根据标签的可用性可以大致分为三类:监督学习.半监督学习和无监督学习. 监督学习异常检测方法.数据预处理后,有监督异常检测方法先用训练集数据进行模型训练,再运用验证集进行 ...

  7. BERT gated multi-window attention network for relation extraction 用于关系抽取的BERT门控多窗口注意力网络

    BERT gated multi-window attention network for relation extraction 用于关系抽取的BERT门控多窗口注意力网络 Abstract 实体关 ...

  8. 论文浅尝 | KGAT: 用于推荐的知识图注意力网络

    笔记整理 | 李爽,天津大学 链接:https://arxiv.org/pdf/1905.07854v1.pdf 动机 为了提供更准确.多样化和可解释的推荐,必须超越对用户-项目交互的建模,并考虑辅助 ...

  9. PyG搭建异质图注意力网络HAN实现DBLP节点分类

    目录 前言 数据处理 模型搭建 1. 前向传播 2. 反向传播 3. 训练 4. 测试 实验结果 完整代码 前言 HAN的原理请见:WWW 2019 | HAN:异质图注意力网络. 数据处理 导入数据 ...

最新文章

  1. 验证插件——jquery.validate.js
  2. Linux容器的发展历史及其未来趋势
  3. android 动态设置padding,Android动态设置控件大小以及设定margin以及padding值
  4. LIB和DLL的区别与使用,非常详细
  5. cgi硬盘安装器_简简单单,玩转虚拟硬盘装多系统
  6. 深入cocos2d-x中的touch事件
  7. idea卸载不干净怎么办_挡风玻璃总是洗不干净,该怎么办
  8. arp欺骗攻击——获取内网中用户浏览的图片信息
  9. 《系统集成项目管理工程师》必背100个知识点-90信息系统安全属性
  10. 程序清单4.1_talkback.c程序_《C Primer Plus》P60
  11. spring02IOC
  12. (转)国外Fintech创业者坦言:你不知道的Fintech三大困境
  13. Java类权限和类成员权限举例解析
  14. 《增长黑客》读书笔记
  15. 微信支付和分享到朋友圈-struts版本
  16. (转)sqlserver 数据恢复方法
  17. windows 禁用中文输入法
  18. table表格加滚动条
  19. java开发之代码设计
  20. 岁月(胡军、于和伟)

热门文章

  1. iphone-common-codes-ccteam源代码 CCUINavigationBar.h
  2. Web开发与设计之Google兵器谱-Web开发与设计利器
  3. 我所理解的K8S(有彩蛋哦~)
  4. 算法题存档20190304
  5. python遗传算法有多慢_遗传算法框架GAFT优化小记
  6. 求一个任意实数c的算术平方根g_初中数学实数相关知识点:这些小技巧,解题有大用...
  7. python并发处理机制_Python并发处理
  8. 第二章--电商设计表订单实体-电商项目
  9. golang rpc单参数调用实例
  10. 多容器,Nginx容器灵活切换PHP版本!同时运行多个PHP容器