-
Few-shot Natural Language Generation for Task-Oriented Dialog,微软
研究对象: Natural Language Generation module 自然语言生成模块
引入: 合理的对话生成:(1)必要 信息 / 知识 嵌入 (2)人类可读
研究对象的意义:NLG模块能够将对话行为以语义的形式表现在回复中, 并流畅地吸引用户的注意力
问题破角点: 传统的NLG方法基于模板或统计模型的成功通常依赖于大量注释的数据,这对于新领域或者在实际场景中往往不可行的。因此如何在少样本数据上提高自然语言生成的准确性比较重要。
解决做法:
-
提出了一个 FEWSHOTWOZ( NLG基准)benchemark, 由7个领域的对话组成,每个领域50条不到
-
正在上传…重新上传取消
-
开发了SC-GPT1模型。通过在大量注释的基础上进行预训练, 这个NLG模块库获得了一定可控制的生成能力,并且仅使用少量的领域特定标签进行微调,就得以以适应新的领域。
(1)对纯文本进行预训练,类似于GPT-2 (Radford et al.);
(2)对大量的 “对话-行为” 平行语料进行连续预训练,获得可控生成的能力;
( 3) 使用非常有限的 特定领域标签数据 对 目标域 进行微调。
具体细节:
这是一个标准的任务型对话的框架
正在上传…重新上传取消
一个对话行为:
正在上传…重新上传取消
NLG的目标就是: 将A ==> x
正在上传…重新上传取消 如上图(b)
正常的目标:在自回归生成模型的基础上,根据对话技巧(意图和曹植对)生成当前t时刻的回复,整体损失目标:
正在上传…重新上传取消 n 为样本数,t为时间,A 为上述对话行为
改进的策略,三点:
(1) 继承了GPT-2模型。
(2)然后对GPT-2进行重训练:利用日志语料库,MultiWOZ语料库,框架语料库,和Facebook多语言对话语料库—— (dialog act, response) 语料对.
(3) 将fewshot-woz 扔进模型执行在不同任务层面各5代的微调。
数据处理:
将A组建成形成如下格式
正在上传…重新上传取消 、
回复X 将被首尾加上 [BOS] [EOS] ==> X '
最后 A' 和X'输入如下图所示模型:
正在上传…重新上传取消
例子: SC-GPT生成一个新的单词令牌 (例如,“confirm”或 “center”)
优点:在扩充特殊的对话行为时比较灵活;相比GPT-2具备语义控制;相比SC-LSTM更具生成能力(加了预训练模型)
证明:在bleu和ERR数据基准上实现了不错的效果(ERR是指多余的和缺失的槽植对占比实际多少的值), 并在 灵活性、可控性和通用性上进行了比较。
信息度 和 自然程度
双尾t-检测
在Multi-woz 另一个数据集(较大)的表现
正在上传…重新上传取消
正在上传…重新上传取消
正在上传…重新上传取消