【技术实现步骤摘要】
一种基于transformer架构的对话生成方法
本专利技术属于自然语言处理领域,尤其涉及一种基于transformer架构的对话生成方法。
技术介绍
人工智能的目的是让机器人越来越像人,因此能够交流是机器人的必备技能之一。随着深度学习的发展,序列到序列(Seq2Seq)模型被广泛用于会话建模中,为了解决原始模型倾向于产生无意义或无聊的回答,信息量小,与事实不符等问题,在对话系统中引入了知识信息。知识主要有两种形式:结构化的知识如知识图谱,非结构化的知识如文档。非结构化的知识由于其天然属性显然更加适合于开放域的对话系统。当前解决利用非结构知识进行开放域的回复生成的策略有两种,一种是将其视作阅读理解任务,选择与当前语境最相关的知识片段作为回复,由于回复是背景知识中的一个连续的片段,无法包含背景知识文档中没有的词语,所以会存在不自然的问题。另一种思路是将其视作文本生成任务,但在文本生成任务中将背景知识与对话历史的价值等同,缺少了知识选择的过程,容易被无关的知识混淆。本专利综合了两种策略,先选择出符合当前语境的知识片段,再利用拷贝 ...
【技术保护点】
1.一种基于transformer架构的对话生成方法,其特征在于,包括如下步骤:/n步骤1:将对话上文以及背景知识中的词映射为词嵌入,位置嵌入,分割嵌入,进一步得到词向量化表示;/n步骤2:将对话上文以及背景知识的词向量化表示输入到BERT模型,分别得到对话上文以及背景知识对应的语义表示;/n步骤3:基于对话上文以及背景知识对应的语义表示,进一步做阅读理解任务,计算背景知识中符合当前语境的概率分布;/n步骤4:基于对话上文以及背景知识对应的语义表示以及背景知识中符合当前语境的概率分布,进一步做文本生成任务,通过多头注意力机制结合背景知识中符合当前语境的概率分布得到综合语义向 ...
【技术特征摘要】
1.一种基于transformer架构的对话生成方法,其特征在于,包括如下步骤:
步骤1:将对话上文以及背景知识中的词映射为词嵌入,位置嵌入,分割嵌入,进一步得到词向量化表示;
步骤2:将对话上文以及背景知识的词向量化表示输入到BERT模型,分别得到对话上文以及背景知识对应的语义表示;
步骤3:基于对话上文以及背景知识对应的语义表示,进一步做阅读理解任务,计算背景知识中符合当前语境的概率分布;
步骤4:基于对话上文以及背景知识对应的语义表示以及背景知识中符合当前语境的概率分布,进一步做文本生成任务,通过多头注意力机制结合背景知识中符合当前语境的概率分布得到综合语义向量,根据综合语义向量结合复制机制生成回复。
2.根据权利要求1所述的基于transformer架构的对话生成方法,其特征在于:步骤1中所述的对话上文为:
X=(x1,x2,...,xI)#(1)
其中,xj是X的第j个词,I为词的数量,j∈[1,I];
步骤1中所述背景知识为:
K=(k1,k2,...,kN)#(2)
其中,ki是K的第i个词,N为词的数量,i∈[1,N];
步骤1中生成回复为;
Y=(y1,y2,...,yO)#(3)
其中,yr是Y的第r个词,O为词的数量,r∈[1,O];
上述涉及的每个词ti的词嵌入为TE(ti),分割嵌入为SE(ti),位置嵌入为PE(ti),词的向量化模型为:
E(ti)=TE(ti)+SE(ti)+PE(ti)#(4)
其中,i为第i个词。
3.根据权利要求1所述的基于transformer架构的对话生成方法,其特征在于:步骤2中所述将对话上文以及背景知识的词向量化表示输入到BERT(BidirectionalEncoderRepresentationsfromTransformers,来自Transformer的双向编码器表示)模型,分别得到对话上文以及背景知识对应的语义表示;
其中,BERT由l个Transformer编码器组成,语义表示的计算方法如下:
其中,C0(wi)=E(wi),C为编码器隐状态,wi为知识与对话上文级联后的i个词,j为第j个编码器。
4.根据权利要求1所述的基于transformer架构的对话生成方法,其特征在于:步骤3中所述基于对话上文以及背景知识对应的语义表示进一步做阅读理解任务,计算背景知识中符合当前语境的概率分布,具体为:
计算第p个词wp作为答案空间开始的概率为Pstart(p);
第q个词wq作为结束的概率为Pend(q),按照如下公式分别进行计算:
其中,S,E为可训练的参数矩阵,N为知识词的个数,C为编码器隐状态,p<q;
根据开始概率和结束概率乘积最大值对应的单词索引得到选取知识片段的起始位置和结束位置;<...
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。