利索能及
我要发布
收藏
专利号: 2022105787696
申请人: 南京信息工程大学
专利类型:发明专利
专利状态:已下证
更新日期:2026-06-16
缴费截止日期: 暂无
联系人

摘要:

权利要求书:

1.一种基于知识库增强的端到端多领域任务型对话生成方法,其特征在于,所述对话生成方法采用深度神经网络模型,模型包括编码端、堆叠注意力层和解码端,编码端包括多个独立的编码器,解码端包括对话状态解码器、行为解码器和响应解码器;多个独立编码器并联后同时与堆叠注意力层和解码端的行为解码器连接,堆叠注意力层与解码端的对话状态解码器连接,行为解码器与响应解码器连接;

所述任务型对话生成方法包括:

将对话数据进行编码处理,得到对话数据的编码向量,所述对话数据包括对话插槽、对话状态、对话历史、用户语句、知识库、对话领域以及对话行为;对对话数据的编码向量进行注意力计算,获得堆叠注意力权重;

对堆叠注意力权重进行第一数据融合,得到融合注意力权重;对融合注意力权重进行对话状态解码计算,得到当前对话状态;所述当前对话状态包括通知槽概率分布和请求槽概率分布;以所述当前对话状态为约束查询知识库,获得知识库查询结果;

将对话历史和知识库查询结果进行第二数据融合,并对结果进行编码计算,获得融合隐藏状态;

对所述融合注意力权重和融合隐藏状态进行行为解码计算,获得行为隐藏状态;

将行为隐藏状态进行响应解码计算,获得生成词概率分布,输出任务型对话响应序列;

其中,所述将对话数据进行编码处理,得到对话数据的编码向量具体包括:将各类对话数据Z编码表示记为X,并将文本的词嵌入和位置嵌入通过归一化进行编码,分别得到对话数据中的对话插槽的编码向量XS、对话状态的编码向量Xst、用户语句的编码向量Xuser、对话历史的编码向量Xhis和对话领域的编码向量Xd;t时刻对话行为的编码向量编码计算公式为:X=LayerNorm(Xemb+PEmb(Z))

式中,Xemb为文本词嵌入,记为Xemb=Emb(Z),Emb()为词嵌入函数;PEmb()为位置嵌入函数;

所述对对话数据的编码向量进行注意力计算,获得堆叠注意力权重;具体包括:计算对话插槽Xs的自注意力,再将其结果与用户语句Xuser进行计算,然后将结果与对话历史Xhis进行计算,最后结果与上一时间步时的对话状态 进行计算;最终经过N次循环的得到第一堆叠注意力权重 N≥3,循环的计算公式包括:式中,Att(,)为Transformer的注意力计算函数; 为对话插槽Xs的自注意力权重;

为 与用户语句Xuser的注意力权重; 为 与对话历史Xhis的注意力权重; 为 与上一时间步时的对话状态 的注意力权重;

计算对话领域Xd的自注意力,再将其结果与用户语句Xuser进行计算,最后将结果与对话历史Xhis进行计算;最后经过N次循环得到第二堆叠注意力权重 N≥3,循环的计算公式包括:式中, 为对话领域Xd的自注意力权重; 为 与用户语句Xuser的注意力权重; 为 与对话历史Xhis的注意力权重。

2.根据权利要求1所述的基于知识库增强的端到端多领域任务型对话生成方法,其特征在于,所述对堆叠注意力权重进行第一数据融合,得到融合注意力权重;具体包括:通过哈达玛积运算规则将的第一堆叠注意力权重 和第二堆叠注意力权重 进行融合,计算公式包括:式中,符号表示哈达玛积运算规则; 为融合注意力权重。

3.根据权利要求2所述的基于知识库增强的端到端多领域任务型对话生成方法,其特征在于,所述将对话历史和知识库查询结果进行第二数据融合,并对结果进行编码计算,获得融合隐藏状态;具体包括:第二数据融合的计算公式包括:

XH;B=Emb([H;B])

式中,Emb()为词嵌入函数;H为对话历史,B为知识库查询结果信息,即以对话状态解码器获得的对话状态表示为约束条件查询知识库得到的查询结果;

对结果进行编码计算:

e

H=Transf(XH;B,XH;B,XH;B)

=XH;B+FeedForward(MultiHead(XH;B,XH;B,XH;B))式中,Transf()表示Transformer编码计算函数;MultiHead(,,)为多头注意力计算函e数;FeedForward()为前馈神经网络计算函数;H为融合隐藏状态。

4.根据权利要求3所述的基于知识库增强的端到端多领域任务型对话生成方法,其特征在于,所述对融合注意力权重和融合隐藏状态进行行为解码计算,获得行为隐藏状态;解码计算公式包括:st

X =Emb(Xstate)

st

式中,Xstate为融合注意力权重 X 为当前对话状态;Wst为神经网络使用到的线性act层中的可训练参数; 为行为解码时的初始向量; 为 的自注意力权重;H 为行为隐藏状态。

5.根据权利要求4所述的基于知识库增强的端到端多领域任务型对话生成方法,其特征在于,所述将行为隐藏状态进行响应解码计算,获得生成词概率分布,输出任务型对话响应序列;具体包括:在每一时间步t中,首先通过响应解码计算上一时间步t‑1生成词的自注意力式中, 表示在时间步第t‑1时的生成词yt‑1的词嵌入; 是 到 的词嵌入矩阵;

e

根据融合隐藏状态H计算当前时间步t的交叉注意力

act

根据行为隐藏状态H 计算当前时间步t的动态注意力

根据上述的三个注意力结果 和 计算当前时间步t的生成词yt的概率值P(yt):

其中,Wres为神经网络使用到的线性层中的可训练参数;

最后根据当前时间步t的生成词yt的概率值p(yt)生成任务型对话响应序列R=y1,y2,...,yt‑1,yt。

6.根据权利要求1所述的基于知识库增强的端到端多领域任务型对话生成方法,还包括对生成的任务型对话响应序列进行质量判断,所述质量判断通过深度神经网络模型对响应序列进行循环训练,直至损失函数稳定后完成训练,输出最终的任务型对话响应序列,损失函数的计算公式包括:L=Linf+Lreq+Lact+Lres

式中,Linf为对话状态解码时对话状态的通知槽的损失函数;Lreq对话状态解码时对话状态的请求槽的损失函数;Lact为行为解码的损失函数;Lres为响应解码时的损失函数;

其中各个损失函数采用交叉熵进行计算,采用softmax()函数为激活函数时的损失函数的计算公式包括:式中,yi为对话数据中数据x属于第i类的真实概率,pi为对话数据中数据x属于第i类的预测概率;

和/或,采用以sigmoid()函数为激活函数时,损失函数的计算公式为:L(p,q)=(plogq+(1‑p)log(1‑q))其中,p为对话数据中训练样本x1的真实概率;1‑p为对话数据中训练样本x2的真实概率;q为预测出x1的概率值;1‑q为预测出x2的概率值。

7.一种基于知识库增强的端到端多领域任务型对话生成系统,其特征在于,包括:编码端模块:包括多个独立的编码器;用于将对话数据进行编码处理,得到对话数据的编码向量;以及将对话历史和知识库查询结果进行第二数据融合,并对结果进行编码计算,获得融合隐藏状态;

堆叠注意力层计算模块:用于对对话数据的编码向量进行注意力计算,获得堆叠注意力权重;

解码端模块:包括对话状态解码器、行为解码器和响应解码器;

对话状态解码器:用于对堆叠注意力权重进行第一数据融合,并对第一数据融合后得到的融合注意力权重进行对话状态解码计算,获得当前对话状态;以所述当前对话状态为约束查询知识库,获得知识库查询结果;

行为解码器:用于对所述融合注意力权重和融合隐藏状态进行行为解码计算,获得行为隐藏状态;

响应解码器:用于对将行为隐藏状态进行响应解码计算,获得生成词概率分布,输出任务型对话响应序列,其中,所述将对话数据进行编码处理,得到对话数据的编码向量,具体包括:将各类对话数据Z编码表示记为X,并将文本的词嵌入和位置嵌入通过归一化进行编码,分别得到对话数据中的对话插槽的编码向量XS、对话状态的编码向量Xst、用户语句的编码向量Xuser、对话历史的编码向量Xhis和对话领域的编码向量Xd;t时刻对话行为的编码向量编码计算公式为:X=LayerNorm(Xemb+PEmb(Z))

式中,Xemb为文本词嵌入,记为Xemb=Emb(Z),Emb()为词嵌入函数;PEmb()为位置嵌入函数;

所述对对话数据的编码向量进行注意力计算,获得堆叠注意力权重;具体包括:计算对话插槽Xs的自注意力,再将其结果与用户语句Xuser进行计算,然后将结果与对话历史Xhis进行计算,最后结果与上一时间步时的对话状态 进行计算;最终经过N次循环的得到第一堆叠注意力权重 N≥3,循环的计算公式包括:式中,Att(,)为Transformer的注意力计算函数; 为对话插槽Xs的自注意力权重;

为 与用户语句Xuser的注意力权重; 为 与对话历史Xhis的注意力权重; 为 与上一时间步时的对话状态 的注意力权重;

计算对话领域Xd的自注意力,再将其结果与用户语句Xuser进行计算,最后将结果与对话历史Xhis进行计算;最后经过N次循环得到第二堆叠注意力权重 N≥3,循环的计算公式包括:式中, 为对话领域Xd的自注意力权重; 为 与用户语句Xuser的注意力权重; 为 与对话历史Xhis的注意力权重。