1D Attention
基础Attention 参考https://arxiv.org/pdf/1811.05544.pdf
Basic MLP Attention
数学公式:
σ ( w 2 T tanh ( W 1 [ u ; v ] + b 1 ) + b 2 ) \sigma\left(\boldsymbol{w}_{2}^{\boldsymbol{T}} \tanh \left(W_{1}[\boldsymbol{u} ; \boldsymbol{v}]+\boldsymbol{b}_{\mathbf{1}}\right)+b_{2}\right) σ(w2Ttanh(W1[u;v]+b1)+b2)
stanza中挑出来的代码实现稍微有点不同。
input的size是(batch, dim)明显就是用来匹配的vector u。而context就是被匹配的vector集合。
α j = s o f t m a x ( W ⋅ t a n h ( W u u + W v v j + b v ) ) \alpha_j = softmax(W \cdot tanh(W_u u + W_vv_j + b_v)) αj=softmax(W⋅tanh(Wuu+Wvvj+bv)) ,就是 u和v的合并的时候是使用的加而不是cat.
h ~ t = tanh ( W c [ c t ; h t ] ) \tilde{\boldsymbol{h}}_{t}=\tanh \left(\boldsymbol{W}_{\boldsymbol{c}}\left[\boldsymbol{c}_{t} ; \boldsymbol{h}_{t}\right]\right) h~