CN110263131B - 回复信息生成方法、装置及存储介质 - Google Patents
回复信息生成方法、装置及存储介质 Download PDFInfo
- Publication number
- CN110263131B CN110263131B CN201910164579.8A CN201910164579A CN110263131B CN 110263131 B CN110263131 B CN 110263131B CN 201910164579 A CN201910164579 A CN 201910164579A CN 110263131 B CN110263131 B CN 110263131B
- Authority
- CN
- China
- Prior art keywords
- vocabulary
- reply
- information
- code
- dialogue
- 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
-
- 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
- Machine Translation (AREA)
Abstract
本发明实施例公开了一种回复信息生成方法、装置及存储介质,属于计算机技术领域。该方法包括:基于主题模型,获取历史对话记录的第一编码,第一编码用于表示历史对话记录属于多个预设主题的概率;对历史对话记录进行编码,得到历史对话记录的第二编码,第二编码用于对历史对话记录的含义进行描述;对当前输入的问题信息进行编码,得到问题信息的第三编码,第三编码用于对问题信息的含义进行描述;对第一编码、第二编码和第三编码进行解码,得到问题信息的回复信息。生成回复信息的过程中综合考虑了历史对话记录、历史对话记录所属的主题以及当前输入的问题信息,保证了回复信息所属的主题与历史对话记录所属的主题一致,且实现了上下文的一致性。
Description
技术领域
本发明实施例涉及计算机技术领域,特别涉及一种回复信息生成方法、装置及存储介质。
背景技术
随着计算机技术和自然语言处理技术的快速发展,智能对话机器人、智能客服应用等智能问答系统开始出现,智能问答系统能够根据用户输入的问题信息生成回复信息,从而帮助用户解决诸多问题。目前,如何提高智能问答系统的性能已成为热门的研究方向。
智能问答系统中,可以预先训练得到信息回复模型,该信息回复模型用于生成问题信息的回复信息,则用户输入问题信息时,对该问题信息进行编码,基于该信息回复模型,对该问题信息的编码进行解码,得到该问题信息的回复信息,展示给用户,从而模拟了智能问答系统与用户之间进行对话的场景。
上述方案中的回复信息根据用户输入的问题信息生成,但未考虑该问题信息之前的其他信息,因此无法保证上下文一致,导致回复效果欠佳,无法满足用户的需求。
发明内容
本发明实施例提供了一种回复信息生成方法、装置及存储介质,可以解决相关技术存在的无法保证上下文一致,导致回复效果欠佳,无法满足用户的需求的问题。所述技术方案如下:
一方面,提供了一种回复信息生成方法,所述方法包括:
基于主题模型,获取历史对话记录的第一编码,所述第一编码用于表示所述历史对话记录属于多个预设主题的概率;
对所述历史对话记录进行编码,得到所述历史对话记录的第二编码,所述第二编码用于对所述历史对话记录的含义进行描述;
对当前输入的问题信息进行编码,得到所述问题信息的第三编码,所述第三编码用于对所述问题信息的含义进行描述;
对所述第一编码、所述第二编码和所述第三编码进行解码,得到所述问题信息的回复信息。
另一方面,提供了一种回复信息生成装置,所述装置包括:
第一编码模块,用于基于主题模型,获取历史对话记录的第一编码,所述第一编码用于表示所述历史对话记录属于多个预设主题的概率;
第二编码模块,用于对所述历史对话记录进行编码,得到所述历史对话记录的第二编码,所述第二编码用于对所述历史对话记录的含义进行描述;
第三编码模块,用于对当前输入的问题信息进行编码,得到所述问题信息的第三编码,所述第三编码用于对所述问题信息的含义进行描述;
解码模块,用于对所述第一编码、所述第二编码和所述第三编码进行解码,得到所述问题信息的回复信息。
另一方面,提供了一种用于生成回复信息的装置,所述装置包括:处理器和存储器,所述存储器中存储有至少一条指令、至少一段程序、代码集或指令集,所述指令、所述程序、所述代码集或所述指令集由所述处理器加载并执行以实现如所述的回复信息生成方法中所执行的操作。
另一方面,提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有至少一条指令、至少一段程序、代码集或指令集,所述指令、所述程序、所述代码集或所述指令集由处理器加载并执行以实现如所述的回复信息生成方法中所执行的操作。
本发明实施例提供的回复信息生成方法、装置及存储介质,通过基于主题模型,获取历史对话记录的第一编码,第一编码用于表示历史对话记录属于多个预设主题的概率;对历史对话记录进行编码,得到历史对话记录的第二编码,第二编码用于对历史对话记录的含义进行描述;对当前输入的问题信息进行编码,得到问题信息的第三编码,第三编码用于对问题信息的含义进行描述;对第一编码、第二编码和第三编码进行解码,得到问题信息的回复信息。生成回复信息的过程中综合考虑了历史对话记录、历史对话记录所属的主题以及当前输入的问题信息,回复信息所属的主题与历史对话记录所属的主题一致,保证了上下文一致,提高了回复效果,满足了用户的需求。
并且,在确定问题信息中的词汇对应的回复词汇时,会考虑历史对话记录所属的主题和前一个词汇的影响,保证了回复词汇所属的主题与历史对话记录所属的主题一致,而且与前一个词汇含义连贯,实现了上下文的一致性。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明实施例的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例提供的一种实施环境的示意图;
图2本发明实施例提供的一种回复信息生成方法的流程图;
图3是本发明实施例提供的一种生成回复信息的流程图;
图4是本发明实施例提供的一种生成回复词汇的流程图;
图5是本发明实施例提供的一种基于拷贝生成网络模型的解码流程图;
图6是本发明实施例提供的一种问题信息和回复信息的示例性示意图;
图7是本发明实施例提供的一种对话信息的示例性示意图;
图8是本发明实施例提供的一种对话信息的示例性示意图;
图9是本发明实施例提供的一种回复信息生成装置的结构示意图;
图10是本发明实施例提供的一种终端的结构示意图;
图11是本发明实施例提供的一种服务器的结构框图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施方式作进一步地详细描述。
本发明实施例提供的回复信息生成方法应用于智能设备,该智能设备用于根据当前输入的问题信息生成回复信息,实现与用户之间的智能对话。
其中,该智能设备可以包括服务器、终端、智能音箱或者智能对话机器人等具有处理功能的设备。该终端可以为手机、平板电脑以及计算机等多种类型的终端,该服务器可以为一台服务器,或者由若干台服务器组成的服务器集群,或者是一个云计算服务中心。
在一种可能实现方式中,本发明实施例提供的方法应用于终端中,终端获取到当前输入的问题信息时,采用本发明实施例提供的方法生成问题信息的回复信息。
在另一种可能实现方式中,本发明实施例提供的方法应用于服务器中,服务器获取到当前输入的问题信息时,采用本发明实施例提供的方法生成问题信息的回复信息。
在另一种可能实现方式中,图1是本发明实施例提供的一种实施环境的示意图,参见图1,该实施环境包括:终端101和服务器102,终端101与服务器102通过网络连接。
用户在终端101上输入问题信息,终端101获取该问题信息,发送给服务器102,服务器102接收到问题信息时,生成问题信息的回复信息,发送给终端101,则终端101将回复信息展示给用户。
本发明实施例应用于智能对话的场景下,在此场景下需要根据当前输入的问题信息给出相应的回复信息。
例如,终端安装有智能客服应用,用户将问题信息以文本消息的形式输入至智能客服应用,智能客服应用获取到该问题信息后,采用本发明实施例提供的方法,生成该问题信息的回复信息,展示给用户,实现了用户与智能客服应用进行对话的效果。
又如,用户将问题信息以语音消息的形式输入至智能对话机器人,智能对话机器人获取到该问题信息后,采用本发明实施例提供的方法,生成该问题信息的回复信息,播放给用户,实现了用户与智能对话机器人进行对话的效果。
图2是本发明实施例提供的一种回复信息生成方法的流程图。本发明实施例的执行主体为智能设备,该智能设备为上述实施例中的终端、服务器或者为其他类型的智能设备。参见图2,该方法包括:
201、基于主题模型,获取历史对话记录的第一编码。
本发明实施例中,智能设备可以根据当前输入的问题信息生成回复信息,实现与用户之间的对话,该问题信息和回复信息均可称为对话信息,且对话过程中还可以生成对话记录,该对话记录中包括问题信息和回复信息,除此之外,该对话记录中还可以包括问题信息的输入时间、输入用户、问题信息所属的类型、回复信息的生成时间等。
每当用户需要与智能设备进行智能对话时,可以在智能设备上输入问题信息,如在智能设备提供的输入框中手动输入问题信息,或者从智能设备提供的多个问题信息中选择问题信息,或者采用其他方式输入问题信息,则智能设备获取到当前输入的问题信息时,需要对该问题信息进行回复。
并且,本发明实施例中,为了保证对话上下文的一致性,在进行回复时可以考虑历史对话记录。
其中,历史对话记录包括历史问题信息以及历史问题信息的历史回复信息,该历史对话记录可以为到当前时刻为止用户与智能设备之间的所有历史对话记录,或者可以为当前时刻之前的预设时长内用户与智能设备之间的历史对话记录,或者,还可以为包括当前时刻之前的预设数量的历史对话信息的历史对话记录,或者,还可以为包括当前时刻之前的预设轮数的历史对话信息的历史对话记录等,其中一轮对话信息包括一条问题信息和该一条问题信息对应的一条回复信息。
在一种可能实现方式中,当前时刻为t,可以获取时间段[t1,t]内用户与智能设备之间的历史对话记录,或者,智能设备与用户当前正在进行第N+1轮对话,可以获取前N轮用户与智能设备之间的历史对话记录。
在一种可能实现方式中,进行智能对话时,每一轮中的问题信息和回复信息可以如表1所示。
表1
轮数 | 问题信息 | 回复信息 |
第一轮 | 你好,我今天心情不好 | 心情不好可以听听音乐 |
第二轮 | 有什么推荐的吗? | XXX(人名)的YYY(歌曲名) |
第三轮 | 为什么推荐它呢? | 因为这首歌能给人力量 |
第四轮 | 那就播放吧 | 好的,为您播放XXX的YYY |
本发明实施例中,智能设备获取主题模型,该主题模型包括多个预设主题,用于获取任一数据属于多个预设主题的概率,即可基于主题模型对历史对话记录进行处理,也即是,将历史对话记录输入至主题模型中,基于主题模型对历史对话记录进行处理,得到历史对话记录属于多个预设主题的概率,从而根据历史对话记录属于多个预设主题的概率,获取历史对话记录的第一编码。因此,该第一编码用于表示历史对话记录属于多个预设主题的概率。
例如:当主题模型为包括100个预设主题的LDA(Latent Dirichlet Allocation,隐含狄利克雷分布)主题模型时,第一编码为一个100维的向量,该向量可以表征历史对话记录属于该100个预设主题的概率。
关于训练主题模型的方式,可以通过无监督的训练方式进行训练,也可以通过有监督的训练方式进行训练。在训练主题模型时可以采用预设训练算法,该预设训练算法可以为深度学习网络算法、决策树算法、人工神经网络算法等。例如,可以通过无监督的训练方式训练LDA主题模型。
在一种可能实现方式中,在训练主题模型时,先构建初始的主题模型,主题模型包括多个预设主题,获取多个样本对话信息以及每个样本对话信息所属的主题,根据多个样本对话信息及其所属的主题对该主题模型进行训练,得到训练后的主题模型。其中,当根据多个样本对话信息及其所属的主题对该主题模型进行训练时,可以获取样本对话信息所属主题的主题编码,作为第一主题编码,基于当前的主题模型获取样本对话信息对应的主题编码,作为第二主题编码,根据第一主题编码和第二主题编码之间的误差对该主题模型进行训练,得到训练后的主题模型。则主题模型可以对提取主题的方式进行学习,从而能够确定任一对话信息属于多个预设主题的概率,提高准确率。
其中,该主题模型可以由智能设备训练得到,并由该智能设备存储,或者,该主题模型可以由其他设备训练后发送给智能设备,并由该智能设备存储。
202、对历史对话记录进行编码,得到历史对话记录的第二编码。
本发明实施例中,智能设备获取历史对话记录后,还可以对该历史对话记录进行编码,从而得到历史对话记录的第二编码,该第二编码用于对历史对话记录的含义进行描述。
需要说明的是,对于每个文本信息来说,对该文本信息进行编码,可以得到文本信息的编码,该编码用于对文本信息的含义进行描述,根据该编码可以了解文本信息的含义,且不同的文本信息,对应的编码也不同,含义相似的文本信息,对应的编码也较为相似。因此,该编码可以看作是文本信息量化后的特征,该编码涵盖了文本信息的内容,且可以应用于后续的计算过程中。
在一种可能实现方式中,可以基于编码模型获取历史对话记录的第二编码,即将历史对话记录输入至编码模型中,基于编码模型对历史对话记录进行编码,得到第二编码。
该编码模型可以为LSTM(Long Short-Term Memory,长短期记忆网络)编码器、embedding-bi-LSTM(嵌入式双向LSTM)编码器、RNN(Recurrent Neural Network,循环神经网络)模型、transformer模型(一种基于自注意力机制的翻译模型)或CNN(ConvolutionalNeural Networks,卷积神经网络)模型,或者,还可以为其他编码模型。
关于训练编码模型的方式,可以通过无监督的训练方式进行训练,也可以通过有监督的训练方式进行训练。在训练编码模型时可以采用预设训练算法,该预设训练算法可以为深度学习网络算法、决策树算法、人工神经网络算法等。
在一种可能实现方式中,在训练编码模型时,先构建初始的编码模型,获取多个样本文本信息,确定每个样本文本信息对应的编码,根据多个样本文本信息及对应的编码进行模型训练,得到编码模型。则编码模型可以对编码方式进行学习,从而能够对任一文本信息进行编码,提高准确率。
其中,该编码模型可以由智能设备训练得到,并由该智能设备存储,或者,该编码模型可以由其他设备训练后发送给智能设备,并由该智能设备存储。
在另一种可能实现方式中,获取历史对话记录的第二编码的过程包括步骤2021-2023:
2021、对于多条历史对话信息中的第一条历史对话信息,根据该历史对话信息获取历史对话信息的隐向量。
2022、对于第一条历史对话信息之后的每条历史对话信息,根据该历史对话信息和该历史对话信息的前一条历史对话信息的隐向量,获取该历史对话信息的隐向量。
其中,历史对话信息的隐向量可以作为一种表达形式,对历史对话信息进行描述,且智能设备无法直接识别历史对话信息,但可以识别隐向量,根据隐向量了解历史对话信息的含义,以便进行后续的计算过程。
本发明实施例中,历史对话记录包括多条历史对话信息,该多条历史对话信息包括第一条历史对话信息和第一条历史对话信息之后的至少一条历史对话信息。
其中,多条历史对话信息中,生成时间最早的历史对话信息即为第一条历史对话信息,而第一条历史对话信息之后的任一条历史对话信息,均存在着前一条历史对话信息,其内容均会受到前一条历史对话信息的影响。
其中,问题信息的生成时间可以为问题信息的输入时间,回复信息的生成时间可以为智能设备生成回复信息的时间。智能设备可以获取历史对话记录中的每条历史对话信息的生成时间,按照从早到晚的顺序进行排序,按照排列顺序选取第一条历史对话信息,即为生成时间最早的历史对话信息,在该第一条历史对话信息之后,还可以按照排列顺序依次获取后续的历史对话信息。或者,按照从晚到早的顺序进行排序,按照排列顺序选取最后一条历史对话信息,即为生成时间最早的历史对话信息,在该最后一条历史对话信息之前,还可以按照排列顺序依次获取之前的历史对话信息。
将上述两种可能实现方式进行结合,则基于编码模型获取第二编码的过程可以包括:
编码模型包括多个编码子模型,智能设备获取历史对话记录中的多条历史对话信息,将第一条历史对话信息输入至第一个编码子模型中,基于第一个编码子模型,获取第一条历史对话信息的隐向量。将第二条历史对话信息和第一条历史对话信息的隐向量输入至第二个编码子模型中,基于第二个编码子模型,获取第二条历史对话信息的隐向量。以此类推,从而获取到历史对话记录中每条历史对话信息的隐向量。
例如:编码模型为embedding-bi-LSTM编码器,历史对话记录包括N条历史对话信息y1-yN。则将历史对话记录y1输入至编码器中,获取第一条历史对话信息的隐向量h1,后续将隐向量h1和历史对话记录y2输入至编码器中,获取第二条历史对话信息的隐向量h2,以此类推,获取每条历史对话信息的隐向量。
2023、根据多条历史对话信息的隐向量,获取第二编码。
其中,可以将历史对话记录中的多条历史对话信息的隐向量进行连接,得到第二编码,进行连接时,可以按照历史对话信息的生成时间从早到晚的顺序进行,或者按照历史对话信息的生成时间从晚到早的顺序进行,或者还可以采用其他方式得到第二编码。
203、对当前输入的问题信息进行编码,得到问题信息的第三编码。
本发明实施例中,智能设备获取当前输入的问题信息后,还可以对该问题信息进行编码,从而得到问题信息的第三编码,该第三编码用于对问题信息的含义进行描述,可以看作是问题信息的特征,根据第三编码可以了解问题信息的含义。
在一种可能实现方式中,可以基于编码模型获取问题信息的第三编码,即将问题信息输入至编码模型中,基于编码模型对问题信息进行编码,得到第三编码。
关于训练编码模型的方式,可以通过无监督的训练方式进行训练,也可以通过有监督的训练方式进行训练。在训练编码模型时可以采用预设训练算法,该预设训练算法可以为深度学习网络算法、决策树算法、人工神经网络算法等。
其中,该编码模型可以由智能设备训练得到,并由该智能设备存储,或者,该编码模型可以由其他设备训练后发送给智能设备,并由该智能设备存储。
在另一种可能实现方式中,获取问题信息的第三编码的过程包括步骤2031-2033:
2031、对于多个词汇中的第一个词汇,根据该词汇获取词汇的隐向量。
2032、对于第一个词汇之后的每个词汇,根据该词汇和该词汇的前一个词汇的隐向量,获取该词汇的隐向量。
其中,词汇的隐向量可以作为一种表达形式,对词汇进行描述,且智能设备无法直接识别词汇,但可以识别隐向量,根据隐向量了解词汇的含义,以便进行后续的计算过程。
本发明实施例中,问题信息包括多个词汇,该多个词汇包括第一个词汇和第一个词汇之后的至少一个词汇。
其中,可采用分词算法将问题信息进行分词,得到该多个词汇。在一种可能实现方式中,该分词算法可以为HMM(Hidden Markov Model,隐马尔可夫模型),或者,CRF(Conditional Random Field,条件随机场)算法或者其他分词算法。
将上述两种可能实现方式进行结合,则基于编码模型获取第三编码的过程可以包括:
编码模型包括多个编码子模型,智能设备获取问题信息中的多个词汇,将第一个词汇输入至第一个编码子模型中,基于第一个编码子模型,获取第一个词汇的隐向量。将第二个词汇和第一个词汇的隐向量输入至第二个编码子模型中,基于第二个编码子模型,获取第二个词汇的隐向量。以此类推,从而获取到问题信息中每个词汇的隐向量。
例如:编码模型为embedding-bi-LSTM编码器,根据问题信息得到M个词汇w1-wM。则将词汇w1输入至编码器中,获取第一个词汇的隐向量k1,后续将隐向量k1和词汇w2输入至编码器中,获取第二个词汇的隐向量k2,以此类推,获取每个词汇的隐向量。
2033、根据多个词汇的隐向量,获取第三编码。
其中,可以将多个词汇的所有的隐向量串联,得到第三编码,或者将所有的隐向量相加,得到第三编码,或者还可以采用其他方式得到第三编码。
智能设备获取到第一编码、第二编码和第三编码后,可以对第一编码、第二编码和第三编码进行解码,得到问题信息的回复信息,从而能够在解码过程中考虑到当前输入的问题信息、历史对话记录和历史对话记录所属的主题,以保证回复信息与问题信息的上下文一致。
在一种可能实现方式中,图3是本发明实施例提供的一种生成回复信息的流程图,如图3所示,可以基于解码模型,对第一编码、第二编码和第三编码进行解码,得到问题信息的回复信息。
关于训练解码模型的方式,可以通过无监督的训练方式进行训练,也可以通过有监督的训练方式进行训练。在训练解码模型时可以采用预设训练算法,该预设训练算法可以为深度学习网络算法、决策树算法、人工神经网络算法等。
在一种可能实现方式中,在训练解码模型时,先构建初始的解码模型,获取多个样本问题信息,以及每个样本问题信息的样本编码和回复词汇标识,样本编码中包括第四编码、第五编码和第六编码,第四编码用于表示样本问题信息的历史对话记录属于多个预设主题的概率,第五编码用于对历史对话记录的含义进行描述,第六编码用于对样本问题信息的含义进行描述,根据多个样本问题信息的样本编码和回复词汇标识,对解码模型进行训练,得到训练后的解码模型。
其中,根据多个样本问题信息的样本编码和回复词汇标识对解码模型进行训练时,获取样本问题信息的回复词汇标识,作为第一词汇标识,基于当前的解码模型获取样本问题信息对应的回复词汇标识,作为第二词汇标识,根据第一词汇标识和第二词汇标识之间的误差对该解码模型进行训练,得到训练后的解码模型。则解码模型可以对解码方式进行学习,提高准确率。
其中,该解码模型可以由智能设备训练得到,并由该智能设备存储,或者,该解码模型可以由其他设备训练后发送给智能设备,并由该智能设备存储。
在另一种可能实现方式中,解码模型包括多个解码子模型,且每个解码子模型包括编码单元和注意力单元。智能设备获取到包括多个词汇的问题信息后,可以基于该多个解码子模型分别对每个词汇进行解码,得到每个词汇对应的回复词汇。该过程可以包括下述步骤204-206。
204、对于问题信息中的第一个词汇,基于编码单元,对第一编码和第三编码进行处理,得到隐向量;基于注意力单元,对隐向量和第二编码进行处理,得到该词汇对应的回复词汇标识,根据回复词汇标识确定该词汇对应的回复词汇。
其中,该编码单元可以为LSTM编码器、embedding-bi-LSTM编码器、RNN模型、transformer模型或CNN模型,或者,还可以为其他用于编码的模型。
其中,该注意力单元可以为基于多重注意力机制的神经网络模型,能够综合隐向量和第二编码进行处理。
图4是本发明实施例提供的一种生成回复词汇的流程图,如图4所示,当要对问题信息中的第一个词汇进行解码时,将第一编码和第三编码输入至第一个编码单元中,基于该编码单元对第一编码和第三编码进行处理后,得到隐向量。该隐向量可以作为一种表达形式,对历史对话记录所属的主题和当前输入的问题信息进行描述,且智能设备可以识别隐向量,根据隐向量了解历史对话记录所属的主题和当前输入的问题信息,以便进行后续的计算过程。
则将该隐向量和该第二编码输入至注意力单元,基于注意力单元,对隐向量和第二编码进行处理,得到第一个词汇对应的回复词汇标识,根据回复词汇标识确定第一个回复词汇。
其中,每个词汇具有一个对应的词汇标识,词汇标识可以为词汇的序号或其他标识,不同词汇的词汇标识不同。则确定第一个词汇对应的回复词汇标识后,该回复词汇标识对应的词汇即为第一个词汇对应的回复词汇。
205、对于第一个词汇之后的每个词汇,基于编码单元,对第一编码、第三编码、该词汇的前一个词汇对应的回复词汇标识和前一个词汇对应的回复词汇进行处理,得到隐向量;基于注意力单元,对隐向量和第二编码进行处理,得到该词汇对应的回复词汇标识,根据回复词汇标识确定该词汇对应的回复词汇。
当要对问题信息中的第二个词汇进行解码时,将第一编码、第三编码、第一个词汇对应的回复词汇标识和第一个回复词汇输入至第二个编码单元中,基于该编码单元进行处理后,得到隐向量。该隐向量可以作为一种表达形式,对历史对话记录所属的主题和当前输入的问题信息进行描述,还可以对第一个回复词汇标识和第一个回复词汇进行描述。且智能设备可以识别隐向量,根据隐向量了解历史对话记录所属的主题和当前输入的问题信息,还会了解第一个回复词汇标识和第一个回复词汇,以便进行后续的计算过程。
则将该隐向量和该第二编码输入至注意力单元,基于注意力单元,对隐向量和第二编码进行处理,得到第二个词汇对应的回复词汇标识,根据回复词汇标识确定第二个回复词汇。
后续过程中,可以采用类似的方式确定问题信息中每个词汇对应的回复词汇。
上述解码过程中,每个回复词汇不仅根据当前的词汇生成,还会考虑历史对话记录所属的主题和前一个词汇的影响,保证了解码得到的回复词汇所属的主题与历史对话记录所属的主题一致,而且与前一个词汇含义连贯,实现了上下文的一致性。
需要说明的一点是,在一种可能实现方式中,上述解码模型可以基于拷贝生成网络模型实现。图5是本发明实施例提供的一种基于拷贝生成网络模型的解码流程图,如图5所示,拷贝生成网络包括拷贝模式和生成模式。对于问题信息中第一个词汇之后的每个词汇,该词汇具有前一个词汇的解码信息,该解码信息包括回复词汇标识和回复词汇。将历史对话记录与前一个词汇的解码信息进行编码后,可以采用生成模式对得到的编码进行处理,得到第一概率分布,该第一概率分布包括多个预设词汇的概率,每个预设词汇的概率用于表示预设词汇属于当前词汇的回复词汇的概率,还采用拷贝模式对得到的编码进行处理,得到第二概率分布,该第二概率分布包括历史对话记录中的每个词汇的概率,每个词汇的概率用于表示该词汇属于当前词汇的回复词汇的概率,则将第一概率分布和第二概率分布融合后进行解码,得到当前输入词汇对应的回复词汇标识,将回复词汇标识对应的词汇确定为当前词汇对应的回复词汇。
举例来说,图6是本发明实施例提供的一种问题信息和回复信息的示例性示意图,如图6所示,输入的问题信息为“中国队今天在乒乓球赛场以3:0比分战胜美国队”,对该问题信息进行分词后会对每个词汇分别进行解码,得到每个词汇对应的回复词汇,第一个回复词汇为“中国队”,第二个回复词汇为“战胜了”,则在确定之后的第三个回复词汇时,基于拷贝生成网络模型,可以考虑历史对话记录和第二个回复词汇,从而解码得到第三个回复词汇,即“美国队”。
需要说明的另一点是,在解码模型包括多个解码子模型,且每个解码子模型包括编码单元和注意力单元的情况下,关于训练解码模型的方式,可以通过无监督的训练方式进行训练,也可以通过有监督的训练方式进行训练。在训练解码模型时可以采用预设训练算法,该预设训练算法可以为深度学习网络算法、决策树算法、人工神经网络算法等。
在一种可能实现方式中,在训练解码模型时,先构建初始的编码单元和注意力单元,获取多个样本问题信息,以及每个样本问题信息的样本编码和回复词汇标识,样本编码中包括第四编码、第五编码和第六编码。由于样本问题信息中包括多个词汇,则对于多个词汇中的第一个词汇,基于编码单元,对第四编码和第六编码进行处理,得到隐向量;基于注意力单元,对隐向量和第五编码进行处理,得到词汇对应的回复词汇标识,根据回复词汇标识确定词汇对应的回复词汇。而对于第一个词汇之后的每个词汇,基于编码单元,对第四编码、第六编码、词汇的前一个词汇对应的回复词汇标识和前一个词汇对应的回复词汇进行处理,得到隐向量;基于注意力单元,对隐向量和第五编码进行处理,得到词汇对应的回复词汇标识,根据回复词汇标识确定词汇对应的回复词汇。根据多个词汇对应的回复词汇标识与该样本问题信息的回复词汇标识,对编码单元和注意力单元进行训练。
其中,在对编码单元和注意力单元进行训练时,获取该样本问题信息的回复词汇标识,作为第三词汇标识,获取基于当前的编码单元和注意力单元得到的多个词汇对应的回复词汇标识,组合得到回复词汇标识,作为第四词汇标识,根据第三词汇标识和第四词汇标识之间的误差对该编码单元和注意力单元进行训练,得到训练后的解码模型。
206、按照多个词汇的先后顺序,将多个词汇对应的回复词汇进行连接,得到回复信息。
智能设备获取问题信息中的多个词汇对应的回复词汇后,可以根据该多个词汇对应的回复词汇生成回复信息。
在一种可能实现方式中,可以按照问题信息中的多个词汇的先后顺序,将多个词汇对应的多个回复词汇进行连接,得到回复信息。
本发明实施例提供的方法,基于主题模型,获取历史对话记录的第一编码,第一编码用于表示历史对话记录属于多个预设主题的概率;对历史对话记录进行编码,得到历史对话记录的第二编码,第二编码用于对历史对话记录的含义进行描述;对当前输入的问题信息进行编码,得到问题信息的第三编码,第三编码用于对问题信息的含义进行描述;对第一编码、第二编码和第三编码进行解码,得到问题信息的回复信息。生成回复信息的过程中综合考虑了历史对话记录、历史对话记录所属的主题以及当前输入的问题信息,回复信息所属的主题与历史对话记录所属的主题一致,保证了上下文一致,提高了回复效果,更好地实现了拟人化,满足了用户的需求。
当问题信息中包括代词,如“她”、“你”等,如果不考虑历史对话记录,将无法确定代词指代的对象,而本发明实施例中,由于考虑了历史对话记录和历史对话记录所属的主题,实现了上下文一致,因此可以将代词还原到历史对话记录中,从而能够明确确定代词指代的对象,实现了指代消歧。
当问题信息较为简略,省略了某些内容时,如果不考虑历史对话记录,将无法确定问题信息的完整含义,而本发明实施例中,由于考虑了历史对话记录和历史对话记录所属的主题,实现了上下文一致,因此可以明确确定问题信息中所省略的内容,从而明确确定问题信息完整的含义,继承了上文的意图。
并且,在确定问题信息中的词汇对应的回复词汇时,会考虑历史对话记录所属的主题和前一个词汇的影响,保证了回复词汇所属的主题与历史对话记录所属的主题一致,而且与前一个词汇含义连贯,实现了上下文的一致性。
本发明实施例不仅考虑了当前输入的问题信息,还会考虑历史对话记录和历史对话记录所属的主题,通过获取历史对话记录本身的编码和用于表示历史对话记录所属主题的编码,应用于后续的解码过程中,保证生成的回复信息不仅可以与问题信息匹配,还可以与历史对话记录匹配,含义与历史对话记录相关,且所属的主题与历史对话记录所属的主题一致,保证了上下文一致,即使问题信息中包括代词或者省略了一些内容时,也能明确确定问题信息完整的含义,给出含义明确的回复信息,不会出现呵呵”、“好的”这种含义不明确的情况。
在上述方法实施例的基础上,参见下表2、图7和图8,针对用户提出的问题信息,若本发明实施例提供的智能设备采用本发明实施例提供的方法进行回复,则对话信息如表2和图7所示,而其他设备采用相关技术提供的方法进行回复,则对话信息如表2和图8所示。
表2
第一轮会话,用户表达出了“心情不好”,通用回复是听音乐;
第二轮会话,用户问有什么推荐时,智能设备根据主题模型的第一编码,和历史对话记录的第二编码,识别出了现在的聊天语境是”音乐“和”心情“,所以智能设备考虑了历史对话记录后回复了一首歌名,而其他设备则由于未考虑历史对话记录,而根据通用的方式回复了一家餐馆,造成上下文的语境不一致。
第三轮会话,用户问推荐理由时,智能设备根据历史对话记录的第二编码,识别出用户所说的“它”指代上面提到的歌曲,并给出了正确回复,而其他设备则未能识别出代词,依然给出了通用回复,回复了“喜欢它”。
第四轮会话,用户要求播放音乐,省略了歌曲名,智能设备根据历史对话记录识别出歌曲名是“YYYY”,而其他设备未能识别,而反问用户歌曲名。
图9是本发明实施例提供的一种回复信息生成装置的结构示意图。参见图9,该装置包括:
第一编码模块901,用于基于主题模型,获取历史对话记录的第一编码,第一编码用于表示历史对话记录属于多个预设主题的概率;
第二编码模块902,用于对历史对话记录进行编码,得到历史对话记录的第二编码,第二编码用于对历史对话记录的含义进行描述;
第三编码模块903,用于对当前输入的问题信息进行编码,得到问题信息的第三编码,第三编码用于对问题信息的含义进行描述;
解码模块904,用于对第一编码、第二编码和第三编码进行解码,得到问题信息的回复信息。
可选地,历史对话记录包括多条历史对话信息;第二编码模块902包括:
第一获取单元,用于对于多条历史对话信息中的第一条历史对话信息,根据历史对话信息获取历史对话信息的隐向量;
第二获取单元,用于对于第一条历史对话信息之后的每条历史对话信息,根据历史对话信息和历史对话信息的前一条历史对话信息的隐向量,获取历史对话信息的隐向量;
第三获取单元,用于根据多条历史对话信息的隐向量,获取第二编码。
可选地,问题信息包括多个词汇,第三编码模块903包括:
第一获取单元,用于对于多个词汇中的第一个词汇,根据词汇获取词汇的隐向量;
第二获取单元,用于对于第一个词汇之后的每个词汇,根据词汇和词汇的前一个词汇的隐向量,获取词汇的隐向量;
第三获取单元,用于根据多个词汇的隐向量,获取第三编码。
可选地,问题信息包括多个词汇,解码模块904包括:
第一解码单元,用于对于多个词汇中的第一个词汇,基于编码单元,对第一编码和第三编码进行处理,得到隐向量;基于注意力单元,对隐向量和第二编码进行处理,得到该词汇对应的回复词汇标识,根据回复词汇标识确定该词汇对应的回复词汇;
第二解码单元,用于对于第一个词汇之后的每个词汇,基于编码单元,对第一编码、第三编码、该词汇的前一个词汇的词汇编码和前一个词汇对应的回复词汇进行处理,得到隐向量;基于注意力单元,对隐向量和第二编码进行处理,得到该词汇对应的回复词汇标识,根据回复词汇标识确定该词汇对应的回复词汇;
生成单元,用于根据多个词汇对应的回复词汇,生成回复信息。
可选地,生成单元还用于:
按照多个词汇的先后顺序,将多个词汇对应的回复词汇进行连接,得到回复信息。
可选地,装置还包括:
第一构建模块,用于构建初始的主题模型,主题模型包括多个预设主题;
第一获取模块,用于获取多个样本对话信息以及每个样本对话信息所属的主题;
第一训练模块,用于根据多个样本对话信息以及每个样本对话信息所属的主题,对主题模型进行训练。
可选地,装置还包括:
第二构建模块,用于构建初始的解码模型;
第二获取模块,用于获取多个样本问题信息,以及每个样本问题信息的样本编码和回复词汇标识,样本编码中包括第四编码、第五编码和第六编码,第四编码用于表示样本问题信息的历史对话记录属于多个预设主题的概率,第五编码用于对历史对话记录的含义进行描述,第六编码用于对样本问题信息的含义进行描述;
第二训练模块,用于根据多个样本问题信息的样本编码和回复词汇标识,对解码模型进行训练。
可选地,样本问题信息包括多个词汇;第二训练模块包括:
第一解码单元,用于对于多个词汇中的第一个词汇,基于编码单元,对第四编码和第六编码进行处理,得到隐向量;基于注意力单元,对隐向量和第五编码进行处理,得到词汇对应的回复词汇标识,根据回复词汇标识确定词汇对应的回复词汇;
第二解码单元,用于对于第一个词汇之后的每个词汇,基于编码单元,对第四编码、第六编码、词汇的前一个词汇对应的回复词汇标识和前一个词汇对应的回复词汇进行处理,得到隐向量;基于注意力单元,对隐向量和第五编码进行处理,得到词汇对应的回复词汇标识,根据回复词汇标识确定词汇对应的回复词汇;
训练单元,用于根据多个词汇对应的回复词汇标识与样本问题信息的回复词汇标识,对编码单元和注意力单元进行训练。
本发明实施例提供的装置,基于主题模型,获取历史对话记录的第一编码,第一编码用于表示历史对话记录属于多个预设主题的概率;对历史对话记录进行编码,得到历史对话记录的第二编码,第二编码用于对历史对话记录的含义进行描述;对当前输入的问题信息进行编码,得到问题信息的第三编码,第三编码用于对问题信息的含义进行描述;对第一编码、第二编码和第三编码进行解码,得到问题信息的回复信息。生成回复信息的过程中综合考虑了历史对话记录、历史对话记录所属的主题以及当前输入的问题信息,回复信息所属的主题与历史对话记录所属的主题一致,保证了上下文一致,提高了回复效果,满足了用户的需求。
并且,在确定问题信息中的词汇对应的回复词汇时,会考虑历史对话记录所属的主题和前一个词汇的影响,保证了回复词汇所属的主题与历史对话记录所属的主题一致,而且与前一个词汇含义连贯,实现了上下文的一致性。
需要说明的是:上述实施例提供的回复信息生成装置在生成回复信息时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将智能设备的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的回复信息生成装置与回复信息生成方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。
图10是本发明实施例提供的一种终端1000的结构示意图。该终端1000可以是便携式移动终端,比如:智能手机、平板电脑、MP3播放器(Moving Picture Experts GroupAudio Layer III,动态影像专家压缩标准音频层面3)、MP4(Moving Picture ExpertsGroup Audio Layer IV,动态影像专家压缩标准音频层面4)播放器、笔记本电脑、台式电脑、头戴式设备,或其他任意智能终端。终端1000还可能被称为用户设备、便携式终端、膝上型终端、台式终端等其他名称。
通常,终端1000包括有:处理器1001和存储器1002。
处理器1001可以包括一个或多个处理核心,比如4核心处理器、8核心处理器等。处理器1001可以采用DSP(Digital Signal Processing,数字信号处理)、FPGA(Field-Programmable Gate Array,现场可编程门阵列)、PLA(Programmable Logic Array,可编程逻辑阵列)中的至少一种硬件形式来实现。处理器1001也可以包括主处理器和协处理器,主处理器是用于对在唤醒状态下的数据进行处理的处理器,也称CPU(Central ProcessingUnit,中央处理器);协处理器是用于对在待机状态下的数据进行处理的低功耗处理器。在一些实施例中,处理器1001可以在集成有GPU(Graphics Processing Unit,图像处理器),GPU用于负责显示屏所需要显示的内容的渲染和绘制。一些实施例中,处理器1001还可以包括AI(Artificial Intelligence,人工智能)处理器,该AI处理器用于处理有关机器学习的计算操作。
存储器1002可以包括一个或多个计算机可读存储介质,该计算机可读存储介质可以是非暂态的。存储器1002还可包括高速随机存取存储器,以及非易失性存储器,比如一个或多个磁盘存储设备、闪存存储设备。在一些实施例中,存储器1002中的非暂态的计算机可读存储介质用于存储至少一个指令,该至少一个指令用于被处理器1001所具有以实现本申请中方法实施例提供的回复信息生成方法。
在一些实施例中,终端1000还可选包括有:外围设备接口1003和至少一个外围设备。处理器1001、存储器1002和外围设备接口1003之间可以通过总线或信号线相连。各个外围设备可以通过总线、信号线或电路板与外围设备接口1003相连。具体地,外围设备包括:射频电路1004、触摸显示屏1005、摄像头1006、音频电路1007和电源1009中的至少一种。
外围设备接口1003可被用于将I/O(Input/Output,输入/输出)相关的至少一个外围设备连接到处理器1001和存储器1002。在一些实施例中,处理器1001、存储器1002和外围设备接口1003被集成在同一芯片或电路板上;在一些其他实施例中,处理器1001、存储器1002和外围设备接口1003中的任意一个或两个可以在单独的芯片或电路板上实现,本实施例对此不加以限定。
射频电路1004用于接收和发射RF(Radio Frequency,射频)信号,也称电磁信号。射频电路1004通过电磁信号与通信网络以及其他通信设备进行通信。射频电路1004将电信号转换为电磁信号进行发送,或者,将接收到的电磁信号转换为电信号。可选地,射频电路1004包括:天线系统、RF收发器、一个或多个放大器、调谐器、振荡器、数字信号处理器、编解码芯片组、用户身份模块卡等等。射频电路1004可以通过至少一种无线通信协议来与其它终端进行通信。该无线通信协议包括但不限于:城域网、各代移动通信网络(2G、3G、4G及16G)、无线局域网和/或WiFi(Wireless Fidelity,无线保真)网络。在一些实施例中,射频电路1004还可以包括NFC(Near Field Communication,近距离无线通信)有关的电路,本申请对此不加以限定。
显示屏1005用于显示UI(User Interface,用户界面)。该UI可以包括图形、文本、图标、视频及其它们的任意组合。当显示屏1005是触摸显示屏时,显示屏1005还具有采集在显示屏1005的表面或表面上方的触摸信号的能力。该触摸信号可以作为控制信号输入至处理器1001进行处理。此时,显示屏1005还可以用于提供虚拟按钮和/或虚拟键盘,也称软按钮和/或软键盘。在一些实施例中,显示屏1005可以为一个,设置终端1000的前面板;在另一些实施例中,显示屏1005可以为至少两个,分别设置在终端1000的不同表面或呈折叠设计;在再一些实施例中,显示屏1005可以是柔性显示屏,设置在终端1000的弯曲表面上或折叠面上。甚至,显示屏1005还可以设置成非矩形的不规则图形,也即异形屏。显示屏1005可以采用LCD(Liquid Crystal Display,液晶显示屏)、OLED(Organic Light-Emitting Diode,有机发光二极管)等材质制备。
摄像头组件1006用于采集图像或视频。可选地,摄像头组件1006包括前置摄像头和后置摄像头。通常,前置摄像头设置在终端的前面板,后置摄像头设置在终端的背面。在一些实施例中,后置摄像头为至少两个,分别为主摄像头、景深摄像头、广角摄像头、长焦摄像头中的任意一种,以实现主摄像头和景深摄像头融合实现背景虚化功能、主摄像头和广角摄像头融合实现全景拍摄以及VR(Virtual Reality,虚拟现实)拍摄功能或者其它融合拍摄功能。在一些实施例中,摄像头组件1006还可以包括闪光灯。闪光灯可以是单色温闪光灯,也可以是双色温闪光灯。双色温闪光灯是指暖光闪光灯和冷光闪光灯的组合,可以用于不同色温下的光线补偿。
音频电路1007可以包括麦克风和扬声器。麦克风用于采集用户及环境的声波,并将声波转换为电信号输入至处理器1001进行处理,或者输入至射频电路1004以实现语音通信。出于立体声采集或降噪的目的,麦克风可以为多个,分别设置在终端1000的不同部位。麦克风还可以是阵列麦克风或全向采集型麦克风。扬声器则用于将来自处理器1001或射频电路1004的电信号转换为声波。扬声器可以是传统的薄膜扬声器,也可以是压电陶瓷扬声器。当扬声器是压电陶瓷扬声器时,不仅可以将电信号转换为人类可听见的声波,也可以将电信号转换为人类听不见的声波以进行测距等用途。在一些实施例中,音频电路1007还可以包括耳机插孔。
电源1009用于为终端1000中的各个组件进行供电。电源1009可以是交流电、直流电、一次性电池或可充电电池。当电源1009包括可充电电池时,该可充电电池可以支持有线充电或无线充电。该可充电电池还可以用于支持快充技术。
在一些实施例中,终端1000还包括有一个或多个传感器1010。该一个或多个传感器1010包括但不限于:加速度传感器1011、陀螺仪传感器1012、压力传感器1013、光学传感器1015以及接近传感器1016。
加速度传感器1011可以检测以终端1000建立的坐标系的三个坐标轴上的加速度大小。比如,加速度传感器1011可以用于检测重力加速度在三个坐标轴上的分量。处理器1001可以根据加速度传感器1011采集的重力加速度信号,控制触摸显示屏1005以横向视图或纵向视图进行用户界面的显示。加速度传感器1011还可以用于游戏或者用户的运动数据的采集。
陀螺仪传感器1012可以检测终端1000的机体方向及转动角度,陀螺仪传感器1012可以与加速度传感器1011协同采集用户对终端1000的3D动作。处理器1001根据陀螺仪传感器1012采集的数据,可以实现如下功能:动作感应(比如根据用户的倾斜操作来改变UI)、拍摄时的图像稳定、游戏控制以及惯性导航。
压力传感器1013可以设置在终端1000的侧边框和/或触摸显示屏1005的下层。当压力传感器1013设置在终端1000的侧边框时,可以检测用户对终端1000的握持信号,由处理器1001根据压力传感器1013采集的握持信号进行左右手识别或快捷操作。当压力传感器1013设置在触摸显示屏1005的下层时,由处理器1001根据用户对触摸显示屏1005的压力操作,实现对UI界面上的可操作性控件进行控制。可操作性控件包括按钮控件、滚动条控件、图标控件、菜单控件中的至少一种。
光学传感器1015用于采集环境光强度。在一个实施例中,处理器1001可以根据光学传感器1015采集的环境光强度,控制触摸显示屏1005的显示亮度。具体地,当环境光强度较高时,调高触摸显示屏1005的显示亮度;当环境光强度较低时,调低触摸显示屏1005的显示亮度。在另一个实施例中,处理器1001还可以根据光学传感器1015采集的环境光强度,动态调整摄像头组件1006的拍摄参数。
接近传感器1016,也称距离传感器,通常设置在终端1000的前面板。接近传感器1016用于采集用户与终端1000的正面之间的距离。在一个实施例中,当接近传感器1016检测到用户与终端1000的正面之间的距离逐渐变小时,由处理器1001控制触摸显示屏1005从亮屏状态切换为息屏状态;当接近传感器1016检测到用户与终端1000的正面之间的距离逐渐变大时,由处理器1001控制触摸显示屏1005从息屏状态切换为亮屏状态。
本领域技术人员可以理解,图10中示出的结构并不构成对终端1000的限定,可以包括比图示更多或更少的组件,或者组合某些组件,或者采用不同的组件布置。
图11是本发明实施例提供的一种服务器的结构示意图,该服务器1100可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上处理器(central processingunits,CPU)1101和一个或一个以上的存储器1102,其中,存储器1102中存储有至少一条指令,至少一条指令由处理器1101加载并执行以实现上述各个方法实施例提供的方法。当然,该服务器还可以具有有线或无线网络接口、键盘以及输入输出接口等部件,以便进行输入输出,该服务器还可以包括其他用于实现设备功能的部件,在此不做赘述。
服务器1100可以用于执行上述回复信息生成方法中智能设备所执行的步骤。
本发明实施例还提供了一种用于生成回复信息的装置,该装置包括处理器和存储器,存储器中存储有至少一条指令、至少一段程序、代码集或指令集,指令、程序、代码集或指令集由处理器加载并具有以实现上述实施例的回复信息生成方法中所具有的操作。
本发明实施例还提供了一种计算机可读存储介质,该计算机可读存储介质中存储有至少一条指令、至少一段程序、代码集或指令集,该指令、该程序、该代码集或该指令集由处理器加载并具有以实现上述实施例的回复信息生成方法中所具有的操作。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
以上仅为本发明实施例的较佳实施例,并不用以限制本发明实施例,凡在本发明实施例的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (16)
1.一种回复信息生成方法,其特征在于,所述方法包括:
基于主题模型,获取历史对话记录的第一编码,所述第一编码用于表示所述历史对话记录属于多个预设主题的概率;
对所述历史对话记录进行编码,得到所述历史对话记录的第二编码,所述第二编码用于对所述历史对话记录的含义进行描述;
对当前输入的问题信息进行编码,得到所述问题信息的第三编码,所述第三编码用于对所述问题信息的含义进行描述,所述问题信息包括多个词汇;
对于所述多个词汇中的第一个词汇,基于编码单元,对所述第一编码和所述第三编码进行处理,得到隐向量;基于注意力单元,对所述隐向量和所述第二编码进行处理,得到所述词汇对应的回复词汇标识,根据所述回复词汇标识确定所述词汇对应的回复词汇;
对于所述第一个词汇之后的每个词汇,基于所述编码单元,对所述第一编码、所述第三编码、所述词汇的前一个词汇对应的回复词汇标识和所述前一个词汇对应的回复词汇进行处理,得到隐向量;基于所述注意力单元,对所述隐向量和所述第二编码进行处理,得到所述词汇对应的回复词汇标识,根据所述回复词汇标识确定所述词汇对应的回复词汇;
根据所述多个词汇对应的回复词汇,生成所述回复信息。
2.根据权利要求1所述的方法,其特征在于,所述历史对话记录包括多条历史对话信息;所述对所述历史对话记录进行编码,得到所述历史对话记录的第二编码,包括:
对于所述多条历史对话信息中的第一条历史对话信息,根据所述历史对话信息获取所述历史对话信息的隐向量;
对于所述第一条历史对话信息之后的每条历史对话信息,根据所述历史对话信息和所述历史对话信息的前一条历史对话信息的隐向量,获取所述历史对话信息的隐向量;
根据所述多条历史对话信息的隐向量,获取所述第二编码。
3.根据权利要求1所述的方法,其特征在于,所述问题信息包括多个词汇,所述对当前输入的问题信息进行编码,得到所述问题信息的第三编码,包括:
对于所述多个词汇中的第一个词汇,根据所述词汇获取所述词汇的隐向量;
对于所述第一个词汇之后的每个词汇,根据所述词汇和所述词汇的前一个词汇的隐向量,获取所述词汇的隐向量;
根据所述多个词汇的隐向量,获取所述第三编码。
4.根据权利要求1所述的方法,其特征在于,所述根据所述多个词汇对应的回复词汇,生成所述回复信息,包括:
按照所述多个词汇的先后顺序,将所述多个词汇对应的回复词汇进行连接,得到所述回复信息。
5.根据权利要求1所述的方法,其特征在于,所述方法还包括:
构建初始的主题模型,所述主题模型包括多个预设主题;
获取多个样本对话信息以及每个样本对话信息所属的主题;
根据所述多个样本对话信息以及所述每个样本对话信息所属的主题,对所述主题模型进行训练。
6.根据权利要求1所述的方法,其特征在于,所述方法还包括:
构建初始的解码模型;
获取多个样本问题信息,以及每个样本问题信息的样本编码和回复词汇标识,所述样本编码中包括第四编码、第五编码和第六编码,所述第四编码用于表示所述样本问题信息的历史对话记录属于所述多个预设主题的概率,所述第五编码用于对所述历史对话记录的含义进行描述,所述第六编码用于对所述样本问题信息的含义进行描述;
根据所述多个样本问题信息的样本编码和回复词汇标识,对所述解码模型进行训练。
7.根据权利要求6所述的方法,其特征在于,所述样本问题信息包括多个词汇;所述根据所述多个样本问题信息的样本编码和回复词汇标识,对所述解码模型进行训练,包括:
对于所述多个词汇中的第一个词汇,基于编码单元,对所述第四编码和所述第六编码进行处理,得到隐向量;基于注意力单元,对所述隐向量和所述第五编码进行处理,得到所述词汇对应的回复词汇标识,根据所述回复词汇标识确定所述词汇对应的回复词汇;
对于所述第一个词汇之后的每个词汇,基于所述编码单元,对所述第四编码、所述第六编码、所述词汇的前一个词汇对应的回复词汇标识和所述前一个词汇对应的回复词汇进行处理,得到隐向量;基于所述注意力单元,对所述隐向量和所述第五编码进行处理,得到所述词汇对应的回复词汇标识,根据所述回复词汇标识确定所述词汇对应的回复词汇;
根据所述多个词汇对应的回复词汇标识与所述样本问题信息的回复词汇标识,对所述编码单元和所述注意力单元进行训练。
8.一种回复信息生成装置,其特征在于,所述装置包括:
第一编码模块,用于基于主题模型,获取历史对话记录的第一编码,所述第一编码用于表示所述历史对话记录属于多个预设主题的概率;
第二编码模块,用于对所述历史对话记录进行编码,得到所述历史对话记录的第二编码,所述第二编码用于对所述历史对话记录的含义进行描述;
第三编码模块,用于对当前输入的问题信息进行编码,得到所述问题信息的第三编码,所述第三编码用于对所述问题信息的含义进行描述,所述问题信息包括多个词汇;
解码模块,包括第一解码单元、第二解码单元以及生成单元;
所述第一解码单元,用于对于所述多个词汇中的第一个词汇,基于编码单元,对所述第一编码和所述第三编码进行处理,得到隐向量;基于注意力单元,对所述隐向量和所述第二编码进行处理,得到所述词汇对应的回复词汇标识,根据所述回复词汇标识确定所述词汇对应的回复词汇;
所述第二解码单元,用于对于所述第一个词汇之后的每个词汇,基于所述编码单元,对所述第一编码、所述第三编码、所述词汇的前一个词汇对应的回复词汇标识和所述前一个词汇对应的回复词汇进行处理,得到隐向量;基于所述注意力单元,对所述隐向量和所述第二编码进行处理,得到所述词汇的词汇编码,根据所述回复词汇标识确定所述词汇对应的回复词汇;
所述生成单元,用于根据所述多个词汇对应的回复词汇,生成所述回复信息。
9.根据权利要求8所述的装置,其特征在于,所述历史对话记录包括多条历史对话信息;所述第二编码模块包括:
第一获取单元,用于对于所述多条历史对话信息中的第一条历史对话信息,根据所述历史对话信息获取所述历史对话信息的隐向量;
第二获取单元,用于对于所述第一条历史对话信息之后的每条历史对话信息,根据所述历史对话信息和所述历史对话信息的前一条历史对话信息的隐向量,获取所述历史对话信息的隐向量;
第三获取单元,用于根据所述多条历史对话信息的隐向量,获取所述第二编码。
10.根据权利要求8所述的装置,其特征在于,所述问题信息包括多个词汇,所述第三编码模块包括:
第一获取单元,用于对于所述多个词汇中的第一个词汇,根据所述词汇获取所述词汇的隐向量;
第二获取单元,用于对于所述第一个词汇之后的每个词汇,根据所述词汇和所述词汇的前一个词汇的隐向量,获取所述词汇的隐向量;
第三获取单元,用于根据所述多个词汇的隐向量,获取所述第三编码。
11.根据权利要求8所述的装置,其特征在于,所述生成单元还用于按照所述多个词汇的先后顺序,将所述多个词汇对应的回复词汇进行连接,得到所述回复信息。
12.根据权利要求8所述的装置,其特征在于,所述装置还包括:
第一构建模块,用于构建初始的主题模型,所述主题模型包括多个预设主题;
第一获取模块,用于获取多个样本对话信息以及每个样本对话信息所属的主题;
第一训练模块,用于根据所述多个样本对话信息以及所述每个样本对话信息所属的主题,对所述主题模型进行训练。
13.根据权利要求8所述的装置,其特征在于,所述装置还包括:
第二构建模块,用于构建初始的解码模型;
第二获取模块,用于获取多个样本问题信息,以及每个样本问题信息的样本编码和回复词汇标识,所述样本编码中包括第四编码、第五编码和第六编码,所述第四编码用于表示所述样本问题信息的历史对话记录属于所述多个预设主题的概率,所述第五编码用于对所述历史对话记录的含义进行描述,所述第六编码用于对所述样本问题信息的含义进行描述;
第二训练模块,用于根据所述多个样本问题信息的样本编码和回复词汇标识,对所述解码模型进行训练。
14.根据权利要求13所述的装置,其特征在于,所述样本问题信息包括多个词汇;所述第二训练模块,用于:
对于所述多个词汇中的第一个词汇,基于编码单元,对所述第四编码和所述第六编码进行处理,得到隐向量;基于注意力单元,对所述隐向量和所述第五编码进行处理,得到所述词汇对应的回复词汇标识,根据所述回复词汇标识确定所述词汇对应的回复词汇;
对于所述第一个词汇之后的每个词汇,基于所述编码单元,对所述第四编码、所述第六编码、所述词汇的前一个词汇对应的回复词汇标识和所述前一个词汇对应的回复词汇进行处理,得到隐向量;基于所述注意力单元,对所述隐向量和所述第五编码进行处理,得到所述词汇对应的回复词汇标识,根据所述回复词汇标识确定所述词汇对应的回复词汇;
根据所述多个词汇对应的回复词汇标识与所述样本问题信息的回复词汇标识,对所述编码单元和所述注意力单元进行训练。
15.一种用于生成回复信息的装置,其特征在于,所述装置包括:处理器和存储器,所述存储器中存储有至少一条指令、至少一段程序、代码集或指令集,所述指令、所述程序、所述代码集或所述指令集由所述处理器加载并执行以实现如权利要求1至7任一权利要求所述的回复信息生成方法中所执行的操作。
16.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有至少一条指令、至少一段程序、代码集或指令集,所述指令、所述程序、所述代码集或所述指令集由处理器加载并执行以实现如权利要求1至7任一权利要求所述的回复信息生成方法中所执行的操作。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910164579.8A CN110263131B (zh) | 2019-03-05 | 2019-03-05 | 回复信息生成方法、装置及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910164579.8A CN110263131B (zh) | 2019-03-05 | 2019-03-05 | 回复信息生成方法、装置及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110263131A CN110263131A (zh) | 2019-09-20 |
CN110263131B true CN110263131B (zh) | 2023-07-04 |
Family
ID=67911904
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910164579.8A Active CN110263131B (zh) | 2019-03-05 | 2019-03-05 | 回复信息生成方法、装置及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110263131B (zh) |
Families Citing this family (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112631435A (zh) * | 2019-09-24 | 2021-04-09 | 北京搜狗科技发展有限公司 | 一种输入方法、装置、设备及存储介质 |
CN110727775B (zh) * | 2019-10-11 | 2021-03-30 | 京东数字科技控股有限公司 | 用于处理信息的方法和装置 |
CN110737764B (zh) * | 2019-10-24 | 2023-07-07 | 西北工业大学 | 一种个性化对话内容生成方法 |
CN110990547B (zh) * | 2019-11-29 | 2023-03-14 | 支付宝(杭州)信息技术有限公司 | 一种话术生成方法和系统 |
CN112035633B (zh) * | 2020-08-21 | 2023-07-25 | 腾讯科技(深圳)有限公司 | 数据处理方法、装置、对话设备及存储介质 |
CN112541059B (zh) * | 2020-11-05 | 2024-07-12 | 大连中河科技有限公司 | 一种应用在税务问答系统的多轮智能问答交互方法 |
CN112527986B (zh) * | 2020-12-10 | 2024-07-19 | 平安科技(深圳)有限公司 | 多轮对话文本生成方法、装置、设备及存储介质 |
CN112559714B (zh) * | 2020-12-24 | 2024-04-12 | 北京百度网讯科技有限公司 | 对话生成方法、装置、电子设备及存储介质 |
CN116863935B (zh) * | 2023-09-04 | 2023-11-24 | 深圳有咖互动科技有限公司 | 语音识别方法、装置、电子设备与计算机可读介质 |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9705832B2 (en) * | 2014-08-27 | 2017-07-11 | Lenovo (Singapore) Pte. Ltd. | Context-aware aggregation of text-based messages |
CN106448670B (zh) * | 2016-10-21 | 2019-11-19 | 竹间智能科技(上海)有限公司 | 基于深度学习和强化学习的自动回复对话系统 |
CN107273487A (zh) * | 2017-06-13 | 2017-10-20 | 北京百度网讯科技有限公司 | 基于人工智能的聊天数据的生成方法、装置及计算机设备 |
CN108021705B (zh) * | 2017-12-27 | 2020-10-23 | 鼎富智能科技有限公司 | 一种答案生成方法及装置 |
CN108121823A (zh) * | 2018-01-11 | 2018-06-05 | 哈尔滨工业大学 | Babbling情感对话生成系统及方法 |
CN109086329B (zh) * | 2018-06-29 | 2021-01-05 | 出门问问信息科技有限公司 | 基于话题关键词引导的进行多轮对话方法及装置 |
-
2019
- 2019-03-05 CN CN201910164579.8A patent/CN110263131B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN110263131A (zh) | 2019-09-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110263131B (zh) | 回复信息生成方法、装置及存储介质 | |
CN108615526B (zh) | 语音信号中关键词的检测方法、装置、终端及存储介质 | |
CN110379430B (zh) | 基于语音的动画显示方法、装置、计算机设备及存储介质 | |
US20220165288A1 (en) | Audio signal processing method and apparatus, electronic device, and storage medium | |
CN110110145B (zh) | 描述文本生成方法及装置 | |
EP3805939A1 (en) | Dialogue state determining method and device, dialogue system, computer device, and storage medium | |
CN110209784B (zh) | 消息交互方法、计算机设备及存储介质 | |
CN111524501B (zh) | 语音播放方法、装置、计算机设备及计算机可读存储介质 | |
CN111680123B (zh) | 对话模型的训练方法、装置、计算机设备及存储介质 | |
CN110162604B (zh) | 语句生成方法、装置、设备及存储介质 | |
CN110147533B (zh) | 编码方法、装置、设备及存储介质 | |
CN108922531B (zh) | 槽位识别方法、装置、电子设备及存储介质 | |
CN110147532B (zh) | 编码方法、装置、设备及存储介质 | |
CN111739517B (zh) | 语音识别方法、装置、计算机设备及介质 | |
CN111581958A (zh) | 对话状态确定方法、装置、计算机设备及存储介质 | |
WO2022227507A1 (zh) | 唤醒程度识别模型训练方法及语音唤醒程度获取方法 | |
CN114333774B (zh) | 语音识别方法、装置、计算机设备及存储介质 | |
CN111835621A (zh) | 会话消息处理方法、装置、计算机设备及可读存储介质 | |
CN114328815A (zh) | 文本映射模型的处理方法、装置、计算机设备及存储介质 | |
CN111554314B (zh) | 噪声检测方法、装置、终端及存储介质 | |
CN113822084A (zh) | 语句翻译方法、装置、计算机设备及存储介质 | |
CN116860913A (zh) | 语音交互方法、装置、设备及存储介质 | |
CN115116437B (zh) | 语音识别方法、装置、计算机设备、存储介质及产品 | |
CN115394285A (zh) | 语音克隆方法、装置、设备及存储介质 | |
CN115658857A (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 |