从近年顶会论文看基于GPT-2的端到端任务型对话系统
©PaperWeekly 原创 · 作者 | 褚维芜
单位 | 北京邮电大学硕士生
研究方向 | 自然语言处理
任务型人机对话系统旨在帮助用户完成特定领域中的特定任务,例如:餐馆预订、天气查询和航班预订等,具有很高的应用价值。然而,一些问题阻碍了任务型对话系统在实际应用中进行部署:
一方面,任务型对话数据的收集和标注费时费力,且不同领域之间难以迁移;另一方面,虽然开放域的无标注对话数据易于获取、数据量大,利用这些数据可以训练的基于 sequence-to-sequence 结构的端到端对话系统,但采用开放域数据训练的端到端对话系统没有任务相关的信息,容易产生不可靠和无意义的回复。
PLMForTOD:GPT-2 首次应用于任务型对话系统
论文标题:
收录会议:
论文链接:
https://aclanthology.org/D19-5602/
为了使 GPT-2 更好地对任务型对话数据进行建模,本文整合了过去相关的研究,提出了四个方面的改进:
领域自适应和去词汇化(Domain Adaptation and Delexicalization):在任务型对话中,很多词汇使某个领域专有的,如果直接应用原始对话来训练模型,将会出现很多未登录词(OOV)。所以一般任务型对话系统的输出使 Delexicalize 的,即将对应的槽值替换为槽名。
将 Belief state、Database state、Context 均建模为普通的文本形式:Belief state 的普通文本形式 Domain1 Slot1 Value1 Slot2 Value2 Domain2 Slot1 ...;Database state 的普通本文形式为 Domain1 # of entities Domain2 # of entities ...;Context 中加入 [SYSTEM] 和 [USER] token。
增加 Token-level 的 embedding 来分别学习 [SYSTEM] 和 USER 的表示。
利用核采样代替贪婪采样来生成更多样化和语义更丰富的回复。
为了评估 GPT-2 的生成能力转移到任务型对话建模中的生成能力,本文使用 MultiWOZ 数据集对 GPT-2 进行 fine-tune。在 Fine-tune 阶段采用了多任务学习的方式,涉及两个任务:Language Modeling(LM)任务和 next utterance classification(NUC)任务:
language modeling(LM):根据之前的单词来预测下一个单词
next utterance classification(NUC):判断对话历史 和系统回复 是否匹配
1.2 主要结果
本文采用 dialogue-context-to-text generation 作为评测任务,设定三个评测指标:系统是否回复了合适的实体(Inform)、系统是否回答所有用户请求(Success rate)以及回复的流畅性(BLEU)。baseline 模型为一个回复生成模型 [3],评测结果如下。
从实验结果可以看出,在选定的三个评测指标下,贪婪采样的方式其实是优于核采样的。因为核取样增加回复的多样性,这可能会降低生成特定于域 token 的概率。在不损害实际性能的情况下,依靠核采样而不是贪婪采样来产生更丰富的系统回复是可以接受的。
论文标题:
收录会议:
论文链接:
代码链接:
https://github.com/qywu/ARDM
虽然 PLMForTOD 中首次尝试在面向任务的对话生成中利用大规模预训练模型 GPT-2,但它的输入包含了有监督信号 belief state,并且没有取得比 baseline 更好的结果。而本文则是在没有任何标注的情况下利用大规模预训练模型进行对话的建模。
值得注意的是,为了测试 ARDM 模型在更少的训练数据下是否保持其性能,本文将训练数据减少到 50%,而性能仅略有下降。使用一半的训练数据,ARDM 仍然明显优于 Sequicity。这一实验结果表明,由于大规模训练前语言模型的优势,ARDM 在低资源环境下具有鲁棒性。
对于 MultiWOZ 数据集,评测指标和 PLMForTOD 中一致,baseline 模型为 TransferTransfo [2],评测结果如下图。
NeuralPipeline:提高系统的可解释性
End-to-End Neural Pipeline for Goal-Oriented Dialogue Systems using GPT-2
ACL 2020
https://aclanthology.org/2020.acl-main.54/
3.1 本文的方法
对话系统的建模有两个方式:pipeline 和 end-to-end。pipeline 方式中各个模块只能分别优化,并不能保证整体性能的最优化;end-to-end 方式直接生成系统回复,可解释性很差。另一方面,PLMForTOD 中的 GPT-2 模型的输入需要包含 belief state 信息,因此只能对有标注的数据生成回复。
模型包含两个部分:1)在 delexicalize 后的 MultiWOZ 数据集上 fine-tune 过的 GPT-2 模型;2)数据库查询模块。上图中的数字代表顺序,整体流程为:
根据对话历史,生成预测的对话状态 根据对话历史和对话状态,生成预测的系统动作 如果系统动作(' inform ', ' book ')需要来自数据库的外部信息,查询模块将检索候选信息并返回其中一个 当检测到空查询结果时,需要更新当前的系统动作 根据对话历史、对话状态和系统动作,生成 delexicalize 的系统响应 根据查询信息,将系统回复中的 delexicalize 的信息替换为查询结果
自动评测:Success Rate, Book Rate, Return, Turns, Precision,Recall, F1 人工评测:Success Rate, Language Understanding Score, Response Appropriateness Score, Turns
论文标题:
收录会议:
论文链接:
代码链接:
https://github.com/salesforce/simpletod
4.1 本文的方法
模型结构:只是用单一的模型(GPT-2)来实现对话系统端到端的建模,避免了对话系统中的子模块的设计,这一点上和 NeuralPipeline 并无区别 输入序列的定义:NeuralPipeline 中 tokenization 使用的了一些特殊符号: , , and ,而 SimpleTOD 中的 tokenization 是基于选择帮助模型学习每个片段的语义角色的语义词和结束符 <|endofbelief|> 嵌入层:不包含为 SYSTEM 和 USER 设计的 token-type embedding 训练算法:只采用了 LM,并没有使用 next-utterance classification 这个任务进行 fine-tune 预训练数据:SOLOIST 在 MultiWOZ 上进行 fine-tune 之前,还在任务型对话数据上进行了 furthur pretrain,而 SimpleTOD 不需要多余的预训练数据
SOLOIST: Building Task Bots at Scale with Transfer Learning and Machine Teaching
TACL 2021
https://arxiv.org/abs/2005.05298
5.1 本文的方法
SOLOIST 和 SimpleTOD 属于同期工作。在使用对话数据进行微调后,GPT-2 可以对用户选择的任何主题做出真实和连贯的连续响应,但由于缺乏基本的任务信息,生成的响应对完成任何特定的任务都没有意义。
预训练任务
Fine-tune
5.2 主要结果
除了端到端评估外,本文在多个自然语言理解任务上对 SOLOIST 进行了评估,包括:意图识别、槽填充、对话状态追踪(DST)。评测结果如下:
从表中可以看出:
当使用完整数据集进行 Fine-tune 时,SOLOIST 的性能最好,但当使用较少的样本进行 Fine-tune 时,其性能下降得比 USE+ConveRT 更快;
SOLOIST 的性能明显优于 SoTA 方法 Span- ConveRT,并且在小样本场景下,性能差距会更大;
与 SimpleTOD 相比,SOLOIST 在 DST 任务上的精度提高了 1.13%。分析认为,这是因为任务型对话进行预训练使 SOLOIST 具备了包括 DST 在内的任务完成能力。
UBAR:更接近现实对话场景的 Fine-tune 方式
UBAR: Towards Fully End-to-End Task-Oriented Dialog Systems with GPT-2
AAAI 2021
https://ojs.aaai.org/index.php/AAAI/article/view/17674
https://github.com/TonyNemo/UBAR-MultiWOZ
6.1 本文的方法
一是,以上方法的对话历史只包含用户话语和系统回复,而忽略了信念状态和系统动作等中间信息,而这些中间信息可为当前轮次回复的生成提供参考;二是,以上方法使用的对话历史中包含 ground truth system response,这使得每个对话轮次的回复生成是相互独立的;三是,在现实场景下,对话系统是无法获取 ground truth system response 的。
6.2 主要结果
UBAR 在 MultiWOZ2.0 和 MultiWOZ2.1 上做了评测,评测指标和 SimpleTOD 是一样的。UBAR 在三种 context-to-response 设定下进行了评测:基于 ground truth belief state and system act 生成系统回复;基于 ground truth belief state 生成系统动作和系统回复;端到端生成信念状态、系统动作和系统回复。评测结果如下所示。
总结
参考文献
特别鸣谢
感谢 TCCI 天桥脑科学研究院对于 PaperWeekly 的支持。TCCI 关注大脑探知、大脑功能和大脑健康。
更多阅读
#投 稿 通 道#
让你的文字被更多人看到
如何才能让更多的优质内容以更短路径到达读者群体,缩短读者寻找优质内容的成本呢?答案就是:你不认识的人。
总有一些你不认识的人,知道你想知道的东西。PaperWeekly 或许可以成为一座桥梁,促使不同背景、不同方向的学者和学术灵感相互碰撞,迸发出更多的可能性。
PaperWeekly 鼓励高校实验室或个人,在我们的平台上分享各类优质内容,可以是最新论文解读,也可以是学术热点剖析、科研心得或竞赛经验讲解等。我们的目的只有一个,让知识真正流动起来。
📝 稿件基本要求:
• 文章确系个人原创作品,未曾在公开渠道发表,如为其他平台已发表或待发表的文章,请明确标注
• 稿件建议以 markdown 格式撰写,文中配图以附件形式发送,要求图片清晰,无版权问题
• PaperWeekly 尊重原作者署名权,并将为每篇被采纳的原创首发稿件,提供业内具有竞争力稿酬,具体依据文章阅读量和文章质量阶梯制结算
📬 投稿通道:
• 投稿邮箱:hr@paperweekly.site
• 来稿请备注即时联系方式(微信),以便我们在稿件选用的第一时间联系作者
• 您也可以直接添加小编微信(pwbot02)快速投稿,备注:姓名-投稿
△长按添加PaperWeekly小编
🔍
现在,在「知乎」也能找到我们了
进入知乎首页搜索「PaperWeekly」
点击「关注」订阅我们的专栏吧