当前位置:   article > 正文

Attention + BiLSTM_bilstm attention

bilstm attention

摘要

  • 暂无

引文

  • 关系抽取从本质上看是一个多分类问题,对于这样一个问题来说最重要的工作无非特征的提取和分类模型的选择。
  • 存在的问题及此模型提出的解决方法
    • NLP特征提取难度大
    • 双向LSTM结合Attention机制,能在长时保留信息的基础上,自动发现那些对于分类起到关键作用的词,避免了传统的任务中复杂的特征工程。

基本原理

模型原理图

Attention + BiLSTM原理图

模型解释

  • 模型结构

    1. 输入层:将句子拆分成词语输入到模型中
    2. Embedding层:将每个词映射到低维空间
    3. LSTM层:使用双向LSTM从Embedding层获取高级特征
    4. Attention层:生成一个权重向量,通过与这个权重向量相乘,使每一次迭代中的词汇级的特征合并为句子级的特征。
    5. 输出层:将句子级的特征向量用于关系分类
  • Word Embeddings

    • 对于一个给定的包含 T T T个词的句子 S : S = x 1 , x 2 , … , x T S: S=x_1,x_2,…,x_T S:S=x1,x2,,xT。每一个词 x i x_i xi都被词向量矩阵 W w r d W^{wrd} Wwrd转换为一个实数向量 e i e_i ei
      e i = W w r d ⋅ v i e_i = W^{wrd} · v_i ei=Wwrdvi
    • 参数说明
      • W w r d ∈ R d w ⋅ ∣ V ∣ W^{wrd}∈R^{d^w·|V|} WwrdRdwV是通过训练学习到的一个参数矩阵
      • d w d^w dw是词向量的维度 —— 一个由用户自定义的超参数
      • V V V是大小固定的词汇表, ∣ V ∣ |V| V表示词汇表的大小
      • v i v_i vi x i x_i xi的独热码
  • BiLSTM
    BiLSTM编码方式
    Graves等人提出的LSTM变体

    • 此处使用的单向LSTM不是经典的LSTM,而是Graves1等人(2013)提出的一个LSTM变体。此变体同样包含从输入门到输出门的四个部分:
      • 输入门: i t = σ ( W x i ⋅ x t + W h i ⋅ h t − 1 + W c i ⋅ c t − 1 + b i ) i_t=σ(W_{xi}·x_t+W_{hi}·h_{t−1}+W_{ci}·c_{t−1}+b_i) it=σ(Wxixt+Whiht1+Wcict1+bi)
      • 遗忘门: f t = σ ( W x f ⋅ x t + W h f ⋅ h t − 1 + W c f ⋅ c t − 1 + b f ) f_t=σ(W_{xf}·x_t+W_{hf}·h_{t−1}+W_{cf}·c_{t−1}+b_f) ft=σ(Wxfxt+Whfht1+Wcfct1+bf)
      • 神经元状态: c t = f t c t − 1 + i t t a n h ( W x c x t + W h c h t − 1 + W c c c t − 1 + b c ) c_t = f_tc_{t-1}+i_ttanh(W_{xc}x_t+W_{hc}h_{t−1}+W_{cc}c_{t−1}+b_c) ct=ftct1+ittanh(Wxcxt+Whcht1+Wccct1+bc)
      • 输出门: o t = σ ( W x o x t + W h o h t − 1 + W c o c t + b o ) o_t=σ(W_{xo}x_t+W_{ho}h_{t−1}+W_{co}c_t+b_o) ot=σ(Wxoxt+Whoht1+Wcoct+bo)
      • 当前隐状态: h t = o t t a n h ( c t ) h_t=o_ttanh(c_t) ht=ottanh(ct)
    • 双向LSTM
      • h i = [ h i → ⨁ h i ← ] h_i=[\overrightarrow{h_i}⨁\overleftarrow{h_i}] hi=[hi hi ]
    • 参数说明
      • Graves1等人(2013)的原论文中,神经元状态并没有 W c c c t − 1 W_{cc}c_{t−1} Wccct1这一项
      • σ σ σ是logistic sigmoid函数
      • i i i, f f f, o o o c c c 分别代表输入门(input gate),遗忘门(forget gate),输出门(output gate)和神将元状态(cell)
  • Attention

    • 将BiLSTM层输入的向量集合表示为 H : [ h 1 , h 2 , … , h T ] H: [h_1,h_2,…,h_T] H:[h1,h2,,hT]。其Attention层得到的权重矩阵由下可得
      M = t a n h ( H ) M=tanh(H) M=tanh(H) α = s o f t m a x ( w T M ) α=softmax(w^TM) α=softmax(wTM)
    • 句子的向量表示为
      r = H α T r=Hα^T r=HαT h ∗ = t a n h ( r ) h^*=tanh(r) h=tanh(r)
    • 参数说明
      • T T T是句子长度
      • H ∈ R d w × T H∈R^{d^w×T} HRdw×T d w d^w dw为词向量的维度
      • w T w^T wT是一个训练学习得到的参数向量的转置
      • r r r为句子的向量表示,维度为 d w d^w dw
      • h ∗ h^∗ h为最终用以分类的句子的表示,维度为 d w d^w dw
  • Classifying

    • 使用一个softmax分类器来预测标签 y ^ \hat{y} y^,该分类器将上一层得到的隐状态作为输入:
      p ^ ( y ∣ S ) = s o f t m a x ( W ( S ) h ∗ + b ( S ) ) \hat{p}(y|S) = softmax(W^{(S)}h^* + b^{(S)}) p^(yS)=softmax(W(S)h+b(S)) y ^ = a r g m a x y p ^ ( y ∣ S ) \hat{y} = \underset{y}{argmax}\hat{p}(y|S) y^=yargmaxp^(yS)

    • 成本函数采用正样本的负对数似然:
      J ( θ ) = − 1 m ∑ i = 1 m t i l o g ( y i ) + λ ∣ ∣ θ ∣ ∣ F 2 J(θ)=−\frac{1}{m}\sum\limits_{i=1}^{m}t_ilog(y_i)+λ||θ||{^2_F} J(θ)=m1i=1mtilog(yi)+λθF2

    • 参数说明

      • S S S为包含 T T T个词的句子, W ( S ) W^{(S)} W(S)为句子 S S S的参数矩阵
      • t ∈ ℜ m t ∈ ℜ^m tm为正样本的one-hot表示
      • y ∈ ℜ m y ∈ ℜ^m ym为softmax估计出的每个类别的概率
      • λ λ λ是L2正则化的超参数
      • 在embedding、LSTM、Attention层使用Dropout以减轻过拟合
      • 使用L2正则化以减轻过拟合

思考

  • 结论:这篇论文用最简单的方式,巧妙地在双向LSTM模型中加入Attention机制,用于关系抽取任务,避免了传统的任务中复杂的特征工程,大大简化了实验过程并得到相当不错的结果。
  • 缺点:

参考资料

  • 论文链接
    • https://www.aclweb.org/anthology/P16-2034.pdf
  • 引用资料

  1. https://arxiv.org/pdf/1308.0850v5.pdf ↩︎ ↩︎

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/Gausst松鼠会/article/detail/543300
推荐阅读
相关标签
  

闽ICP备14008679号