【对话系统】Knowledge-Grounded Dialogue Generation with a Unified Knowledge Representation

链接:http://arxiv.org/abs/2010.08824v1

简介

本文提出了一种基于知识的对话系统PLUG。
什么是基于知识的对话系统(Knowledge-grounded dialogue systems)呢?
传统的对话系统大多是一个端到端系统,将历史对话和人类的问题作为输入,从而输出应答。但是,这种方法的一个弊端是:只考虑了历史对话,而没有考虑到话题本身,即:话题的知识。
比方说,我们在谈论NBA比赛,那我们会在脑海里回忆有关NBA的各种信息。
为了将话题本身的知识加入到对话系统中,基于知识的对话系统被提出了。系统可以基于对话语境和外部知识来源,生成信息丰富且有意义的回答。

然而,目前的系统大多有两个问题:

  • 数据太少。我们需要的数据是基于知识的对话,基本上只能人工生成,又耗钱又耗时,因此大部分数据集都很小(如表1)。
  • 格式太杂。这也是上一条带来的后遗症了:每个数据集太小,那就只能多用几个数据集。但是呢,在不同的任务中,知识的格式也不同。例如,REDIAL的电影数据库利用了图结构,而Wikipedia的Wizard是以文档为基础的对话任务,两者没法一起应用。

在这里插入图片描述
对此,本文提出了一个可以统一不同知识格式的模型:PLUG。
首先,我们将不同的知识格式转换为非结构化文本,然后使用预先训练好的语言模型将其处理成统一的密集表示,从而将知识表示整合到对话生成中。
我们对PLUG进行了不同知识背景对话语料库的预训练,包括来自Reddit的大规模开放领域对话数据集。这使得PLUG能够从不同的任务中以不同的形式学习知识,并通过少量的学习技巧转移到任何基于知识的对话任务中。

经过基准测试,PLUG可以达到与最先进的方法相当的效果。在zero-shot和few-shot条件下,它在两个任务上都优于其他方法,这PLUG可以基于不同知识来源的世界知识,并推广到不同的下游任务。

Approach

基于知识的预训练

传统的知识对话包括三个主要步骤:信息抽取、知识预测和响应生成。PLUG选择T5作为主干网络。

T5是一种先进的序列到序列的预训练Transformer模型,可以用于迁移学习。T5的训练方法是将各种语言任务转换为文本到文本的任务。在对对话数据集进行微调后,T5可以生成流畅而连贯的响应。
然而,答案往往过于笼统,因为它们没有以具体的知识为基础。PLUG是在普通的T5模型上训练的,但在训练过程中是基于现实世界的知识,使它继承了T5产生类似人类反应的能力,但包含了更多的知识。

PLUG

我们将基于知识的对话表述为:
D = { C , R , S } D = \{C, R, S\} D={ C,R,S}
其中 C = { C i } i = 1 n C = \{C_i\} ^n_{i=1} C={ Ci}i=1

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值