CN109241268B - 一种相似信息推荐方法、装置、设备及存储介质 - Google Patents
一种相似信息推荐方法、装置、设备及存储介质 Download PDFInfo
- Publication number
- CN109241268B CN109241268B CN201810731844.1A CN201810731844A CN109241268B CN 109241268 B CN109241268 B CN 109241268B CN 201810731844 A CN201810731844 A CN 201810731844A CN 109241268 B CN109241268 B CN 109241268B
- Authority
- CN
- China
- Prior art keywords
- sentence
- neural network
- word
- network model
- similarity
- 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
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/21—Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
- G06F18/214—Generating training patterns; Bootstrap methods, e.g. bagging or boosting
Landscapes
- Engineering & Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Theoretical Computer Science (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Artificial Intelligence (AREA)
- Evolutionary Biology (AREA)
- Evolutionary Computation (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Machine Translation (AREA)
Abstract
本发明公开了一种相似信息推荐方法、装置、设备及存储介质,所述方法包括:获取自然对话数据集和信息相似度数据集;根据所述自然对话数据集和信息相似度数据集建立相似信息判别模型;获取用户输入信息;将所述用户输入信息传入所述相似信息判别模型中,得到与所述用户输入信息对应的相似信。本发明利用自然对话数据集作为训练数据,能够在具有较少信息相似度数据集的情况下保证训练出良好的相似信息判别模型,提升信息推荐的质量。
Description
技术领域
本发明涉及信息处理技术领域,尤其涉及一种相似信息推荐方法、装置、设备及存储介质。
背景技术
现有的计算问题相似度的技术,主要通过收集问题相似度数据,然后通过最大化该数据集的似然概率,训练问题相似度判别模型,该模型的输入是问题1和问题2,输出是两个问题的相似度;最后根据用户提出的问题,与问题库中的每一个问题都计算出相似度,为用户推荐相似度较高的问题。
通常问题相似度数据的采集过程需要人工标注,而人工标注则十分昂贵且费时,无法产生大量的问题相似度数据,导致训练模型使用的数据量较少,训练出的问题判别模型不佳。
因此,需要提供一种通过简单有效的方式训练出良好问题判别模型的技术方案。
发明内容
为了解决现有技术中的问题,本发明提供了一种相似信息推荐方法、装置、设备及存储介质,具体地:
一方面提供了一种相似信息推荐方法,所述方法包括:
获取自然对话数据集和信息相似度数据集;
根据所述自然对话数据集和信息相似度数据集建立相似信息判别模型;
获取用户输入信息;
将所述用户输入信息传入所述相似信息判别模型中,得到与所述用户输入信息对应的相似信息。
所述自然对话数据集包括多组对话流;每组对话流均包括一个或多个由连续对话形式的数据组成的对话语句;
所述信息相似度数据集包括多个三元组;每个三元组均包括一个语句对以及所述语句对对应的相似度,每个语句对均包括两个相似语句。
另一方面提供了一种相似信息推荐装置,所述装置包括:
数据集获取模块,用于获取自然对话数据集和信息相似度数据集;
判别模型建立模块,用于根据所述自然对话数据集和信息相似度数据集建立相似信息判别模型;
输入信息获取模块,用于获取用户输入信息;
相似信息得到模块,用于将所述用户输入信息传入所述相似信息判别模型中,得到与所述用户输入信息对应的相似信息。
进一步地,所述相似信息得到模块包括:
第三句向量获取单元,用于利用所述第一神经网络模型参数中的词向量参数和编码层参数,将所述用户输入信息进行句向量表示,得到第三句向量;
第四句向量获取单元,用于利用所述第一神经网络模型参数中的词向量参数和编码层参数,将所述信息相似度数据集所在信息库中的所有相似语句进行句向量表示,得到多个第四句向量;
语句相似度获取单元,用于根据所述第二神经网络模型参数中的张量网络层参数和分类网络层参数,得到每个第四句向量的相似语句与所述第三句向量的输入语句的语句相似度;
语句相似度确定单元,用于将得到的语句相似度与预设相似度进行比较,获得大于所述预设相似度的语句相似度;
相似信息确定单元,用于根据大于所述预设相似度的语句相似度匹配出对应的第四句向量,并根据所述第四句向量确定出与所述用户输入信息对应的相似语句。
另一方面提供了一种设备,所述设备包括处理器和存储器,所述存储器中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由所述处理器加载并执行以实现如上所述的相似信息推荐方法。
另一方面提供了一种计算机可读存储介质,所述存储介质中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由处理器加载并执行以实现如上所述的相似信息推荐方法。
本发明提供的一种相似信息推荐方法、装置、设备及存储介质,具有的有益效果为:
通过获取自然对话数据集和信息相似度数据集;利用所述自然对话数据集和信息相似度数据集建立相似信息判别模型;进一步获取用户输入信息;将所述用户输入信息输入所述相似信息判别模型中,得到与所述用户输入信息对应的相似信息;从而将所述相似信息推荐给用户。可见,本发明能够在仅使用较少的需要被标记的信息相似度数据集情况下,利用采集的大量的无标记的自然对话数据集一并作为训练数据,进行模型的训练;这样不仅减少了信息相似度数据集采集过程中人工标注的繁琐和费时,还能够保证训练出良好的相似信息判别模型,进而提升信息推荐的质量,提升用户体验感受,从而提升对应客户端的用户粘度。
附图说明
为了更清楚地说明本说明书实施例或现有技术中的技术方案和优点,下面将对实施例或现有技术描述中所需要使用的附图作简单的介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它附图。
图1是本发明实施例提供的实施环境的示意图;
图2是本发明实施例提供的一种相似信息推荐方法流程图;
图3是本发明实施例提供的根据所述自然对话数据集和信息相似度数据集建立相似信息判别模型步骤的流程图;
图4是本发明实施例提供的利用所述自然对话数据集训练第一神经网络模型,得到所述第一神经网络模型的参数步骤的流程图;
图5是本发明实施例提供的得到所述第一对话流中多个对话语句的第一词语集合概率步骤的流程图;
图6是本发明实施例提供的根据所述第一上下文向量对所述第一目标语句中的词语进行预测,得到第一词语组合概率步骤的流程图;
图7是本发明实施例提供的两层神经网络的结构示意图;
图8是本发明实施例提供的利用所述第二句向量训练第二神经网络模型,得到所述第二神经网络模型的参数步骤的流程图;
图9是本发明实施例提供的将所述用户输入信息输入到所述相似信息判别模型中,得到与所述用户输入信息对应的相似信息步骤的流程图;
图10是本发明实施例提供的一种相似信息推荐装置结构示意图;
图11是本发明实施例提供的判别模型建立模块组成结构图;
图12是本发明实施例提供的第一模型参数得到单元组成结构图;
图13是本发明实施例提供的第一集合概率得到子单元组成结构图;
图14是本发明实施例提供的第二模型参数得到单元组成结构图;
图15是本发明实施例提供的相似信息得到模块组成结构图;
图16是本发明实施例提供的一种相似信息推荐系统示意图;
图17是本发明实施例提供的一种相似信息推荐系统对应的时序图;
图18是本发明实施例提供的相似信息推荐设备的结构示意图。
具体实施方式
下面将结合本说明书实施例中的附图,对本说明书实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。
需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或服务器不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
现有的相似度判别模型大致如下:
1.以问题相似度数据作为输入,首先使用卷积神经网络或者循环神经网络对每个问题进行向量化表示(句向量表示),对两个问题的句向量表示计算点积或余弦相似度作为输出。这种模型只使用点积或余弦相似度过于简单,很难捕捉到两个问题句向量之间的相关关系。
2.以问题相似度数据作为输入,首先使用卷积神经网络或者循环神经网络对每个问题进行向量化表示(句向量表示),之后使用张量网络层计算出两个句向量之间的相关关系,以一个向量的形式呈现,再将该向量输入到sigmoid分类网络层,以两个句子的相似度作为输出。这种模型由于网络参数规模的扩大,需要更大量的数据进行驱动。其中,问题相似度判别模型是一种监督模型,必须以两个句子的相似度信息作为监督信息才能进行模型的训练,而这个监督信息只能由有经验的标注人员进行标注,而人工标注则十分昂贵且费时,无法产生大量的问题相似度数据,如果训练模型使用的数据量较少,并且神经网络模型很难从少量的数据中寻找规律归纳总结,那么必然导致训练出来的模型对于问题的相似度无法做出准确的判别。
所以,本发明提供了一种相似信息推荐方案,能够在少量信息相似度数据的情况下,训练出良好的相似信息判别模型。
如图1所示,其示出了本说明书实施例提供的实施环境的示意图。该实施环境包括:服务器02和与该服务器02进行信息通信的终端01。
终端01可以为手机、平板电脑、膝上型便携获取机、PAD或台式获取机等等。终端01中运行有客户端,该客户端可以是任何具有虚拟资源收发功能的客户端;例如,终端01中运行的客户端可以是社交应用客户端、即时通信客户端、浏览检索客户端、游戏客户端或其他专用于收发虚拟资源的客户端等等。服务器02通过网络与终端01建立通信连接。
在该实施环境下,用户能够将需要进行检索信息或是进行问题咨询,通过终端发送给服务器,服务器通过检索信息的匹配找到推荐给用户的多个相似检索信息,或是通过咨询问题的匹配找到推荐给用户的多个相似问题;进一步地,用户从多个相似检索信息中选取一个检索信息,或是用户从多个相似问题中选取一个相似问题的情况下,终端将用户选取的检索信息或是相似问题发送给服务器,进而服务器能够将与所述检索信息相链接的信息,或是与所述相似问题对应的答案发送给所述客户端,从而使用户得到有效信息。
具体地,本说明书实施例提供了一种相似信息推荐方法,如图2所示,所述方法包括:
S202.获取自然对话数据集和信息相似度数据集;
所述自然对话数据集包括多组对话流;每组对话流均包括一个或多个由连续对话形式的数据组成的自然对话语句;
所述信息相似度数据集包括多个三元组;每个三元组均包括两个相似语句以及所述两个相似语句的相似度。
需要说明的是,所述相似信息数据集中的相似语句属于一个信息库中,该信息库中的相似语句可以是当前用户所使用的客户端给出的,也可以是该客户端产品产生之前从其他客户端收集到且与该客户端用户会输入的语句信息相似或是相关联的语句。
其中,本实施例提供的信息推荐服务可以为问题推荐服务;对应地在该服务下需要数据集为自然对话数据集和问题相似度数据集;
详细地,对于自然对话数据集给与说明的是:
比如所述自然对话数据流可以来源于微信漂流瓶收集的数据;其中微信的每一个漂流瓶包含两个陌生用户的对话,该对话的过程可能是用户A发送数句,接着用户B发送数句,接着用户A发送数句,不断扩充;通过将每个用户发送的数句拼合起来成为一个句子即用户在第i个漂流瓶中的第j句对话;其中由多个词语组成,每个词语可以表示为(其中r表示第几个词语)。微信漂流瓶数据量是巨大的,所以这对于训练良好的词向量表示和句子向量表示有非常重要的作用。
需要给与说明的是,除了漂流瓶之外,任何产生连续的、对话形式的数据都可以形成自然对话数据;比如,两个用户之间基于客户端的聊天信息或是多个用户之间的群聊信息,还可以是微博评论信息等。其中,当采集到的这些数据的量足够大的时候,任何一句话的上下文所包含的信息足够表示该句话所包含的信息。
详细地,对于问题相似度数据集给与说明的是:
根据前面所述的相似信息数据集,对应地,这里的问题相似度数据集也是属于一个问题库的,该问题库中的相似问题可以是当前用户所使用的客户端给出的,也可以是该客户端产品产生之前从其他客户端收集到与该客户端用户问到的问题相似或是相关联的问题。
所述问题相似度数据集中的问题语句来自于所述问题库中,进一步通过相似度计算方式筛选出每一对问题语句的相似度;然后将相似度标注在对应的问题对上。比如:所述问题相似度数据集由(问题a,问题b,相似度)三元组组成,则第i组三元组表示为其中,问题a和问题b的相似度是由标注人员事先标注的,相似度为1表示问题a和问题b相似,相似度为0表示问题a和问题b不相似。
其中,所述相似度计算的过程可以包括:
1.通过中文分词,把完整的句子根据分词算法分为独立的词集合;
2.求出两个词集合的并集(词包);
3.计算各自词集的词频并把词频向量化;
4.带入向量计算模型就可以求出语句相似度。
可以看出,自然对话数据集不需要被人工标注,属于无标记的数据信息;而问题相似度数据集在采集过程中需要被人工标注;由于利用大量的自然对话数据集作为训练文本,所以可以选取数量较少的问题相似度数据,来训练相似问题判别模型,这样就能够降低人工标注带来的费用问题和费时问题。
S204.根据所述自然对话数据集和信息相似度数据集建立相似信息判别模型;
本实施例中使用了自然对话数据集作为其中一个训练数据,用于训练以建立相似信息判别模型;该情况下使得利用较少的信息相似度数据集也能够得到良好的模型,从而减少工作人员对信息相似度数据集的标注工作量,进而能够提升模型建立的效率。
在一种可行的实施方式中,步骤S204中,根据所述自然对话数据集和信息相似度数据集建立相似信息判别模型,如图3所示,可以包括:
S402.利用所述自然对话数据集训练第一神经网络模型,得到所述第一神经网络模型的参数;
其中,所述第一神经网络模型可以为编码器-解码器神经网络,通过该神经网络能够对任意句子求出其对应的句向量表示。
具体地,步骤S402中,利用所述自然对话数据集训练第一神经网络模型,得到所述第一神经网络模型的参数,如图4所示,可以包括:
S602.利用所述自然对话数据集中的第一对话流训练第一神经网络模型,得到所述第一对话流中多个对话语句的第一词语集合概率;
其中,自然对话数据集包括多个对话流,每个对话流包括多个对话语句,每个对话语句包括多个词语;在训练所述第一神经网络模型时需要依次遍历所述自然对话数据集中的所有对话流;在使用第一对话流模型训练时,先使用第一对话流中的第一对话语句,依次遍历所述第一对话语句中的所有词语,之后按照同样的方式遍历所述第一对话流的其他对话语句,进而能够得到所述第一对话流中多个对话语句的第一词语集合概率。
一种具体的实施方式中,步骤S602利用所述自然对话数据集中的第一对话流训练第一神经网络模型,得到所述第一对话流中多个对话语句的第一词语集合概率,如图5所示,可以包括:
S802.设定第一数量p,将所述第一对话流中第p+1个对话语句作为第一目标语句;
其中,在对目标语句进行预测时,可以通过该目标语句的前后的语句进行预测,对于需要使用的前后语句的数量,可以根据该目标语句的位置进行设定。
S804.将所述第一目标语句的前k个对话语句和后k个对话语句输入所述第一神经网络模型中,k小于等于第一数量p;
S806.根据所述前k个对话语句和后k个对话语句,得到所述第一目标语句对应的第一上下文向量;
其中,对于k小于等于第一数量p给与说明的是,在p为3时,从第4个对话语句开始算起(因为第一个语句、第二个语句和第三个语句的前面都不存在有3个语句,所以,从第四个语句开始算起才有意义,因而设置k≤p),也就是将第四个对话语句作为目标语句。此时,可以将所述第四个对话语句的前三个语句和后三个语句输入所述第一神经网络模型中,对该第四个对话语句进行预测或者,可以使用所述第四个对话语句的前两个语句和后两个语句输入所述第一神经网络模型中,对该第四个对话语句进行预测
其中,对于具有多个对话流的自然对话数据集来看,代表给定其中一组对话流的前j句话时(不包括第j句话),生成第j句话的概率。代表给定其中一组对话流的前k句话以及后k句话时(不包括第j句话),生成第j句话的概率;具体是,利用所述前k句和后k句得到所述目标语句的上下文向量,根据得到的上下文向量的表达来表示对应的目标语句的概率;也就是说,在给定目标语句的上下文语句的情况下,得到所述目标语句的概率。
一种具体的实施方式中,步骤S806根据所述前k个对话语句和后k个对话语句,得到所述第一目标语句对应的第一上下文向量;可以包括:
S2A.根据所述第一神经网络模型的编码层,对所述前k个对话语句和后k个对话语句进行句向量表示,得到2k个第一句向量;
S2C.将所述2k个第一句向量进行加权处理,得到所述第一目标语句对应的第一上下文向量。
将所述第一目标语句的前k句和后k句(共2k句话)输入所述编码器-解码器神经网络中,使用一个循环神经网络(对应第一神经网路模型的编码层)分别对2k句话中的每一句生成一个句向量表示,得到对应的句向量。进一步,将这2k个句向量进行加权平均运算,从而得到所述第一句向量对应的第一上下文向量。
S808.根据所述第一上下文向量对所述第一目标语句中的词语进行预测,得到第一词语组合概率;
所述第一目标语句中具有多个词语,依次遍历第一目标语句中的词语,得到每个词语的概率,进而将得到的所有词语概率取对数、求和,得到所述第一词语组合概率。
具体地,步骤S808根据所述第一上下文向量对所述第一目标语句中的词语进行预测,得到第一词语组合概率,如图6所示,可以包括:
S4A.将所述第一目标语句的第一词语输入所述第一神经网络模型的解码层,使所述第一上下文向量对所述第一词语进行预测,得到所述第一词语的概率;
在选取第一目标语句的第一词语进行预测时,就是将所述第一词语输入另一个循环神经网络(对应第一神经网路模型的解码层),经过循环神经网络得到所述第一词语的概率。
S4C.将第二词语作为第一词语,根据得到所述第一词语的概率的方式获得所述第二词语的概率;
S4E.依次遍历所述第一目标语句中其他词语的概率,得到所述第一词语组合概率。
具体地,按照得到所述第一词语的概率的方式,依次遍历所述第一目标语句中的其他词语,从而得到所有词语的概率,由第一目标语句的所有词语组合的概率组合得到第一词语组合概率。并且,其他的对话语句对应的词语组合概率的获取方式,就按照获取所述第一目标语句对应的第一词语组合概率的相同方式进行获取。
S810.将第p+2个对话语句作为第p+1个对话语句,根据得到第一词语组合概率的方式获得第p+2个对话语句对应的第二词语组合概率;
S812.依次遍历至倒数第p-1个语句,得出第p+1个对话语句到倒数第p-1个对话语句分别对应的词语组合概率;
S814.由第p+1个对话语句到倒数第p-1个对话语句对应的词语组合概率,得到所述第一词语集合概率。
S604.将所述自然对话数据集中的第二对话流作为第一对话流,根据得到所述第一词语集合概率的方式,获得第二对话流中多个对话语句的第二词语集合概率;
S606.依次遍历所述自然对话数据集中其他的对话流,分别得到对应的词语集合概率;
S608.根据所有的词语集合概率得到第一目标函数;
进一步地,根据得到所述第一对话流的第一词语集合概率的方式,去获得所述第二对话流的第二词语集合概率;依此得到所有的词语集合概率;通过将所有的词语集合概率进行取对数和求和,进而得到所述第一目标函数:
S610.对所述第一目标函数进行最大化处理,确定出所述第一神经网络模型的参数,该模型参数能够,在给定目标语句的上下文语句的情况下,使所述目标语句的每个词语的概率最大;所述第一神经网络模型的参数包括词向量参数、编码层参数、解码层参数。
第一神经网络中有很多个隐含层,因为每一层与层之间均具有权重和向量;所以,所述编码层参数包含有多组编码权重和偏置。对应地,所述解码层参数也包含有多组解码权重和偏置。
具体地,使用梯度下降法对得到的第一目标函数进行最大化处理,就可以训练得到所述编码器-解码器神经网络模型的参数;其中,所述编码层参数包括编码层权重和偏置,所述解码层参数包括解码层权重和偏置。
需要给与说明的是,神经网络由以下部分组成:
一个输入层,x;
任意数量的隐藏层;
每两层之间都有一组权重和偏置(W和b);
对于根据梯度下降法得到参数的过程给与举例说明:
经过N次迭代之后,参数w和参数b趋于稳定,此时获得的w和b就是使得目标函数最大的参数。
给与说明的是,对于给定的句子,可以通过本实施例中训练好的词向量参数和编码层参数,计算出其对应的句向量表示v。
S404.根据训练好的第一神经网络模型,对所述信息相似度数据集中的相似语句进行句向量表示,得到多个第二句向量;
通过训练好的编码器-解码器神经网络模型,对采集且标注的信息相似度数据集中的相似语句进行句向量表示,得到这部分相似语句对应的第二句向量。
S406.利用所述第二句向量训练第二神经网络模型,得到所述第二神经网络模型的参数;
其中,所述第二神经网络模型可以张量神经网络模型;进一步地,将所述信息相似度数据集对应的第二句向量,输入所述张量神经网络模型,以确定出所述张量神经网络模型的参数。所述第二神经网络模型还可以是前馈神经网络。
一种具体的实施方式中,步骤S406中利用所述第二句向量训练第二神经网络模型,得到所述第二神经网络模型的参数,如图8所示,可以包括:
S1002.将所述信息相似度数据集的第一语句对对应的第二句向量,输入到所述第二神经网络模型的张量网络层,得到所述第一语句对的第一相关向量;
其中,所述信息相似度数据集的三元组中包括一对相似语句;步骤S404中根据训练好的第一神经网络模型已经得到了信息相似度数据集中相似语句的第二句向量;所以,在将第一语句对对应的第二句向量输入到所述张量神经网络模型的张量网络层中时,能够得到用于表示所述第一语句对中两个语句关系的第一相关向量。
S1004.将所述第一相关向量输入到所述第二神经网络模型的分类网络层,得到所述第一语句对的第一相似度;
其中,本实施例中所述张量神经网络模型的分类网络层为Sigmoid分类网络层;具体地,通过将所述第一相关向量输入到Sigmoid分类网络层,使所述Sigmoid分类网络层输出第一语句对中两个相似语句的相似度。
S1006.将第二语句对作为第一语句对,根据得到所述第一相似度的方式获得所述第二语句对的第二相似度;
S1008.依次遍历所述信息相似度数据集的其他语句对,分别得到对应的相似度;
S1010.根据所有的语句对,以及分别对应的相似度得到第二目标函数;
所述信息相似度数据集中包括多个三元组,每个三元组具有一个语句对,则按照获得所述第一相似度的方式依次遍历所述信息相似度数据集中其他语句对,从而得到对应的相似度。
比如:在问题推荐服务场景下,选定问题相似度数据集中一个三元组的问题语句对,通过将所述问题语句对的这两个问题语句输入到训练好的编码器-解码器神经网络模型中,得到对应的句向量表示和进一步将这两个问题语句的句向量表示和输入到张量神经网络模型的Sigmoid分类网络层,得到所述问题语句对中这两个问题语句的相似度e(i)。
对应地,这两个问题语句的相似度概率表达为通过将问题相似度数据集中的每个问题语句对按照上述的方式进行处理,能够得到对应的相似度,根据取对数和求和的方式进而能够得到所述问题相似度数据集的似然概率表达也就是所述的第二目标函数。
给与说明的是,对于给定的句子s1和s2,可以通过本实施例训练好的张量神经网络模型的参数计算出对应语句对的相似度e。
S1012.对所述第二目标函数进行最大化处理,确定出所述第二神经网络模型的参数;所述第二神经网络模型的参数包括张量网络层参数和分类网络层参数。
具体地,使用梯度下降法对得到的第二目标函数进行最大化处理,就可以训练得到所述张量神经网络模型的参数;其中,与所述编码层参数和解码层参数类似,所述第二神经网络模型中,所述张量网络层参数包含有多组张量权重和偏置,所述Sigmoid分类网络层参数包含有多组Sigmoid分类权重和偏置。
S408.根据所述第一神经网络模型的参数和所述第二神经网络模型的参数,结合得到所述相似信息判别模型。
其中,第一神经网络模型可以看出第一函数,第二神经网络模型可以看出第二函数,先进行第一个函数的训练,得到的结果作为第二个函数的输入;经过N次训练得到训练好的第一神经网络模型和第二神经网络模型。在得到第一神经网络模型的参数,以及第二神经网络模型的参数的基础上,两个训练好的模型(第一神经网络模型和第二神经网络模型)组合得到一个大的模型(相似信息判别模型),结合出所述相似信息判别模型。
其中,本实施例中的编码层-解码层神经网络属于循环神经网络,张量神经网路属于卷积神经网络。
所述相似判别模型对于给定的问题a、问题b,进行相似度预测,得到相似度s给与说明的是:
首先,使用编码器-解码器神经网络模型参数,在输入问题a后能够得到对应的句向量Va,在输入问题b后能够得到对应的句向量Vb;再使用张量神经网络模型的参数,输入Va和Vb,得到问题a和问题b的相似度s,完成预测。
S206.获取用户输入信息;
需要说明的是,本实施例可以应用在提问问题推荐的场景下,也可以应用在信息检索的场景下,或者与上述场景相类似的用于相似信息推荐的其他应用场景下。所以,所述用户输入信息可以为用户在一些购物类客户端上输入的问题咨询信息,也可以为用户在浏览器客户端上的检索信息,等。
对应地,在该步骤中,在用户通过对应客户端或浏览器输入信息之后,该输入信息会被发送至服务器,所述服务器获取到所述用户输入信息,并进一步通过训练好的判别模型为用户推荐对应的相似问题。
S208.将所述用户输入信息传入所述相似信息判别模型中,得到与所述用户输入信息对应的相似信息。
其中,在服务器利用采集的自然对话数据集和信息相似度数据集训练得到良好的相似信息判别模型之后,进一步在客户端将采集到的用户输入的信息传入到服务器的相似信息判别模型的情况下,服务器能够通过所述相似信息判别模型输出与所述用户输入信息对应的相似信息,进一步,所述服务器将得到的多个相似信息发送至客户端,进而呈现在对应客户端或浏览器的界面上,推荐给用户供用户选择。
一种具体的实施方式中,步骤S208将所述用户输入信息传入所述相似信息判别模型中,得到与所述用户输入信息对应的相似信息,如图9所示,可以包括:
S1202.利用所述第一神经网络模型参数中的词向量参数和编码层参数,将所述用户输入信息进行句向量表示,得到第三句向量;
其中,所述词向量参数是一个词向量矩阵,所述词向量矩阵每一行是一个词向量,比如有10000个词语,每个词向量长度是50的话,这个矩阵就是10000*50。对于词向量参数来说,只要有语句输入第一神经网络模型中,所述词向量矩阵都能够使该语句都按照这个词向量矩阵的方式,得到对应的所有词语的词向量,然后通过将对应的词向量进行组合进而得到该语句的句向量表示。
在问题推荐服务的应用场景下,对于用户提出的问题q,根据训练好的词向量表示(词向量矩阵)和循环神经网络的编码器参数,就能够计算得到用户提出的问题的句向量表示vq。
S1204.利用所述第一神经网络模型参数中的词向量参数和编码层参数,将所述信息相似度数据集所在信息库中的所有相似语句进行句向量表示,得到多个第四句向量;
在问题推荐服务的场景下,所述问题相似度数据集属于一个问题库中;同样的,利用所述第一神经网络模型参数中的词向量参数和编码层参数,遍历所述所述问题相似度数据集所在问题库中的每一个问题p,计算出对应的第四句向量表示vp。
S1206.根据所述第二神经网络模型参数中的张量网络层参数和分类网络层参数,得到每个第四句向量的相似语句与所述第三句向量的输入语句的语句相似度;
进一步,将第三句向量vq和第四句向量vp输入到训练好的张量神经网络模型中,便能获得问题q和问题库中的问题p对应的相似度ep;这里是将所述第三句向量与每个第四句向量作为一组,输入到训练好的张量神经网络模型中,得到每组的相似度,通过这种方式进而得到多个相似度。
S1208.将得到的语句相似度与预设相似度进行比较,获得大于所述预设相似度的语句相似度;
具体地,步骤S1208将得到的语句相似度与预设相似度进行比较,获得大于所述预设相似度的语句相似度,可以为:
将得到的所有语句相似度ep进行排序,得到位于前三位的语句相似度,比如为p1,p2,p3;
将这三个语句相似度与预设相似度进行比较,得到大于所述预设相似度的语句相似度。
S1210.根据大于所述预设相似度的语句相似度匹配出对应的第四句向量,并根据所述第四句向量确定出与所述用户输入信息对应的相似语句。
具体地,将大于所述预设相似度的语句相似度对应的相似语句返回给客户端,推荐给用户供用户选择;若所述语句相似度均没有大于所述预设相似度,则不向所述客户端返回相似语句。其中,所述预设相似度的数值范围为0-1,可以人工进行设定得到。
需要给与说明的是,本实施例能够应用在问题推荐服务场景下,服务器将多个相似问题推荐给客户端之后,用户对推荐的多个相似问题进行选择,被用户选中的问题发送至服务器,所述服务器根据后续用户选择的问题,从预存的问题答案匹配库中找出该问题对应的答案,并将答案返回给客户端,使得当前用户得到答案。
同样地,本实施例能够应用在信息检索场景下,服务器将多个检索信息推荐给浏览器之后,用户对推荐的多个检索信息进行选择,被用户选中的检索信息发送至服务器,所述服务器根据后续用户选中的检索信息,从预存的检索信息匹配库中找出该检索信息对应的相关信息,并将这些相关信息返回给客户端,使得当前用户得到有用的信息列表。
需要给与说明的是,根据实验结果表明,通过加入大量的无标记数据,即自然对话数据集,能够训练出良好的词向量表示和句子向量表示;而良好的词向量表示和句子向量表示能够提升判别模型的准确性;通过实验得到,本实施例的判别模型相比于普通的判别模型,能够提升5个百分点左右的准确率。具体地,在使用较少数量(比如1万个问题相似度数据集)时,使用50万个自然对话数据集作为训练数据,相比使用10万个自然对话数据集作为训练数据,得到的判别模型更优;同样的,在使用50万个自然对话数据集时,具有1万个问题相似度数据集作为训练数据,相比具有5万个相似度数据集作为训练数据,得到的判别模型更优。也就是说,问题相似度数据集比例增大的情况下,得到的判别模型效果不佳且过程繁琐;对应地,自然对话数据集比例增大的情况下,得到的判别模型的效率高且所述模型的效果更好。可见,本发明对于信息推荐服务具有很大的帮助。
需要给与说明的是,本实施例可以应用在具有聊天秘书功能的设备上,能够允许嵌入到一个提供上下文接口的对话聊天软件或者文本编辑软件中;根据用户提出的问题,利用知识库中的标准问答对和预先训练好的模型,为用户推荐符合其需求的知识库中的问题(以选项的形式呈现给用户),待用户交互之后,按照用户选择的问题,系统再给出相应的答案。
本说明书实施例能够对于少量的标记的问题相似度数据的情况下,利用大量的无标记的自然对话数据集作为训练数据,训练的网路能够得到更好的句向量表示和词向量表示;使得结合得到的相似信息判别模型的具有更好的分析和判断处理能力,进而帮助用户快速获取有用信息;提升了用户体验,从而提升了对应客户端的用户粘度。
本说明书实施例提供了一种相似信息推荐装置,如图10所示,所述装置包括:
数据集获取模块202,用于获取自然对话数据集和信息相似度数据集;
判别模型建立模块204,用于根据所述自然对话数据集和信息相似度数据集建立相似信息判别模型;
输入信息获取模块206,用于获取用户输入信息;
相似信息得到模块208,用于将所述用户输入信息传入所述相似信息判别模型中,得到与所述用户输入信息对应的相似信息。
一种实施例中,所述判别模型建立模块204,如图11所示,包括:
第一模型参数得到单元402,用于利用所述自然对话数据集训练第一神经网络模型,得到所述第一神经网络模型的参数;
第二句向量获取单元404,用于根据训练好的第一神经网络模型,对所述信息相似度数据集中的相似语句进行句向量表示,得到多个第二句向量;
第二模型参数得到单元406,用于利用所述第二句向量训练第二神经网络模型,得到所述第二神经网络模型的参数;
判别模型生成单元408,用于根据所述第一神经网络模型的参数和所述第二神经网络模型的参数,结合得到所述相似信息判别模型。
一种实施例中,所述第一模型参数得到单元402,如图12所示,包括:
第一集合概率得到子单元602,用于利用所述自然对话数据集中的第一对话流训练第一神经网络模型,得到所述第一对话流中多个对话语句的第一词语集合概率;
第二集合概率得到子单元604,用于将所述自然对话数据集中的第二对话流作为第一对话流,根据得到所述第一词语集合概率的方式,获得第二对话流中多个对话语句的第二词语集合概率;
对应词语集合概率得到子单元606,用于依次遍历所述自然对话数据集中其他的对话流,分别得到对应的词语集合概率;
第一目标函数得到子单元608,用于根据所有的词语集合概率得到第一目标函数;
第一模型参数得到子单元610,用于对所述第一目标函数进行最大化处理,确定出所述第一神经网络模型的参数;所述第一神经网络模型的参数包括词向量矩阵、编码层参数、解码层参数。
一种实施例中,所述第一集合概率得到子单元602,如图13所示,包括:
目标语句选择子单元802,用于设定第一数量p,将所述第一对话流中第p+1个对话语句作为第一目标语句;
语句输入子单元804,用于将所述第一目标语句的前k个对话语句和后k个对话语句输入所述第一神经网络模型中,k小于等于第一数量p;
第一上下文向量得到子单元806,用于根据所述前k个对话语句和后k个对话语句,得到所述第一目标语句对应的第一上下文向量;
第一组合概率得到子单元808,用于根据所述第一上下文向量对所述第一目标语句进行预测,得到第一词语组合概率;
第二组合概率得到子单元810,用于将第p+2个对话语句作为第p+1个对话语句,根据得到第一词语组合概率的方式获得第p+2个对话语句对应的第二词语组合概率;
对应词语组合概率得到子单元812,用于依次遍历至倒数第p-1个语句,得出第p+1个对话语句到倒数第p-1个对话语句分别对应的词语组合概率;
第一词语集合概率获得子单元814,用于由第p+1个对话语句到倒数第p-1个对话语句对应的词语组合概率,得到所述第一词语集合概率;
所述第一上下文向量得到子单元806;包括:
第一句向量得到子单元,用于根据所述第一神经网络模型的编码层,对所述前k个对话语句和后k个对话语句进行句向量表示,得到2k个第一句向量;
第一上下文向量获得子单元,用于将所述2k个第一句向量进行加权处理,得到所述第一目标语句对应的第一上下文向量。
一种实施例中,所述第一组合概率得到子单元808,包括:
第一词语概率得到子单元2A,用于将所述第一目标语句的第一词语输入所述第一神经网络模型的解码层,使所述第一上下文向量对所述第一词语进行预测,得到所述第一词语的概率;
第二词语概率得到子单元2C,用于将第二词语作为第一词语,根据得到所述第一词语的概率的方式获得所述第二词语的概率;
第一词语组合概率获得子单元2E,用于依次遍历所述第一目标语句中其他词语的概率,得到所述第一词语组合概率。
一种实施例中,所述第二模型参数得到单元406,如图14所示,包括:
第一相关向量得到子单元1002,用于将所述信息相似度数据集的第一语句对对应的第二句向量,输入到所述第二神经网络模型的张量网络层,得到所述第一语句对的第一相关向量;
第一相似度得到子单元1004,用于将所述第一相关向量输入到所述第二神经网络模型的分类网络层,得到所述第一语句对的第一相似度;
第二相似度得到子单元1006,用于将第二语句对作为第一语句对,根据得到所述第一相似度的方式获得所述第二语句对的第二相似度;
对应相似度得到子单元1008,用于依次遍历所述信息相似度数据集的其他语句对,分别得到对应的相似度;
第二目标函数得到子单元1010,用于根据每个语句对,以及分别对应的相似度得到第二目标函数;
第二模型参数得到子单元1012,用于对所述第二目标函数进行最大化处理,确定出所述第二神经网络模型的参数;所述第二神经网络模型的参数包括张量网络层参数和分类网络层参数。
一种实施例中,所述相似信息得到模块208,如图15所示,包括:
第三句向量获取单元1202,用于利用所述第一神经网络模型参数中的词向量矩阵和编码层参数,将所述用户输入信息进行句向量表示,得到第三句向量;
第四句向量获取单元1204,用于利用所述第一神经网络模型参数中的词向量矩阵和编码层参数,将所述信息相似度数据集所在信息库中的所有相似语句进行句向量表示,得到多个第四句向量;
语句相似度获取单元1206,用于根据所述第二神经网络模型参数中的张量网络层参数和分类网络层参数,得到每个第四句向量的相似语句与所述第三句向量的输入语句的语句相似度;
语句相似度确定单元1208,用于将得到的语句相似度与预设相似度进行比较,获得大于所述预设相似度的语句相似度;
相似信息确定单元1210,用于根据大于所述预设相似度的语句相似度匹配出对应的第四句向量,并根据所述第四句向量确定出与所述用户输入信息对应的相似语句。
需要说明的是,装置实施例具有与上述方法实施例相同的发明构思。
本说明书实施例提供了一种相似信息推荐系统,如图16所示,所述相似信息推荐系统包括第一装置D1以及与第一装置D1进行通信连接的第二装置D2,其中所述第二装置作为一个后台服务(比如用于推荐问题的问题推荐服务)运行在系统中,供第一装置请求调用;并且,所述第二装置具有相似问题推荐模块、预存问题库和预存答案库,所述相似问题推荐模块能够通过训练好的相似问题判别模型为用户问题推荐相似问题;其中,所述相似问题判别模型的建立通过上述方法实施例的方式进行建立得到;该系统对应的时序图如图17所示,具体为:
在当前用户通过第一装置和对方设备进行聊天时,所述第一装置将用户问题发送给所述第二装置;
所述第二装置根据相似问题推荐模块,分析所述用户问题和预存问题库中问题的相似度,将相似度概率最高的三个推荐问题返回给第一装置;使得在聊天界面中,通过选项的形式显示这三个推荐问题;
用户在第一装置上点击最相似的推荐问题,并将该推荐问题返回给第二装置;
第二装置再根据该推荐问题在预存答案库中映射出对应的答案,将该答案返回给第一装置。
其中,本实施例中推荐在第一装置界面上的推荐问题不一定是三个,还可以根据用户的需求设置为两个或是四个等;并且给与说明的是,本实施例主要应用在人机应答的场景下,对方设备的执行者属于一个机器客服或是相同功能的机器人,或者能够在真实客服与机器客服之间切换的执行方;通过本实施例能够提升问题推荐服务的效率,同时提升答案自动回复的准确率。
本说明书实施例提供了一种设备,所述设备包括处理器和存储器,所述存储器中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由所述处理器加载并执行以实现如上述方法实施例提供的相似信息推荐方法;主要包括:
获取自然对话数据集和信息相似度数据集;
根据所述自然对话数据集和信息相似度数据集建立相似信息判别模型;
获取用户输入信息;
将所述用户输入信息传入所述相似信息判别模型中,得到与所述用户输入信息对应的相似信息。
进一步地,所述根据所述自然对话数据集和信息相似度数据集建立相似信息判别模型,包括:
利用所述自然对话数据集训练第一神经网络模型,得到所述第一神经网络模型的参数;
根据训练好的第一神经网络模型,对所述信息相似度数据集中的相似语句进行句向量表示,得到多个第二句向量;
利用所述第二句向量训练第二神经网络模型,得到所述第二神经网络模型的参数;
根据所述第一神经网络模型的参数和所述第二神经网络模型的参数,结合得到所述相似信息判别模型。
进一步地,所述利用所述自然对话数据集训练第一神经网络模型,得到所述第一神经网络模型的参数,包括:
利用所述自然对话数据集中的第一对话流训练第一神经网络模型,得到所述第一对话流中多个对话语句的第一词语集合概率;
将所述自然对话数据集中的第二对话流作为第一对话流,根据得到所述第一词语集合概率的方式,获得第二对话流中多个对话语句的第二词语集合概率;
依次遍历所述自然对话数据集中其他的对话流,分别得到对应的词语集合概率;
根据所有的词语集合概率得到第一目标函数;
对所述第一目标函数进行最大化处理,确定出所述第一神经网络模型的参数;所述第一神经网络模型的参数包括词向量矩阵、编码层参数、解码层参数。
进一步地,所述利用所述自然对话数据集中的第一对话流训练第一神经网络模型,得到所述第一对话流中多个对话语句的第一词语集合概率,包括:
设定第一数量p,将所述第一对话流中第p+1个对话语句作为第一目标语句;
将所述第一目标语句的前k个对话语句和后k个对话语句输入所述第一神经网络模型中,k小于等于第一数量p;
根据所述前k个对话语句和后k个对话语句,得到所述第一目标语句对应的第一上下文向量;
根据所述第一上下文向量对所述第一目标语句中的词语进行预测,得到第一词语组合概率;
将第p+2个对话语句作为第p+1个对话语句,根据得到第一词语组合概率的方式获得第p+2个对话语句对应的第二词语组合概率;
依次遍历至倒数第p-1个语句,得出第p+1个对话语句到倒数第p-1个对话语句分别对应的词语组合概率;
由第p+1个对话语句到倒数第p-1个对话语句对应的词语组合概率,得到所述第一词语集合概率。
进一步地,所述根据所述前k个对话语句和后k个对话语句,得到所述第一目标语句对应的第一上下文向量;包括:
根据所述第一神经网络模型的编码层,对所述前k个对话语句和后k个对话语句进行句向量表示,得到2k个第一句向量;
将所述2k个第一句向量进行加权处理,得到所述第一目标语句对应的第一上下文向量。
进一步地,所述根据所述第一上下文向量对所述第一目标语句进行预测,得到第一词语组合概率,包括:
将所述第一目标语句的第一词语输入所述第一神经网络模型的解码层,使所述第一上下文向量对所述第一词语进行预测,得到所述第一词语的概率;
将第二词语作为第一词语,根据得到所述第一词语的概率的方式获得所述第二词语的概率;
依次遍历所述第一目标语句中其他词语的概率,得到所述第一词语组合概率。
进一步地,所述自然对话数据集包括多组对话流;每组对话流均包括一个或多个由连续对话形式的数据组成的对话语句;
所述信息相似度数据集包括多个三元组;每个三元组均包括一个语句对以及所述语句对对应的相似度,每个语句对均包括两个相似语句。
本说明书实施例提供了一种计算机可读存储介质,所述存储介质中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由处理器加载并执行以实现如上述方法实施例提供的相似信息推荐方法;具体地包括:
获取自然对话数据集和信息相似度数据集;
根据所述自然对话数据集和信息相似度数据集建立相似信息判别模型;
获取用户输入信息;
将所述用户输入信息传入所述相似信息判别模型中,得到与所述用户输入信息对应的相似信息。
进一步地,所述根据所述自然对话数据集和信息相似度数据集建立相似信息判别模型,包括:
利用所述自然对话数据集训练第一神经网络模型,得到所述第一神经网络模型的参数;
根据训练好的第一神经网络模型,对所述信息相似度数据集中的相似语句进行句向量表示,得到多个第二句向量;
利用所述第二句向量训练第二神经网络模型,得到所述第二神经网络模型的参数;
根据所述第一神经网络模型的参数和所述第二神经网络模型的参数,结合得到所述相似信息判别模型。
进一步地,所述利用所述自然对话数据集训练第一神经网络模型,得到所述第一神经网络模型的参数,包括:
利用所述自然对话数据集中的第一对话流训练第一神经网络模型,得到所述第一对话流中多个对话语句的第一词语集合概率;
将所述自然对话数据集中的第二对话流作为第一对话流,根据得到所述第一词语集合概率的方式,获得第二对话流中多个对话语句的第二词语集合概率;
依次遍历所述自然对话数据集中其他的对话流,分别得到对应的词语集合概率;
根据所有的词语集合概率得到第一目标函数;
对所述第一目标函数进行最大化处理,确定出所述第一神经网络模型的参数;所述第一神经网络模型的参数包括词向量矩阵、编码层参数、解码层参数。
进一步地,所述利用所述自然对话数据集中的第一对话流训练第一神经网络模型,得到所述第一对话流中多个对话语句的第一词语集合概率,包括:
设定第一数量p,将所述第一对话流中第p+1个对话语句作为第一目标语句;
将所述第一目标语句的前k个对话语句和后k个对话语句输入所述第一神经网络模型中,k小于等于第一数量p;
根据所述前k个对话语句和后k个对话语句,得到所述第一目标语句对应的第一上下文向量;
根据所述第一上下文向量对所述第一目标语句中的词语进行预测,得到第一词语组合概率;
将第p+2个对话语句作为第p+1个对话语句,根据得到第一词语组合概率的方式获得第p+2个对话语句对应的第二词语组合概率;
依次遍历至倒数第p-1个语句,得出第p+1个对话语句到倒数第p-1个对话语句分别对应的词语组合概率;
由第p+1个对话语句到倒数第p-1个对话语句对应的词语组合概率,得到所述第一词语集合概率。
进一步地,所述根据所述前k个对话语句和后k个对话语句,得到所述第一目标语句对应的第一上下文向量;包括:
根据所述第一神经网络模型的编码层,对所述前k个对话语句和后k个对话语句进行句向量表示,得到2k个第一句向量;
将所述2k个第一句向量进行加权处理,得到所述第一目标语句对应的第一上下文向量。
进一步地,所述根据所述第一上下文向量对所述第一目标语句进行预测,得到第一词语组合概率,包括:
将所述第一目标语句的第一词语输入所述第一神经网络模型的解码层,使所述第一上下文向量对所述第一词语进行预测,得到所述第一词语的概率;
将第二词语作为第一词语,根据得到所述第一词语的概率的方式获得所述第二词语的概率;
依次遍历所述第一目标语句中其他词语的概率,得到所述第一词语组合概率。
进一步地,所述自然对话数据集包括多组对话流;每组对话流均包括一个或多个由连续对话形式的数据组成的对话语句;
所述信息相似度数据集包括多个三元组;每个三元组均包括一个语句对以及所述语句对对应的相似度,每个语句对均包括两个相似语句。
可选地,在本实施例中,上述存储介质可以位于计算机网络的多个网络设备中的至少一个网络设备。可选地,在本实施例中,上述存储介质可以包括但不限于:U盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。
本说明书实施例还提供了一种相似信息推荐设备的结构示意图,如图18所示,该设备用于实施上述方法实施例中提供的相似信息推荐方法。具体来讲:
所述服务器1800包括中央处理单元(CPU)1801、包括随机存取存储器(RAM)1802和只读存储器(ROM)1803的系统存储器1804,以及连接系统存储器1804和中央处理单元1801的系统总线1805。所述服务器1800还包括帮助计算机内的各个器件之间传输信息的基本输入/输出系统(I/O系统)1806,和用于存储操作系统1813、应用程序1818和其他程序模块1818的大容量存储设备1807。
所述基本输入/输出系统1806包括有用于显示信息的显示器1808和用于用户输入信息的诸如鼠标、键盘之类的输入设备1809。其中所述显示器1808和输入设备1809都通过连接到系统总线1805的输入输出控制器1810连接到中央处理单元1801。所述基本输入/输出系统1806还可以包括输入输出控制器1810以用于接收和处理来自键盘、鼠标、或电子触控笔等多个其他设备的输入。类似地,输入输出控制器1810还提供输出到显示屏、打印机或其他类型的输出设备。
所述大容量存储设备1807通过连接到系统总线1805的大容量存储控制器(未示出)连接到中央处理单元1801。所述大容量存储设备1807及其相关联的计算机可读介质为服务器1800提供非易失性存储。也就是说,所述大容量存储设备1807可以包括诸如硬盘或者CD-ROM驱动器之类的计算机可读介质(未示出)。
不失一般性,所述计算机可读介质可以包括计算机存储介质和通信介质。计算机存储介质包括以用于存储诸如计算机可读指令、数据结构、程序模块或其他数据等信息的任何方法或技术实现的易失性和非易失性、可移动和不可移动介质。计算机存储介质包括RAM、ROM、EPROM、EEPROM、闪存或其他固态存储其技术,CD-ROM、DVD或其他光学存储、磁带盒、磁带、磁盘存储或其他磁性存储设备。当然,本领域技术人员可知所述计算机存储介质不局限于上述几种。上述的系统存储器1804和大容量存储设备1807可以统称为存储器。
根据本发明的各种实施例,所述服务器1800还可以通过诸如因特网等网络连接到网络上的远程计算机运行。也即服务器1800可以通过连接在所述系统总线1805上的网络接口单元1811连接到网络1812,或者说,也可以使用网络接口单元1811来连接到其他类型的网络或远程计算机系统(未示出)。
所述存储器还包括一个或者一个以上的程序,所述一个或者一个以上程序存储于存储器中,且经配置以由一个或者一个以上处理器执行。上述一个或者一个以上程序包含用于执行上述后台服务器侧的方法的指令。
需要说明的是:上述本说明书实施例先后顺序仅仅为了描述,不代表实施例的优劣。且上述对本说明书特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置和服务器实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (14)
1.一种相似信息推荐方法,其特征在于,所述方法包括:
获取自然对话数据集和信息相似度数据集;
利用所述自然对话数据集训练第一神经网络模型,得到所述第一神经网络模型的参数;
根据训练好的第一神经网络模型,对所述信息相似度数据集中的相似语句进行句向量表示,得到多个第二句向量;
利用所述第二句向量训练第二神经网络模型,得到所述第二神经网络模型的参数;
根据所述第一神经网络模型的参数和所述第二神经网络模型的参数,结合得到相似信息判别模型;
获取用户输入信息;
将所述用户输入信息传入所述相似信息判别模型中,得到与所述用户输入信息对应的相似信息。
2.根据权利要求1所述的相似信息推荐方法,其特征在于,所述利用所述自然对话数据集训练第一神经网络模型,得到所述第一神经网络模型的参数,包括:
利用所述自然对话数据集中的第一对话流训练第一神经网络模型,得到所述第一对话流中多个对话语句的第一词语集合概率;
将所述自然对话数据集中的第二对话流作为第一对话流,根据得到所述第一词语集合概率的方式,获得所述第二对话流中多个对话语句的第二词语集合概率;
依次遍历所述自然对话数据集中其他的对话流,分别得到对应的词语集合概率;
根据所有的词语集合概率得到第一目标函数;
对所述第一目标函数进行最大化处理,确定出所述第一神经网络模型的参数;所述第一神经网络模型的参数包括词向量参数、编码层参数、解码层参数。
3.根据权利要求2所述的相似信息推荐方法,其特征在于,所述利用所述自然对话数据集中的第一对话流训练第一神经网络模型,得到所述第一对话流中多个对话语句的第一词语集合概率,包括:
设定第一数量p,将所述第一对话流中第p+1个对话语句作为第一目标语句;
将所述第一目标语句的前k个对话语句和后k个对话语句输入所述第一神经网络模型中,k小于等于第一数量p;
根据所述前k个对话语句和后k个对话语句,得到所述第一目标语句对应的第一上下文向量;
根据所述第一上下文向量对所述第一目标语句中的词语进行预测,得到第一词语组合概率;
将第p+2个对话语句作为第p+1个对话语句,根据得到第一词语组合概率的方式获得第p+2个对话语句对应的第二词语组合概率;
依次遍历至倒数第p-1个语句,得出第p+1个对话语句到倒数第p-1个对话语句分别对应的词语组合概率;
由第p+1个对话语句到倒数第p-1个对话语句对应的词语组合概率,得到所述第一词语集合概率。
4.根据权利要求3所述的相似信息推荐方法,其特征在于,所述根据所述前k个对话语句和后k个对话语句,得到所述第一目标语句对应的第一上下文向量;包括:
根据所述第一神经网络模型的编码层,对所述前k个对话语句和后k个对话语句进行句向量表示,得到2k个第一句向量;
将所述2k个第一句向量进行加权处理,得到所述第一目标语句对应的第一上下文向量。
5.根据权利要求3所述的相似信息推荐方法,其特征在于,所述根据所述第一上下文向量对所述第一目标语句进行预测,得到第一词语组合概率,包括:
将所述第一目标语句的第一词语输入所述第一神经网络模型的解码层,使所述第一上下文向量对所述第一词语进行预测,得到所述第一词语的概率;
将第二词语作为第一词语,根据得到所述第一词语的概率的方式获得所述第二词语的概率;
依次遍历所述第一目标语句中其他词语的概率,得到所述第一词语组合概率。
6.根据权利要求1所述的相似信息推荐方法,其特征在于,所述利用所述第二句向量训练第二神经网络模型,得到所述第二神经网络模型的参数,包括:
将所述信息相似度数据集的第一语句对对应的第二句向量,输入到所述第二神经网络模型的张量网络层,得到所述第一语句对的第一相关向量;
将所述第一相关向量输入到所述第二神经网络模型的分类网络层,得到所述第一语句对的第一相似度;
将第二语句对作为第一语句对,根据得到所述第一相似度的方式获得所述第二语句对的第二相似度;
依次遍历所述信息相似度数据集的其他语句对,分别得到对应的相似度;
根据所有的语句对,以及分别对应的相似度得到第二目标函数;
对所述第二目标函数进行最大化处理,确定出所述第二神经网络模型的参数;所述第二神经网络模型的参数包括张量网络层参数和分类网络层参数。
7.根据权利要求6所述的相似信息推荐方法,其特征在于,所述将所述用户输入信息输入到所述相似信息判别模型中,得到与所述用户输入信息对应的相似信息,包括:
利用所述第一神经网络模型参数中的词向量参数和编码层参数,将所述用户输入信息进行句向量表示,得到第三句向量;
利用所述第一神经网络模型参数中的词向量参数和编码层参数,将所述信息相似度数据集所在信息库中的所有相似语句进行句向量表示,得到多个第四句向量;
根据所述第二神经网络模型参数中的张量网络层参数和分类网络层参数,得到每个第四句向量的相似语句与所述第三句向量的输入语句的语句相似度;
将得到的语句相似度与预设相似度进行比较,获得大于所述预设相似度的语句相似度;
根据大于所述预设相似度的语句相似度匹配出对应的第四句向量,并根据所述第四句向量确定出与所述用户输入信息对应的相似语句。
8.一种相似信息推荐装置,其特征在于,所述装置包括:
数据集获取模块,用于获取自然对话数据集和信息相似度数据集;
判别模型建立模块,包括:
第一模型参数得到单元,用于利用所述自然对话数据集训练第一神经网络模型,得到所述第一神经网络模型的参数;
第二句向量获取单元,用于根据训练好的第一神经网络模型,对所述信息相似度数据集中的相似语句进行句向量表示,得到多个第二句向量;
第二模型参数得到单元,用于利用所述第二句向量训练第二神经网络模型,得到所述第二神经网络模型的参数;
判别模型生成单元,用于根据所述第一神经网络模型的参数和所述第二神经网络模型的参数,结合得到相似信息判别模型;
输入信息获取模块,用于获取用户输入信息;
相似信息得到模块,用于将所述用户输入信息传入所述相似信息判别模型中,得到与所述用户输入信息对应的相似信息。
9.根据权利要求8所述的相似信息推荐装置,其特征在于,所述第一模型参数得到单元,包括:
第一集合概率得到子单元,用于利用所述自然对话数据集中的第一对话流训练第一神经网络模型,得到所述第一对话流中多个对话语句的第一词语集合概率;
第二集合概率得到子单元,用于将所述自然对话数据集中的第二对话流作为第一对话流,根据得到所述第一词语集合概率的方式,获得第二对话流中多个对话语句的第二词语集合概率;
对应词语集合概率得到子单元,用于依次遍历所述自然对话数据集中其他的对话流,分别得到对应的词语集合概率;
第一目标函数得到子单元,用于根据所有的词语集合概率得到第一目标函数;
第一模型参数得到子单元,用于对所述第一目标函数进行最大化处理,确定出所述第一神经网络模型的参数;所述第一神经网络模型的参数包括词向量参数、编码层参数、解码层参数。
10.根据权利要求9所述的相似信息推荐装置,其特征在于,所述第一集合概率得到子单元,包括:
目标语句选择子单元,用于设定第一数量p,将所述第一对话流中第p+1个对话语句作为第一目标语句;
语句输入子单元,用于将所述第一目标语句的前k个对话语句和后k个对话语句输入所述第一神经网络模型中,k小于等于第一数量p;
第一上下文向量得到子单元,用于根据所述前k个对话语句和后k个对话语句,得到所述第一目标语句对应的第一上下文向量;
第一组合概率得到子单元,用于根据所述第一上下文向量对所述第一目标语句进行预测,得到第一词语组合概率;
第二组合概率得到子单元,用于将第p+2个对话语句作为第p+1个对话语句,根据得到第一词语组合概率的方式获得第p+2个对话语句对应的第二词语组合概率;
对应词语组合概率得到子单元,用于依次遍历至倒数第p-1个语句,得出第p+1个对话语句到倒数第p-1个对话语句分别对应的词语组合概率;
第一词语集合概率获得子单元,用于由第p+1个对话语句到倒数第p-1个对话语句对应的词语组合概率,得到所述第一词语集合概率。
11.根据权利要求10所述的相似信息推荐装置,其特征在于,所述第一组合概率得到子单元,包括:
第一词语概率得到子单元,用于将所述第一目标语句的第一词语输入所述第一神经网络模型的解码层,使所述第一上下文向量对所述第一词语进行预测,得到所述第一词语的概率;
第二词语概率得到子单元,用于将第二词语作为第一词语,根据得到所述第一词语的概率的方式获得所述第二词语的概率;
第一词语组合概率获得子单元,用于依次遍历所述第一目标语句中其他词语的概率,得到所述第一词语组合概率。
12.根据权利要求8所述的相似信息推荐装置,其特征在于,所述第二模型参数得到单元包括:
第一相关向量得到子单元,用于将所述信息相似度数据集的第一语句对对应的第二句向量,输入到所述第二神经网络模型的张量网络层,得到所述第一语句对的第一相关向量;
第一相似度得到子单元,用于将所述第一相关向量输入到所述第二神经网络模型的分类网络层,得到所述第一语句对的第一相似度;
第二相似度得到子单元,用于将第二语句对作为第一语句对,根据得到所述第一相似度的方式获得所述第二语句对的第二相似度;
对应相似度得到子单元,用于依次遍历所述信息相似度数据集的其他语句对,分别得到对应的相似度;
第二目标函数得到子单元,用于根据每个语句对,以及分别对应的相似度得到第二目标函数;
第二模型参数得到子单元,用于对所述第二目标函数进行最大化处理,确定出所述第二神经网络模型的参数;所述第二神经网络模型的参数包括张量网络层参数和分类网络层参数。
13.一种设备,其特征在于,所述设备包括处理器和存储器,所述存储器中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由所述处理器加载并执行以实现如权利要求1至7任一所述的相似信息推荐方法。
14.一种计算机可读存储介质,所述存储介质中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由处理器加载并执行以实现如权利要求1至7任一所述的相似信息推荐方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810731844.1A CN109241268B (zh) | 2018-07-05 | 2018-07-05 | 一种相似信息推荐方法、装置、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810731844.1A CN109241268B (zh) | 2018-07-05 | 2018-07-05 | 一种相似信息推荐方法、装置、设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109241268A CN109241268A (zh) | 2019-01-18 |
CN109241268B true CN109241268B (zh) | 2020-08-18 |
Family
ID=65071877
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810731844.1A Active CN109241268B (zh) | 2018-07-05 | 2018-07-05 | 一种相似信息推荐方法、装置、设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109241268B (zh) |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110083834B (zh) * | 2019-04-24 | 2023-05-09 | 北京百度网讯科技有限公司 | 语义匹配模型训练方法、装置、电子设备及存储介质 |
CN110275936B (zh) * | 2019-05-09 | 2021-11-23 | 浙江工业大学 | 一种基于自编码神经网络的相似法律案例检索方法 |
CN111949780B (zh) * | 2020-07-31 | 2021-12-31 | 八维通科技有限公司 | 沿出行线路自动交互方法 |
CN114063459B (zh) * | 2020-08-10 | 2024-03-15 | 海信集团控股股份有限公司 | 一种终端和智能家居控制方法 |
CN112949674A (zh) * | 2020-08-22 | 2021-06-11 | 上海昌投网络科技有限公司 | 一种多模型融合的语料生成方法及装置 |
CN112528039A (zh) * | 2020-12-16 | 2021-03-19 | 中国联合网络通信集团有限公司 | 词语处理方法、装置、设备及存储介质 |
CN112528621B (zh) * | 2021-02-10 | 2021-05-14 | 腾讯科技(深圳)有限公司 | 文本处理、文本处理模型训练方法、装置和存储介质 |
CN118093808A (zh) * | 2024-01-17 | 2024-05-28 | 瀚高基础软件股份有限公司 | 一种基于向量数据库的问答方法及装置 |
Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2015157036A1 (en) * | 2014-04-09 | 2015-10-15 | Google Inc. | Text-dependent speaker identification |
CN106557563A (zh) * | 2016-11-15 | 2017-04-05 | 北京百度网讯科技有限公司 | 基于人工智能的查询语句推荐方法及装置 |
CN106777013A (zh) * | 2016-12-07 | 2017-05-31 | 科大讯飞股份有限公司 | 对话管理方法和装置 |
CN106897263A (zh) * | 2016-12-29 | 2017-06-27 | 北京光年无限科技有限公司 | 基于深度学习的机器人对话交互方法及装置 |
CN107169119A (zh) * | 2017-05-26 | 2017-09-15 | 九次方大数据信息集团有限公司 | 基于数据结构识别的自动化可视化呈现方法与系统 |
CN107330130A (zh) * | 2017-08-29 | 2017-11-07 | 北京易掌云峰科技有限公司 | 一种向人工客服推荐回复内容的对话机器人的实现方法 |
CN107506823A (zh) * | 2017-08-22 | 2017-12-22 | 南京大学 | 一种用于对话生成的混合神经网络模型的构建方法 |
CN107577737A (zh) * | 2017-08-25 | 2018-01-12 | 北京百度网讯科技有限公司 | 用于推送信息的方法和装置 |
CN107679234A (zh) * | 2017-10-24 | 2018-02-09 | 上海携程国际旅行社有限公司 | 客服信息提供方法、装置、电子设备、存储介质 |
CN107818164A (zh) * | 2017-11-02 | 2018-03-20 | 东北师范大学 | 一种智能问答方法及其系统 |
-
2018
- 2018-07-05 CN CN201810731844.1A patent/CN109241268B/zh active Active
Patent Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2015157036A1 (en) * | 2014-04-09 | 2015-10-15 | Google Inc. | Text-dependent speaker identification |
CN106557563A (zh) * | 2016-11-15 | 2017-04-05 | 北京百度网讯科技有限公司 | 基于人工智能的查询语句推荐方法及装置 |
CN106777013A (zh) * | 2016-12-07 | 2017-05-31 | 科大讯飞股份有限公司 | 对话管理方法和装置 |
CN106897263A (zh) * | 2016-12-29 | 2017-06-27 | 北京光年无限科技有限公司 | 基于深度学习的机器人对话交互方法及装置 |
CN107169119A (zh) * | 2017-05-26 | 2017-09-15 | 九次方大数据信息集团有限公司 | 基于数据结构识别的自动化可视化呈现方法与系统 |
CN107506823A (zh) * | 2017-08-22 | 2017-12-22 | 南京大学 | 一种用于对话生成的混合神经网络模型的构建方法 |
CN107577737A (zh) * | 2017-08-25 | 2018-01-12 | 北京百度网讯科技有限公司 | 用于推送信息的方法和装置 |
CN107330130A (zh) * | 2017-08-29 | 2017-11-07 | 北京易掌云峰科技有限公司 | 一种向人工客服推荐回复内容的对话机器人的实现方法 |
CN107679234A (zh) * | 2017-10-24 | 2018-02-09 | 上海携程国际旅行社有限公司 | 客服信息提供方法、装置、电子设备、存储介质 |
CN107818164A (zh) * | 2017-11-02 | 2018-03-20 | 东北师范大学 | 一种智能问答方法及其系统 |
Also Published As
Publication number | Publication date |
---|---|
CN109241268A (zh) | 2019-01-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109241268B (zh) | 一种相似信息推荐方法、装置、设备及存储介质 | |
CN108536679B (zh) | 命名实体识别方法、装置、设备及计算机可读存储介质 | |
WO2020238985A1 (zh) | 模型训练方法、对话生成方法、装置、设备及存储介质 | |
US10657962B2 (en) | Modeling multiparty conversation dynamics: speaker, response, addressee selection using a novel deep learning approach | |
CN111897941B (zh) | 对话生成方法、网络训练方法、装置、存储介质及设备 | |
CN108319599B (zh) | 一种人机对话的方法和装置 | |
CN109874029B (zh) | 视频描述生成方法、装置、设备及存储介质 | |
CN110032630B (zh) | 话术推荐设备、方法及模型训练设备 | |
CN111932144B (zh) | 一种客服坐席分配方法、装置、服务器及存储介质 | |
US11928611B2 (en) | Conversational interchange optimization | |
CN110188331A (zh) | 模型训练方法、对话系统评价方法、装置、设备及存储介质 | |
US20220121906A1 (en) | Task-aware neural network architecture search | |
KR102234850B1 (ko) | 릴레이션 네트워크에 기반한 지식 보완 방법 및 장치 | |
CN110275939B (zh) | 对话生成模型的确定方法及装置、存储介质、电子设备 | |
WO2017186050A1 (zh) | 人机智能问答系统的断句识别方法和装置 | |
CN110234018B (zh) | 多媒体内容描述生成方法、训练方法、装置、设备及介质 | |
US11625556B1 (en) | Customer service learning machine | |
CN112307168A (zh) | 基于人工智能的问诊会话处理方法、装置和计算机设备 | |
US20230088445A1 (en) | Conversational recommendation method, method of training model, device and medium | |
CN113590078A (zh) | 虚拟形象合成方法、装置、计算设备及存储介质 | |
CN113705191A (zh) | 样本语句的生成方法、装置、设备及存储介质 | |
CN117271745A (zh) | 一种信息处理方法、装置及计算设备、存储介质 | |
CN112131345A (zh) | 文本质量的识别方法、装置、设备及存储介质 | |
CN110955765A (zh) | 智能助理的语料构建方法、装置、计算机设备和存储介质 | |
CN110888539B (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 | ||
TR01 | Transfer of patent right |
Effective date of registration: 20211229 Address after: 16F, Kungang science and technology building, 777 Huancheng South Road, Xishan District, Kunming, Yunnan 650100 Patentee after: Yunnan Tengyun Information Industry Co.,Ltd. Address before: 518057 Tencent Building, No. 1 High-tech Zone, Nanshan District, Shenzhen City, Guangdong Province, 35 floors Patentee before: TENCENT TECHNOLOGY (SHENZHEN) Co.,Ltd. |
|
TR01 | Transfer of patent right |