Neural Graph Matching Networks for Chinese Short Text Matching
1.介绍
中文短文本匹配不同于英文,中文分词可能是错误的、模糊的或不一致的,从而损害最终的匹配性能。比如下图:字符序列“南京市长江大桥”经过不同的分词可能表达为不同的意思。
本文针对这种情况提出了一种用于中文短文本匹配的神经图匹配方法(GMN)。不是将每个句子分割成一个单词序列,而是保留所有可能的分割路径,形成一个单词格图(segment1,segment2,segment3),如上图所示。GMN以一对词格图为输入,根据图匹配注意机制更新节点的表示。
2 Problem Statement
给定两个中文句子:
S
a
S^a
Sa={
c
c
c
a
^a
a
1
_1
1,…,
c
c
c
a
^a
a
A
_A
A},
S
b
S^b
Sb={
c
c
c
b
^b
b
1
_1
1,…,
c
c
c
b
^b
b
B
_B
B}
目标是预测这两个句子的语义是否相等。
本文提出了一种基于图的匹配模型,它不是把每个句子分割成一个词序列,而是保留所有可能的分割路径,形成一个词格图 G G G = ( V V V, E E E)。 V V V是节点集,包括词典中匹配单词的所有字符子序列。 E E E是边集。如果一个节点 v i v_i vi∈ V V V与原句中的另一个节点 v j v_j vj∈ V V V相邻,那么它们之间就有一条边 e e e i _i i j _j j。 N N N f _f f w _w w( v i v_i vi)表示节点 v i v_i vi在其正向的所有可达节点的集合,而 N N N b _b b w _w w( v i v_i vi)表示节点 v i v_i vi在其反向的所有可达节点的集合。
对于两个图 G a G^a Ga= ( V a V^a Va, E a E^a Ea)和 G b G^b Gb= ( V b V^b Vb, E b E^b Eb),图匹配模型是预测它们的相似性,这表明原始句子 S a S^a Sa和 S b S^b Sb是否具有相同的含义。
3 Proposed Framework
如下图所示,模型由三个组件组成:上下文节点嵌入模块(BERT)、图匹配模块和关系分类器:
3.1 Contextual Node Embedding
对于图中的每个节点 v i v_i vi,其初始节点嵌入是上下文字符表示的attentive pooling:
- 首先连接原始的字符级句子,形成一个新的序列:
. - 将其输入BERT获得每个字符的上下文表示:
.
假设节点
v
i
v_i
vi由
n
i
n_i
ni个字符token组成:
用一个两层的前馈网络(FNN)为每个字符
c
c
c
s
_s
s
i
_i
i
+
_+
+
k
_k
k计算的具有特征的得分向量
u
u
u
−
^-
−
s
_s
s
i
_i
i
+
_+
+
k
_k
k,即
u
u
u
−
^-
−
s
_s
s
i
_i
i
+
_+
+
k
_k
k= FFN(
c
c
c
s
_s
s
i
_i
i
+
_+
+
k
_k
k)。
然后用基于特征的多维softmax归一化得到
u
u
u
s
_s
s
i
_i
i
+
_+
+
k
_k
k (softmax(
u
u
u
−
^-
−
s
_s
s
i
_i
i
+
_+
+
k
_k
k))。对应的字符嵌入
c
c
c
s
_s
s
i
_i
i
+
_+
+
k
_k
k用归一化分数
u
u
u
s
_s
s
i
_i
i
+
_+
+
k
_k
k加权,得到初始节点嵌入:
3.2 Neural Graph Matching Module
神经图匹配模块将上下文节点嵌入作为节点 v i v_i vi的初始表示 h 0 h_0 h0,然后通过两个子步骤更新其表示:消息传播和表示更新。
不失一般性,使用图Ga的节点来描述节点表示的更新过程,Gb中的节点更新过程也是类似的。
Message Propagation
在第
l
l
l步中,
G
a
G^a
Ga中的每个节点
v
i
v_i
vi不仅从其可到达的节点在两个方向上聚集消息
m
m
m
f
^f
f
w
^w
w
i
_i
i和
m
m
m
b
^b
b
w
^w
w
i
^i
i:
而且还从图
G
b
G^b
Gb中的所有节点聚合消息
m
m
m
b
^b
b
1
^1
1
i
_i
i和
m
m
m
b
^b
b
2
^2
2
i
_i
i:
这里
α
α
α
i
_i
i
j
_j
j,
α
α
α
i
_i
i
k
_k
k,
α
α
α
i
_i
i
m
_m
m,
α
α
α
i
_i
i
q
_q
q是注意力系数。
W
W
W
f
^f
f
w
^w
w和
W
W
W
b
^b
b
w
^w
w是注意力系数参数在等式(1)(2)中共享。此外,定义:
通过这种共享机制,该模型具有一个很好的性质,即当两个图完全匹配时,有
它们不完全相等的原因是节点 v i v_i vi只能聚合图 G a G^a Ga中其可达节点的消息,而cross可以聚合 G b G^b Gb中所有节点的消息。
Representation Updating
在聚合消息之后,每个节点
v
i
v_i
vi将更新:从
h
h
h
l
^l
l
−
^-
−
1
^1
1
i
_i
i到
h
h
h
l
^l
l
i
_i
i的表示。这里首先用多视角余弦距离比较两个消息
m
m
m
s
^s
s
e
^e
e
l
^l
l
f
^f
f
i
_i
i和
m
m
m
c
^c
c
r
^r
r
o
^o
o
s
^s
s
s
^s
s
i
_i
i:
其中
k
k
k∈{
1
1
1,
2
2
2,…,
P
P
P} 。
w
w
w
c
^c
c
o
^o
o
s
^s
s
k
_k
k是一个参数向量,它为不同维度的消息分配不同的权重。用
P
P
P距离
d
1
d_1
d1,
d
2
d_2
d2,…,
d
P
d_P
dP更新
v
i
v_i
vi的表示:
其中[,]表示两个向量的连接。
d
i
d_i
di=[
d
1
d_1
d1,
d
2
d_2
d2,…,
d
P
d_P
dP],FFN是一个具有两层的前馈网络。
在更新节点表示
L
L
L步之后,将获得每个节点
v
i
v_i
vi的图感知表示
h
L
h^L
hL
i
_i
i。
h
L
h^L
hL
i
_i
i不仅包括来自其可达节点的信息,还包括与另一个图中所有节点成对比较的信息。两个图
G
a
G^a
Ga和
G
b
G^b
Gb的图级表示
g
a
g^a
ga和
g
b
g^b
gb是通过仔细汇集每个图中所有节点的表示来计算的。
3.3 Relation Classifier
使用两个图级表示
g
a
g^a
ga和
g
b
g^b
gb可以预测两个图或句子的相似性:
训练目标是最小化交叉熵损失。
4 Experiments
4.1 Experimental Setup
Dataset
Hyper-parameters
图形更新步骤/层L的数量是2。
节点表示的维数为128。
所有隐藏层的dropout为0.2。
匹配视角P的数量为20。
每个模型都是由RMSProp训练的,初始学习率为0.0001,batch大小为32。