Rogerspy's Home

Levenshtein Transformer 不仅具有序列生成的能力,还具有了序列修改的能力。然而我们会发现,整个模型实际上是很复杂的。从模型结构上讲,除了基础的 Transformer 结构,还额外增加了三个分类器:删除分类器、占位符分类器和插入分类器。从训练过程来讲,LevT 需要一个参考策略(expert policy),这个参考策略需要用到动态规划来最小化编辑距离。这样无论从训练还是才能够推理角度,我们都很难保证模型的效率。那么有没有一个既有 LevT 这样的强大的能力,又保持高效简洁的模型呢?Insertion-Deletion Transformer 就这样应运而生了(内心 os:你永远可以相信宋义进:joy:)。

Transformer家族之Levenshtein Transformer

  |  

之前我们介绍了几个 Insertion-based 的序列生成的方法,使我们跳出传统的从左到右的生成顺序的思维定式。既然有 Insertion 操作,那么一个很自然的想法就是,我们能不能再加入一个 deletion 操作呢?这样我们不仅能生成序列,还可以修改生成的序列,岂不美哉?Gu et al. (2019) 就针对这种想法提出了 Levenshtein Transformer 的模型。Levenshtein Distance 我们不陌生,也就是编辑距离,这里面涉及到三种操作:insertion、deletion、replace,严格意义上来讲 replace 实际上就是 insertiondeletion 的组合,所以 LevT 模型只用到了插入和删除操作。