CN112214585B - 回复消息生成方法、系统、计算机设备及存储介质 - Google Patents
回复消息生成方法、系统、计算机设备及存储介质 Download PDFInfo
- Publication number
- CN112214585B CN112214585B CN202010949276.XA CN202010949276A CN112214585B CN 112214585 B CN112214585 B CN 112214585B CN 202010949276 A CN202010949276 A CN 202010949276A CN 112214585 B CN112214585 B CN 112214585B
- Authority
- CN
- China
- Prior art keywords
- emotion
- dialogue
- semantic
- reply
- vector
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 41
- 230000008451 emotion Effects 0.000 claims abstract description 209
- 239000013598 vector Substances 0.000 claims abstract description 188
- 230000015654 memory Effects 0.000 claims abstract description 137
- 230000011218 segmentation Effects 0.000 claims abstract description 14
- 238000012549 training Methods 0.000 claims description 47
- 238000004590 computer program Methods 0.000 claims description 10
- 238000012545 processing Methods 0.000 claims description 5
- 230000007246 mechanism Effects 0.000 claims description 4
- 239000000758 substrate Substances 0.000 claims 1
- 230000006978 adaptation Effects 0.000 abstract description 2
- 238000010586 diagram Methods 0.000 description 14
- 230000008569 process Effects 0.000 description 6
- 238000013135 deep learning Methods 0.000 description 4
- 230000006870 function Effects 0.000 description 4
- 238000011160 research Methods 0.000 description 4
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 230000000694 effects Effects 0.000 description 3
- 206010063659 Aversion Diseases 0.000 description 2
- 238000013528 artificial neural network Methods 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 230000002996 emotional effect Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000003044 adaptive effect Effects 0.000 description 1
- 230000002411 adverse Effects 0.000 description 1
- 238000013473 artificial intelligence Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000018109 developmental process Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000003064 k means clustering Methods 0.000 description 1
- 230000007787 long-term memory Effects 0.000 description 1
- 230000007774 longterm Effects 0.000 description 1
- 238000003058 natural language processing Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 230000006403 short-term memory Effects 0.000 description 1
- 230000003595 spectral effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/33—Querying
- G06F16/332—Query formulation
- G06F16/3329—Natural language query formulation or dialogue systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/35—Clustering; Classification
- G06F16/355—Class or cluster creation or modification
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/205—Parsing
- G06F40/216—Parsing using statistical methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/279—Recognition of textual entities
- G06F40/284—Lexical analysis, e.g. tokenisation or collocates
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/279—Recognition of textual entities
- G06F40/289—Phrasal analysis, e.g. finite state techniques or chunking
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/30—Semantic analysis
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Computational Linguistics (AREA)
- Artificial Intelligence (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Mathematical Physics (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Probability & Statistics with Applications (AREA)
- Human Computer Interaction (AREA)
- Machine Translation (AREA)
Abstract
本申请公开了一种回复消息生成方法、系统、计算机设备以及计算机可读存储介质,该方法包括:获取对话消息,所述对话消息带有情感标签;对所述对话消息进行分词和嵌入,得到输入语义特征向量;将所述输入语义特征向量和情感标签输入语义‑情感记忆模块,得到情感记忆值;利用所述输入语义特征向量和所述情感记忆值进行预测,生成回复消息。通过上述方式,本申请能够根据用户输入的对话消息的语义及其带有的情感标签生成语义连贯且情感合理的回复消息,与对话消息的适配度高。
Description
技术领域
本申请涉及自然语言处理领域,特别是涉及一种回复消息生成方法、系统、计算机设备及计算机可读存储介质。
背景技术
对话系统是指机器人与人类进行交谈的系统,旨在让机器人拥有感知人类语言的能力,并产生智能化回复。构建一个能够表达指定情感并产生信息丰富的回复的情感对话系统是人工智能的长远目标。有研究表明,在对话系统中引入情感因素可以提升用户满意度,并有助于提升系统感知交互的能力。通过赋予机器识别用户情绪状态并产生特异性回复的能力,可以避免对话中的许多故障。
传统的情感对话系统依赖手工设计的对话模板和规则。在一项研究成果中,提出了根据用户话语中的频谱,韵律和言语暗示,来设计了一个对于用户所表达的情感敏感的对话系统。该模型可以根据用户输入的话语中所表达的情感信息,结合预先设计好的对话模板产生最终的回复。
近年来,随着深度学习技术的井喷式发展以及社交网络媒体的迅速普及,人类拥有了海量的对话数据,基于深度学习的对话技术也开始崭露头角,逐步超越和取代了传统的基于规则和模板的方法。数据驱动是基于深度学习的对话系统的一大特点,深度学习方法能够利用神经网络自主提取蕴含在海量对话数据中的对话特征,学习人类语言表达的能力并理解用户对话的语义。一种典型的基于神经网络的对话生成方法是序列到序列模型(seq2seq),该模型采用了一个基于长短期记忆网络(LSTM)的编码器将历史对话记录编码为向量,然后将此历史对话的向量表示输入到另一个基于长短期记忆网络的解码器以逐个单词地生成最终的回复句子。基于编码器-解码器框架的序列到序列模型主导了情感对话的生成,因为它能够以端到端的形式训练,并扩展到非常大的训练数据集上,从而具备良好的泛化性能,达到了超越传统模型的效果。
随后,部分研究工作尝试在序列到序列模型的基础上融入情感信息,以此构建情感对话生成模型。一项具有代表性的研究工作利用内部和外部情感记忆在大规模对话生成中建模情感因素。目前的对话模型尽管考虑了情感因素对于回复消息的重要性,但是仍旧依赖人工词典,生成的回复消息带有的情感信息难以匹配对话内容的情感。
发明内容
本申请提供一种回复消息生成方法、系统、计算机设备及存储介质,能够解决回复消息的情感与对话消息的情感适配程度低的问题。
为解决上述技术问题,本申请第一方面提供了一种回复消息生成方法,该方法包括:获取对话消息,所述对话消息带有情感标签;对所述对话消息进行分词和嵌入,得到输入语义特征向量;将所述输入语义特征向量和情感标签输入语义-情感记忆模块,得到情感记忆值;利用所述输入语义特征向量和所述情感记忆值进行预测,生成回复消息
进一步地,所述语义-情感记忆模块包括语义记忆层和情感记忆层;所述语义记忆层包括K个对话消息语义向量,每个所述对话消息语义向量在所述情感记忆层对应N个情感类,每个所述情感类存储一情感记忆值。
进一步地,所述将所述输入语义特征向量和情感标签输入语义-情感记忆模块,得到情感记忆值,包括:在所述语义记忆层搜索与所述输入语义特征向量相似度最高的对话消息语义向量;在所述情感记忆层搜索所述对话消息语义向量对应的、与所述情感标签为相同情感类型的情感类,获取所述情感类对应的情感记忆值。
进一步地,所述K个对话消息语义向量为多个对话消息语义特征向量被聚类为K个聚类簇的簇中心,每个所述对话消息语义向量对应多个回复消息语义特征向量,且每个所述对话消息语义向量对应的多个所述回复消息语义特征向量根据情感类型被分类为N个情感类,每个所述情感类以类中回复消息语义特征向量的平均向量为情感记忆值。
进一步地,所述利用所述输入语义特征向量和所述情感记忆值进行预测,生成回复消息包括:将所述输入语义特征向量和所述情感记忆值进行合并;将合并结果作为解码器的初始状态,利用所述解码器逐步预测每个时间步的回复单词的概率;基于所述概率确定每个时间步的最终回复单词,所有所述最终回复单词按时间顺序组合得到所述回复消息。
进一步地,所述利用所述解码器逐步预测每个时间步的回复单词的概率包括:每个时间步以所述情感标签的初始化向量作为所述解码器的额外输入,更新当前时间步的隐藏层状态,并利用全局上下文向量预测当前时间步的回复单词的概率。
进一步地,在所述获取的对话消息之前,所述方法包括:利用语料库训练回复消息生成网络,所述语料库包括多组带有情感标签的对话消息及对应的真实回复,所述回复消息生成网络包括第一子网络和第二子网络,所述第一子网络用于为所述带有情感标签的对话消息生成回复消息,所述第二子网络用于对所述真实回复进行重构。
进一步地,所述方法还包括:在对所述回复消息生成网络进行训练时,所述第一子网络将所述语料库中的对话消息转换为训练语料对话向量,所述第二子网络将所述语料库中的真实回复转换为训练语料回复向量,依次将每对所述训练语料对话向量和训练语料回复向量写入所述语义-情感记忆模块;将所述训练语料对话向量作为对话消息语义特征向量调整所述K个聚类簇,以更新所述对话消息语义向量;将所述训练语料回复向量作为所述回复消息语义特征向量,重新计算每个所述情感类中的回复消息语义特征向量的平均向量,以更新所述情感记忆值。
为解决上述技术问题,本申请第二方面提供了一种回复消息生成系统,该系统包括获取模块、分词嵌入模块、语义-情感记忆模块、情感记忆值获取模块以及预测模块,其中,获取模块用于获取对话消息,所述对话消息带有情感标签;分词嵌入模块用于对所述对话消息进行分词和嵌入,得到输入语义特征向量;语义-情感记忆模块用于存储情感记忆值;情感记忆值获取模块用于将所述输入语义特征向量和情感标签输入语义-情感记忆模块,得到情感记忆值;预测模块用于利用所述输入语义特征向量和所述情感记忆值进行预测,生成回复消息。
为解决上述技术问题,本申请第三方面提供了一种计算机设备,该计算机设备包括相互耦接的处理器和存储器,所述存储器中存储有计算机程序,所述处理器用于执行所述计算机程序,以实现上述第一方面提供的回复消息生成方法。
为解决上述技术问题,本申请第四方面提供了一种计算机可读存储介质,计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时,实现上述第一方面提供的回复消息生成方法。
本申请的有益效果是:区别于现有技术的情况,本申请首先获取带有情感标签的对话消息,将对话消息进行分词嵌入处理,得到输入语义特征向量,再将输入语义特征向量和情感标签输入语义-情感记忆模块,得到情感记忆值,最后利用输入语义特征向量和情感记忆值预测生成回复消息。利用输入语义特征向量和情感标签搜索情感记忆值,情感记忆值的获取兼顾了对话消息的语义信息和情感信息,最后依靠输入语义特征向量和情感记忆值预测回复消息,由于回复消息是严格遵从对话消息的语义以及情感记忆值生成的,其语义和情感都对话消息的语义和情感高度适配。
附图说明
图1是本申请回复消息生成网络一实施例的结构示意图;
图2是本申请回复消息生成方法一实施例的流程示意框图;
图3是本申请搜索情感记忆值一实施例的流程示意框图;
图4是本申请利用解码器生成回复消息一实施例的流程示意框图;
图5是本申请回复消息生成网络另一实施例的结构示意图;
图6是本申请更新并存储对话消息语义向量和情感记忆值一实施例的结构示意框图;
图7是本申请回复消息生成系统一实施例的示意框图;
图8是本申请计算机设备一实施例的电路结构示意框图;
图9是本申请计算机可读存储介质一实施例的电路结构示意框图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本申请的一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
本申请中的术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。此外,术语“包括”和“具有”以及他们任何形变,意图在于覆盖不排他的包含。例如包含了一系列步骤或单元的过程、方法、系统、产品或设备没有限定于已列出的步骤或单元,而是可选地还包括没有列出的步骤或单元,或可选地还包括对于这些过程、方法、产品或设备固有的其它步骤或单元。
在本文中提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本申请的至少一个实施例中。在说明书中的各个位置出现该短语不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域技术人员显式地和隐式地理解是,本文所描述的实施例可以与其他实施例结合。
请参阅图1,图1为本申请回复消息生成网络一实施例的结构示意图。回复消息生成网络由编码器-解码器网络组成第一子网络20,第一子网络20用于根据输入的对话消息预测回复消息,回复消息生成网络还包括一外部连接的语义-情感记忆模块10,其中存储有情感记忆值。各个组成部分的工作机制将在以下个实施例中详细阐述。
参阅图2,图2为本申请回复消息生成方法一实施例的流程示意框图。本实施例具体包括以下步骤:
步骤S11,获取对话消息,对话消息带有情感标签。
此步骤获取的对话消息可以是用户通过聊天框输入的文字对话消息,也可以是通过智能语音对话输入的对话消息,比如与智能机器人对话时的语音消息等。
对话消息可表示为:POSTX={x1,x2,…,xn},其带有的情感标签表示为e,标签标签e为指定情感类型中的一个。指定情感类型为预先设置的,例如指定情感类型包括M1、M2、…、MN共N个情感类型,对话消息带有的情感标签e则为N个情感类型中的一个。例如,情感类型可以是愤怒、厌恶、开心、喜欢、悲伤、中性等,情感标签e则为愤怒、厌恶、开心、喜欢、悲伤、中性中的一个。
步骤S12,对对话消息进行分词和嵌入,得到输入语义特征向量。
输入语义特征向量为对话消息POSTX={x1,x2,…,xn}的语义的向量表示,其包含了对话消息POSTX={x1,x2,…,xn}的语义信息。
具体地,回复消息生成网络利用编码器对对话消息POSTX={x1,x2,…,xn}进行分词和嵌入,将对话消息中的单词x1,x2,…,xn编码为对应的向量表示,编码器可以是长短期记忆网络LSTM或门控循环单元网络GRU等,在将对话消息进行分词后输入编码器,逐步对隐藏层状态进行更新,此步骤输出最终的隐藏状态,以此编码器最终的隐藏状态作为输入语义特征向量Rep(X)。
可选地,以双向门控循环单元网络Bi-GRU为编码器,对对话消息进行编码,以得到输入语义特征向量Rep(X)。双向门控循环单元网络Bi-GRU从正向和逆向进行编码,以正向编码的最终隐藏层状态hn和逆向编码的最终隐藏层状态h1的合并值[hn;h1]作为输入语义特征向量Rep(X),可以降低由于单向编码的“遗忘”造成的语义偏差等不良影响,能够获得更加可靠的输入语义特征向量Rep(X)。
步骤S13,将输入语义特征向量和情感标签输入语义-情感记忆模块,得到情感记忆值。
语义-情感记忆模块10中预先存储有情感记忆值本步骤利用输入语义特征向量Rep(X)和情感标签e搜索到匹配的情感记忆值Me并读取出来。
具体地,语义-情感记忆模块10可以是两层的记忆网络,其包括语义记忆层和情感记忆层。其中,语义记忆层包括K个对话消息语义向量PXi(i=1,2,…,K),每个对话消息语义向量PXi在情感记忆层对应N个情感类,第i个对话消息语义PXi向量对应的第j个情感类可表示为每个情感类/>存储一情感记忆值/>
基于此语义-情感记忆模块10,则此步骤利用输入语义特征向量Rep(X)和情感标签e在语义-情感记忆模块10搜索情感记忆值的步骤具体如下:
S131:在语义记忆层搜索与输入语义特征向量相似度最高的对话消息语义向量。
分别计算输入语义特征向量Rep(X)与每个话消息语义向量PXi的相似度,取相似度最高的对话消息语义向量PXi。其中,输入语义特征向量Rep(X)与每个话消息语义向量PXi的相似度可通过向量相似度的计算方法计算得出。
S132:在情感记忆层搜索对话消息语义向量对应的、与情感标签为相同情感类型的情感类,获取情感类对应的情感记忆值。
此步骤在情感记忆层搜索与输入语义特征向量Rep(X)相似度最高的对话消息语义向量PXi对应的、与情感标签e为相同情感类型的情感类并读取该情感类/>存储的情感记忆值/>例如,在语义记忆层中搜索到的与输入语义特征向量Rep(X)相似度最高的对话消息语义向量为PXi,则在情感记忆层中,对应于对话消息语义向量PXi的情感类中搜索情感标签e为相同情感类型的情感类:/>读取此情感类的情感记忆值/>以此情感记忆值/>作为输出的情感记忆值Me。
步骤S131至步骤S132可被描述为:
其中,Me即为搜索得到的情感记忆值。
可选地,K个对话消息语义向量Rep(X)可以是多个对话消息语义特征向量以相似度被聚类为K个聚类簇的簇中心,其中,每个对话消息语义向量对应多个回复消息语义特征向量,且每个对话消息语义向量对应的多个回复消息语义特征向量根据情感类型被分类为N个情感类每个情感类/>以类中回复消息语义特征向量的平均向量为情感记忆值/>
步骤S14,利用输入语义特征向量和情感记忆值进行预测,生成回复消息。
此步骤可以利用GRU或LSTM作为解码器进行回复消息的预测,并逐步预测输出的回复消息中的每个单词,预测得到的所有回复单词按序拼接成为回复消息Y={y1,y2,…,ym}。
具体地,请参阅图4,利用解码器生成回复消息具体包括以下步骤:
步骤S141,将输入语义特征向量和情感记忆值进行合并。
可以利用多层感知机MLP合并输入语义特征向量Rep(X)和情感记忆值Me,得到合并结果MLP([Rep(X)],Me)。
步骤S142,将合并结果作为解码器的初始状态,利用解码器逐步预测每个时间步的回复单词的概率。
以合并结果MLP([Rep(X)],Me)作为解码器隐藏层的初始状态s0,逐步预测每个时间步的回复单词的概率。具体而言,包括步骤1)~2):
1)解码器以上一时间步输出的回复单词的词嵌入向量为输入,结合上一隐藏层状态,更新当前时间步的隐藏层状态:
其中,st为当前时间步的隐藏层状态,为上一时间步输出的回复单词的词嵌入向量,st-1为上一时间步的隐藏层状态。
2)结合全局上下文向量ct以及当前时间步的隐藏层状态st计算输出回复单词的概率分布:
其中,Ws、Wc均为权重矩阵,运算符“;”表示向量拼接操作,全局上下文向量ct是过对编码器的所有的隐藏层状态使用全局注意力机制(Global Attention)计算而来的。
可选地,每个时间步以情感标签e的初始化向量ve作为解码器的额外输入,更新当前时间步的隐藏层状态,并利用全局上下文向量ct预测当前时间步的回复单词的概率。具体包括步骤3)~4):
3)解码器以上一时间步输出的回复单词的词嵌入向量以及情感标签e的初始化向量ve为输入,结合上一隐藏层状态,更新当前时间步的隐藏层状态:
st为当前时间步的隐藏层状态,为上一时间步输出的回复单词的词嵌入向量,ve为情感标签e的初始化向量,st-1为上一时间步的隐藏层状态。
4)结合全局上下文向量ct以及当前时间步的隐藏层状态st计算输出回复单词的概率分布。此步骤与上述步骤2)相同,不再进行赘述。
本实施例以情感标签e的初始化向量ve作为解码器的额外输入,可以确保每一步预测得到的回复单词都是正确的情感导向,弥补由于解码器进行逐步单词预测的过程中,随着时间步的增加丢失情感记忆值Me而导致预测的回复消息Y={y1,y2,…,ym}产生情感方面的偏差。
步骤S143,基于概率确定每个时间步的最终回复单词,所有最终回复单词按时间顺序组合得到回复消息。
步骤S142经softmax处理后,得到输出回复单词的概率分布,可以取概率最大的单词为最终回复单词,得出每个时间步的最终回复单词,如此一来,每个时间步输出的最终回复单词y1、y2、…、ym按序排列则生成回复消息Y={y1,y2,…,ym}。
可选地,在对回复消息生成网络进行训练时,将语料库中的对话消息和真实回复写入语义-情感记忆模块10,以更新并存储对话消息语义向量PXi和情感记忆值具体地,请参阅图5,本申请的回复消息生成网络还包括第二子网络30,在回复消息生成网络的训练阶段利用语料库进行训练操作,其中,语料库包括多组带有情感标签的对话消息及对应的真实回复,第一子网络20用于为带有情感标签的对话消息生成回复消息,第二子网络30用于对真实回复进行重构。其中,第一子网络20可以是Bi-GRU---GRU网络,第二子网络30可以是Bi-GRU---GRU网络。
具体而言,在进行对话消息回复生成网络的训练时,更新并存储对话消息语义向量PXi和情感记忆值具体包括以下步骤:
S21:分别以语料库中的对话消息和真实回复作为第一子网络和第二子网络的输入数据。
此步骤以语料库中的对话消息作为第一子网络20的输入数据,以语料库中的真实回复作为第二子网络30的输入数据。
S22:第一子网络将语料库中的对话消息转换为训练语料对话向量,第二子网络将语料库中的真实回复转换为训练语料回复向量。
第一子网络20以Bi-GRU编码器对语料库中的对话消息进行编码,输出对话消息对应的训练语料对话向量训练语料对话向量/>为语料库中对话消息的向量表示,其包含训练语料对话消息的语义信息。第二子网络30以Bi-GRU编码器对语料库中的真实回复进行编码,输出对话消息对应的训练语料回复向量/>训练语料回复向量为语料库中真实回复的向量表示,其包含真实回复的语义信息。
本步骤依次将多组对话消息-真实回复转换为训练语料对话向量-训练语料回复向量,即,每次将一组对话消息-真实回复转换为对应的一组训练语料对话向量-训练语料回复向量。
S23:依次将每对训练语料对话向量和训练语料回复向量写入语义-情感记忆模块。
S24:将训练语料对话向量作为对话消息语义特征向量调整K个聚类簇,以更新对话消息语义向量;将训练语料回复向量作为回复消息语义特征向量,重新计算每个情感类中的回复消息语义特征向量的平均向量,以更新情感记忆值。
语义-情感记忆模块10的语义记忆层利用K-Means聚类规则将训练语料对话向量聚类为K个聚类簇,每个聚类簇以其簇中心作为对话消息语义向量PXi,第i个聚类簇的簇中心可被表示为:/> 每个聚类簇中的训练语料对话向量/>对应的训练语料回复向量/>以其带有的情感标签被分为N个情感类每个情感类/>以类中所有训练语料回复向量的平均向量作为情感记忆值/>其中,第i个聚类簇中第j个情感类/>的情感记忆值/>可被表示为:
本步骤可以在每写入一对训练语料对话向量和训练语料回复向量时,调整聚类簇,重新计算簇中心,并重新计算情感类中的情感记忆值/>从而实现对对话消息语义向量PXi和情感记忆值/>的更新和存储。
对回复消息生成网络进行训练时,以真实回复为标签,以交叉熵损失函数为目标损失函数,对回复消息生成网络进行训练,以更新回复消息生成网络的参数,完成对回复消息生成网络的训练。其中交叉熵损失函数如下:
其中,m为输出回复消息的长度,yt为真实回复,为第一子网络20输出真实回复的概率,/>为第二子网络30输出真实回复的概率,λ为模型的权重参数。
本申请由于情感记忆值是在对话语义相近的基础上按照回复消息的情感类别存入的,因此,情感记忆值与对话消息语义向量PXi的语义以及情感类别都高度适配。因而,首先通过对话消息的语义特征向量搜索到相似度最高的对话消息语义向量PXi,再通过情感标签e搜索相同的情感类/>读取相应的情感值/>情感值/>在语义方面和在情感方面都与输入的对话消息高度适配,从而能够获得语义、情感效果较佳的回复语句Y={y1,y2,…,ym}。进一步,以情感标签e的初始化向量ve作为解码器的额外输入,可以进一步降低“遗忘”带来的影响,使得输出的回复消息在情感方面可靠程度更高。
请参阅图7,图7为本申请回复消息生成系统一实施例的示意框图,该回复消息生成系统包括获取模块100、分词嵌入模块200、语义-情感记忆模块300、情感记忆值获取模块400以及预测模块500,其中,获取模块100用于获取对话消息,所述对话消息带有情感标签;分词嵌入模块200用于对对话消息进行分词和嵌入,得到输入语义特征向量;语义-情感记忆模块300用于存储情感记忆值;情感记忆值获取模块400用于将输入语义特征向量和情感标签输入语义-情感记忆模块,得到情感记忆值;预测模块500用于利用输入语义特征向量和情感记忆值进行预测,生成回复消息。
获取模块100、分词嵌入模块200、语义-情感记忆模块300、情感记忆值获取模块400以及预测模块500所实现的功能和过程等相关的描述请参照上述本申请回复消息生成方法实施例对应的各步骤的描述,在此不再赘述。
请参阅图8,图8为本申请计算机设备一实施例的电路结构示意框图。计算机设备10包括相互耦接的处理器11和存储器12。存储器12中存储有计算机程序,处理器11用于执行计算机程序以实现如上述本申请回复消息生成方法各实施例的步骤。
关于处理执行的各步骤的描述请参照上述本申请回复消息生成方法实施例的各步骤的描述,在此不再赘述。
在本申请的各实施例中,所揭露的回复消息生成方法和计算机设备,可以通过其它的方式实现。例如,以上所描述的计算机设备的各实施例仅仅是示意性的,例如,所述模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施方式方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中。
参阅图9,图9为本申请计算机可读存储介质一实施例的电路结构示意框图,计算机存储介质1000存储有计算机程序1001,计算机程序1001被执行时实现如上述本申请回复消息生成方法各实施例的步骤。
计算机存储介质1000可以是U盘、移动硬盘、只读存储器(ROM,Read-OnlyMemory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述仅为本申请的实施例,并非因此限制本申请的专利范围,凡是利用本申请说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本申请的专利保护范围内。
Claims (5)
1.一种回复消息生成方法,其特征在于,所述方法包括:
获取对话消息,所述对话消息带有情感标签;
对所述对话消息进行分词和嵌入,得到输入语义特征向量;
将所述输入语义特征向量和所述情感标签输入语义-情感记忆模块,得到情感记忆值;所述语义-情感记忆模块包括语义记忆层和情感记忆层;所述语义记忆层包括K个对话消息语义向量,每个所述对话消息语义向量在所述情感记忆层对应N个情感类,每个所述情感类存储一个情感记忆值;所述K个对话消息语义向量为多个对话消息语义特征向量被聚类为K个聚类簇的簇中心,每个所述对话消息语义向量对应多个回复消息语义特征向量,且每个所述对话消息语义向量对应的多个所述回复消息语义特征向量根据情感类型被分类为N个情感类,每个所述情感类以类中回复消息语义特征向量的平均向量为情感记忆值;
将所述输入语义特征向量和所述情感记忆值进行合并;
将合并结果作为解码器的初始状态,每个时间步以所述情感标签的初始化向量作为所述解码器的额外输入,更新当前时间步的隐藏层状态,并利用全局上下文向量预测当前时间步的回复单词的概率;其中,所述全局上下文向量为对编码器的所有的隐藏层状态使用全局注意力机制计算得到;
基于所述概率确定每个时间步的最终回复单词,所有所述最终回复单词按时间顺序组合得到所述回复消息;
其中,在所述获取对话消息之前,利用语料库训练回复消息生成网络,所述语料库包括多组带有情感标签的对话消息及对应的真实回复,所述回复消息生成网络包括第一子网络和第二子网络,所述第一子网络用于为所述带有情感标签的对话消息生成回复消息,所述第二子网络用于对所述真实回复进行重构;
在对所述回复消息生成网络进行训练时,所述第一子网络将所述语料库中的对话消息转换为训练语料对话向量,所述第二子网络将所述语料库中的真实回复转换为训练语料回复向量,依次将每对所述训练语料对话向量和训练语料回复向量写入所述语义-情感记忆模块;将所述训练语料对话向量作为对话消息语义特征向量调整所述K个聚类簇,以更新所述对话消息语义向量;将所述训练语料回复向量作为所述回复消息语义特征向量,重新计算每个所述情感类中的回复消息语义特征向量的平均向量,以更新所述情感记忆值。
2.根据权利要求1所述的方法,其特征在于,
所述将所述输入语义特征向量和情感标签输入语义-情感记忆模块,得到情感记忆值,包括:
在所述语义记忆层搜索与所述输入语义特征向量相似度最高的对话消息语义向量;
在所述情感记忆层搜索所述对话消息语义向量对应的、与所述情感标签为相同情感类型的情感类,获取所述情感类对应的情感记忆值。
3.一种回复消息生成系统,其特征在于,所述系统包括:
获取模块,用于获取对话消息,所述对话消息带有情感标签;
分词嵌入模块,用于对所述对话消息进行分词和嵌入,得到输入语义特征向量;
语义-情感记忆模块,用于存储情感记忆值;
情感记忆值获取模块,用于将所述输入语义特征向量和所述情感标签输入语义-情感记忆模块,得到情感记忆值;所述语义-情感记忆模块包括语义记忆层和情感记忆层;所述语义记忆层包括K个对话消息语义向量,每个所述对话消息语义向量在所述情感记忆层对应N个情感类,每个所述情感类存储一个情感记忆值;所述K个对话消息语义向量为多个对话消息语义特征向量被聚类为K个聚类簇的簇中心,每个所述对话消息语义向量对应多个回复消息语义特征向量,且每个所述对话消息语义向量对应的多个所述回复消息语义特征向量根据情感类型被分类为N个情感类,每个所述情感类以类中回复消息语义特征向量的平均向量为情感记忆值;
预测模块,用于将所述输入语义特征向量和所述情感记忆值进行合并;将合并结果作为解码器的初始状态,每个时间步以所述情感标签的初始化向量作为所述解码器的额外输入,更新当前时间步的隐藏层状态,并利用全局上下文向量预测当前时间步的回复单词的概率;其中,所述全局上下文向量为对编码器的所有的隐藏层状态使用全局注意力机制计算得到;基于所述概率确定每个时间步的最终回复单词,所有所述最终回复单词按时间顺序组合得到所述回复消息;
其中,在所述获取对话消息之前,利用语料库训练回复消息生成网络,所述语料库包括多组带有情感标签的对话消息及对应的真实回复,所述回复消息生成网络包括第一子网络和第二子网络,所述第一子网络用于为所述带有情感标签的对话消息生成回复消息,所述第二子网络用于对所述真实回复进行重构;
在对所述回复消息生成网络进行训练时,所述第一子网络将所述语料库中的对话消息转换为训练语料对话向量,所述第二子网络将所述语料库中的真实回复转换为训练语料回复向量,依次将每对所述训练语料对话向量和训练语料回复向量写入所述语义-情感记忆模块;将所述训练语料对话向量作为对话消息语义特征向量调整所述K个聚类簇,以更新所述对话消息语义向量;将所述训练语料回复向量作为所述回复消息语义特征向量,重新计算每个所述情感类中的回复消息语义特征向量的平均向量,以更新所述情感记忆值。
4.一种计算机设备,其特征在于,所述计算机设备包括相互耦接的处理器和存储器;所述存储器中存储有计算机程序,所述处理器用于执行所述计算机程序以实现如权利要求1-3中任一项所述方法的步骤。
5.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1-3中任一项所述方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010949276.XA CN112214585B (zh) | 2020-09-10 | 2020-09-10 | 回复消息生成方法、系统、计算机设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010949276.XA CN112214585B (zh) | 2020-09-10 | 2020-09-10 | 回复消息生成方法、系统、计算机设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112214585A CN112214585A (zh) | 2021-01-12 |
CN112214585B true CN112214585B (zh) | 2024-03-12 |
Family
ID=74050398
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010949276.XA Active CN112214585B (zh) | 2020-09-10 | 2020-09-10 | 回复消息生成方法、系统、计算机设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112214585B (zh) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113139042B (zh) * | 2021-04-25 | 2022-04-29 | 内蒙古工业大学 | 一种利用微调和重排序策略的情感可控回复生成方法 |
CN113094490B (zh) * | 2021-05-13 | 2022-11-22 | 度小满科技(北京)有限公司 | 一种会话交互方法、装置、电子设备及存储介质 |
CN113360614A (zh) * | 2021-05-31 | 2021-09-07 | 多益网络有限公司 | 生成式聊天机器人回复情感控制方法、装置、终端及介质 |
CN114239547A (zh) * | 2021-12-15 | 2022-03-25 | 平安科技(深圳)有限公司 | 一种语句生成方法及电子设备、存储介质 |
CN115424605B (zh) * | 2022-11-01 | 2023-02-03 | 北京红棉小冰科技有限公司 | 语音合成方法、装置、电子设备及计算机可读存储介质 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107943974A (zh) * | 2017-11-28 | 2018-04-20 | 合肥工业大学 | 考虑情感的自动会话方法和系统 |
CN108874972A (zh) * | 2018-06-08 | 2018-11-23 | 青岛里奥机器人技术有限公司 | 一种基于深度学习的多轮情感对话方法 |
KR101932263B1 (ko) * | 2017-11-03 | 2018-12-26 | 주식회사 머니브레인 | 적시에 실질적 답변을 제공함으로써 자연어 대화를 제공하는 방법, 컴퓨터 장치 및 컴퓨터 판독가능 기록 매체 |
CN109844743A (zh) * | 2017-06-26 | 2019-06-04 | 微软技术许可有限责任公司 | 在自动聊天中生成响应 |
CN110427490A (zh) * | 2019-07-03 | 2019-11-08 | 华中科技大学 | 一种基于自注意力机制的情感对话生成方法与装置 |
WO2019227505A1 (en) * | 2018-06-02 | 2019-12-05 | Beijing Didi Infinity Technology And Development Co., Ltd. | Systems and methods for training and using chatbot |
CN111291169A (zh) * | 2020-01-16 | 2020-06-16 | 中国平安人寿保险股份有限公司 | 模板编辑回复的方法、装置、设备及存储介质 |
-
2020
- 2020-09-10 CN CN202010949276.XA patent/CN112214585B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109844743A (zh) * | 2017-06-26 | 2019-06-04 | 微软技术许可有限责任公司 | 在自动聊天中生成响应 |
KR101932263B1 (ko) * | 2017-11-03 | 2018-12-26 | 주식회사 머니브레인 | 적시에 실질적 답변을 제공함으로써 자연어 대화를 제공하는 방법, 컴퓨터 장치 및 컴퓨터 판독가능 기록 매체 |
CN107943974A (zh) * | 2017-11-28 | 2018-04-20 | 合肥工业大学 | 考虑情感的自动会话方法和系统 |
WO2019227505A1 (en) * | 2018-06-02 | 2019-12-05 | Beijing Didi Infinity Technology And Development Co., Ltd. | Systems and methods for training and using chatbot |
CN108874972A (zh) * | 2018-06-08 | 2018-11-23 | 青岛里奥机器人技术有限公司 | 一种基于深度学习的多轮情感对话方法 |
CN110427490A (zh) * | 2019-07-03 | 2019-11-08 | 华中科技大学 | 一种基于自注意力机制的情感对话生成方法与装置 |
CN111291169A (zh) * | 2020-01-16 | 2020-06-16 | 中国平安人寿保险股份有限公司 | 模板编辑回复的方法、装置、设备及存储介质 |
Non-Patent Citations (1)
Title |
---|
"基于情感词向量和BLSTM的评论文本情感倾向分析";邓楠等;《计算机应用研究》;20171212;全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN112214585A (zh) | 2021-01-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112214585B (zh) | 回复消息生成方法、系统、计算机设备及存储介质 | |
CN111639175B (zh) | 一种自监督的对话文本摘要方法及系统 | |
CN110263150B (zh) | 文本生成方法、装置、计算机设备及存储介质 | |
CN110534087B (zh) | 一种文本韵律层级结构预测方法、装置、设备及存储介质 | |
Toshniwal et al. | Multitask learning with low-level auxiliary tasks for encoder-decoder based speech recognition | |
CN106448670B (zh) | 基于深度学习和强化学习的自动回复对话系统 | |
CN109635253B (zh) | 文本风格转换方法、装置及存储介质、计算机设备 | |
CN112528637B (zh) | 文本处理模型训练方法、装置、计算机设备和存储介质 | |
CN111966800B (zh) | 情感对话生成方法、装置及情感对话模型训练方法、装置 | |
CN113032545B (zh) | 基于无监督对话预训练的对话理解与答案配置方法及系统 | |
CN108334487A (zh) | 缺失语意信息补全方法、装置、计算机设备和存储介质 | |
US10963819B1 (en) | Goal-oriented dialog systems and methods | |
CN111950275B (zh) | 基于循环神经网络的情绪识别方法、装置及存储介质 | |
CN113987179A (zh) | 基于知识增强和回溯损失的对话情绪识别网络模型、构建方法、电子设备及存储介质 | |
CN112800768A (zh) | 一种嵌套命名实体识别模型的训练方法及装置 | |
CN116737938A (zh) | 基于微调大模型在线数据网络细粒度情感检测方法及装置 | |
CN118043885A (zh) | 用于半监督语音识别的对比孪生网络 | |
CN113590078A (zh) | 虚拟形象合成方法、装置、计算设备及存储介质 | |
CN111581392B (zh) | 一种基于语句通顺度的自动作文评分计算方法 | |
CN111145914B (zh) | 一种确定肺癌临床病种库文本实体的方法及装置 | |
CN112183106A (zh) | 一种基于音素联想及深度学习的语义理解方法及装置 | |
CN114360502A (zh) | 语音识别模型的处理方法、语音识别方法及装置 | |
CN112364148A (zh) | 一种基于深度学习方法的生成型聊天机器人 | |
CN108846125A (zh) | 对话生成方法、装置、终端和计算机可读存储介质 | |
CN111444399A (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 |