URL: https://www.aclweb.org/anthology/N19-1401 https://github.com/takase/control-length

简介

NAACL 2019 短论文,介绍了为Transformer构造长度相关的位置编码不仅能控制长度还能提升年摘要指标。

方法

对于原始的Transformer结构的位置编码 \( PE(pos, 2i) = \sin(\frac{pos}{10000^{\frac{2i}{d}}}), \) \( PE(pos, 2i+1) = \cos(\frac{pos}{10000^{\frac{2i}{d}}}). \)

作者设计了两种考虑长度的方式来替换:

  1. 剩余长度 \( LDPE(pos, len, 2i) = \sin(\frac{len - pos}{10000^{\frac{2i}{d}}}), \) \( LDPE(pos, len, 2i+1) = \cos(\frac{len - pos}{10000^{\frac{2i}{d}}}). \)
  2. 长度比例 \( LRPE(pos, len, 2i) = \sin(\frac{pos}{len^{\frac{2i}{d}}}), \) \( LRPE(pos, len, 2i+1) = \cos(\frac{pos}{len^{\frac{2i}{d}}}). \)

数据集

Name Lang Link Desc
JAMUL/JNC Japanese https://cl.asahi.com/api_data/jnc-jamul.html 日语多长度新闻标题
Annotated Gigaword English https://catalog.ldc.upenn.edu/LDC2012T21 大型英文新闻摘要语义标注

实验与对比

作者选取了三个基线分别是:

  1. LenInit,在RNN解码初始状态添加位置信息
  2. LC,一种对于Transformer之前的CNN序列模型控制长度方法
  3. Transformer(原始的),本文只是改动了其中位置编码的构造。
    tab1&tab2

长度控制效果是非常好的,尤其是在日语中。当然作者也表示日语采用了字符级别的解码器。

tab4

思考

应该是尝试了不少种通过位置编码控制长度的方式。 没有和LenInit那篇论文中的其他方法对比。