引入N-gram改进Transformer架构,ACL匿名论文超越Primer等基准

机器之心报道
编辑:陈萍、杜伟

在提交给 ACL 的一篇匿名论文中 , 研究者用潜在 n-gram 来增强 Transformer 。
Transformer 模型已成为自然语言处理任务的基础模型之一 , 最近研究者开始把注意力转移到对这些模型的扩展上 。 然而 , 这些大型 Transformer 语言模型的训练和推理成本高昂 , 令人望而却步 , 因此我们需要更多变体来消除这些不利因素 。
近日 , 一篇匿名提交给自然语言处理顶会 ACL 的论文《 N-grammer: Augmenting Transformers with latent n-grams 》中 , 研究者受到统计语言建模的启发 , 通过从文本序列的离散潜在表示构建 n-gram 来增强模型 , 进而对 Transformer 架构进行了一个简单而有效的修改 , 称为 N-grammer 。
具体地 , N-grammer 层通过在训练期间将潜在 n-gram 表示合并到模型中来提高语言模型的效率 。 由于 N-grammer 层仅在训练和推理期间涉及稀疏操作 , 研究者发现具有潜在 N-grammer 层的 Transformer 模型可以匹配更大的 Transformer , 同时推理速度明显更快 。 在 C4 数据集上对语言建模的 N-grammer 进行评估表明 , 本文提出的方法优于 Transformer 和 Primer 等基准 。
引入N-gram改进Transformer架构,ACL匿名论文超越Primer等基准
文章图片

论文地址:https://openreview.net/pdf?id=GxjCYmQAody
N-grammer 层
在网络高层次上 , 该研究引入了一个简单的层 , 该层基于潜在 n-gram 用更多的内存来增强 Transformer 架构 。 一般来说 , N-grammer 层对于任意 N-gram 来说已经足够了 , 该研究仅限于使用 bi-gram , 以后将会研究高阶 n-gram 。 这个简单的层由以下几个核心操作组成:
  • 给定文本的 uni-gram 嵌入序列 , 通过 PQ (Product Quantization)推导出离散潜在表示序列;
  • 推导潜在序列 bi-gram 表示;
  • 通过哈希到 bi-gram 词汇表中查找可训练的 bi-gram 嵌入;
  • 将 bi-gram 嵌入与输入 uni-gram 嵌入相结合 。
此外 , 当提到一组离散项时 , 该研究使用符号 [m] 表示集合{0,1 , ··· , m?1} 。
引入N-gram改进Transformer架构,ACL匿名论文超越Primer等基准
文章图片

序列的离散潜在表示
第一步 , N-grammer 层从给定的输入嵌入序列学习 Codebook , 获得具有乘积量化(Product Quantization , PQ)(Jegou 等人 , 2011 年)的离散潜在表示的并行序列 。 输入嵌入是一个 uni-gram 嵌入序列 x ? R^( l×h×d ) , 其中 l 是序列长度 , h 是头数量 , d 是每个头嵌入维度 。 该研究在 R^ k×h×d 中学习了一个 Codebook c , 通过相同的步骤 , 该研究选取距离输入嵌入最小的 code book ID , 形成序列 x 的离散潜在表示 z ?[k]^l×h 的并行序列:
引入N-gram改进Transformer架构,ACL匿名论文超越Primer等基准
文章图片

离散潜在表示 Bi-gram ID
第二步是将离散潜在表示 z 转换为 bi-gram ID b ? [k^2 ]^( l×h ) 。 它们通过组合来自前一个位置的 uni-gram 潜在 ID z , 然后在当前位置形成潜在 bi-gram ID:
引入N-gram改进Transformer架构,ACL匿名论文超越Primer等基准
文章图片

其中 k 是 codebook 大小 , 这直接将离散潜在序列从词汇空间[k] 映射到潜在 bi-gram 词汇空间 [k^2 ]。
构建 bi-gram 表示
第三步是构建序列 bi-gram 潜在表示 b 。 考虑所有的 k^2 bi-gram , 并通过对每个这样的 bi-gram 嵌入来增强模型 。 在实践中 , 对于 uni-gram 词汇为 32,000 的机器翻译模型压缩 , 在不牺牲质量的情况下 , 需要将 187 个 token 聚类为 k = 212 个 cluster 。 在这种情况下 , 需要考虑所有的 bi-gram , 涉及构建一个包含 1600 万行的嵌入表 。 由于所构建的表仍然很大 , 该研究通过对每个头使用单独的哈希函数 , 将潜在 bi-gram ID 映射到大小为 v 的较小的 bi-gram 词汇表 。

特别声明:本站内容均来自网友提供或互联网,仅供参考,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。