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 networkBi-LSTMLow-rank Bilinear Pooling method(LBPR)

self-matching network: 通过单词对间的信息,获取句子的incongruity information
Bi-LSTM: 通过句子的序列信息,获取句子的compositional information
Low-rank Bilinear Pooling method: 融合incongruity informationcompositional information

Sarcasm Detection with Self-matching Networks and Low-rank Bilinear Pooling_第1张图片

各模型算法:

self-matching network

target: 求输入句子的 attend feature vector : f a ∈ R k    ⟹    f a = S ⋅ a f_a \in R^k \implies f_a=S·a faRkfa=Sa
S是输入句子的word-embedding表示, S ∈ R k × n S \in R^{k \times n} SRk×n
于是问题转变成为,求解self-matched attention vector : a ∈ R n a \in R^n aRn
其中,k为单词表示维度,n为句子单词数。

求解 a ∈ R n a \in R^n aRn

考虑到,单词对表示向量间进行内积运算,只抓住特征向量间的相关性,却忽视了情感信息,所以定义了一种新的计算方式。对于单词对 ( e i , e j ) (e_i, e_j) (ei,ej) e i ∈ R k e_i \in R^k eiRk:
joint feature vector: w i , j ∈ R    ⟹    w i , j = t a n h ( e i ⋅ M i , j ⋅ e j T ) w_{i,j} \in R \implies w_{i,j}=tanh(e_i · M_{i,j} · e_j^T) wi,jRwi,j=tanh(eiMi,jejT)
其中, M i , j ∈ R k × k M_{i,j} \in R^{k \times k} Mi,jRk×k,是要学习的参数。
建立self-matching information matrix : W ∈ R n × n W \in R^{n \times n} WRn×n:
Sarcasm Detection with Self-matching Networks and Low-rank Bilinear Pooling_第2张图片
在这里插入图片描述
W W W每行取最大值,组成向量 m ∈ R n m \in R^n mRn
   ⟹    a = S o f t m a x ( m )    ⟹    a ∈ R n \implies a=Softmax(m) \implies a \in R^n a=Softmax(m)aRn

Bi-LSTM

target: 利用Bi-LSTM的隐含层输出,作为输入句子的特征向量feature vector : f l ∈ R d    ⟹    f l = h 1 f_l \in R^d \implies f_l=h_1 flRdfl=h1d是超参数 h i ∈ R d h_i \in R^d hiRd
在这里插入图片描述
注:此处有个疑问,为什么只使用第一个时间步的输出呢?最后一个时间步的输出又如何呢?

Low-rank Bilinear Pooling

target: 融合上述两个模型得到的向量 f a ∈ R k , f l ∈ R d f_a \in R^k, f_l \in R^d faRk,flRd,得到最终的融合向量 f ∈ R c f \in R^c fRc,并进行二分类,得到输出向量 p i ∈ R 2 p_i \in R^2 piR2c是超参数
f = U T ⋅ f a ∘ V T ⋅ f l + b f=U^T \cdot f_a \circ V^T \cdot f_l + b f=UTfaVTfl+b
p i = S o f t m a x ( W f ⋅ f + b ) p_i=Softmax(W_f \cdot f + b) pi=Softmax(Wff+b)
其中, U ∈ R k × c , V ∈ R d × c , g ∈ R c , W f ∈ R 2 × c , b ∈ R 2 U \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^2 URk×c,VRd×c,gRc,WfR2×c,bR2,这些都是需要学习的参数。
注: ∘ \circ 表示 Hadamard Product,简单来说就是矩阵对应位置元素相乘。

训练目标:

在这里插入图片描述
在这里插入图片描述
待学习参数: θ = { M i , j , U , V , g , W f , b } \theta = \{ M_{i,j},U,V,g,W_f,b \} θ={Mi,j,U,V,g,Wf,b}
超参数: d , c , λ d, c, \lambda d,c,λ

你可能感兴趣的:(papers)