每周论文12

1️⃣[PAY LESS ATTENTION WITH LIGHTWEIGHT AND DYNAMIC CONVOLUTIONS]

Facebook研究人员提出的两种基于卷积的方法尝试替代self-attention在transformer中的作用,拥有更少的参数以及更快的速度,并且能够达到很好的效果。

Lightweight convolution

背景:depthwise convolution
每个channel独立进行卷积,注意到放到NLP任务上channel是指embedding的每一维。

因此Lightweight convolution的计算方法为:

每一层都有固定的window size,这和self-attention不同,self-attention是所有的context都进行交互。

  • Weight sharing 注意到这里讲每d/H个channel的参数进行绑定,进一步减少参数。
  • Softmax-normalization 对channel一维进行softmax,相当于归一化每个词的每一维的的重要性(比self-attention更精细)。实验证明,如果没有softmax没办法收敛。

因此总体的架构为:
input—>linear —> GLU(gated linear unit) —> lightconv/dynamicConv —> linear

Dynamic convolution

与lightweight convolution相似,但加了一个动态的kernel size。

这里的kernel size简单使用线性映射:$f : \mathbb { R } ^ { d } \rightarrow \mathbb { R } ^ { H \times k }$
如:$f\left(X_{i}\right)=\sum_{c=1}^{d} W_{h, j, c}^{Q} X_{i, c}$


2️⃣[Joint Embedding of Words and Labels for Text Classification]

提出一种机制将label作为embedding与词一同训练,同时引入label和word的attention机制,在分类上获得效果。

上图中,C是label embedding,维度为$P\times K$ ; V是句子所有词的embedding矩阵,维度为$P\times L$。
$\mathbf{G}$的计算公式为:

$\oslash$表示element-wise相除。$\hat{\mathbf{G}}$表示l2 norm,也即:

因此公式的本质即在计算label与每个词的cos距离。

在获得了$\mathbf{G}$后,为了获得更高的的表示,如phrase,将一个一个block取出,并过线性层:

接着对每个$\boldsymbol{u}_{l}$取最大值:

此时的$\mathbf{m}$是一个长度为L的向量。最终对m做softmax获得一个分数的分布:

将该分数和每个词做加权求和,获得最终的向量表示:

思考:将label与embedding放在一起训练这个思路不错。但整合的方式是否过于简单粗暴了
?特别是phrase的提取和随后的max-pooling的可解释性并不强的样子。