基于Tree-LSTM网络语义表示模型

TC;DR

目前的LSTM仅能对序列信息进行建模, 但是自然语言中通常由词组成的短语形成了句法依存的语义树。为了学习到树结构的语义信息。论文中提出了两种Tree-LSTM模型Child-Sum、Tree-LSTM、和N-ary Tree LSTMs。实验部分的Tree-LSTM、对比多种LSTMs的变体,在语义相似性计算和情感分类任务超过有bselilnes

Model

LSTM

首先简单介绍下 LSTM提供的后续论文改进对比,主要模型结构如下所示:
基于Tree-LSTM网络语义表示模型_第1张图片
每个门电路的计算方式如下:
f t = σ ( W f x t + U f h t − 1 + b f ) f_t = \sigma(W^{f}x_t + U^{f}h_{t - 1} + b^{f}) ft=σ(Wfxt+Ufht1+bf)
i t = σ ( W i x t + U i h t − 1 + b i ) i_t = \sigma(W^{i}x_t + U^{i}h_{t -1} + b^{i}) it=σ(Wixt+Uiht1+bi)
c t = i t ⊙ u t + f t ⊙ c t − 1 c_t =i_t \odot u_t + f_t \odot c_{t-1} ct=itut+ftct1
0 t = σ ( W 0 x t + U 0 h t − 1 + b 0 ) 0_t = \sigma(W^{0}x_{t} + U^{0} h_{t - 1} + b^{0}) 0t=σ(W0xt+U0ht1+b0)
h t = o t ⊙ t a n h ( c t ) h_t = o_t\odot tanh(c_t) ht=ottanh(ct)

总结

通过不断的门控单元和门控细胞,复杂的计算并一层一层的传递,。
此部分不再阐述,详细可以参考另一篇文章全部都将其搞定都行啦的样子与打算。
LSTM能够处理序列信息,但是无法处理带有树结构的数据,例如,下图所示的依存句法分析树。成分句法分析树等。
带 有 树 结 构 的 信 息 带有树结构的信息

基于Tree-LSTM网络语义表示模型_第2张图片
基于Tree-LSTM网络语义表示模型_第3张图片
以上仅表示两种自然语言分析中的两种语义表示格式,但是模型可以类推到其他树结构数据

Tree-LSTM

为了将树结构的数据作为输入训练RNN,论文提出了两种结构:
T r e e − S t r u c t u r e d L S T M Tree-Structured LSTM TreeStructuredLSTM

  • Child-SUM Tree-LSTMS(Dependency Tree-LSTMs)
  • 适用于子节点个数不定或子节点乱序的树结构
  • N-ary Tree-LSTM(Constituency Tree-LSTMs)
  • 适用于每个单元子单元的个数最多是N,且子单元之间是有序的
    基于Tree-LSTM网络语义表示模型_第4张图片
    与标准的LSTM结构类似,Tree-LSTM中的每个cell ,都包括类似的输入门 i t i_t it,输出门 o t o_t ot,cell state c t c_t ct和隐藏输出 h t h_t ht.

不同的是Tree-LSTM单元中门向量和细胞状态更新依赖于所有与子相关的子单元的状态。另外, 相比较于标准的LSTM的单个遗忘门,Tree-LSTM拥有多个遗忘门 f j k f_{jk} fjk,分别对应当前单元的每个子单元 k k k,因此,Tree-LSTM可以选择地从子节点中获取信息,例如再情感分类中,去保**存语义信息更加丰富的子节点信息

**。
与标准的LSTM不同,每个Tree-LSTM单元会有一个输入向量 x J x_J xJ

x j x_j xj可以表示一个句子中单词的向量表示,每个节点的input word取决于网络的树结构,例如要处理的Dependency tree 的Tree-LSTM,那么Tree-LSTM树中的每个节点,将[head word],对应的向量当做输入,而在[constituency tree]中,将对应的词向量当做输入。
考虑到目前需要处理的数据类似于 Dependency Tree.因此,本文中仅介绍下**: Child-Sum Tree-LSTMs**。

Child-Sum Tree-LSTMs

给定树且另 C ( j ) C(j) C(j)表示节点 j j j的子节点集合。那么Child-SUM Tree-LSTMs的计算公式如下:
基于Tree-LSTM网络语义表示模型_第5张图片
从上述计算公式即可:Tree-LSTM与LSTM间的区别包含两点:

  • LSTM只用到了上一步神经元的隐藏输出 h t − 1 h_{t - 1} ht1,而Tree-LSTM用了所有子节点的隐藏输出 h j ~ = ∑ k ∈ C j h k \widetilde{h_j} = \sum_{k \in C_{j}}h_k hj =kCjhk
  • Tree-LSTM使用多个遗忘门 f j k f_{jk} fjk来控制多个子节点:cell state candidate c k c_k ck

由于Child_Tree Tree-LSTMs将其子节点的状态 h k h_k hk进行累加,因此适合(多分枝、子节点无序的树。)例如:dependency tree, 一个 head 的 dependent 数量是高度可变的,因此我们将应用在dependency tree上的 Child-Sum Tree-LSTM称为 Dependency Tree-LSTM

介绍完Child-Sum Tree-LSTMS后即可将其应用于下游任务,论文中用于情感分类和语义相似性的计算任务中。

实验

即不同实验中模型参数如下所示:
基于Tree-LSTM网络语义表示模型_第6张图片
情感分类任务:
基于Tree-LSTM网络语义表示模型_第7张图片
语义相似性计算任务中:
基于Tree-LSTM网络语义表示模型_第8张图片

总结

慢慢的将各种树结构,啥的全部都将其搞定,会自己学习各种树结构。
慢慢的整理即可,全部将其搞定都行啦的样子于打算。
还有都是慢慢的将自己的树结构啥的全部都将其搞定。学习各种树模型。慢慢的全部将其掌握都行啦的回事与打算。

你可能感兴趣的:(零样本概览前部分,lstm,深度学习)