CN109918493A - 一种基于长短期记忆神经网络的对话生成方法 - Google Patents
一种基于长短期记忆神经网络的对话生成方法 Download PDFInfo
- Publication number
- CN109918493A CN109918493A CN201910208674.3A CN201910208674A CN109918493A CN 109918493 A CN109918493 A CN 109918493A CN 201910208674 A CN201910208674 A CN 201910208674A CN 109918493 A CN109918493 A CN 109918493A
- Authority
- CN
- China
- Prior art keywords
- dialogue
- neural network
- state
- generates
- shot
- 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.)
- Pending
Links
Landscapes
- Machine Translation (AREA)
Abstract
本发明涉及一种基于长短期记忆神经网络的对话生成方法,属于神经网络算法领域。通过模型训练和模拟对话两个阶段来拓展特定对话语料库。该算法充分利用双向LSTM神经网络能够有效学习、可以捕获长序依赖关系和上下文关系的优点,构建编码器‑解码器对话生成模型模拟用户对话动作,使得模仿生成的对话语料更接近于真实对话,实现平滑、通用性强、更长轮次的对话生成,为训练基于统计的对话系统提供数据保障。因此采用长短期记忆神经网络进行对话生成的算法对于基于统计的人机交互系统具有重要的理论意义和应用价值。
Description
技术领域
本发明属于神经网络算法领域,涉及一种基于长短期记忆神经网络的对话生成方法。
背景技术
随着人机交互技术的推广,人机对话系统的应用场景日益增加,对于对话语料库的需求正在逐步增加,加之构建涵盖给定对话场景的所有方面的语料库昂贵且耗时,用于对话系统的语料库极少且语料贫乏;除此之外,基于统计的对话系统的训练通常需要大量的语料数据。针对训练对话系统的语料库稀少、耗时长、通用性差等系列问题,本专利利用双向LSTM神经网络获取序列长、短期和上下文信息的特性,构建对话生成模型生成对话语句,实现对已有的对话语料库的拓展。在本专利中采用双向多层LSTM神经网络的编码器-解码器结构,其中编码器的输入为用户对话动作序列,解码器输出为系统对话回复动作序列,通过现有语料库的训练得到对话生成模型,模拟用户的对话完成对话语料库的拓展,为人机对话系统的模型训练奠定数据基础。
发明内容
有鉴于此,本发明的目的在于提供一种基于长短期记忆神经网络的对话生成方法。
为达到上述目的,本发明提供如下技术方案:
一种基于长短期记忆神经网络的对话生成方法,该方法包括以下步骤:
S1:将训练对话语料提交给双向长短期记忆神经网络完成训练,得到训练后的编码器-解码器对话生成模型;
S2:编码器端输入用户对话动作得到语义编码状态向量;
S3:将编码端输出的状态编码向量提交给解码器,生成对话序列;
S4:经过对话生成循环模拟人为对话行为生成丰富的对话数据集。
进一步,所述方法具体为:
1)采用基于手工规则的对话数据集;对于对话生成模型,数据集需要经过聚类与标注;首先,预先定义若干类话题,然后根据话题进行扩展改写,将一类话题模板扩展成若干轮次的对话语句;通过改写原有的对话模板,获得对话数据集,将其分为训练集与测试集;
2)搭建LSTM神经网络;采用编码器-解码器架构来模拟用户对话动作并生成对话序列;编码器与解码器由双向多层LSTM网络构成,其神经网络细胞单元设计如下:
搭建双向LSTM神经网络,利用‘遗忘’门控结构ft=σ(Wf·[ht-1,ht]+bf)控制细胞状态丢失无关信息,其中,σ=1/(1+e-x),为sigmoid激活函数;
通过it=σ(Wi·[ht-1,ht]+bi)决定所需更新值,创建新的候选值向量,更新细胞状态为
由ot=σ(Wo·[ht-1,ht]+bo)决定输出细胞状态的信息,根据细胞状态及门控结构ot得到隐藏状态输出为ht=Ot*tanh(Ct);
3)在模型中,由输入端传入用户对话动作序列,编码时将序列向量X={x1,x2,x3...xn}输入到网络中;编码过程中当前时刻的隐层状态是根据上一时刻的隐层状态与当前时刻的输入两种信息计算得出的,当前时刻的隐层状态的计算公式为ht=f(ht-1,xt),其中f(·)是隐藏层之间的激活函数;
4)神经网络语义编码;神经网络记录输入序列的隐状态之后生成输入序列的语义编码c,计算公式为c=q({fh1,fh2...hTx}),中q(·)为激活函数,hTx为输入序列最后时刻的隐藏层状态;
5)神经网络解码过程;在解码阶段神经网络根据输入向量c和当前输出序列{y1,y2...yt-1}的条件概率来预测生成输出序列的下一个词yt,计算公式为当前时刻生成结果的条件概率计算公式为p(yt|{y1,y2...yt-1},c)=g(yt-1,xt,c),其中yt-1是上一时刻的预测输出,xt是当前时刻的输入向量,g是激活函数用以计算生成yt的概率。
本发明的有益效果在于:
本发明围绕特定领域对话语料库贫乏,搭建语料困难,通用性较差等问题,采用一种双向多层长短期记忆神经网络的对话生成算法。该算法充分利用双向LSTM神经网络能够有效学习、可以捕获长序依赖关系和上下文关系的优点,构建编码器-解码器对话生成模型模拟用户对话动作,使得模仿生成的对话语料更接近于真实对话,实现平滑、通用性强、更长轮次的对话生成,为训练基于统计的对话系统提供数据保障。
本发明的其他优点、目标和特征在某种程度上将在随后的说明书中进行阐述,并且在某种程度上,基于对下文的考察研究对本领域技术人员而言将是显而易见的,或者可以从本发明的实践中得到教导。本发明的目标和其他优点可以通过下面的说明书来实现和获得。
附图说明
为了使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明作优选的详细描述,其中:
图1为编码器-解码器框架图;
图2为LSTM神经网络单元结构图。
图3为算法流程图。
具体实施方式
以下通过特定的具体实例说明本发明的实施方式,本领域技术人员可由本说明书所揭露的内容轻易地了解本发明的其他优点与功效。本发明还可以通过另外不同的具体实施方式加以实施或应用,本说明书中的各项细节也可以基于不同观点与应用,在没有背离本发明的精神下进行各种修饰或改变。需要说明的是,以下实施例中所提供的图示仅以示意方式说明本发明的基本构想,在不冲突的情况下,以下实施例及实施例中的特征可以相互组合。
其中,附图仅用于示例性说明,表示的仅是示意图,而非实物图,不能理解为对本发明的限制;为了更好地说明本发明的实施例,附图某些部件会有省略、放大或缩小,并不代表实际产品的尺寸;对本领域技术人员来说,附图中某些公知结构及其说明可能省略是可以理解的。
本发明实施例的附图中相同或相似的标号对应相同或相似的部件;在本发明的描述中,需要理解的是,若有术语“上”、“下”、“左”、“右”、“前”、“后”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此附图中描述位置关系的用语仅用于示例性说明,不能理解为对本发明的限制,对于本领域的普通技术人员而言,可以根据具体情况理解上述术语的具体含义。
如图1~3所示,本发明各部分具体实施细节如下:
1、将需要拓展的对话数据集分成训练集和测试集两个部分,提供给对话生成模型。
2、通过全连接方式搭建双向LSTM神经网络,采用BPTT和SGD算法训练网络得到编码器-解码器结构模型。
3、对话生成算法,实现过程如下。
(1)UA表示为用户对话动作,SA表示为系统对话动作,载入训练后的对话生成模型,并设置对话总轮次;
(2)设置输入及初始化标志位。
(3)解码器根据编码器端的输入序列的编码状态向量生成输出序列。
(4)若用户对话动作达到结束标志位,则结束生成,相反则返回步骤(3)不断生成新的对话语料。
最后说明的是,以上实施例仅用以说明本发明的技术方案而非限制,尽管参照较佳实施例对本发明进行了详细说明,本领域的普通技术人员应当理解,可以对本发明的技术方案进行修改或者等同替换,而不脱离本技术方案的宗旨和范围,其均应涵盖在本发明的权利要求范围当中。
Claims (2)
1.一种基于长短期记忆神经网络的对话生成方法,其特征在于:该方法包括以下步骤:
S1:将训练对话语料提交给双向长短期记忆神经网络完成训练,得到训练后的编码器-解码器对话生成模型;
S2:编码器端输入用户对话动作得到语义编码状态向量;
S3:将编码端输出的状态编码向量提交给解码器,生成对话序列;
S4:经过对话生成循环模拟人为对话行为生成丰富的对话数据集。
2.根据权利要求1所述的一种基于长短期记忆神经网络的对话生成方法,其特征在于:所述方法具体为:
1)采用基于手工规则的对话数据集;对于对话生成模型,数据集需要经过聚类与标注;首先,预先定义若干类话题,然后根据话题进行扩展改写,将一类话题模板扩展成若干轮次的对话语句;通过改写原有的对话模板,获得对话数据集,将其分为训练集与测试集;
2)搭建LSTM神经网络;采用编码器-解码器架构来模拟用户对话动作并生成对话序列;编码器与解码器由双向多层LSTM网络构成,其神经网络细胞单元设计如下:
搭建双向LSTM神经网络,利用‘遗忘’门控结构ft=σ(Wf·[ht-1,ht]+bf)控制细胞状态丢失无关信息,其中,σ=1/(1+e-x),为sigmoid激活函数;
通过it=σ(Wi·[ht-1,ht]+bi)决定所需更新值,创建新的候选值向量,更新细胞状态为
由ot=σ(Wo·[ht-1,ht]+bo)决定输出细胞状态的信息,根据细胞状态及门控结构ot得到隐藏状态输出为ht=Ot*tanh(Ct);
3)在模型中,由输入端传入用户对话动作序列,编码时将序列向量X={x1,x2,x3...xn}输入到网络中;编码过程中当前时刻的隐层状态是根据上一时刻的隐层状态与当前时刻的输入两种信息计算得出的,当前时刻的隐层状态的计算公式为ht=f(ht-1,xt),其中f(·)是隐藏层之间的激活函数;
4)神经网络语义编码;神经网络记录输入序列的隐状态之后生成输入序列的语义编码c,计算公式为c=q({fh1,fh2...hTx}),中q(·)为激活函数,hTx为输入序列最后时刻的隐藏层状态;
5)神经网络解码过程;在解码阶段神经网络根据输入向量c和当前输出序列{y1,y2...yt-1}的条件概率来预测生成输出序列的下一个词yt,计算公式为当前时刻生成结果的条件概率计算公式为p(yt|{y1,y2...yt-1},c)=g(yt-1,xt,c),其中yt-1是上一时刻的预测输出,xt是当前时刻的输入向量,g是激活函数用以计算生成yt的概率。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910208674.3A CN109918493A (zh) | 2019-03-19 | 2019-03-19 | 一种基于长短期记忆神经网络的对话生成方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910208674.3A CN109918493A (zh) | 2019-03-19 | 2019-03-19 | 一种基于长短期记忆神经网络的对话生成方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN109918493A true CN109918493A (zh) | 2019-06-21 |
Family
ID=66965778
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910208674.3A Pending CN109918493A (zh) | 2019-03-19 | 2019-03-19 | 一种基于长短期记忆神经网络的对话生成方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109918493A (zh) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110728356A (zh) * | 2019-09-17 | 2020-01-24 | 阿里巴巴集团控股有限公司 | 基于循环神经网络的对话方法、系统及电子设备 |
CN111143522A (zh) * | 2019-11-29 | 2020-05-12 | 华东师范大学 | 一种端到端的任务型对话系统的领域适应方法 |
CN111314345A (zh) * | 2020-02-19 | 2020-06-19 | 安徽大学 | 一种保护序列数据隐私方法、装置、计算机设备及存储介质 |
CN111428023A (zh) * | 2020-03-26 | 2020-07-17 | 支付宝(杭州)信息技术有限公司 | 话术推荐方法、装置和电子设备 |
CN112417118A (zh) * | 2020-11-19 | 2021-02-26 | 上海交通大学 | 一种基于标记文本和神经网络的对话生成方法 |
CN112419455A (zh) * | 2020-12-11 | 2021-02-26 | 中山大学 | 基于人体骨架序列信息的人物动作视频生成方法、系统及存储介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106328122A (zh) * | 2016-08-19 | 2017-01-11 | 深圳市唯特视科技有限公司 | 一种利用长短期记忆模型递归神经网络的语音识别方法 |
CN108363690A (zh) * | 2018-02-08 | 2018-08-03 | 北京十三科技有限公司 | 基于神经网络的对话语义意图预测方法及学习训练方法 |
CN108734276A (zh) * | 2018-04-28 | 2018-11-02 | 同济大学 | 一种基于对抗生成网络的模仿学习对话生成方法 |
CN108897723A (zh) * | 2018-06-29 | 2018-11-27 | 北京百度网讯科技有限公司 | 场景对话文本识别方法、装置以及终端 |
US10229111B1 (en) * | 2016-02-03 | 2019-03-12 | Google Llc | Sentence compression using recurrent neural networks |
-
2019
- 2019-03-19 CN CN201910208674.3A patent/CN109918493A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10229111B1 (en) * | 2016-02-03 | 2019-03-12 | Google Llc | Sentence compression using recurrent neural networks |
CN106328122A (zh) * | 2016-08-19 | 2017-01-11 | 深圳市唯特视科技有限公司 | 一种利用长短期记忆模型递归神经网络的语音识别方法 |
CN108363690A (zh) * | 2018-02-08 | 2018-08-03 | 北京十三科技有限公司 | 基于神经网络的对话语义意图预测方法及学习训练方法 |
CN108734276A (zh) * | 2018-04-28 | 2018-11-02 | 同济大学 | 一种基于对抗生成网络的模仿学习对话生成方法 |
CN108897723A (zh) * | 2018-06-29 | 2018-11-27 | 北京百度网讯科技有限公司 | 场景对话文本识别方法、装置以及终端 |
Non-Patent Citations (1)
Title |
---|
洪源: ""基于深度学习的智能问答系统设计"", 《中国优秀硕士学位论文全文数据库•信息科技辑》 * |
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110728356A (zh) * | 2019-09-17 | 2020-01-24 | 阿里巴巴集团控股有限公司 | 基于循环神经网络的对话方法、系统及电子设备 |
CN110728356B (zh) * | 2019-09-17 | 2023-08-04 | 创新先进技术有限公司 | 基于循环神经网络的对话方法、系统及电子设备 |
CN111143522A (zh) * | 2019-11-29 | 2020-05-12 | 华东师范大学 | 一种端到端的任务型对话系统的领域适应方法 |
CN111143522B (zh) * | 2019-11-29 | 2023-08-01 | 华东师范大学 | 一种端到端的任务型对话系统的领域适应方法 |
CN111314345A (zh) * | 2020-02-19 | 2020-06-19 | 安徽大学 | 一种保护序列数据隐私方法、装置、计算机设备及存储介质 |
CN111314345B (zh) * | 2020-02-19 | 2022-09-16 | 安徽大学 | 一种保护序列数据隐私方法、装置、计算机设备及存储介质 |
CN111428023A (zh) * | 2020-03-26 | 2020-07-17 | 支付宝(杭州)信息技术有限公司 | 话术推荐方法、装置和电子设备 |
CN111428023B (zh) * | 2020-03-26 | 2023-07-14 | 支付宝(杭州)信息技术有限公司 | 话术推荐方法、装置和电子设备 |
CN112417118A (zh) * | 2020-11-19 | 2021-02-26 | 上海交通大学 | 一种基于标记文本和神经网络的对话生成方法 |
CN112417118B (zh) * | 2020-11-19 | 2023-04-07 | 上海交通大学 | 一种基于标记文本和神经网络的对话生成方法 |
CN112419455A (zh) * | 2020-12-11 | 2021-02-26 | 中山大学 | 基于人体骨架序列信息的人物动作视频生成方法、系统及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109918493A (zh) | 一种基于长短期记忆神经网络的对话生成方法 | |
CN106126507B (zh) | 一种基于字符编码的深度神经翻译方法及系统 | |
CN107357838B (zh) | 基于多任务学习的对话策略在线实现方法 | |
CN110164476B (zh) | 一种基于多输出特征融合的blstm的语音情感识别方法 | |
CN104538028B (zh) | 一种基于深度长短期记忆循环神经网络的连续语音识别方法 | |
CN111274375B (zh) | 一种基于双向gru网络的多轮对话方法及系统 | |
CN109785824A (zh) | 一种语音翻译模型的训练方法及装置 | |
CN109522545B (zh) | 一种对多轮对话连贯性质量的评估方法 | |
CN107368476A (zh) | 一种翻译的方法、目标信息确定的方法及相关装置 | |
CN109887484A (zh) | 一种基于对偶学习的语音识别与语音合成方法及装置 | |
CN107679225B (zh) | 一种基于关键词的回复生成方法 | |
CN106328122A (zh) | 一种利用长短期记忆模型递归神经网络的语音识别方法 | |
CN109063164A (zh) | 一种基于深度学习的智能问答方法 | |
CN111753207B (zh) | 一种基于评论的神经图协同过滤方法 | |
CN111966800A (zh) | 情感对话生成方法、装置及情感对话模型训练方法、装置 | |
CN113516968A (zh) | 一种端到端长时语音识别方法 | |
CN108595436A (zh) | 情感对话内容的生成方法和系统、存储介质 | |
CN113065344A (zh) | 一种基于迁移学习和注意力机制的跨语料库情感识别方法 | |
CN112949896B (zh) | 一种基于融合序列分解与时空卷积的时序预测方法 | |
CN111477220A (zh) | 一种面向家居口语环境的神经网络语音识别方法及系统 | |
CN110415071A (zh) | 一种基于观点挖掘分析的汽车竞品对比方法 | |
CN113641819A (zh) | 基于多任务稀疏共享学习的论辩挖掘系统及方法 | |
CN113239174A (zh) | 一种基于双层解码的层次化多轮对话生成方法及装置 | |
CN110069611A (zh) | 一种主题增强的聊天机器人回复生成方法及装置 | |
CN109800295A (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 | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20190621 |