Sarcasm Detection with Self-matching Networks and Low-rank Bilinear Pooling
Sarcasm Detection with Self-matching Networks and Low-rank Bilinear Pooling
click here:文章下载
方法综述:
本文中使用了三个模型,分别是self-matching network、Bi-LSTM、Low-rank Bilinear Pooling method(LBPR):
self-matching network: 通过单词对间的信息,获取句子的incongruity information
Bi-LSTM: 通过句子的序列信息,获取句子的compositional information
Low-rank Bilinear Pooling method: 融合incongruity information和compositional information
各模型算法:
self-matching network
target: 求输入句子的 attend feature vector : fa∈Rk⟹fa=S⋅af_a \in R^k \implies f_a=S·afa∈Rk⟹fa=S⋅a
S是输入句子的word-embedding表示,S∈Rk×nS \in R^{k \times n}S∈Rk×n
于是问题转变成为,求解self-matched attention vector : a∈Rna \in R^na∈Rn
其中,k为单词表示维度,n为句子单词数。
求解a∈Rna \in R^na∈Rn:
考虑到,单词对表示向量间进行内积运算,只抓住特征向量间的相关性,却忽视了情感信息,所以定义了一种新的计算方式。对于单词对(ei,ej)(e_i, e_j)(ei,ej),ei∈Rke_i \in R^kei∈Rk:
joint feature vector: wi,j∈R⟹wi,j=tanh(ei⋅Mi,j⋅ejT)w_{i,j} \in R \implies w_{i,j}=tanh(e_i · M_{i,j} · e_j^T)wi,j∈R⟹wi,j=tanh(ei⋅Mi,j⋅ejT)
其中,Mi,j∈Rk×kM_{i,j} \in R^{k \times k}Mi,j∈Rk×k,是要学习的参数。
建立self-matching information matrix : W∈Rn×nW \in R^{n \times n}W∈Rn×n:
对WWW每行取最大值,组成向量 m∈Rnm \in R^nm∈Rn
⟹a=Softmax(m)⟹a∈Rn\implies a=Softmax(m) \implies a \in R^n⟹a=Softmax(m)⟹a∈Rn
Bi-LSTM
target: 利用Bi-LSTM的隐含层输出,作为输入句子的特征向量feature vector : fl∈Rd⟹fl=h1f_l \in R^d \implies f_l=h_1fl∈Rd⟹fl=h1,d是超参数,hi∈Rdh_i \in R^dhi∈Rd。
注:此处有个疑问,为什么只使用第一个时间步的输出呢?最后一个时间步的输出又如何呢?
Low-rank Bilinear Pooling
target: 融合上述两个模型得到的向量fa∈Rk,fl∈Rdf_a \in R^k, f_l \in R^dfa∈Rk,fl∈Rd,得到最终的融合向量f∈Rcf \in R^cf∈Rc,并进行二分类,得到输出向量pi∈R2p_i \in R^2pi∈R2。c是超参数。
f=UT⋅fa∘VT⋅fl+bf=U^T \cdot f_a \circ V^T \cdot f_l + bf=UT⋅fa∘VT⋅fl+b
pi=Softmax(Wf⋅f+b)p_i=Softmax(W_f \cdot f + b)pi=Softmax(Wf⋅f+b)
其中,U∈Rk×c,V∈Rd×c,g∈Rc,Wf∈R2×c,b∈R2U \in R^{k \times c}, V \in R^{d \times c}, g \in R^{c}, W_f \in R_{2 \times c}, b \in R^2U∈Rk×c,V∈Rd×c,g∈Rc,Wf∈R2×c,b∈R2,这些都是需要学习的参数。
注:∘\circ∘ 表示 Hadamard Product,简单来说就是矩阵对应位置元素相乘。
训练目标:
待学习参数:θ={Mi,j,U,V,g,Wf,b}\theta = \{ M_{i,j},U,V,g,W_f,b \}θ={Mi,j,U,V,g,Wf,b}
超参数:d,c,λd, c, \lambdad,c,λ
总结
以上是生活随笔为你收集整理的Sarcasm Detection with Self-matching Networks and Low-rank Bilinear Pooling的全部内容,希望文章能够帮你解决所遇到的问题。
- 上一篇: python一对小兔子一年后长大成大兔子
- 下一篇: c语言结构体嵌套及输出,C语言结构体嵌套