掌桥专利:专业的专利平台
掌桥专利
首页

一种低资源场景下的个性化端到端任务型对话系统

文献发布时间:2023-06-19 16:12:48



技术领域

本发明涉及个性化对话系统领域,更具体地,涉及一种低资源场景下的个性化端到端任务型对话系统。

背景技术

个性化对话系统一直是学术研究中较为热门的领域,现有的个性化端到端任务型对话系统基于人工设定的用户个性描述进行回复选择,因此机器可以完成更具个性化且一致性的对话。然而,这种方法需要大量个性化对话数据集作为支撑。一旦面临低资源场景,可用于训练的个性化对话数据较少时,机器往往不能给出最优的回复,模型也不能适用于各种不同的用户个性。

端到端的任务型对话系统可以直接利用对话日志进行训练,不需要人工设计特定的语义标签。但其往往需要大量的训练数据,且对话场景越复杂,需求越大。而在实际应用中很多新的场景一开始是没有太多可用的高质量对话日志的,如何利用较少的样本进行训练,而避免高成本的数据收集和标注工作,是本发明希望解决的第一个问题。另外,任务型对话系统的个性化研究聚焦于用户的角色或个性,通过加强对话理解,对不同用户展现个性化的回复也是对话系统必备的能力。如何根据不同对话者进行调整,从而提升对话效率和用户满意度,是本发明关注的第二个问题。

近来有研究提出了personalized-bAbI对话数据集,它是在bAbI对话数据集上扩展的多轮个性化对话语料。这是第一个可用于检索式任务型对话系统的个性化对话数据集。该数据集中每段对话历史都有着相应的用户个性描述语句,这些人工设定的用户个性还可用于更新对话历史和知识库实体,以此来整合个性化的对话模式。基于个性化描述来选择回复,端到端的任务型对话机器人能完成更具个性化和一致性的对话。该数据集为训练该个性化对话系统提供了数据保障,是后续研究的基础。本发明是基于此数据集来训练的。利用personalized-bAbI数据集训练了个性化对话生成模型,但其基于给定的个性标签训练个性化对话系统,将个性标签表征后输入系统,再利用其对应的大量数据进行训练。因此无法在低资源下快速适用于新的用户个性。

现有技术中公开了一种多领域任务型系统的专利,该专利解决了任务型对话系统中多域之间切换的问题,其技术方案要点是本公开提供的多域任务型对话系统包括:语音识别模块、多域置信状态跟踪模块、对话管理模块、自然语言生成模块和语音合成模块,其中多域置信状态跟踪模块为多域的,无需进行复杂的域模型切换就能够实现多域状态的跟踪,且各域之间实现了语义级的信息共享。然而,该专利对于解决小样本、低资源场景下,如何构建个性化端到端任务对话模型问题的方面未有涉及。

发明内容

本发明提供一种低资源场景下的个性化端到端任务型对话系统,该系统将个性化对话系统问题映射到元学习问题上,将不同的个性视为元学习中的任务,通过应用元学习,实现可以快速适应新个性的个性化对话模块。

为了达到上述技术效果,本发明的技术方案如下:

一种低资源场景下的个性化端到端任务型对话系统,包括:

文本记忆模块,将用户对话历史进行编码和存储,并生成查询向量;

回复预测模块,利用查询向量计算出候选回复集合中最恰当的回复返回给用户。

进一步地,文本记忆模块存储了来自用户的语句以及系统给出的回复的表示向量,将用户和系统的每一句对话语句进行编码后按对话的次序存入文本记忆模块中,即:

在t时刻,有t句用户语句

进一步地,所述文本记忆模块进行用户对话历史进行编码和存储的过程是:

数据集中的每一句表述都经过表示矩阵A编码为词袋模型,根据前文所说的每轮用户表述和系统回复依次写入记忆模块,整段对话的文本记忆m可由以下式子得到:

其中Φ(·)将句中的每个词映射成一个v维的向量,表示矩阵A是d×V维矩阵,d是表示维度,最后一句用户表述

进一步地,所述文本记忆模块生成查询向量的过程是:

为选择合适的回复,模型需要首先查询记忆模块,找到历史对话即前t-1个时刻的用户系统语句,与查询向量q相关的内容,具体方式是通过计算q和记忆m中每句话之间的向量内积得到历史对话与当前用户表述的相关性,即通过式:

α

求得m中每句表述与查询向量关联性强弱的权重,最后,由加权求和得到输出向量:

其中,R是d×d维矩阵,输出q

进一步地,所述回复预测模块利用查询向量计算出候选回复集合中最恰当的回复返回给用户的过程是:

对候选回复进行编码r

其中,集合中总共有C条候选回复,选取概率最大的为下一句回复

进一步地,文本记忆模块和回复预测模块组成一种端到端记忆网络模型,对该模型通过元学习的方式进行端到端记忆网络模型的参数更新;所述元学习的过程是:

设端到端记忆网络模型f

模型训练过程中,首先采样一个给定批值大小的元任务{T

L

MetaUpdate()函数是reptile及类似算法的主要区别之处,reptile算法参数更新的方式如式(3),其中β是超参数:

经过若干轮迭代更新参数,得到reptile方法训练的参数,即完成了基于源任务的元学习训练过程。

与现有技术相比,本发明技术方案的有益效果是:

本发明提出基于元学习的思想来实现低资源场景下的个性化对话,并且不使用手工个性标签。将学习多个不同的用户个性看作元学习中的元任务,通过元学习方法训练得到一组模型初始参数,再通过模型微调和少量轮次的训练迭代使其适用于新的用户个性。这样模型既不需要大量的训练语料,还能具备更好的通用性和可迁移性。

附图说明

图1为本发明系统结构图;

图2为本发明总图工作框图;

图3为元学习流程图。

具体实施方式

附图仅用于示例性说明,不能理解为对本专利的限制;

为了更好说明本实施例,附图某些部件会有省略、放大或缩小,并不代表实际产品的尺寸;

对于本领域技术人员来说,附图中某些公知结构及其说明可能省略是可以理解的。

下面结合附图和实施例对本发明的技术方案做进一步的说明。

实施例1

如图1所示,一种低资源场景下的个性化端到端任务型对话系统,包括:

文本记忆模块,将用户对话历史进行编码和存储,并生成查询向量;

回复预测模块,利用查询向量计算出候选回复集合中最恰当的回复返回给用户。

文本记忆模块存储了来自用户的语句以及系统给出的回复的表示向量,将用户和系统的每一句对话语句进行编码后按对话的次序存入文本记忆模块中,即:

在t时刻,有t句用户语句

实施例2

如图1所示,一种低资源场景下的个性化端到端任务型对话系统,包括:

文本记忆模块,将用户对话历史进行编码和存储,并生成查询向量;

回复预测模块,利用查询向量计算出候选回复集合中最恰当的回复返回给用户。

文本记忆模块存储了来自用户的语句以及系统给出的回复的表示向量,将用户和系统的每一句对话语句进行编码后按对话的次序存入文本记忆模块中,即:

在t时刻,有t句用户语句

所述文本记忆模块进行用户对话历史进行编码和存储的过程是:

数据集中的每一句表述都经过表示矩阵A编码为词袋模型,根据前文所说的每轮用户表述和系统回复依次写入记忆模块,整段对话的文本记忆m可由以下式子得到:

其中Φ(·)将句中的每个词映射成一个v维的向量,表示矩阵A是d×V维矩阵,d是表示维度,最后一句用户表述

文本记忆模块生成查询向量的过程是:

为选择合适的回复,模型需要首先查询记忆模块,找到历史对话即前t-1个时刻的用户系统语句,与查询向量q相关的内容,具体方式是通过计算q和记忆m中每句话之间的向量内积得到历史对话与当前用户表述的相关性,即通过式:

α

求得m中每句表述与查询向量关联性强弱的权重,最后,由加权求和得到输出向量:

其中,R是d×d维矩阵,输出q

回复预测模块利用查询向量计算出候选回复集合中最恰当的回复返回给用户的过程是:

对候选回复进行编码r

系统进而结合查询向量q

其中,集合中总共有C条候选回复,选取概率最大的为下一句回复。

实施例3

如图1所示,一种低资源场景下的个性化端到端任务型对话系统,包括:

文本记忆模块,将用户对话历史进行编码和存储,并生成查询向量;

回复预测模块,利用查询向量计算出候选回复集合中最恰当的回复返回给用户。

文本记忆模块存储了来自用户的语句以及系统给出的回复的表示向量,将用户和系统的每一句对话语句进行编码后按对话的次序存入文本记忆模块中,即:

在t时刻,有t句用户语句

所述文本记忆模块进行用户对话历史进行编码和存储的过程是:

数据集中的每一句表述都经过表示矩阵A编码为词袋模型,根据前文所说的每轮用户表述和系统回复依次写入记忆模块,整段对话的文本记忆m可由以下式子得到:

其中Φ(·)将句中的每个词映射成一个v维的向量,表示矩阵A是d×V维矩阵,d是表示维度,最后一句用户表述

文本记忆模块生成查询向量的过程是:

为选择合适的回复,模型需要首先查询记忆模块,找到历史对话即前t-1个时刻的用户系统语句,与查询向量q相关的内容,具体方式是通过计算q和记忆m中每句话之间的向量内积得到历史对话与当前用户表述的相关性,即通过式:

α

求得m中每句表述与查询向量关联性强弱的权重,最后,由加权求和得到输出向量:

其中,R是d×d维矩阵,输出q

回复预测模块利用查询向量计算出候选回复集合中最恰当的回复返回给用户的过程是:

对候选回复进行编码r

系统进而结合查询向量q

其中,集合中总共有C条候选回复,选取概率最大的为下一句回复。

如图2所示,文本记忆模块和回复预测模块组成一种端到端记忆网络模型,对该模型通过元学习的方式进行端到端记忆网络模型的参数更新;

如图3所示,元学习的过程是:

设端到端记忆网络模型f

模型训练过程中,首先采样一个给定批值大小的元任务{T

L

MetaUpdate()函数是reptile及类似算法的主要区别之处,reptile算法参数更新的方式如式(3),其中β是超参数:

经过若干轮迭代更新参数,得到reptile方法训练的参数,即完成了基于源任务的元学习训练过程。

相同或相似的标号对应相同或相似的部件;

附图中描述位置关系的用于仅用于示例性说明,不能理解为对本专利的限制;

显然,本发明的上述实施例仅仅是为清楚地说明本发明所作的举例,而并非是对本发明的实施方式的限定。对于所属领域的普通技术人员来说,在上述说明的基础上还可以做出其它不同形式的变化或变动。这里无需也无法对所有的实施方式予以穷举。凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明权利要求的保护范围之内。

技术分类

06120114740337