CN112417125B - 基于深度强化学习的开放域对话回复方法及系统 - Google Patents
基于深度强化学习的开放域对话回复方法及系统 Download PDFInfo
- Publication number
- CN112417125B CN112417125B CN202011383042.XA CN202011383042A CN112417125B CN 112417125 B CN112417125 B CN 112417125B CN 202011383042 A CN202011383042 A CN 202011383042A CN 112417125 B CN112417125 B CN 112417125B
- Authority
- CN
- China
- Prior art keywords
- reply
- emotion
- conversation
- content
- control module
- 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
Images
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/33—Querying
- G06F16/3331—Query processing
- G06F16/334—Query execution
- G06F16/3344—Query execution using natural language analysis
-
- 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/10—Text processing
- G06F40/12—Use of codes for handling textual entities
- G06F40/126—Character encoding
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/237—Lexical tools
- G06F40/242—Dictionaries
-
- 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
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/049—Temporal neural networks, e.g. delay elements, oscillating neurons or pulsed inputs
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Artificial Intelligence (AREA)
- Computational Linguistics (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- Data Mining & Analysis (AREA)
- Mathematical Physics (AREA)
- Databases & Information Systems (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- Evolutionary Computation (AREA)
- Biophysics (AREA)
- Biomedical Technology (AREA)
- Software Systems (AREA)
- Life Sciences & Earth Sciences (AREA)
- Human Computer Interaction (AREA)
- Machine Translation (AREA)
Abstract
本发明属于人工智能领域,涉及自然语言生成和情感分析,为对开放域对话系统引入内容连贯性控制和情绪合理性控制,提出一种基于深度强化学习的开放域对话回复方法及系统。该方法包括,获取对话输入内容进行预处理;预处理后的信息输入对话回复控制模型进行处理,对话回复控制模型包括对话生成模块、内容连贯性控制模块和情绪合理性控制模块,对话生成模块用于生成对话回复,内容连贯性控制模块用于使对话上下文内容连贯,情绪合理性控制模块用于句子情绪分类和判断回复情绪是否合理;输出内容连贯且情绪合理的对话回复。
Description
技术领域
本发明属于人工智能领域,涉及自然语言生成和情感分析,为对开放域对话系统引入内容连贯性控制和情绪合理性控制,提出一种基于深度强化学习的开放域对话回复方法及系统。
背景技术
开放域对话系统控制旨在为神经网络生成对话回复的过程增加更多可控性和确定性。在基于神经网络的生成式对话系统之前,主流的对话系统是检索式的,所有的候选对话回复都来自于数据库,针对一个新的对话上文,当数据库中不存在合适的下文时,系统的效果会下降,并且缺少多样性的回复也不适用于开放域的对话场景。生成式对话系统可以生成数据库之外的回复,但是也存在一些问题,其中比较突出的问题就是不可控性,例如情绪的错误表达,对话内容无意义等。神经网络通过拟合数据集来学习如何对话,怎样设计神经网络,使它可以在更多角度来拟合数据集,从而达到不同的控制目的,是许多研究学者关注的,并且具有较大的研究价值。
前人的研究更多关注利用可监督信息进行对话控制:对于内容连贯性控制,使用对话数据集中的真实回复作为监督,认为生成的回复内容上越接近真实回复越是内容连贯的;对于情绪合理性控制,使用对话数据集中的情绪标签等情绪标注作为监督,认为生成回复的情绪与情绪标签越接近越是合理的。但由于绝大多数的对话数据集都没有情绪标签,许多研究关注如何间接引入情绪标注。例如直接指定回复具有的情绪标签,并且是全标签,而对话回复应该具有什么情绪则作为后续的研究;利用对话数据集中的表情符号,在一系列转换后作为句子的情绪标签;使用VAD词嵌入和负面词等方法获取情绪输入。他们都在各自的数据集上取得了不错的性能。
使用真实回复作为监督信息使得神经网络学习如何生成完整的流畅的回复句子,然而不能保证回复跟对话上文是内容相关的,因为模型更多地关注了回复。间接引入情绪标注的监督方法可以在特定的对话数据集上取得较好的成绩,但是难以扩展到其他数据集,目前还没有一个能够适用于任意开放域对话数据集的方法。并且直接将对话回复的情绪作为可监督信息来控制回复的情绪还有一个问题是导致生成情绪安全的回复,即生成的回复符合预期的情绪,但是内容上比较空泛,不利于对话的进行。综上所述,开放域对话系统的内容连贯性控制和情绪合理性控制是一项创新的研究问题,具有重要的研究意义和应用价值。
发明内容
本发明的目的是在缺少情绪标注的情况下实现开放域对话系统的内容连贯性控制和情绪合理性控制,基于深度强化学习技术,创新的提出了一种对话生成控制方法,提高了生成的对话的内容连贯性和情绪合理性。
为实现上述目的,本发明采用如下技术方案:
基于深度强化学习的开放域对话回复方法,包括,
获取对话输入内容进行预处理;
预处理后的信息输入对话回复控制模型进行处理,对话回复控制模型包括对话生成模块、内容连贯性控制模块和情绪合理性控制模块,对话生成模块用于生成对话回复,内容连贯性控制模块用于使对话上下文内容连贯,情绪合理性控制模块用于句子情绪分类和判断回复情绪是否合理;
输出内容连贯且情绪合理的对话回复。
本技术方案进一步的优化,所述对话输入内容预处理包括:将对话句子分词,构建输出数据的词典,将词转化为统一维度的词向量。
本技术方案进一步的优化,所述对话生成模块由引入注意力机制的序列到序列模型构成。
本技术方案进一步的优化,所述对话生成模块包括编码器和解码器,编码器对对话生成模块的输入句子进行编码,解码器根据编码器编码输出预测词。
本技术方案更进一步的优化,所述编码器对对话生成模块的输入句子进行编码,具体由一个双向LSTM网络构成,在每个时刻t,双向LSTM网络分别计算正向编码隐向量和反向编码隐向量/>然后将二者拼接得到当前时刻的编码隐向量/>解码器在时刻i输出当前时刻的预测词yi,解码器根据编码器编码得到的每个时刻t的编码隐向量/>和之前时刻的解码隐向量/>计算得到时刻i的词概率分布P(yi):
其中n为编码隐向量的个数。
本技术方案进一步的优化,所述内容连贯性控制模块主要由两个CNN网络构成,两个CNN网络都由卷积层、池化层和全连接层构成,模块的输入是对话上文query和回复response,两个CNN网络分别将query和response编码为句子向量vquery和vresponse:
vquery=CNNquery(query)
vresponse=CNNresponse(response)
然后模块计算二者的匹配向量vmatch:
vmatch=Wm[vquery,vresponse]+bm
其中Wm和bm为参数,[vquery,vresponse]是vquery和vresponse的拼接;
由匹配向量vmatch计算内容连贯性打分rc:
rc=sigmoid(Wprojvmatch+bproj)
其中Wproj和bproj为参数。
基于深度强化学习的开放域对话回复装置,包括,
预处理模块,获取对话输入内容进行预处理;
对话回复控制模块,预处理后的信息输入对话回复控制模型进行处理,对话回复控制模型包括对话生成模块、内容连贯性控制模块和情绪合理性控制模块,对话生成模块用于生成对话回复,内容连贯性控制模块用于使对话上下文内容连贯,情绪合理性控制模块用于句子情绪分类和判断回复情绪是否合理;
输出模块,输出内容连贯且情绪合理的对话回复。
本技术方案进一步的优化,所述对话输入内容预处理包括:将对话句子分词,构建输出数据的词典,将词转化为统一维度的词。
本技术方案进一步的优化,所述对话生成模块由引入注意力机制的序列到序列模型构成。
区别于现有技术,上述技术方案的优点和积极效果:
本发明开创性地针对开放域对话系统控制问题提出了基于深度强化学习的方法,构建对话生成模块、内容连贯性控制模块和情绪合理性控制模块,采用强化学习训练方法,提高了模型的情绪控制能力并保障了对话的内容连贯性。并且本发明仅利用少量情绪标签训练情绪分类器,在训练对话生成模块时无需情绪标注,可以方便地迁移到任何对话数据集上。
附图说明
图1为开放域对话回复控制流程示意图;
图2为开放域对话回复控制方法示意图;
图3为对话回复控制模型示意图;
图4为开放域对话数据集情绪分布示意图;
图5为情绪分类结果示意图;
图6为对话回复生成的结果示例图。
具体实施方式
为详细说明技术方案的技术内容、构造特征、所实现目的及效果,以下结合具体实施例并配合附图详予说明。
参阅图1所示,为开放域对话回复控制流程示意图。将对话数据输入到该基于深度强化学习的对话回复控制模型中,训练完成后,将新的对话上文输入到模型中的对话生成模块,输出内容连贯且情绪合理的对话回复。本发明优选一实施例,一种基于深度强化学习的开放域对话回复方法,包括,
获取对话输入内容进行预处理;
预处理后的信息输入对话回复控制模型进行处理,对话回复控制模型包括对话生成模块、内容连贯性控制模块和情绪合理性控制模块,对话生成模块用于生成对话回复,内容连贯性控制模块用于使对话上下文内容连贯,情绪合理性控制模块用于句子情绪分类和判断回复情绪是否合理。
输出内容连贯且情绪合理的对话回复。
该方法利用对话上文作为输入数据,构建基于深度强化学习的对话回复生成及控制模型,所属模型包括三个子模块:一个对话生成模块,用于生成对话回复,两个控制模块用于更新生成器参数,其中内容连贯性控制模块计算生成器生成的回复是否是上下文内容连贯的,情绪合理性控制模块计算生成器生成的回复是否是情绪合理的。
参阅图2所示,为开放域对话回复控制方法示意图。第一个阶段是数据预处理,第二个阶段是基于深度强化学习的开放域对话回复控制模型训练,第三个阶段是新的对话上文输入回复生成。
对话回复控制模型的训练过程如下:
步骤1、开放域对话数据集的预处理
将数据集中的多轮对话数据分割为单轮对话数据;将对话句子分词;控制句子长度不要过长或过短;分别构建输入数据的词典和输出数据的词典;将词转化为统一维度的词嵌入,并初始化词嵌入,便于接下来的步骤顺利进行。
该实施例准备了四个开放域对话数据集,分别是Daily dialog数据集、EmotionLines数据集、Open Subtitles数据集和Cornell Movie Dialogs数据集。在数据预处理阶段首先将数据集中的多轮对话数据分割为单轮对话数据,为了尽量保留完整的对话上文,根据不同数据集的特点,对于Daily dialog数据集和Cornell Movie Dialogs数据集,提取了每组对话的第一轮;对于Emotion Lines数据集,提取了每组对话中第一对相邻且来自不同说话人的对话;对于Open Subtitles数据集,提取了每组对话中第一对时间间隔小于20秒的对话。然后使用分词工具将对话句子分词,将对话输入或输出长于30个词的对话删掉。最终Daily dialog数据集有12,134轮对话,Emotion Lines数据集有10,345轮对话,OpenSubtitles数据集有418,606轮对话,Cornell Movie Dialogs数据集有83,097轮对话。之后对每个数据集分别构建了输入数据的词典和输出数据的词典,并将词转化为统一维度的词嵌入,使用Google发布的基于新闻训练的词嵌入列表初始化该任务的词嵌入,便于接下来的步骤顺利进行。
步骤2、基于深度强化学习的开放域对话回复控制模型训练
基于深度强化学习的开放域对话回复控制模型训练包括对话生成模块的预训练,内容连贯性控制模块的预训练,情绪合理性控制模块的训练,对话生成模块与两个控制模块的强化学习训练。通过对话生成模块的预训练使对话生成器具备一定的生成一般对话回复的能力,通过内容连贯性控制模块的预训练使内容连贯性控制模块具备一定的分辨对话上下文内容是否连贯的能力,通过情绪合理性控制模块的训练使情绪合理性模块具备句子情绪分类能力和判断回复情绪是否合理的能力,通过强化学习训练使对话生成模块能够生成内容更加连贯、情绪更加合理的对话回复,并同时进一步增强内容连贯性控制模块分辨对话上下文内容是否连贯的能力。参阅图3所示,为对话回复控制模型示意图。
对话生成模块生成回复,内容连贯性控制模块和情绪合理性控制模块读取该回复并计算分数,对话生成模块收到分数后更新参数,在下一次训练时用新参数和新的训练数据继续更新参数。根据输入内容,对话生成模块生成初始回复语句,初始回复语句传输给内容连贯性控制模块和情绪合理性控制模块进行分析,如果满足要求,则直接输出,如果不满足要求反馈结果对话生成模块再次生成新的回复语句。
步骤2.1、对话生成模块的预训练
对话生成模块由一个引入了注意力机制(attention mechanism)的序列到序列(Sequence to Sequence,seq2seq)模型构成,包括一个编码器和一个解码器,其中编码器对对话生成模块的输入句子进行编码,具体由一个双向LSTM网络构成,在每个时刻t,双向LSTM网络分别计算正向编码隐向量和反向编码隐向量/>然后将二者拼接得到当前时刻的编码隐向量/>解码器在时刻i输出当前时刻的预测词yi,具体来说,解码器根据编码器编码得到的每个时刻t的编码隐向量/>和之前时刻的解码隐向量/>计算得到时刻i的词概率分布P(yi):
其中n为编码隐向量的个数。
对话生成模块首先进行独立的预训练,训练数据为数据集中真实的对话上文和回复,模块使用最大似然估计(MLE)来更新参数,在进行若干轮训练后使对话生成模块可以生成较为流畅的句子。
步骤2.2、内容连贯性控制模块的预训练
内容连贯性控制模块主要由两个CNN网络构成,两个CNN网络都由卷积层、池化层和全连接层构成。输入分别是对话上文和回复,输出是句子向量。模块的输入是对话上文query和回复response,两个CNN网络分别将query和response编码为句子向量vquery和vresponse:
vquery=CNNquery(query)
vresponse=CNNresponse(response)
然后模块计算二者的匹配向量vmatch:
vmatch=Wm[vquery,vresponse]+bm
其中Wm和bm为参数,[vquery,vresponse]是vquery和vresponse的拼接。
由匹配向量vmatch计算内容连贯性打分rc:
rc=sigmoid(Wprojvmatch+bproj)
其中Wproj和bproj为参数。
内容连贯性控制器模块的预训练目的是使得模块具有一定的分辨对话上文和回复是否连贯的能力,预训练的训练数据分为两部分,标签为1的是对话数据集中的对话上文和匹配的回复,标签为0的是对话数据集中的对话上文和数据集中不匹配的回复。然后由rc和标签共同计算交叉熵损失,进而更新模块参数。
步骤2.3、情绪合理性控制模块的训练
情绪合理性控制模块主要由一个基于BERT的情绪分类器构成,分别计算生成的回复和真实的回复的情绪分布和e,然后计算两个情绪分布的欧氏距离(L2距离),然后根据L2距离计算情绪合理性打分re,这里认为情绪分布差异越小情绪合理性越高:
训练情绪合理性控制模块相当于训练BERT情绪分类器,借助于预训练技术,模块只需在预训练好的BERT模型的基础上微调分类器部分的参数,所以仅需要少量带有情绪标签的句子。训练数据集采用了两个带有情绪标签的对话数据集,它们具有不同的情绪类别列表,因此模块训练首先将二者统一,然后分别实验了在各自数据集上训练和在合并后的数据集上训练的分类效果,用于验证情绪分类器的分类能力和可迁移性。参阅图4所示,为开放域对话数据集情绪分布示意图,展示了混合数据集上的情绪分布。参阅图5所示,为情绪分类结果示意图,展示了情绪分类的准确率。
在强化学习训练之前,需要使用少量带有情绪标签的文本微调基于BERT的情绪分类器的参数,在强化学习训练过程中则不再需要情绪标签,也不再改变情绪分类器的参数。该实施例仅需要少量标签是因为BERT基于预训练技术在大规模语料上预训练后已经具备了强大的文本特征提取能力,使用少量任务标签微调参数就可以让BERT在任务上取得好成绩。
步骤2.4、对话生成模块和两个控制模块的强化学习训练
在强化学习训练阶段,内容连贯性控制模块根据对话上文和对话生成模块输出的对话回复(标签设置为0)更新参数,对话生成模块根据两个控制模块对生成的对话回复的打分来更新参数,迭代上述过程直到收敛。
具体来说,每次迭代可以分为两个步骤:内容连贯性控制模块训练和对话生成模块训练。在内容连贯性控制模块训练过程中,首先获取若干标签为0的训练数据:由对话生成器生成的对话回复和对应的上文,然后在数据集中采样若干真实对话上下文(标签为1)和不匹配的对话上下文(标签为0),将三者共同作为训练数据训练模型,损失函数如下:
其中D代表内容连贯性控制器,Φ代表参数。
在对话生成模块训练过程中,在解码的每个时刻t本来只能得到当前的词和之前的词,这是无法去做打分的,训练时使用蒙特卡洛搜索(MC搜索)的方法采样得到了k个完整的回复句子YMC,然后计算对话上文和回复的两个打分:内容连贯性打分rtc和情绪合理性打分rte,具体计算如下:
其中E为情绪合理性控制器,在强化训练阶段E不再更新参数。
结合rtc和rte得到当前时刻t的整体打分rt:
rt=(rtc+rte)/2
最后更新对话生成模块的参数,损失函数如下:
其中G为对话生成模块,θ为参数。
每次迭代内容连贯性控制模块和对话生成模块都各自训练若干轮,迭代至参数都收敛,此时内容连贯性控制模块具有更好的分辨对话内容是否连贯的能力,对话生成模块也具备生成内容更加连贯、情绪更加合理的对话回复的能力。参阅图6所示,为对话回复生成的结果示例图。
基于深度强化学习的开放域对话回复装置,包括,
预处理模块,获取对话输入内容进行预处理;
对话回复控制模块,预处理后的信息输入对话回复控制模型进行处理,对话回复控制模型包括对话生成模块、内容连贯性控制模块和情绪合理性控制模块,对话生成模块用于生成对话回复,内容连贯性控制模块用于使对话上下文内容连贯,情绪合理性控制模块用于句子情绪分类和判断回复情绪是否合理;
回复模块,将生成的对话回复进行反馈。
对话输入内容预处理包括:将对话句子分词,构建输出数据的词典,将词转化为统一维度的词。
对话生成模块由引入注意力机制的序列到序列模型构成。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者终端设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者终端设备所固有的要素。在没有更多限制的情况下,由语句“包括……”或“包含……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者终端设备中还存在另外的要素。此外,在本文中,“大于”、“小于”、“超过”等理解为不包括本数;“以上”、“以下”、“以内”等理解为包括本数。
尽管已经对上述各实施例进行了描述,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例做出另外的变更和修改,所以以上所述仅为本发明的实施例,并非因此限制本发明的专利保护范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围之内。
Claims (8)
1.基于深度强化学习的开放域对话回复方法,其特征在于:包括,
获取对话输入内容进行预处理;
预处理后的信息输入对话回复控制模型进行处理,对话回复控制模型包括对话生成模块、内容连贯性控制模块和情绪合理性控制模块,对话生成模块用于生成对话回复,内容连贯性控制模块用于使对话上下文内容连贯,情绪合理性控制模块用于句子情绪分类和判断回复情绪是否合理;
输出内容连贯且情绪合理的对话回复;
根据输入内容,对话生成模块生成初始回复语句,初始回复语句传输给内容连贯性控制模块和情绪合理性控制模块进行分析,如果满足要求,则直接输出,如果不满足要求反馈结果对话生成模块再次生成新的回复语句;
所述内容连贯性控制模块主要由两个CNN网络构成,两个CNN网络都由卷积层、池化层和全连接层构成,模块的输入是对话上文query和回复response,两个CNN网络分别将query和response编码为句子向量vquery和vresponse:
vquery=CNNquery(query)
vresponse=CNNresponse(response)
然后模块计算二者的匹配向量vmatch:
vmatch=Wm[vquery,vresponse]+bm
其中Wm和bm为参数,[vquery,vresponse]是vquery和vresponse的拼接;
由匹配向量vmatch计算内容连贯性打分rc:
rc=sigmoid(Wprojvmatch+bproj)
其中Wproj和bproj为参数;
2.如权利要求1所述的基于深度强化学习的开放域对话回复方法,其特征在于:所述对话输入内容预处理包括:将对话句子分词,构建输出数据的词典,将词转化为统一维度的词向量。
3.如权利要求1所述的基于深度强化学习的开放域对话回复方法,其特征在于:所述对话生成模块由引入注意力机制的序列到序列模型构成。
4.如权利要求1所述的基于深度强化学习的开放域对话回复方法,其特征在于:所述对话生成模块包括编码器和解码器,编码器对对话生成模块的输入句子进行编码,解码器根据编码器编码输出预测词。
6.基于深度强化学习的开放域对话回复装置,其特征在于:包括,
预处理模块,获取对话输入内容进行预处理;
对话回复控制模块,预处理后的信息输入对话回复控制模型进行处理,对话回复控制模型包括对话生成模块、内容连贯性控制模块和情绪合理性控制模块,对话生成模块用于生成对话回复,内容连贯性控制模块用于使对话上下文内容连贯,情绪合理性控制模块用于句子情绪分类和判断回复情绪是否合理;
输出模块,输出内容连贯且情绪合理的对话回复;
根据输入内容,对话生成模块生成初始回复语句,初始回复语句传输给内容连贯性控制模块和情绪合理性控制模块进行分析,如果满足要求,则直接输出,如果不满足要求反馈结果对话生成模块再次生成新的回复语句;
所述内容连贯性控制模块主要由两个CNN网络构成,两个CNN网络都由卷积层、池化层和全连接层构成,模块的输入是对话上文query和回复response,两个CNN网络分别将query和response编码为句子向量vquery和vresponse:
vquery=CNNquery(query)
vresponse=CNNresponse(response)
然后模块计算二者的匹配向量vmatch:
vmatch=Wm[vquery,vresponse]+bm
其中Wm和bm为参数,[vquery,vresponse]是vquery和vresponse的拼接;
由匹配向量vmatch计算内容连贯性打分rc:
rc=sigmoid(Wprojvmatch+bproj)
其中Wproj和bproj为参数;
7.如权利要求6所述的基于深度强化学习的开放域对话回复装置,其特征在于:所述对话输入内容预处理包括:将对话句子分词,构建输出数据的词典,将词转化为统一维度的词。
8.如权利要求6所述的基于深度强化学习的开放域对话回复装置,其特征在于:所述对话生成模块由引入注意力机制的序列到序列模型构成。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011383042.XA CN112417125B (zh) | 2020-12-01 | 2020-12-01 | 基于深度强化学习的开放域对话回复方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011383042.XA CN112417125B (zh) | 2020-12-01 | 2020-12-01 | 基于深度强化学习的开放域对话回复方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112417125A CN112417125A (zh) | 2021-02-26 |
CN112417125B true CN112417125B (zh) | 2023-03-24 |
Family
ID=74830731
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011383042.XA Active CN112417125B (zh) | 2020-12-01 | 2020-12-01 | 基于深度强化学习的开放域对话回复方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112417125B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115017276B (zh) * | 2022-03-28 | 2022-11-29 | 连芷萱 | 政务咨询多轮对话方法、系统、政务机器人和存储介质 |
CN115048944B (zh) * | 2022-08-16 | 2022-12-20 | 之江实验室 | 一种基于主题增强的开放域对话回复方法及系统 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108897852A (zh) * | 2018-06-29 | 2018-11-27 | 北京百度网讯科技有限公司 | 对话内容连贯性的判断方法、装置以及设备 |
CN108897723A (zh) * | 2018-06-29 | 2018-11-27 | 北京百度网讯科技有限公司 | 场景对话文本识别方法、装置以及终端 |
CN109635095A (zh) * | 2018-12-17 | 2019-04-16 | 北京百度网讯科技有限公司 | 用于优化对话模型的方法和装置 |
CN109977207A (zh) * | 2019-03-21 | 2019-07-05 | 网易(杭州)网络有限公司 | 对话生成方法、对话生成装置、电子设备及存储介质 |
CN110362651A (zh) * | 2019-06-11 | 2019-10-22 | 华南师范大学 | 检索和生成相结合的对话方法、系统、装置和存储介质 |
CN110929476A (zh) * | 2019-09-27 | 2020-03-27 | 中国人民解放军63626部队 | 一种基于混合粒度注意力机制的任务型多轮对话模型构建方法 |
CN111241250A (zh) * | 2020-01-22 | 2020-06-05 | 中国人民大学 | 一种情感对话生成系统和方法 |
CN111986687A (zh) * | 2020-06-23 | 2020-11-24 | 合肥工业大学 | 基于交互式解码的双语情感对话生成系统 |
-
2020
- 2020-12-01 CN CN202011383042.XA patent/CN112417125B/zh active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108897852A (zh) * | 2018-06-29 | 2018-11-27 | 北京百度网讯科技有限公司 | 对话内容连贯性的判断方法、装置以及设备 |
CN108897723A (zh) * | 2018-06-29 | 2018-11-27 | 北京百度网讯科技有限公司 | 场景对话文本识别方法、装置以及终端 |
CN109635095A (zh) * | 2018-12-17 | 2019-04-16 | 北京百度网讯科技有限公司 | 用于优化对话模型的方法和装置 |
CN109977207A (zh) * | 2019-03-21 | 2019-07-05 | 网易(杭州)网络有限公司 | 对话生成方法、对话生成装置、电子设备及存储介质 |
CN110362651A (zh) * | 2019-06-11 | 2019-10-22 | 华南师范大学 | 检索和生成相结合的对话方法、系统、装置和存储介质 |
CN110929476A (zh) * | 2019-09-27 | 2020-03-27 | 中国人民解放军63626部队 | 一种基于混合粒度注意力机制的任务型多轮对话模型构建方法 |
CN111241250A (zh) * | 2020-01-22 | 2020-06-05 | 中国人民大学 | 一种情感对话生成系统和方法 |
CN111986687A (zh) * | 2020-06-23 | 2020-11-24 | 合肥工业大学 | 基于交互式解码的双语情感对话生成系统 |
Also Published As
Publication number | Publication date |
---|---|
CN112417125A (zh) | 2021-02-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Shah et al. | Robust zero-shot cross-domain slot filling with example values | |
CN108763284B (zh) | 一种基于深度学习和主题模型的问答系统实现方法 | |
CN110929030B (zh) | 一种文本摘要和情感分类联合训练方法 | |
CN110334361B (zh) | 一种面向小语种语言的神经机器翻译方法 | |
CN110321418B (zh) | 一种基于深度学习的领域、意图识别和槽填充方法 | |
CN111858932A (zh) | 基于Transformer的多重特征中英文情感分类方法及系统 | |
CN111783459A (zh) | 一种基于改进Transformer+CRF的老挝语命名实体识别方法 | |
Han et al. | A survey of transformer-based multimodal pre-trained modals | |
CN112417125B (zh) | 基于深度强化学习的开放域对话回复方法及系统 | |
CN116738994A (zh) | 基于上下文增强的提示微调的关系抽取方法 | |
CN113139042B (zh) | 一种利用微调和重排序策略的情感可控回复生成方法 | |
CN113327595B (zh) | 发音偏误检测方法、装置及存储介质 | |
CN112364148B (zh) | 一种基于深度学习方法的生成型聊天机器人 | |
CN116542256B (zh) | 一种融合对话上下文信息的自然语言理解方法与装置 | |
CN114596844A (zh) | 声学模型的训练方法、语音识别方法及相关设备 | |
CN109933773A (zh) | 一种多重语义语句解析系统及方法 | |
CN116741153A (zh) | 一种基于大规模音频表征语言模型的音频理解与生成方法 | |
CN114444481B (zh) | 一种新闻评论的情感分析与生成方法 | |
CN115935975A (zh) | 一种情感可控的新闻评论生成方法 | |
Lee et al. | Word-level emotion embedding based on semi-supervised learning for emotional classification in dialogue | |
CN114691858A (zh) | 一种基于改进的unilm摘要生成方法 | |
Mathur et al. | The rapidly changing landscape of conversational agents | |
CN115169363A (zh) | 一种融合知识的增量编码的对话情感识别方法 | |
CN115223549A (zh) | 一种越南语语音识别语料构建方法 | |
CN117150023B (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 |