LET: Linguistic Knowledge Enhanced Graph Transformer for Chinese Short Text Matching学习笔记

本文详细介绍了LET模型,一种针对中文短文本匹配的交互式方法。该模型通过引入HowNet知识库和构建词网格图来增强语义理解,采用图注意力网络进行特征融合。

上周在组里做了一次分享,介绍了《LET: Linguistic Knowledge Enhanced Graph Transformer for Chinese Short Text Matching》论文中提出的中文短文本匹配的方法,趁假期有空,做一下笔记。

1. 背景与相关技术

1.1 解决的问题与方法

这篇paper中介绍了一种针对中文短文本的交互式的文本匹配方法,记为LET。论文中,作者觉得当前中文短文本匹配的方法中,存在以下两个问题:

  1. 中文文本中存在一词多义的情况,而在中文短文本情况下,由于缺少上下文信息,导致中文短文本中的语义信息未能被充分挖掘。
  2. 中文分词中分词粒度不合适,会导致最终文本匹配的效果。

针对以上两种问题,文章中提出了两个方法:

  1. 引入HowNet外部知识库来帮助解决短文本中语义信息未能充分挖掘的问题。
  2. 利用多种分词工具,建立词网格图,解决分词粒度不合适的问题。

在后面介绍具体模型细节之前,我们需要先了解一下相关背景技术,以便后面更好的理解模型设计与作用。

1.2 HowNet

那么,啥是HowNet呢?
HowNet的官网上,是这么介绍的:

OpenHowNet源自在中文世界有巨大影响力的语言知识库——知网(HowNet)。知网的构建秉承还原论思想,即所有词语的含义可以由更小的语义单位构成,而这种语义单位被称为“义原”(Sememe),即最基本的、不宜再分割的最小语义单位。知网构建了包含2000多个义原的精细的语义描述体系,并为十几万个汉语和英语词所代表的概念标注了义原。

HowNet是一种经过人工整理的语言知识库,里面每一个词有不同的语义,每一个语义下还会拆分更细粒度的“义愿”,该知识库中包含了人对语言的知识与理解。论文中,就是通过引入了这样的外部语言知识库,来帮助模型学习到更多的语义信息。

为帮助理解,下面给出一个栗子:
Hownet example
我们以苹果这个词为例。我们知道,对于苹果这个词,我们可以理解为苹果公司这样的品牌,或者可以吃的水果,即上图中的sense1sense2。HowNet中,又对语义进行细拆,将每一个语义细拆违“义原”,比如sense1下面的[电脑, 样式值, , 携带, 特定牌子],sense2下面的[, 生殖, 水果]。并且HowNet会对每一个“义原”给出一个语义向量。
HowNet中,会对每一个词建立这样一个三层的树结构,从更细粒度来可以每一个词的每一语义。那么,我们可以利用这里面的语言知识,来帮助我们的模型获取更多的语义信息。

1.3 Word lattice graph

这里涉及到上面1.1节所说的建立词网格图word lattice graph的方法。我们知道,对于同一个中文句子,我们使用不同的分词工具,最终的分词结果可能会不一样,而这里面就包含了不同的信息。论文中使用了jieba, pkuseg, thulac这三种分词工具。

我们来看看这个所谓的词网格图是怎么建立的。比如,对于“北京人和宾馆”这个文本,我们按照字拆分,以及通过不同的分词工具拆分,会得到以下三种拆分结果:

[, , , , , ]
[北京人, , 宾馆]
[北京, 人和宾馆]

然后,我们根据这样的拆分结果,可以建立如下的词网格图:
word lattice graph
图中,每一个拆分后的词,都是图中的一个节点,若两个词在原句子中是相邻的,那么这两个词之间有一条边相连。比如,北京人W8与W4之间有一条边相连,W3与W4之间有一条边相连。但是北京人W8与W3之间是没有边相连的,因为这两个词之间是包含关系,而非相连关系。
后面在介绍模型中,我们会详细介绍论文中是怎么使用这个词网格图的。

1.4 Graph attention networks

这里再介绍一下图注意力网络Graph attention networks。图注意力网络是图神经网络中的一种特殊类型,将注意力机制引入到图结构中。

我们以1.3中,以北京人和宾馆构建的词网格图为例,来介绍一下图注意力网络具体是如何的。对于上面这样的图,我们可以表示为
G = ( V , ε ) G=(V, \varepsilon) G=(V,ε)
其中V为图中的节点, ε \varepsilon ε为图中的边。我们用 h i h_i hi来表示图中第i个节点的向量,通过下面公式来表示 h i h_i hi的第 l l l次迭代
h i l = σ ( ∑ x i ∈ N + ( x i ) α i j l ⋅ ( W l h j l − 1 ) ) h^{l}_{i}=\sigma(\sum_{x_i\in N^{+}(x_i)}\alpha^{l}_{ij}·(W^{l}h^{l-1}_{j})) hil=σ(xiN+(xi)αijl(Wlhjl1))
其中, x i x_i xi表示第i个节点, N + ( x i ) N^{+}(x_i) N+(xi)表示图中包括节点 x i x_i xi以及与 x i x_i xi相邻的节点的集合, α i j l \alpha^{l}_{ij} αijl表示注意力系数, W l W^{l} Wl是可训练参数。 α i j l \alpha^{l}_{ij} αijl是通过如下公式得到 α i j l = s o f t m a x j f s i m l ( h i l − 1 , h j l − 1 ) = s o f t m a x j ( W q l h i l − 1 ) ( W k l h j l − 1 ) \alpha^{l}_{ij}=softmax_jf^{l}_{sim}(h^{l-1}_{i}, h^{l-1}_{j})=softmax_j(W^{l}_{q}h^{l-1}_{i})(W^{l}_{k}h^{l-1}_{j}) αijl=softmaxjfsiml(hil1,hjl1)=softmaxj(Wqlhil1)(Wklhjl1)上面的式子中 α i j l \alpha^{l}_{ij} αijl是一个标量,论文中进一步使用多维注意力机制,将注意力系数改为向量,如下 α i j l = M D s o f t m a x j ( α i j l + f m l ( h j l − 1 ) ) \pmb{\alpha}^{l}_{ij} = {MDsoftmax}_j(\alpha^{l}_{ij}+f^{l}_{m}(h^{l-1}_{j})) αααijl=MDsoftmaxj(αijl+fml(hjl1))其中, α i j l \alpha^{l}_{ij} αijl就是前面公式中计算得到的标量, f m l ( h j l − 1 ) = W 2 l σ ( W 1 l h j l − 1 + b 1 l ) + b 2 l f^{l}_{m}(h^{l-1}_{j})=W^{l}_{2}\sigma(W^{l}_{1}h^{l-1}_{j}+b^{l}_{1})+b^{l}_{2} fml(hjl1)=W2lσ(W1lh

评论 3
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值