机器之心|窥一斑而知全豹,三篇论文遍历ICLR 2020新型表征方式( 四 )


图 4:算法伪代码 。
机器之心|窥一斑而知全豹,三篇论文遍历ICLR 2020新型表征方式
本文插图

机器之心|窥一斑而知全豹,三篇论文遍历ICLR 2020新型表征方式
本文插图

对于目标语言嵌入(T)和源语言嵌入(S) , 作者都对其进行了变换(unit normalize), 从而使得词嵌入的点积等于它们的余弦相似度 。 这个预处理步骤确保了词嵌入的单元规范化 , 也使得跨语言比较更加自然 , 因为不管这个词属于哪种语言 , 它们的嵌入都有相同的长度 。 这里的 T_k 表示一共有 k 个目标语言 。
第一个优化函数:
机器之心|窥一斑而知全豹,三篇论文遍历ICLR 2020新型表征方式
本文插图

这里作者首先对源语言的嵌入做了稀疏编码——将 S 分解成一个字典矩阵 D 和一个稀疏的系数矩阵 \ alpha , 这个优化函数的前一半就是为了让 S 可以由 D 和 \ alpha 重建 , 后一半则是为了保证 \ alpha 足够稀疏 。 这里的 \ alpha 类似于一种索引 , 代表词典 D 中的哪些东西在重建 S 时是有用的 , 如果没用的部分 , \alpha 中对应的值就是 0 。 除此之外 , 作者希望保证 \ alpha 非负 , 因为词向量的符号不能不一致 , 同时非负也增加了这个嵌入的可解释性 。
第二个优化函数:
机器之心|窥一斑而知全豹,三篇论文遍历ICLR 2020新型表征方式
本文插图

这个优化函数就是为了实现“不同语言中具有相似意义的词会有相似的稀疏向量” 。 具体来说 , 就是找到一个权重矩阵 W , 通过线性映射将同义词对(s, t)匹配起来 。 这个优化函数有固定的的解 , 即目标语言的广义逆矩阵(Moore-Penrose pseudoinverse) , 如果感兴趣的话 , 具体计算过程可以自己上网查一下 。
第三个优化函数:
机器之心|窥一斑而知全豹,三篇论文遍历ICLR 2020新型表征方式
本文插图

这是这篇论文最后一个优化函数 , 目的就是为了得到目标语言的稀疏向量 \ alpha_{t_k} 。 但是这里跟第一个优化函数并不一样 , 这里首先用 WT 来将目标语言映射到源语言的词嵌入空间中去(W 是在上一个优化函数中学习到的) , 然后用第一个优化函数中学到的 D_s 来寻找所有目标语言的等距变换嵌入的稀疏系数矩阵 \ alpha_{t_k} 。
完成这些优化后 , 最后的所有 \ alpha 则是我们需要的稀疏嵌入了 。
2.4 实验结果
机器之心|窥一斑而知全豹,三篇论文遍历ICLR 2020新型表征方式
本文插图

图 5:单一语言表征评估结果 。
从图 5 可以看出 , \lambda 是 0.1 的时候 , 效果最好 , 因此作者在后面的实验中将 \ lambda 定为了 0.1 。 然后作者在 multiNLI 和 XNLI 两个数据集上进行了自然语言推断任务(Natural Language Inference , NLI)的测试 , 实验结果如图 6 所示 , 基本上 MAMUS 在所有任务上 , 以及平均分上 , 都是第一或第二的成绩 。
机器之心|窥一斑而知全豹,三篇论文遍历ICLR 2020新型表征方式
本文插图

图 6:实验结果 。
作者也在其他的一些平台上进行了测试 , 测试结果也相当不错 , 有兴趣可以去源论文看一下 , 而且这篇论文的代码也已经开源了 , 有兴趣可以自己复现一下结果 。
2.5 小结
这篇文章主要是带给大家一个很好的方向——稀疏表征 。 在特定的任务中 , 稀疏表征是要比密集表征要有优势的 , 所以表征矩阵的稀疏有时并不是坏事 。 同时 , 作者提供了一种很好的将映射和其他功能(稀疏编码)结合在一起的思路 , 如何建立一个凸函数 , 如何将多语言在共通的情况下进行编码 , 当遇到这些问题的时候 , 这篇论文可能就可以给你很好的出发点 , 甚至方案 。


推荐阅读