CN112084314B - 一种引入知识的生成式会话系统 - Google Patents

一种引入知识的生成式会话系统 Download PDF

Info

Publication number
CN112084314B
CN112084314B CN202010843564.7A CN202010843564A CN112084314B CN 112084314 B CN112084314 B CN 112084314B CN 202010843564 A CN202010843564 A CN 202010843564A CN 112084314 B CN112084314 B CN 112084314B
Authority
CN
China
Prior art keywords
knowledge
layer
attention
output
context
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202010843564.7A
Other languages
English (en)
Other versions
CN112084314A (zh
Inventor
朱大勇
卢国明
罗光春
陈爱国
庞睿婷
李炎
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
University of Electronic Science and Technology of China
Original Assignee
University of Electronic Science and Technology of China
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by University of Electronic Science and Technology of China filed Critical University of Electronic Science and Technology of China
Priority to CN202010843564.7A priority Critical patent/CN112084314B/zh
Publication of CN112084314A publication Critical patent/CN112084314A/zh
Application granted granted Critical
Publication of CN112084314B publication Critical patent/CN112084314B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/33Querying
    • G06F16/332Query formulation
    • G06F16/3329Natural language query formulation or dialogue systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/33Querying
    • G06F16/3331Query processing
    • G06F16/334Query execution
    • G06F16/3346Query execution using probabilistic model
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/30Semantic analysis

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computational Linguistics (AREA)
  • Mathematical Physics (AREA)
  • Databases & Information Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Artificial Intelligence (AREA)
  • Human Computer Interaction (AREA)
  • Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • General Health & Medical Sciences (AREA)
  • Probability & Statistics with Applications (AREA)
  • Machine Translation (AREA)

Abstract

本发明提供了一种引入知识的生成式会话系统,主体架构采用Transformer结构的编码解码网络,在其之上嵌入外部知识联合输入共同构建回复。系统采用的具体方案为:输入信息包含历史对话上下文以及对应的外部知识,编码部分包含编码历史对话上下文的自注意力编码器和编码外部知识的知识编码器。自注意力编码器通过多头自注意力机制提取知识信息整合到当前上下文编码过程中。知识编码器分别编码异构数据并将其转换到知识语义向量;自注意力解码器先结合上下文语义向量计算当前解码器状态向量,接着联合解码器状态向量和上下文语义向量对输出知识进行预测,以此帮助解码器生成回复。本发明利用外部知识增加了生成响应的内容丰富度,增加了主动对话的能力。

Description

一种引入知识的生成式会话系统
技术领域
本发明涉及自然语言处理技术,特别涉及一种引入知识的生成式会话技术。
背景技术
现如今社交网络数据不断增长,为数据驱动的对话系统提供了丰富的数据集。端到端生成式对话系统作为一种完全的数据驱动对话系统,需要充分利用数据信息,不仅是海量的对话数据,相应的背景知识信息更能作为机器的“知识储备”,使得生成语句更流畅丰富,是生成式对话系统的研究重点。
引入知识的端到端生成式会话系统的对话过程系统和人之间围绕一些话题进行聊天,对于历史对话信息u={u1,u2,...,un},对应有背景知识k={k1,k2,...,km}。要求系统根据对话上下文及背景知识进行回复,回复流畅通顺且与对话主题相关,并具有一定延展话题的作用。
目前基于引入知识的生成式对话系统一般做法是通过Seq2Seq网络,编码解码器采用循环神经网络,编码器编码历史上下文语义向量和知识向量,解码器通过Attention机制选择输出知识信息结合上下文语义信息共同构建合适的输出响应。
现有的对话系统存在以下不足之处:
1、缺乏对异构外部知识的处理,对上下文语义编码能力较弱,缺乏精确捕捉对应的知识来进行语义加强的过程。
2、难以准确的预测相关知识来生成回复。
由此可见,现有的对话系统难以有效的利用知识,因此生成语句内容单一、不能根据对话主题扩展聊天内容。
发明内容
本发明为解决上述技术问题所采用的技术方案是,一种引入知识相关知识增强上下文语义向量,能编码异构知识语义向量的生成式会话系统。
本发明为解决上述技术问题所采用的技术方案是,一种引入知识的生成式会话系统,包括数据预处理模块、自注意力编码器、知识编码器、自注意力解码器;
一种引入知识的生成式会话系统,其特征在于,包括数据预处理模块、外部知识库、自注意力编码器、知识编码器、自注意力解码器;
数据预处理模块用于,在训练过程中接收输入的历史对话上下文以及对应外部知识,将历史对话信息经预处理后输出至自注意力编码器,将外部知识经预处理后输出至知识编码器;在使用过程中接收输入的实时音频信息,再经预处理后输出至自注意力编码器,并根据接收输入的实时音频信息在外部知识库中匹配得到最相关的外部知识,将该外部知识输出至知识编码器;
外部知识库用于,存储预定义的各种上下文所对应外部知识;
知识编码器包括并行的连续知识向量编码模块与结构化知识编码模块;连续知识编码模块用于对连续知识数据进行编码生成知识语义向量,结构化知识编码模块用于对结构化知识三元组进行编码生成知识语义向量,将知识语义向量分别输出至自注意力编码器和自注意力解码器;
自注意力编码器包括多个串联的子编码器,每个子编码器从下到上依次串联多头注意力机制层、知识捕捉层和前馈层;第一个子编码器的多头注意力机制层用于将输入的历史对话上下文或实时音频信息通过多头自注意力机制编码为上下文语义信息并输出至知识捕捉层;其他子编码器的多头注意力机制层用于接收上一个串联的子编码器的输出的上下文语义向量,对上下文语义向量通过多头自注意力机制编码为上下文语义信息并输出至知识捕捉层;知识捕捉层用于接收输入的知识语义向量与上下文语义信息,利用知识语义向量通过多头自注意力机制对上下文语义信息进行增强,得到增强上下文语义编码并输出至前馈层;前馈层用于对增强上下文语义编码进行压缩,输出上下文语义向量,自注意力编码器中最后一个子编码器的前馈层输出上下文语义向量至自注意力解码器;
自注意力解码器包括多个串联的子解码器,每个子解码器从下到上依次串联多头自注意力机制层、上下文注意力层、前馈层、知识预测层、线性层和输出层;第一个子解码器的多头注意力机制层用于接收历史输出序列,最初时刻的输入为预设初始符号,所述历史输出序列为从初始时刻到上一时刻这个时间段内自注意力解码器输出的各时刻的最终词概率分布中概率最大的词语;输入的历史输出序列通过多头自注意力机制编码为上下文语义信息并输出至上下文注意力层;其他子解码器的多头注意力机制层用于接收上一个串联的子解码器的输出,将历史输出序列通过多头自注意力机制编码为上下文语义信息并输出至上下文注意力层;上下文注意力层用于接收上下文语义向量以及上下文语义信息,利用上下文语义向量通过多头自注意力机制对上下文语义信息进行增强后经前馈层的压缩处理后输出解码器状态向量至知识预测层和线性层,知识预测层用于接收解码器状态向量、知识语义向量和上下文语义向量,先利用知识语义向量和上下文语义向量计算知识语义向量中各知识的注意力值,再用注意力值对知识语义向量中所有知识向量进行加权求和得到全局知识选择向量,利用全局知识选择向量和解码器状态向量得到知识语义向量中每一个知识实体的推理分数,将知识实体的推理分数作为知识实体词概率分布输出至输出层,再利用推理分数进行对知识语义向量中各知识实体进行加权求和得到知识推理向量输出至线性层;线性层对知识推理向量和解码器状态向量进行线性变化和归一化处理后得到常用词概率分布并输出至输出层;输出层根据常用词概率分布与知识实体词概率分布得到最终词概率分布,最后一个子编码器的输出层选择最终词概率分布中概率最大的词语作为输出来更新历史输出序列,将更新后的历史输出序列输出至第一个子编码器的多头自注意力机制层,当解码器停止,根据最新的历史输出序列生成响应对话,其他子编码器的输出层输出最终词概率分布至下一个子编码器的多头注意力机制层。
引入的外部知识包括连续知识与结构化知识两类异构的外部知识,外部知识更全面;在自注意力编、解码器在现有Transformer架构上进行了改进,在自注意力编码器中加入了知识捕捉层,使用外部知识来增加上下文语义编码能力;在自注意力解码器中加入了知识预测层,使用外部知识进行推理,从而生成更合理的、内容丰富的响应对话。
本发明的有益效果是,能够有效得将知识引入端到端生成式会话系统中,能够使回复内容丰富,提升生成质量,延展对话话题。
附图说明
图1为本发明系统的框架图;
图2为实施例知识编码器结构图;
图3为实施例自注意力编码器结构图;
图4为实施例自注意力解码器结构图;
图5为实施例知识推理示意图。
具体实施方式
引入知识的生成会话系统如图1所示,包括数据预处理模块、外部知识库、自注意力编码器、知识编码器、自注意力解码器。会话系统的训练方法,包括如下步骤:
S1:接收输入历史对话上下文u={u1,u2,...,un}以及对应其背景的外部知识k={k1,k2,...,km},n为对话句子个数,m为知识三元组个数,通过数据预处理模块清洗历史对话上下文及外部知识。
具体的方法包括:
S11:将历史对话上下文和外部知识进行分词、大小写转换、全角半角格式转换等数据清洗工作;
S12:使用LSTM-CRF模型对历史对话上下文和外部知识进行序列标注,识别对应知识,构造知识集合e={e1,e2,...,ene}以及门控标签pgen,ne表示知识个数,pgen是一个概率序列,取值为0或1,0代表非知识,1代表知识。本文中知识是指原始的知识信息,即知识三元组和连续知识,比如一个知识三元组为一个知识(“泰坦尼克号”,“类型”,“爱情”)。知识实体为知识中一个元素,比如“泰坦尼克号”。
S2:将外部知识输入知识编码器,得到知识语义向量;将知识进行语义向量表示,具体的方法为:外部知识分为结构化知识三元组数据和连续外部知识;对于结构化知识三元组的编码,采用TransE编码向量;对于连续外部知识的编码,采用6层Transformer模块,bert预训练词向量作为输入;由于不同编码环境造成结构化知识三元组语义向量的空间不一致性,为了统一向量空间,将结构化知识三元组语义向通过MLP层进行映射;
S3:将预设初始符号输入自注意力编码器,联合外部知识共同构建上下文语义向量,具体的方法包括:
S31:将历史对话上下文拼接为一个句子,单词采用bert预训练词向量作为自注意力编码器的输入;自注意力编码器是改进的Transformer编码器,由多个子编码模块串联组成,每个模块的输出作为下一模块的输入,每个子编码模块均由三层组成,从下到上串联依次分别是多头注意力机制层、知识捕捉层和前馈层;
S32:自注意力层通过多头自注意力机制编码历史对话上下文得到上下文语义信息;
S34:知识捕捉层计算知识语义向量与上下文语义信息之间多头自注意力值,选择相关知识增强上下文语义信息得到上下文语义编码;
S35:上下文语义编码经过前馈层最终得到语义增强的上下文语义向量,其中,前馈层是FFN网络,FFN由两个线性变换组成,采用ReLU激活函数。
S4:自注意力解码器为改进的Transformer解码器,由6个子解码器串联组成,每个子解码器从下到上串多头注意力机制层、上下文注意力层、前馈层、知识预测层、线性层和输出层,每层输出作为下一层的输入,最后一个子解码器的输出层的输出与第一个子解码器的多头注意力机制层输入相连;自注意力解码器接收上下文语义向量、知识语义向量,联合知识预测层进行解码,生成回复响应,具体的方法包括:
S41:初始时刻输入自注意力解码器的第一个子解码器的多头注意力机制层的为预设初始符号,预设初始符号为一个开始符;其他输入子解码器的多头注意力机制层的为上一个串联的子解码器的输出的最终词概率分布;其他时刻输入自注意力解码器的第一个子解码器的多头注意力机制层的为上一时刻解码器更新的历史输出序列,每个时刻自注意力解码器同时接收上下文语义向量和知识语义向量;历史输出序列为从初始时刻到上一时刻这个时间段内自注意力解码器输出的各时刻的最终词概率分布;
S42:多头注意力机制层将输入处理为bert预训练词向量的形式,再通过多头自注意力机制编码为上下文语义信息并输出至上下文注意力层;
S43:上下文注意力层接收上下文语义向量以及上下文语义信息,利用上下文语义向量通过多头自注意力机制对上下文语义信息进行增强后经前馈层的压缩处理后输出解码器状态向量至知识预测层;
S44:知识预测层的输入包含知识语义向量、上下文语义向量、解码器状态向量,知识预测层联合多种特征预测生成知识实体词概率分布pknowledge以及知识推理向量cke,知识实体词概率分布pknowledge输出至输出层,知识推理向量cke输出至线性层;
S45:线性层对知识推理向量和解码器状态向量进行线性变化和归一化处理后输出至输出层执行Softmax函数得到常用词概率分布pvocab
S46:输出层通过门控机制选择输出知识或常用词汇得到最终词概率分布pfinal,最后一个子编码器的输出层根据最终词概率分布,最终词概率分布包括了词表中每一个词的概率大小,选择概率最大的词用于组成相应对话,最后一个子编码器的输出层输出最终词概率分布来更新历史输出序列,将更新后的历史输出序列输出至第一个子编码器的多头自注意力机制层,当解码器停止,根据最新的历史输出序列生成响应对话;其他子编码器的输出层输出最终词概率分布至下一个子编码器的多头注意力机制层。
外部知识库存储有预定义的各种上下文所对应外部知识。在训练过程中不需要使用外部知识库,或者可以将训练过程中使用的历史对话上下文对应的外部知识存储至外部知识库中。当训练完成后,在使用过程中系统接收输入的实时音频信息,再经预处理后输出至自注意力编码器背景知识,并根据接收输入的实时音频信息在外部知识库中匹配得到最相关的外部知识,将该外部知识输出至知识编码器。
采用Encoder-Decoder模型,接收输入历史对话语句以及对应的外部知识,通过知识编码器编码异构知识语义向量,自注意力编码器结合知识注意力机制强化编码上下文语义向量,解码器联合知识预测模块生成响应,充分利用了外部知识信息增加生成回复的质量。
图1所示引入知识的生成式会话系统模块结构,输入为历史对话上下文/实时音频信息和外部知识,输出回复响应。以下具体描述系统4个主要模块:
S1:数据预处理模块。历史对话上下文和外部知识输入到数据预处理模块进行数据清洗以及知识识别提取。
S2:知识编码器。将外部知识输入知识编码器进行知识语义编码得到知识语义向量,其中,知识编码器包含连续知识编码器和结构化知识编码器,结构化知识编码器采取多层感知机MLP统一不同结构的知识编码。
S3:自注意力编码器。采用改进的Transformer编码器结构结合知识捕捉层进行上下文语义编码得到上下文语义向量。
S4:自注意力解码器模块。采用改进的Transformer解码器结构嵌入知识预测层,结合上下文语义向量和知识语义向量预测输出知识词,输出丰富响应内容。
S1中形式化定义输入历史对话上下文或实时音频信息U={u1,u2,...,un},其中,un表示第n个句子,n代表句子个数,形式化定义每个句子ui={w1,w2,...,ws},i=1,2,…,n,ws表示第s个词,s为句子中的词个数,对应的外部知识记作K={k1,k2,...,km},km表示第m个知识,m为知识个数。数据预处理包括对输入的数据进行清洗和外部知识的识别与提取;
S11:数据清洗
对U以及K中的所有数据进行中文分词,涉及的英文字符大小写转换,符号半角全角转换,去除表情符号,再输出至自注意力编码器。
S12:知识识别及提取
知识识别采取BiLSTM-CRF网络结构,双向LSTM综合考虑正向反向序列信息效果更佳。将数据清洗后的历史对话上下文/实时音频信息和外部知识作为输入,输入序列首先经过look-up层找到映射的词向量,采取Bert预训练词向量作为词嵌入,词向量维度取300。接着经过Bi-LSTM层得到序列语义编码向量c,Bi-LSTM层神经元个数取512,c是正向LSTM和反向LSTM编码信息的拼接。通过将c映射为维度为标签个数的向量,在经过一个CRF层输出得分最高的标签序列。其中人名、电影名、时间日期、地点等标识作为知识。
举一个例子说明,对话序列为:“喜欢看法国电影吗?”“《你丫闭嘴》就是法国电影,很搞笑的一部电影,尤其是东北话版的,特别有意思。”“Mischa Kamp导演的《雯琪的马儿》相当好看,你可以去看一下,也特别有意思。”其中加粗的词被看作是知识,提取出的知识形成一个外部知识集合输出至知识编码器。训练过程中,对应标注历史对话上下文每个词的位置标注对应的门控标签pgen,其中该位置是知识,设置pgen为1,否则设置pgen为0。
S2知识编码器的结构如图2所示,包括连续知识编码器和结构化知识编码器。结构化知识三元组数据由(主语,谓语,宾语)组成,形式化表述为SPO(Subject,Predicate,Object)。连续外部知识是非结构化的外部知识信息。举个例子来说,结构化知识三元组:“[“太空一号”,“主演”,“玛姬·格蕾斯”]”,连续知识:“星球大战:原力觉醒时光网短评:没什么感觉,难道是东西文化差异所致。”。对连续知识的编码采取非结构化知识编码器,对结构化知识三元组的编码采取结构化知识编码器。
S21:连续知识编码器
连续知识编码器采用现有的6层Transformer结构,每一个Transformer结构包括多头注意力机制层和前馈层;多头注意力机制层和前馈层在输出之前均进行将当前层输出与上一层残差相加,再进行归一化的操作Ad&Norm。连续知识是一段文本,形式化简写为CSPO。首先进行词嵌入,采用bert词向量初始化,设定词向量维度为300。接着添加位置编码向量信息,由于Transformer没有考虑输入序列的单词顺序,因此需要对序列每个单词添加位置向量(positional encoding),嵌入的位置向量采取规则方式,将位置向量和词向量加和在一起作为时序嵌入向量ecspo输入多头自注意力子层,多头的方式为自注意力层提供了多个表示子空间,并且能够增加模型关注不同位置的能力,在自注意力计算过程中,Query/Key/Value分别投影到8个不同的空间中,以捕捉不同维度的注意力值,在这里,Query/Key/Value均为
Figure BDA0002642283550000081
多头注意力机制形式化为MultiHead函数,计算公式如下:
Figure BDA0002642283550000082
接着进行矩阵变化以及加上上一层的残差进行层归一化,然后输入position-wise全连接前馈层,最后将上一个层归一化的输出和位置全连接前馈层的输出进行计算残差并进行层归一化操作,计算过程如下:
Figure BDA0002642283550000083
经过6层Transformer结构,最后一层Transformer结构前馈层(第kn层)输出的
Figure BDA0002642283550000084
作为知识语义向量。
S22:结构化知识编码器
结构化知识编码器为现有TransE编码结构。结构化知识三元组形式化简写为SSPO,首先look-up对应的预训练TransE向量,形式化记作TransE函数,为了将TransE编码的语义向量统一到模型空间中,采取多层感知机MLP进行转换,计算过程记作MLP函数,MLP总共2层,第一层神经元个数设置为600,第二层设置为300。S,P,O是转换后的主语谓语宾语,取S和O拼接得到结构化知识编码向量
Figure BDA0002642283550000085
公式如下:
(S,P,O)=MLP(TransE(s,p,o))
Figure BDA0002642283550000091
S3自注意力编码器,对历史上下文数据/实施音频信息进行语义编码,由6个子编码器组成,每个子编码器网络结构如图3所示。自注意力编码器是改进版的Transformer编码器,包括多头注意力机制层、知识捕捉层和前馈层;多头注意力机制层、知识捕捉层和前馈层在输出之前均进行Add&Norm操作。由于外部知识与历史对话上下文/实施音频信息息息相关,知识的结构性能够增强历史对话上下文/实施音频信息的语义编码,相近的知识能够加强对应语义的编码,相关的知识能对语义起到扩散的作用,因此增加了知识提取层,计算历史对话上下文/实施音频信息与外部知识之间的注意力分数,分数代表知识的相关程度,通过提取出的对应知识增强历史对话上下文/实施音频信息的语义编码。每个子编码器结构相同,由自注意力层、知识捕捉层和前馈层组成。每个自编码器的输出作为下一个自编码器的输入,数据依次流动,取第6个子编码器的输出作为编码向量。输入为历史对话上下文/实施音频信息,输出强化后的上下文语义向量。
具体流程如下:
S31:将预处理之后的历史对话上下文或实时音频信息中所有句子拼接起来作为输入input=[u1;u2;...;un];
S32:对词语进行词嵌入,每个采取Bert预训练词向量初始化,第i个单词向量记作
Figure BDA0002642283550000092
向量维度为300;
S33:对序列每个单词嵌入位置向量
Figure BDA0002642283550000093
位置向量由规则产生;
S34:将
Figure BDA0002642283550000094
向量作为第一个子编码器多头注意力机制层的输入,多头注意力机制层将Query/Key/Value分别映射到8个表示子空间,这里的Query/Key/Value均为位置向量和单词向量的加和
Figure BDA0002642283550000095
多头注意力机制形式化为MultiHead函数,计算公式如下:
Figure BDA0002642283550000096
S35:由于多头注意力机制层会生成8个语义矩阵,因此先进行矩阵压缩操作,乘以W0矩阵得到上下文语义信息,计算公式如下:
Zi=W0Ci
S36:将上下文语义信息Zi加上残差
Figure BDA0002642283550000101
并进行层归一化;
S37:将多头注意力机制层的输出的上下文语义信息Zi与S2得到的知识语义向量作为知识捕捉层的输入,计算每个知识对当前上下文数据的重要程度,通过多头自注意力机制实现,这里采用8头自注意力机制,其中Query是上层输出Zi,Key和Value是结构化知识编码向量
Figure BDA0002642283550000102
或连续知识编码向量
Figure BDA0002642283550000103
将其统称为
Figure BDA0002642283550000104
多头注意力计算形式化为MultiHead函数,则知识捕捉层计算的第i个单词的注意力机制计算如下:
Figure BDA0002642283550000105
S38:知识捕捉层的增强上下文语义编码Di经过Add&Norm残差连接后输出到前馈层;
S39:前馈层为位置全连接前馈网络。前馈层首先进行句子压缩,同S35,将压缩后的向量进行Add&Norm处理输出;除最后一个子编码器的前馈层外的其他前馈层均输出至下一个子编码器的多头注意力机制层;
S310:取最后一层编码器的前馈层输出作为上下文语义向量,形式化描述为Cenc
S4自注意力解码器将执行解码过程,是改进的Transformer解码器结构,由6个子解码器堆叠而成,每个子解码器网络结构如图4所示,从下到上依次串联多头自注意力机制层、上下文注意力层、前馈层、知识预测层、线性层和输出层;初始时刻输入第一个子解码器的多头注意力机制层的为预设初始符号,即一个开始符;其他时刻入第一个子解码器的多头注意力机制层的为上一时刻自注意力解码器的输出的最终词概率分布pfinal;其他子解码器的多头注意力机制层用于接收上一个串联的子解码器的输出的最终词概率分布pfinal;除初始时刻外,解码过程的每个时刻输入来自于上一时刻的输出序列,直到输出结束符,解码器停止工作,所有时刻的输出拼接成了网络的回复响应。数据流动方向依次是多头自注意力机制层、上下文注意力层、前馈层、知识预测层、线性层和输出层。上下文注意力层是通过多头自注意力机制对齐上一时刻的上下文中相关的语义信息帮助生成回复,知识预测层通过注意力机制预测将会输出哪个知识,生成知识词概率分布,如图5所示。门控机制将会选择输出知识或常用词,生成输出响应。
S41:对于当前时刻t的输入至解码器的历史输出序列形式化表示为:
Figure BDA0002642283550000111
Figure BDA0002642283550000112
为第t-1时刻解码器的输出,初始时刻输入为开始符;词嵌入通过Bert预训练词向量初始化,向量维度为300。
S42:每个单词嵌入位置向量,位置向量加和词嵌入向量作为多头注意力机制层的输入,形式化描述第t个时刻的向量为
Figure BDA0002642283550000113
S43:第一个子层自注意力层采用多头自注意力机制捕捉
Figure BDA0002642283550000114
语义信息,采用8头自注意力机制,其中Query,Key和Value均为上层输出
Figure BDA0002642283550000115
多头自注意力机制形式化描述为MultiHead函数,计算公式如下:
Figure BDA0002642283550000116
S44:将Bt进行矩阵压缩,同S35;
S45:Bt加上残差
Figure BDA0002642283550000117
然后进行层归一化操作,得到上下文语音信息Ft并输出至上下文注意力层;
S46:上下文注意力层采取8头注意力机制,其中Query矩阵是上一层的输出Ft,Key和Value的矩阵是S3的输出Cenc,多头自注意力机制形式化描述为MultiHead函数,上下文注意力层计算过程如下:
Et=MultiHead(Ft,Cenc,Cenc)
S47:将Et进行矩阵压缩,同S35。
S48:Et加上残差Ft,进行层归一化操作,得到向量Gt并输出至前馈层。
S49:前馈层为位置全连接前馈网络,前馈层对向量Gt的处理同S310。
S410:Gt经前馈层处理后再进行计算残差,并进行层归一化处理,得到解码器状态向量
Figure BDA0002642283550000118
并输出至知识预测层;
S411;知识预测层通过知识语义向量eki以及上下文语义向量Cenc计算知识语义向量中各知识的attention值score(eki|Cenc),再用注意力值对知识语义向量中所有知识向量进行加权求和得到全局知识选择向量ck;然后根据ck
Figure BDA0002642283550000121
eki去推理知识,得到的知识概率分布。全局选择知识通过计算知识编码向量eki和上下文语义向量Cenc的内积作为相似度分数,然后用softmax函数归一化,加权求和就得到了全局知识选择向量ck,计算过程如下:
score(eki|Cenc)=softmax(eki·Cenc)
Figure BDA0002642283550000122
其中m为知识个数,知识推理通过多层感知机MLP通过t时刻解码器状态
Figure BDA0002642283550000123
全局知识选择向量ck得到知识语义向量中每一个知识实体ei的分数αi,将分数αi归一化得到知识实体的推理分数score(ei),再利用推理分数score(ei)进行对知识语义向量中各知识实体ei进行加权求和得到知识推理向量
Figure BDA0002642283550000124
输出至线性层,计算过程如下:
Figure BDA0002642283550000125
score(ei)=softmax(αi)
Figure BDA0002642283550000126
其中l是知识数量,将知识推理分数score(ei)作为当前时刻的知识词概率分布Pknowledge
S412:线性层将上一层输出
Figure BDA0002642283550000127
以及知识推理向量
Figure BDA0002642283550000128
进行线性变换,再用输出层的softmax函数归一化得到常用词概率分布Pvocab
S413:输出层生成最终词概率分布生成为:pfinal=pgenpvocab+(1-pgen)pknowledge;pgen为门控机制,取值为0或1,当pneg为1表示最终输出的词选择知识为输出,pgen为0表示最终输出的词选择常用词为输出。
S414:选择最终词概率分布中概率最大的词语作为自注意力解码器的输出。
输出层在训练时的损失函数包含两个,一个是交叉熵损失函数Lce,其中qt为t时刻真实输出序列概率(标签),
Figure BDA0002642283550000131
为t时刻解码器输出的最终词概率分布,Tx为句子个数,计算过程如下:
Figure BDA0002642283550000132
另一个是监督生成词语是知识或常用词表词汇的门控损失函数Lgate,其中
Figure BDA0002642283550000133
是真实响应中第t个输出的词属于常用词或知识的概率,取值为0或1,n为词个数,计算过程如下:
Figure BDA0002642283550000134
最终的损失函数由两部分加和组成。

Claims (5)

1.一种引入知识的生成式会话系统,其特征在于,包括数据预处理模块、外部知识库、自注意力编码器、知识编码器、自注意力解码器;
数据预处理模块用于,在训练过程中接收输入的历史对话上下文以及对应外部知识,将历史对话信息经预处理后输出至自注意力编码器,将外部知识经预处理后输出至知识编码器;在使用过程中接收输入的实时音频信息,再经预处理后输出至自注意力编码器,并根据接收输入的实时音频信息在外部知识库中匹配得到最相关的外部知识,将该外部知识输出至知识编码器;
外部知识库用于,存储预定义的各种上下文所对应外部知识;
知识编码器包括并行的连续知识向量编码模块与结构化知识编码模块;连续知识编码模块用于对连续知识数据进行编码生成知识语义向量,结构化知识编码模块用于对结构化知识三元组进行编码生成知识语义向量,将知识语义向量分别输出至自注意力编码器和自注意力解码器;
自注意力编码器包括多个串联的子编码器,每个子编码器从下到上依次串联多头注意力机制层、知识捕捉层和前馈层;第一个子编码器的多头注意力机制层用于将输入的历史对话上下文或实时音频信息通过多头自注意力机制编码为上下文语义信息并输出至知识捕捉层;其他子编码器的多头注意力机制层用于接收上一个串联的子编码器的输出的上下文语义向量,对上下文语义向量通过多头自注意力机制编码为上下文语义信息并输出至知识捕捉层;知识捕捉层用于接收输入的知识语义向量与上下文语义信息,利用知识语义向量通过多头自注意力机制对上下文语义信息进行增强,得到增强上下文语义编码并输出至前馈层;前馈层用于对增强上下文语义编码进行压缩,输出上下文语义向量,自注意力编码器中最后一个子编码器的前馈层输出上下文语义向量至自注意力解码器;
自注意力解码器包括多个串联的子解码器,每个子解码器从下到上依次串联多头自注意力机制层、上下文注意力层、前馈层、知识预测层、线性层和输出层;第一个子解码器的多头注意力机制层用于接收历史输出序列,最初时刻的输入为预设初始符号,所述历史输出序列为从初始时刻到上一时刻这个时间段内自注意力解码器输出的各时刻的最终词概率分布中概率最大的词语;输入的历史输出序列通过多头自注意力机制编码为上下文语义信息并输出至上下文注意力层;其他子解码器的多头注意力机制层用于接收上一个串联的子解码器的输出,将历史输出序列通过多头自注意力机制编码为上下文语义信息并输出至上下文注意力层;上下文注意力层用于接收上下文语义向量以及上下文语义信息,利用上下文语义向量通过多头自注意力机制对上下文语义信息进行增强后经前馈层的压缩处理后输出解码器状态向量至知识预测层和线性层,知识预测层用于接收解码器状态向量、知识语义向量和上下文语义向量,先利用知识语义向量和上下文语义向量计算知识语义向量中各知识的注意力值,再用注意力值对知识语义向量中所有知识向量进行加权求和得到全局知识选择向量,利用全局知识选择向量和解码器状态向量得到知识语义向量中每一个知识实体的推理分数,将知识实体的推理分数作为知识实体词概率分布输出至输出层,再利用推理分数进行对知识语义向量中各知识实体进行加权求和得到知识推理向量输出至线性层;线性层对知识推理向量和解码器状态向量进行线性变化和归一化处理后得到常用词概率分布并输出至输出层;输出层根据常用词概率分布与知识实体词概率分布得到最终词概率分布,最后一个子编码器的输出层选择最终词概率分布中概率最大的词语作为输出来更新历史输出序列,将更新后的历史输出序列输出至第一个子编码器的多头自注意力机制层,当解码器停止,根据最新的历史输出序列生成响应对话,其他子编码器的输出层输出最终词概率分布至下一个子编码器的多头注意力机制层;
自注意力编码器中的多头注意力机制层、知识捕捉层和前馈层以及自注意力解码器中的多头注意力机制层、上下文注意力层和前馈层在输出之前均进行将当前层输出与上一层残差相加,再进行归一化的操作;最终将归一化后的输出作为当前层最终的输出。
2.如权利要求1所述系统,其特征在于,连续知识向量编码模块采用Transformer编码结构,将连续知识数据处理为bert预训练词向量后输入Transformer编码结构;结构化知识编码模块采用TransE编码结构。
3.如权利要求1所述系统,其特征在于,结构化知识编码模块在输出知识语义向量之前通过多层感知机MLP层进行映射统一结构化知识语义向量的空间。
4.如权利要求1所述系统,其特征在于,输出层根据常用词概率分布pvocab与知识实体词概率分布pknowledge得到最终词概率分布pfinal的具体方法为:
pfinal=pgenpvocab+(1-pgen)pknowledge
其中,pgen为门控机制,取值为0或1,当pgen为1表示最终输出的词选择知识为输出,pgen为0表示最终输出的词选择常用词为输出。
5.如权利要求1所述系统,其特征在于,在输出层在训练过程中使用的损失函数为交叉熵损失函数Lce与门控损失函数Lgate之和。
CN202010843564.7A 2020-08-20 2020-08-20 一种引入知识的生成式会话系统 Active CN112084314B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010843564.7A CN112084314B (zh) 2020-08-20 2020-08-20 一种引入知识的生成式会话系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010843564.7A CN112084314B (zh) 2020-08-20 2020-08-20 一种引入知识的生成式会话系统

Publications (2)

Publication Number Publication Date
CN112084314A CN112084314A (zh) 2020-12-15
CN112084314B true CN112084314B (zh) 2023-02-21

Family

ID=73728435

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010843564.7A Active CN112084314B (zh) 2020-08-20 2020-08-20 一种引入知识的生成式会话系统

Country Status (1)

Country Link
CN (1) CN112084314B (zh)

Families Citing this family (26)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112580370B (zh) * 2020-12-24 2023-09-26 内蒙古工业大学 一种融合语义知识的蒙汉神经机器翻译方法
CN112560501B (zh) * 2020-12-25 2022-02-25 北京百度网讯科技有限公司 语义特征的生成方法、模型训练方法、装置、设备及介质
CN112800196B (zh) * 2021-01-18 2024-03-01 南京明略科技有限公司 一种基于孪生网络的faq问答库匹配方法与系统
CN113010676B (zh) * 2021-03-15 2023-12-08 北京语言大学 一种文本知识提取方法、装置及自然语言推断系统
CN113052257B (zh) * 2021-04-13 2024-04-16 中国电子科技集团公司信息科学研究院 一种基于视觉转换器的深度强化学习方法及装置
CN113140228A (zh) * 2021-04-14 2021-07-20 广东工业大学 一种基于图神经网络的声乐打分方法
CN113191161A (zh) * 2021-05-12 2021-07-30 清华大学深圳国际研究生院 基于逻辑增强的机器人互动方法、存储介质和电子设备
CN113239166B (zh) * 2021-05-24 2023-06-06 清华大学深圳国际研究生院 一种基于语义知识增强的自动化人机互动方法
CN113326362A (zh) * 2021-05-27 2021-08-31 北京沃东天骏信息技术有限公司 文本输出方法、装置、设备以及存储介质
CN113609301A (zh) * 2021-07-05 2021-11-05 上海交通大学 一种基于知识图谱的对话方法、介质及系统
CN113449801B (zh) * 2021-07-08 2023-05-02 西安交通大学 一种基于多级图像上下文编解码的图像人物行为描述生成方法
CN113505208B (zh) * 2021-07-09 2024-02-02 福州大学 一种融合多路注意力机制的智能对话系统
CN113468312A (zh) * 2021-07-21 2021-10-01 四川启睿克科技有限公司 一种基于多轮对话知识转移的回复生成方法及装置
CN113515617B (zh) * 2021-07-30 2023-07-04 中央财经大学 一种对话生成模型的方法、装置以及设备
CN113627146B (zh) * 2021-08-11 2024-05-28 厦门大学 基于知识约束的两步式辟谣文本生成方法
CN113423004B (zh) * 2021-08-23 2021-11-30 杭州一知智能科技有限公司 基于解耦译码的视频字幕生成方法和系统
CN113705652B (zh) * 2021-08-23 2024-05-28 西安交通大学 一种基于指针生成网络的任务型对话状态追踪系统及方法
CN113656569B (zh) * 2021-08-24 2023-10-13 电子科技大学 一种基于上下文信息推理的生成式对话方法
CN113806506B (zh) * 2021-09-15 2023-04-18 电子科技大学 一种面向常识推理的生成式人机对话回复生成方法
CN114372126A (zh) * 2021-12-20 2022-04-19 华南理工大学 一种面向对象的端到端对话生成方法、系统和介质
CN114564568A (zh) * 2022-02-25 2022-05-31 福州大学 基于知识增强与上下文感知的对话状态追踪方法及系统
CN114925270B (zh) * 2022-05-09 2024-07-19 华南师范大学 一种会话推荐方法和模型
CN114610861B (zh) * 2022-05-11 2022-08-26 之江实验室 基于变分自编码器的融入知识和感情的端到端对话方法
CN114860914B (zh) * 2022-05-26 2023-06-16 南京信息工程大学 一种基于知识库增强的端到端多领域任务型对话生成方法
CN115527525B (zh) * 2022-11-23 2023-04-18 广州小鹏汽车科技有限公司 语音识别模型生成方法、语音交互方法、车辆和存储介质
CN116932703B (zh) * 2023-09-19 2024-01-23 苏州元脑智能科技有限公司 一种用户可控内容生成方法、装置、设备和介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110399460A (zh) * 2019-07-19 2019-11-01 腾讯科技(深圳)有限公司 对话处理方法、装置、设备及存储介质
CN110851575A (zh) * 2019-09-23 2020-02-28 上海深芯智能科技有限公司 一种对话生成系统及对话实现方法
CN111274362A (zh) * 2020-02-01 2020-06-12 武汉大学 一种基于transformer架构的对话生成方法
CN111382257A (zh) * 2020-05-28 2020-07-07 支付宝(杭州)信息技术有限公司 一种生成对话下文的方法和系统
CN111401003A (zh) * 2020-03-11 2020-07-10 四川大学 一种外部知识增强的幽默文本生成方法

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10489433B2 (en) * 2012-08-02 2019-11-26 Artificial Solutions Iberia SL Natural language data analytics platform

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110399460A (zh) * 2019-07-19 2019-11-01 腾讯科技(深圳)有限公司 对话处理方法、装置、设备及存储介质
CN110851575A (zh) * 2019-09-23 2020-02-28 上海深芯智能科技有限公司 一种对话生成系统及对话实现方法
CN111274362A (zh) * 2020-02-01 2020-06-12 武汉大学 一种基于transformer架构的对话生成方法
CN111401003A (zh) * 2020-03-11 2020-07-10 四川大学 一种外部知识增强的幽默文本生成方法
CN111382257A (zh) * 2020-05-28 2020-07-07 支付宝(杭州)信息技术有限公司 一种生成对话下文的方法和系统

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
Direction-sensitive relation extraction using Bi-SDP attention model;Hailin Wang,Ke Qin,Guoming Lu,Guangchun Luo,Guisong Liu;《ELSEVIER》;20200424;全文 *
检索和生成结合的对话模型研究;许博;《中国优秀硕士学位论文全文数据库》;20200228;全文 *

Also Published As

Publication number Publication date
CN112084314A (zh) 2020-12-15

Similar Documents

Publication Publication Date Title
CN112084314B (zh) 一种引入知识的生成式会话系统
CN114169330B (zh) 融合时序卷积与Transformer编码器的中文命名实体识别方法
US20240177047A1 (en) Knowledge grap pre-training method based on structural context infor
CN110164476B (zh) 一种基于多输出特征融合的blstm的语音情感识别方法
CN113297364B (zh) 一种面向对话系统中的自然语言理解方法及装置
CN112633364A (zh) 一种基于Transformer-ESIM注意力机制的多模态情绪识别方法
CN113806587A (zh) 一种多模态特征融合的视频描述文本生成方法
CN115964467A (zh) 一种融合视觉情境的富语义对话生成方法
CN114443813B (zh) 一种智能化的在线教学资源知识点概念实体链接方法
CN116050401B (zh) 基于Transformer问题关键词预测的多样性问题自动生成方法
CN110059324A (zh) 基于依存信息监督的神经网络机器翻译方法及装置
CN112307168A (zh) 基于人工智能的问诊会话处理方法、装置和计算机设备
CN114020900A (zh) 基于融合空间位置注意力机制的图表英语摘要生成方法
CN111382257A (zh) 一种生成对话下文的方法和系统
CN113971837A (zh) 一种基于知识的多模态特征融合的动态图神经手语翻译方法
CN115831102A (zh) 基于预训练特征表示的语音识别方法、装置及电子设备
CN118132674A (zh) 一种基于大语言模型和高效参数微调的文本信息抽取方法
CN115841119B (zh) 一种基于图结构的情绪原因提取方法
CN113656569A (zh) 一种基于上下文信息推理的生成式对话方法
Hashana et al. Deep Learning in ChatGPT-A Survey
CN116821294A (zh) 一种基于隐式知识反刍的问答推理方法和装置
CN117496388A (zh) 基于动态记忆网络的跨模态视频描述模型
CN118227769B (zh) 一种基于知识图谱增强的大语言模型问答生成方法
CN113887836A (zh) 一种融合事件环境信息的叙述性事件预测方法
CN113642630A (zh) 基于双路特征编码器的图像描述方法及系统

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant