Embedding层压缩方法:Adaptive input representations for neural language modeling

参考链接

模型(Adaptive Input Representation):

模型概述

  • Adaptive Input RepresentationAdaptive softmax模型启示而得出来的。

  • 首先我们将词汇表按词频降序排列,然后将其划分为 n n n个子集: V 1 ∪ V 2 … ∪ V n V_1∪V_2…∪V_n V1V2Vn V i ∩ V j = ∅ ( i ≠ j ) V_i∩V_j=∅ (i≠j) ViVj=(i=j),这样最高频词包含在 V 1 V_1 V1,最低频词包含在 V n V_n Vn中。 V 1 V_1 V1被称为head,其他自己被成为tail。

  • 每个子集中词embedding的维度设置

    • V 1 V_1 V1维度为 d d d
    • V n V_n Vn的维度为 d k ( n − 1 ) \frac{d}{k^{(n-1)}} k(n1)d
    • k k k是一个参数,一般设置为4;由上面公式可是各子集的维度是随词频递减的
  • 再为每个子集设置一个线性映射 W 1 ∈ R d × d , … , W n ∈ R d k ( n − 1 ) W_1∈R^{d×d},…,W_n∈R^{\frac{d}{k^{(n-1)}}} W1Rd×d,,WnRk(n1)d,目的是最后统一整个embedding层的输出维度为 d d d。如下图所示:

  • 如上图所示,先将输入句子中词划分到其相应的 V i V_i Vi中去,然后分别进行embedding和线性映射,最后再按源句子中的顺序进行拼接相应的词embedding,得到整个embedding层的输出

共享权值

  • 如果输出层为使用adaptive softmax,并且使用与输入层adaptive input layer相同的参数: V 、 d 、 k V、d、k Vdk;那么我们就可以进行输入层与输入层的参数共享。

  • adaptive softmax模型图如下所示:

  • 权值共享的方法:

    • adaptive softmax根节点维度为 ∣ V 1 ∣ + n − 1 |V_1 |+n-1 V1+n1,所以我们将 V 1 V_1 V1的embedding矩阵 E 1 ∈ R ∣ V 1 ∣ × d E_1∈R^{|V_1 |×d} E1RV1×d并上一个从新定义的不共享的矩阵 B ∈ R ( n − 1 ) × d B∈R^{(n-1)×d} BR(n1)×d,这样就可以得到adaptive softmax根节点 T = [ E 1 ; B ] ∈ R ( ∣ V 1 ∣ + n − 1 ) × d T=[E_1;B]∈R^{(|V_1 |+n-1)×d} T=[E1;B]R(V1+n1)×d
    • 对于adaptive softmax的下面叶节点我们可以直接共享adaptive input层的相应子集的embedding矩阵和映射矩阵,比如,adaptive softmax的第 i − 1 i-1 i1个叶节点它对应的词汇表子集为 V i V_i Vi,则该页节点存储的就是adaptive input中的映射矩阵 W i W_i Wi和对应的embedding矩阵 E i E_i Ei
  • adaptive softmax输出预测过程:

    • 首先将隐藏层状态向量 h ∈ R d h∈R^d hRd与根节点矩阵 T T T相乘;
    • 如果输出的词在集合 V 1 V_1 V1中则直接预测。
    • 如预测的词在 V i ( i ≠ 1 ) V_i (i≠1) Vi(i=1),则再将隐藏层状态向量 h h h W i W_i Wi相乘得到的结果再与 E i E_i Ei相乘得到最终的预测词。
  • 由上面的过程可以看出来, V 1 V_1 V1映射矩阵 W 1 W_1 W1是不需要共享。

  • 当然有些情况也可以不共享 V i ( i ≠ 1 ) V_i (i≠1) Vi(i=1)的映射矩阵 W i W_i Wi而重新定义也该相同维度的矩阵代替。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值