论文解读—Head-Lexicalized Bidirectional Tree LSTMs

从题目就可以明确看出,在Tree LSTMs的基础上,贡献有两点:

  1. Head-Lexicalized,增加了短语的中心词(Head Word)信息
  2. Bidirectional,基本的树形LSTM是自底向上(Bottom-up)构建一棵树的,论文增加了自顶向下(Top-down)的计算机制

Head Word

论文解读—Head-Lexicalized Bidirectional Tree LSTMs

(a)图是一般的Tree LSTM,(b)图是增加了中心词信息的Tree LSTM,每一个非叶子节点都附有一个中心词(用一个向量xt表示),然后,这个向量就可以被加入进去啦:

论文解读—Head-Lexicalized Bidirectional Tree LSTMs

那每个xt怎么来?

论文解读—Head-Lexicalized Bidirectional Tree LSTMs论文解读—Head-Lexicalized Bidirectional Tree LSTMs

这里的符号代表逐元素相乘。zt经过**函数函数得到,所以这是一个每个元素取值范围为[0,1]的向量。等于0时,xt1被遗忘,等于1时,被记住。从公式里可以看出,要么记住左节点,要么记住右节点,也就是相当于选择了中心词。然后一直向上传递。

Bidirectional

我们知道,自底向上构建树时,每个叶子节点都附带了词向量,所以是可以从词向量出发一直向上计算根的Hidden Vector的,两个子节点Combine一下就得到父节点。

自顶向下时,可以看下图,根到每个叶子节点都有一条明确的路径,这条路径,可以看做是一条传统的时间序列LSTM。

论文解读—Head-Lexicalized Bidirectional Tree LSTMs

那么问题来了,这里的时间序列LSTM输入是啥呢?输入就是上一步得到的非叶子节点的中心词向量以及一个叶子节点的词向量

输出

自底向上构建树时,会得到一个根节点的隐向量h~ROOT

自顶向下时,会得到一个根节点的隐向量h~ROOT和多个叶子节点的隐向量h~1,h~2,,h~n

将这些向量汇总:

论文解读—Head-Lexicalized Bidirectional Tree LSTMs

这里符号表示向量拼接。

然后再来个仿射并Softmax概率化:

论文解读—Head-Lexicalized Bidirectional Tree LSTMs

最后的结果就可以用来做分类任务了。