【专栏:研究思路】序列到序列生成是目前NLP领域生成任务的主流模型,主要应用于机器翻译、语音识别、序列标注等任务上。然而,这需要源序列是完整的,在同声传译、流式语音识别等现实场景中不能够适用。因此,根据不完整源序列进行生成就被称为Prefix-to-prefix生成。
本文整理了中国科学院计算技术研究所研究员,青源会会员冯洋在《青源Talk第九期|从Sequence-to-sequence生成到Prefix-to-prefix生成》中的主要分享内容,包括以下三个方面:
1. 目前Prefix-to-prefix基本概念,以及和Sequence-to-sequence生成的区别;
2. 当前Prefix-to-prefix生成的研究进展及面临的挑战;
3. 针对这些区别和挑战,目前的解决方案。
讲者介绍:冯洋,中国科学院计算技术研究所研究员、博士生导师、自然语言处理团队负责人,中国人工智能学会首批杰出会员,主要研究方向为自然语言处理、机器翻译和人机对话。担任中文信息学会青年工作委员会副主任,多次担任ACL/EMNLP/COLING等国内外会议高级领域主席/领域主席。机器翻译方面的工作获得ACL 2019最佳长文奖,为ACL开办50多年来国内首次获得该奖项,并获CCF自然语言处理专委会 “青年新锐奖”、“汉王青年创新奖”一等奖等,并作为项目负责人承担国家重点研发计划项目等。
本文整理自青源Talk第九期,视频回看地址:https://event.baai.ac.cn/activities/202
此外,冯洋研究员对青年学生的寄语如下:
讲者:冯 洋
撰文:梁 子
审校:戴一鸣
01
Prefix-to-Prefix:问题与挑战
在介绍Prefix-to-prefix之前,我们需要先了解序列到序列(Sequence-to-sequence)生成。序列到序列生成是目前生成任务的主流模型。给定一个源序列,Sequence-to-sequence会通过encoder来获得其表示,然后基于表示序列化地生成目标序列,它目前的应用有机器翻译、语音识别、序列标注等任务。
以机器翻译任务为例,这种生成方式的特点是:在进行翻译时,源序列是完整的,即需要基于整个源序列进行翻译。但在现实需求中,我们常常需要在序列流(如语音流)没有结束输入的时候就进行翻译,这时Sequence-to-sequence的生成方式就不再适用。一般而言,实时处理这种不完整的流数据,就被称为Prefix-to-prefix生成。
正如前面所述,Prefix-to-prefix更适合于流式的语音识别、同声传译等实时任务。对于这些任务,如果等到数据流采集完毕再进行处理,就会因为时延而影响用户体验。因此,Prefix-to-prefix的难点在于保证“低延时”,即在只获取了部分数据流时便进行处理。以同声翻译为例,当第一步输入两个词时,prefix的方式就会开始翻译生成第一个词。之后再获得新的两个词作为输入,开始生成第二个目标词,如此循环往复。
在以上过程中,prefix需要根据一个信息不完整的源前缀来生成目标序列,因而比起Sequence-to-sequence的方式,这种处理的难度更高。基于这个区别,Prefix-to-prefix生成中主要有三个挑战,分别是:输入信息的不完整性、模型生成策略的不确定性和生成模型较低的鲁棒性。
以下将以同声传译为例对上述问题进行介绍。
(一)输入信息的不完整性
下图展示了如何将“鲍威尔12日与沙龙举行了会谈”这句话翻译为英语中的序列:“Powell held talks with Sharon on 12th.”。在Seq-to-seq的背景下,“talks”的生成会受到所有输入词汇的影响,因而更容易被确定。但在Prefix-to-prefix中,由于在