一种分层神经网络查询推荐方法及装置与流程

文档序号:17625204发布日期:2019-05-10 23:34阅读:223来源:国知局
一种分层神经网络查询推荐方法及装置与流程
本发明涉及计算机网络
技术领域
,具体涉及一种分层神经网络查询推荐方法及装置。
背景技术
:现有技术中,存在各种各样的查询推荐方法。查询推荐是在用户进行信息检索过程中,当用户只输入部分查询关键词时,系统可以预测用户的查询意图,推荐给用户一组查询候选词供其选择。通过查询推荐可以帮助用户重新修改他们输入的查询关键词,以便更准确查找到所需要的内容,提高用户的满意度。目前传统的查询推荐方法大都基于特征的挖掘,所采用的特征包括查询之间的共现度和语义相似度等。但是这种特征的挖掘往往都是人为定义和操作,很可能有一些隐藏的特征没有被挖掘和发现。现有技术中的基于rnn(recurrentneuralnetworks,循环神经网络)的查询推荐方法,可以很好地对时间序列数据进行建模,从而对下一个可能的查询项进行预测。但是,该方法只关注了当前的短期查询会话,没有考虑用户的查询记录,因此查询推荐的效率和准确率有待提高。技术实现要素:有鉴于此,本发明的目的在于提出一种分层神经网络查询推荐方法及装置,能提高查询推荐效率和准确率。根据本发明的一个方面,提供一种分层神经网络查询推荐方法,包括:建立用于对用户短期查询记录进行建模的会话层神经网络和用于对用户长期查询记录进行建模的用户层神经网络两个神经网络,其中将当前时刻的所述会话层神经网络的状态向量作为当前时刻所述用户层神经网络的输入,将当前时刻的所述用户层神经网络的状态向量作为下一时刻的所述会话层神经网络的输入;根据所述会话层神经网络和所述用户层神经网络,为查询会话输出查询推荐内容。优选的,所述方法还包括:将所述会话层神经网络中的状态向量的值以不同的权重组合成新的会话层神经网络的状态向量;所述根据所述会话层神经网络和所述用户层神经网络,为查询会话输出查询推荐内容,包括:根据更新会话层神经网络状态向量后的所述会话层神经网络和所述用户层神经网络,为查询会话输出查询推荐内容。优选的,所述将当前时刻的所述会话层神经网络的状态向量作为当前时刻所述用户层神经网络的输入,将当前时刻的所述用户层神经网络的状态向量作为下一时刻的所述会话层神经网络的输入,包括:将t时刻的会话层神经网络的状态向量作为t时刻用户层神经网络的输入,将t时刻用户层神经网络的状态向量作为t+1时刻会话层神经网络的输入,将t+1时刻会话层神经网络的状态向量作为t+1时刻用户层神经网络的输入,其中t大于或等于0。优选的,所述将t时刻用户层神经网络的状态向量作为t+1时刻会话层神经网络的输入,将t+1时刻会话层神经网络的状态向量作为t+1时刻用户层神经网络的输入隐藏层,包括:将t时刻用户层神经网络的状态向量用来初始化t+1时刻的会话层神经网络的第一个隐藏层状态向量;将t+1时刻的会话层神经网络的最后一个隐藏层状态向量作为t+1时刻用户层神经网络的输入。优选的,所述将t时刻用户层神经网络的状态向量用来初始化t+1时刻的会话层神经网络的第一个隐藏层状态向量,包括:将t时刻用户层神经网络的最后一个隐藏层的状态向量用来初始化t+1时刻的会话层神经网络的第一个隐藏层状态向量。优选的,所述将所述会话层神经网络中的状态向量的值以不同的权重组合成新的会话层神经网络的状态向量,包括:将所述会话层神经网络中所有隐藏层的状态向量的值以不同的权重组合成新的会话层神经网络的状态向量。根据本发明的另一个方面,提供一种分层神经网络查询推荐装置,包括:分层神经网络建立模块,用于建立会话层神经网络和用户层神经网络两个神经网络,其中将当前时刻的所述会话层神经网络的状态向量作为当前时刻所述用户层神经网络的输入,将当前时刻的所述用户层神经网络的状态向量作为下一时刻的所述会话层神经网络的输入;推荐输出模块,用于根据所述分层神经网络建立模块建立的所述会话层神经网络和所述用户层神经网络,为查询会话输出查询推荐内容。优选的,所述装置还包括:注意力机制处理模块,用于将所述分层神经网络建立模块建立的会话层神经网络中的状态向量的值以不同的权重组合成新的会话层神经网络的状态向量;所述推荐输出模块,根据更新会话层神经网络状态向量后的所述会话层神经网络和所述用户层神经网络,为查询会话输出查询推荐内容。优选的,所述分层神经网络建立模块将t时刻的会话层神经网络的状态向量作为t时刻用户层神经网络的输入,将t时刻用户层神经网络的状态向量作为t+1时刻会话层神经网络的输入,将t+1时刻会话层神经网络的状态向量作为t+1时刻用户层神经网络的输入,其中t大于或等于0。优选的,所述注意力机制处理模块将所述会话层神经网络中所有隐藏层的状态向量的值以不同的权重组合成新的会话层神经网络的状态向量。可以发现,本发明实施例的技术方案,分别建立了用于对用户短期查询记录进行建模的会话层神经网络和用于对用户长期查询记录进行建模的用户层神经网络两个神经网络,其中将当前时刻的所述会话层神经网络的状态向量作为当前时刻所述用户层神经网络的输入,将当前时刻的所述用户层神经网络的状态向量作为下一时刻的所述会话层神经网络的输入;当接收到查询会话时,可以根据所述会话层神经网络和所述用户层神经网络,为查询会话输出查询推荐内容。其中会话层神经网络可以针对用户的短期查询记录建模,用户层神经网络可以针对用户的长期查询记录进行建模,且会话层神经网络和用户层神经网络两个神经网络的输入和输出可以建立关联关系。这样,不仅仅考虑了当前的短期查询记录,也考虑到了用户长期的查询记录,而且将会话层神经网络和用户层神经网络两个神经网络的状态向量紧密联系起来进行综合考虑,提高了查询推荐的效率和准确率。进一步的,本发明实施例还可以引入注意力机制,将所述会话层神经网络中的状态向量的值以不同的权重组合成新的会话层神经网络的状态向量,这样就运用注意力机制更好捕捉了用户的偏好信息。附图说明通过结合附图对本公开示例性实施方式进行更详细的描述,本公开的上述以及其它目的、特征和优势将变得更加明显,其中,在本公开示例性实施方式中,相同的参考标号通常代表相同部件。图1是根据本发明的一个实施例的一种分层神经网络查询推荐方法的示意性流程图;图2是根据本发明的一个实施例的一种分层神经网络查询推荐方法的另一示意性流程图;图3是根据本发明的一个实施例的一种nqs模型的示意图;图4是根据本发明的一个实施例的一种hnqs模型的示意图;图5是根据本发明的一个实施例的一种ahnqs模型的示意图;图6是根据本发明的一个实施例的一种recall指标下不同查询会话长度的各模型检测效果图;图7是根据本发明的一个实施例的一种mrr指标下不同查询会话长度的各模型检测效果图;图8是根据本发明的一个实施例的一种分层神经网络查询推荐装置的示意性方框图;图9是根据本发明的一个实施例的一种分层神经网络查询推荐设备的示意性方框图。具体实施方式为使本发明的目的、技术方案和优点更加清楚明白,以下结合具体实施例,并参照附图,对本发明进一步详细说明。虽然附图中显示了本公开的优选实施方式,然而应该理解,可以以各种形式实现本公开而不应被这里阐述的实施方式所限制。相反,提供这些实施方式是为了使本公开更加透彻和完整,并且能够将本公开的范围完整地传达给本领域的技术人员。本发明提供一种分层神经网络查询推荐方法,具体是提供一种基于注意力机制的分层神经网络查询推荐方法,能提高查询推荐效率和准确率。以下结合附图详细描述本发明实施例的技术方案。图1是根据本发明的一个实施例的一种分层神经网络查询推荐方法的示意性流程图。该方法可以应用于分层神经网络查询推荐装置中。参见图1,所述方法包括:在步骤101中,建立用于对用户短期查询记录进行建模的会话层神经网络和用于对用户长期查询记录进行建模的用户层神经网络两个神经网络,其中将当前时刻的所述会话层神经网络的状态向量作为当前时刻所述用户层神经网络的输入,将当前时刻的所述用户层神经网络的状态向量作为下一时刻的所述会话层神经网络的输入。该步骤中,可以将t时刻的会话层神经网络的状态向量作为t时刻用户层神经网络的输入,将t时刻用户层神经网络的状态向量作为t+1时刻会话层神经网络的输入,将t+1时刻会话层神经网络的状态向量作为t+1时刻用户层神经网络的输入,其中t大于或等于0。其中,可以是将t时刻用户层神经网络的状态向量用来初始化t+1时刻的会话层神经网络的第一个隐藏层状态向量;将t+1时刻的会话层神经网络的最后一个隐藏层状态向量作为t+1时刻用户层神经网络的输入。其中,可以是将t时刻用户层神经网络的最后一个隐藏层的状态向量用来初始化t+1时刻的会话层神经网络的第一个隐藏层状态向量。在步骤102中,根据所述会话层神经网络和所述用户层神经网络,为查询会话输出查询推荐内容。可以发现,本发明实施例的技术方案,分别建立了用于对用户短期查询记录进行建模的会话层神经网络和用于对用户长期查询记录进行建模的用户层神经网络两个神经网络,其中将当前时刻的所述会话层神经网络的状态向量作为当前时刻所述用户层神经网络的输入,将当前时刻的所述用户层神经网络的状态向量作为下一时刻的所述会话层神经网络的输入;当接收到查询会话时,可以根据所述会话层神经网络和所述用户层神经网络,为查询会话输出查询推荐内容。其中会话层神经网络可以针对用户的短期查询记录建模,用户层神经网络可以针对用户的长期查询记录进行建模,且会话层神经网络和用户层神经网络两个神经网络的输入和输出可以建立关联关系。这样,本发明方案不仅仅考虑了当前的短期查询记录,也考虑到了用户长期的查询记录,而且将会话层神经网络和用户层神经网络两个神经网络的状态向量紧密联系起来进行综合考虑,提高了查询推荐的效率和准确率。图2是根据本发明的一个实施例的一种分层神经网络查询推荐方法的另一示意性流程图。图2相对于图1更详细描述了本发明方案。该方法可以应用于分层神经网络查询推荐装置中。本发明提出了一种基于注意力机制(attentionmachanism)的分层神经网络查询推荐方法。该方法中,包括两个神经网络,一个称为会话层神经网络(可简称为会话层),另一个称为用户层神经网络(可简称为用户层)。其中,会话层神经网络主要针对用户的短期查询记录,可用于对用户的短期查询记录进行建模,用户层神经网络主要针对用户的长期查询记录,可用于对用户的长期查询记录进行建模。一般会话层神经网络可以包括输入层、隐藏层、输出层等;其中输入层是查询会话中各个查询的编码表示;隐藏层的状态向量是由输入层经过计算得到。其中,会话层神经网络的状态向量(用来表征短期查询会话的状态向量)可以用来作为用户层神经网络的输入,同样,用户层神经网络的状态向量(用来表征用户的状态向量)可以用来作为会话层神经网络的输入。具体的,可以将当前时刻的会话层神经网络的状态向量作为当前时刻用户层神经网络的输入,然后将当前时刻用户层神经网络的状态向量作为下一时刻会话层神经网络的输入。例如,可以将t时刻的会话层神经网络的状态向量作为t时刻用户层神经网络的输入,然后将t时刻用户层神经网络的状态向量作为t+1时刻会话层神经网络的输入,将t+1时刻会话层神经网络的状态向量作为t+1时刻用户层神经网络的输入。其中可以将t时刻用户层神经网络的状态向量用来初始化t+1时刻的会话层神经网络的第一个隐藏层状态向量;将t+1时刻的会话层神经网络的最后一个隐藏层状态向量作为t+1时刻用户层神经网络的输入。其中,t大于或等于0。其中所说的状态向量,是状态变量在某一时刻的值,称为系统在时刻的状态。状态变量在t=0时刻的值称为系统的初始状态或起始状态,即也称为初始状态向量或起始状态向量,例如本发明系统的初始状态可以是指会话层神经网络第一个隐藏层的向量值(即t=0时刻的状态向量)。另外,本发明还运用了注意力机制来更好捕捉用户的偏好信息。随着深度学习的兴起,基于注意力机制的神经网络成为了最近神经网络研究的一个热点。注意力机制是一种策略,最早是在视觉图像领域提出来。注意力机制的思想是提高有用信息的权重,从而让任务处理系统更专注于找到输入数据中显著的与当前输出相关的有用信息,从而提高输出的质量。注意力机制也是一个资源分配模型,它模拟人脑工作,将更多的资源集中在重要的内容上。本发明经研究发现,在一个查询会话中,不同的查询表达了不同的用户意图,同时在表达用户兴趣爱好时也具有不同的权重,例如被用户点击的查询可能更能表现用户的查询意图。本发明运用注意力机制给不同的查询会话分配不同的权重,这样不同查询会话的隐藏向量就可以以不同的权重组合成新的查询会话的状态向量。根据在aol(americaonlinelog,搜索记录数据集)上进行的实验,实验结果表明本发明方法比现有基于rnn(循环神经网络)的查询推荐方法要好,在mrr(meanreciprocalrank,平均倒数排名,是把标准答案在被评价系统给出结果中的排序取倒数作为它的准确度,再对所有的问题取平均)指标和recall(召回率)指标上提高了21.86%和22.99%,尤其对短的查询会话,效果提高更加明显。参见图2,所述方法包括:在步骤201中,建立会话层神经网络和用户层神经网络两个神经网络,其中将当前时刻的会话层神经网络的状态向量作为当前时刻用户层神经网络的输入,将当前时刻的用户层神经网络的状态向量作为下一时刻的会话层神经网络的输入。现有技术中基于rnn(recurrentneuralnetworks,循环神经网络)的查询推荐方法,主要是基于会话层神经网络的查询推荐方法。一般会话层神经网络可以包括输入层、隐藏层、输出层等;其中输入层是查询会话中各个查询的编码表示;隐藏层的状态向量是由输入层经过计算得到,计算过程如公式(1)所示;输出层由隐藏层计算得到,计算过程如公式(5)所示。其中,会话可以是指包含一段时间内的查询的一个序列,例如查询1,查询2,...,查询n,而会话层是指一个神经网络。一般而言,如果前后两个查询词查询时间不超过设定时间例如30分钟,可以认为在同一个查询会话中。参见图3,是根据本发明的一个实施例的一种nqs(neuralquerysuggestion,基于神经网络的查询推荐)模型的示意图。其中会话层神经网络从下至上分别包括输入层(inputlayer)、隐藏层(hiddenlayer),输出层(outputlayer)。其中,假设一个查询会话中有个查询,表示为为了产生输入该rnn的状态向量,对每个查询会话采用1-of-n编码的方式。其中隐藏层的状态向量可以通过公式(1)计算:其中:其中,表示隐藏层的状态向量,表示上一隐藏层的状态向量,为更新权重,是激活的状态向量,是遗忘权重,表示第n个输入的查询,表示来自的权重,表示来自的权重,表示sigmod激活函数。其中sigmoid激活函数也称为s型生长曲线,在信息科学中,由于其单增以及反函数单增等性质,sigmoid函数常被用作神经网络的阈值函数,将变量映射到0,1之间。其中tanh()为双曲正切函数。其中,可以用rnn_session和rnn_user分别表示gru(gatedrecurrentunit,门控循环单元)函数,将会话层神经网络的状态向量表示为。这个神经网络的输出为预测下一个查询推荐项的得分:其中表示会话层神经网络中输出层的值,表示输出为下一个查询推荐项的得分。其中,g()表示tanh激活函数,hn,t表示t时刻会话层神经网络的第n个隐藏层的状态向量。其中,可以选用成对比较的损失函数,因为这样可以让得分比较高,更有可能成为准确查询的推荐项排在列表的前面,从而提高用户的使用满意度。一般在推荐系统中,大都采用交叉熵或者top1的损失函数,top1的效果更好,因此,可以采用以下的损失函数loss:其中,表示负样本的个数,分别表示负样本的得分和正确值的得分。本发明相对于现有技术中基于rnn的查询推荐方法,提出用户-会话rnn查询推荐方法。本发明可以将当前时刻的每个会话层神经网络最后一个隐藏层的状态向量,作为当前时刻的用户层神经网络的输入;当前时刻的用户层神经网络中最后一个隐藏层的状态向量也可以用来初始化下一个时刻的会话层神经网络的第一个隐藏层的状态向量。例如,将t时刻用户层神经网络的最后一个隐藏层的状态向量用来初始化t+1时刻的会话层神经网络的第一个隐藏层状态向量。其中,计算用户层神经网络中隐藏层的状态向量,其计算过程如公式(7)所示;会话层神经网络的第一个隐藏层的状态向量的计算如公式(8)所示。现有技术中基于会话rnn的查询推荐方法只对用户的短期查询记录进行了建模,并没有对用户的长期检索记录进行建模,因此本发明提出了分层的nqs方法,即hnqs(hierarchicalneuralquerysuggestion,基于分层神经网络的查询推荐模型)。参见图4所示,是根据本发明的一个实施例的一种hnqs模型的示意图。图4中,下方是会话层神经网络(session-levelrnn),上方是用户层神经网络(user-levelrnn)。图4中,包括会话层神经网络和用户层神经网络两个神经网络,图中下方包括t、t+1和t+2时刻的会话层神经网络,上方包括t和t+1时刻的用户层神经网络。其中,将t时刻的会话层神经网络的状态向量作为t时刻用户层神经网络的输入,然后将t时刻用户层神经网络的状态向量作为t+1时刻会话层神经网络的输入,将t+1时刻会话层神经网络的状态向量作为t+1时刻用户层神经网络的输入。其中,是可以将t时刻用户层神经网络的状态向量用来初始化t+1时刻的会话层神经网络的第一个隐藏层状态向量;将t+1时刻的会话层神经网络的最后一个隐藏层状态向量作为t+1时刻用户层神经网络的输入;同理,将t+1时刻的会话层神经网络的状态向量作为t+1时刻用户层神经网络的输入,然后将t+1时刻用户层神经网络的状态向量作为t+2时刻会话层神经网络的输入,以此类推。对于会话层神经网络,查询会话中的查询词在编码以后作为神经网络的输入进入会话层神经网络进行计算。对于用户层神经网络,依次使用t、t+1和t+2时刻会话层神经网络的最后一个隐藏层向量即会话层神经网络状态向量作为输入,输出的是用户层神经网络最后一个隐藏层向量即用户层神经网络状态向量。关于会话层神经网络和用户层神经网络两层的连接,是可以将t时刻的会话层神经网络状态向量作为t时刻的用户层神经网络输入,然后将t时刻用户层神经网络状态向量作为t+1时刻会话层神经网络的输入。参见图4,对于t+1时刻的查询会话,两个神经网络的建模过程可以如下:用t时刻的用户层神经网络的状态向量ut(即t时刻用户层神经网络最后一个隐藏层向量ht,u=ut)和t+1时刻的查询会话中的第一个查询词q1,t+1的编码作为输入,计算会话层神经网络中第一个隐藏层向量,然后依次结合查询会话中的查询词编码,计算第一个隐藏层向量后面的其他隐藏层向量;一直到结合查询会话的最后一个查询词进行计算,此时对应会话层神经网络最后一个隐藏层向量,可以称这个向量为会话层神经网络的状态向量st+1,然后将这个状态向量st+1输入t+1时刻的用户层神经网络。结合t时刻用户层神经网络的状态向量ut(即t时刻用户层神经网络最后一个隐藏层向量ht,u=ut),计算产生t+1时刻用户层神经网络状态向量ut+1(即t+1时刻用户层神经网络最后一个隐藏层向量ht+1,u=ut+1)。这样,一个查询会话的输入和两个神经网络的处理建模过程就完成了,后面再接收的查询会话,也是一样的处理过程。其中,用户层神经网络的输入为会话层神经网络的状态向量,用户层神经网络的更新为:表示用户层神经网络中第n个隐藏层的状态向量的值,表示第n个会话层神经网络的状态向量值。其中,u表示用户u,rnnuser()表示用户层神经网络。其中,本发明是使用用户层神经网络的状态向量输入会话层神经网络,可以用来引入用户的长期检索偏好信息:其中,表示t+1时刻会话层神经网络的第一个隐藏层的状态向量值,表示用户层神经网络状态向量,w表示权重向量,表示偏置向量。在步骤202中,将会话层神经网络中所有隐藏层的状态向量的值以不同的权重组合成新的会话层神经网络的状态向量。本发明进一步建立基于注意力机制的hnqs模型。本发明提出的基于注意力机制的hnqs模型,也即ahnqs(attention-basedhierarchicalneuralquerysuggestion,基于注意力机制和分层神经网络的查询推荐模型),将会话层神经网络中所有隐藏层的状态向量的值以不同的权重组合成新的会话层神经网络的状态向量,然后作为用户层神经网络的输入。本发明方案中,认为在一个查询会话中,不同的查询表达了不同的用户意图,同时在表达用户兴趣爱好时也具有不同的权重,例如被用户点击的查询可能更能表现用户的查询意图。本发明通过注意力机制可以给会话层神经网络中不同的查询会话分配不同的权重,这样会话层神经网络中所有隐藏层的状态向量可以以不同的权重组合成新的会话层神经网络的状态向量。参见图5,是根据本发明的一个实施例的一种ahnqs模型的示意图。图5中,下方是会话层神经网络(sessionlevelrnn),上方是用户层神经网络(user-levelrnn),其中会话层神经网络(sessionlevel)引入用户注意力(userattention)。如图5所示:在用户层神经网络,用户状态信息的更新如下:其中:其中,表示t时刻会话层神经网络的状态向量值,由公式(10)计算得到,表示t时刻会话层神经网络的第j个隐藏层的状态值。表示t时刻会话层神经网络的第j个隐藏层的权重值,为中间参数。这样,其中的参数可以通过损失函数来不断得到更新。其中,ht,u表示用户层神经网络用户u的第t个隐藏层状态向量,u表示用户u,htt-1,u表示用户u的t-1时刻个隐藏层状态向量,hj,t表示t时刻会话层神经网络的第j个隐藏层状态向量值,exp()表示指数函数。本发明通过权重值将会话层神经网络中所有隐藏层的状态向量组合成新的会话层神经网络的状态向量。在步骤203中,根据更新会话层神经网络状态向量后的所述会话层神经网络和所述用户层神经网络,为查询会话输出查询推荐内容。在将会话层神经网络中所有隐藏层的状态向量的值分配不同权重并以不同的权重组合成新的会话层神经网络的状态向量后,再重新作为用户层神经网络的输入,这样会话层神经网络和所述用户层神经网络的状态向量会相应发生变化。该步骤根据更新会话层神经网络状态向量后的所述会话层神经网络和所述用户层神经网络,为查询会话输出查询推荐内容,可以得到更准确的查询推荐内容。本发明方案通过实验对hnqs模型和ahnqs模型进行检查,判断两者能否提高查询推荐的效果,即分层机制和注意力机制对查询推荐效果是否有帮助。另外随着查询会话的长度的变化,推荐效果有时候也会改变。结合前述内容,本发明所描述的查询推荐模型包括:(1)adj(theoriginalco-occurrencebasedranking,原始基于共现度的查询推荐)模型;(2)nqs模型;(3)hnqs模型;(4)ahnqs模型。本发明将数据集和具体的参数设置展示在表1和表2中。表1模型批大小剔除率学习率动量nqs500.50.010.0hnqs500.10.10.0ahnqs500.10.10.0表2本发明采用mrr和recall指标来衡量所有模型的效果。根据实验结果,得出以下结论:1)总体的表现本发明将所有模型的效果显示在表3中,其中对最好的模型效果进行了数据显著性检验,如下表3所示:model(模型)recall@10mrr@10adj.7072.6922nqs.6444.6148hnqs.8138▲.7874▲ahnqs.8618▲.8514▲表3根据上述实验结果,可以看到ahnqs的数值最大,也代表最好的结果是ahnqs,然后是hnqs、adj,最差的是nqs,其中在mrr和recall指标上,ahnqs比adj高了21.86%和22.99%,hnqs只分别高了5.9%和8.13%,这也进一步表明了本发明的注意力机制对提高查询推荐的效果是有帮助。为了进一步研究会话长度对本发明方法的影响,本发明将查询会话的长度分为短(short)、中(medium)、长(long),并在不同的查询会话长度时对不同模型方法进行检测,结果如参见图6和图7所示。其中,图6是根据本发明的一个实施例的一种recall指标下不同查询会话长度的各模型检测效果图;图7是根据本发明的一个实施例的一种mrr指标下不同查询会话长度的各模型检测效果图。图6和图7中,对于每个会话长度情况短、中、长,四个柱形分别对应adj、nqs、hnqs、ahnqs。可以看到,在每个长度上,ahnqs的数值最高,代表效果都是最好的,其次是hnqs,但是在mrr指标上,ahnqs比hnqs的提高量较recall指标要多,这也进一步验证了本发明方法提出的注意力机制对于查询推荐的准确性有明显的帮助效果。上述详细介绍了本发明的基于注意力机制的分层神经网络查询推荐方法,以下相应介绍本发明对应的查询推荐装置及设备。图8是根据本发明的一个实施例的一种分层神经网络查询推荐装置的示意性方框图。参照图8,在一种分层神经网络查询推荐装置80中,包括:分层神经网络建立模块81、推荐输出模块82、注意力机制处理模块83。分层神经网络建立模块81,用于建立用于对用户短期查询记录进行建模的会话层神经网络和用于对用户长期查询记录进行建模的用户层神经网络两个神经网络,其中将当前时刻的所述会话层神经网络的状态向量作为当前时刻所述用户层神经网络的输入,将当前时刻的所述用户层神经网络的状态向量作为下一时刻的所述会话层神经网络的输入。推荐输出模块82,用于根据所述分层神经网络建立模块81建立的所述会话层神经网络和所述用户层神经网络,为查询会话输出查询推荐内容。注意力机制处理模块83,用于将所述分层神经网络建立模块81建立的会话层神经网络中的状态向量的值以不同的权重组合成新的会话层神经网络的状态向量;所述推荐输出模块82,根据更新会话层神经网络状态向量后的所述会话层神经网络和所述用户层神经网络,为查询会话输出查询推荐内容。其中,所述分层神经网络建立模块81可以将t时刻的会话层神经网络的状态向量作为t时刻用户层神经网络的输入,将t时刻用户层神经网络的状态向量作为t+1时刻会话层神经网络的输入,将t+1时刻会话层神经网络的状态向量作为t+1时刻用户层神经网络的输入,其中t大于或等于0。其中,可以是将t时刻用户层神经网络的状态向量用来初始化t+1时刻的会话层神经网络的第一个隐藏层状态向量;将t+1时刻的会话层神经网络的最后一个隐藏层状态向量作为t+1时刻用户层神经网络的输入。其中,可以是将t时刻用户层神经网络的最后一个隐藏层的状态向量用来初始化t+1时刻的会话层神经网络的第一个隐藏层状态向量其中,所述注意力机制处理模块83可以将所述会话层神经网络中所有隐藏层的状态向量的值以不同的权重组合成新的会话层神经网络的状态向量。图9是根据本发明的一个实施例的一种分层神经网络查询推荐设备的示意性方框图。参照图9,在一种分层神经网络查询推荐设备90中,包括:处理器91、存储器92。处理器91,建立用于对用户短期查询记录进行建模的会话层神经网络和用于对用户长期查询记录进行建模的用户层神经网络两个神经网络,其中将当前时刻的所述会话层神经网络的状态向量作为当前时刻所述用户层神经网络的输入,将当前时刻的所述用户层神经网络的状态向量作为下一时刻的所述会话层神经网络的输入;根据所述会话层神经网络和所述用户层神经网络,为查询会话输出查询推荐内容。存储器92,存储处理器91输出的查询推荐内容。本发明实施例还提供一种非暂时性机器可读存储介质,其上存储有可执行代码,当所述可执行代码被电子设备的处理器执行时,使所述处理器执行以下所述的方法:建立用于对用户短期查询记录进行建模的会话层神经网络和用于对用户长期查询记录进行建模的用户层神经网络两个神经网络,其中将当前时刻的所述会话层神经网络的状态向量作为当前时刻所述用户层神经网络的输入,将当前时刻的所述用户层神经网络的状态向量作为下一时刻的所述会话层神经网络的输入;根据所述会话层神经网络和所述用户层神经网络,为查询会话输出查询推荐内容。综上所述,本发明提供了一种基于注意力机制的分层神经网络查询推荐方法,其中分层的机制包括一个会话层神经网络的神经网络和一个用户层神经网络的神经网络,会话层神经网络可以用于对用户的短期查询记录建模,用户层神经网络可以用于对用户的长期查询进行建模。本发明提出的注意力机制能够更好的捕捉用户的偏好的信息。本发明在aol数据集上进行了实验,实验结果表明本发明的方法比现有基于神经网络的查询推荐方法要好,在mrr指标和recall指标上分别提高了21.86%和22.99%,尤其对短的查询会话,效果提高更加明显。上文中已经参考附图详细描述了根据本发明的技术方案。此外,根据本发明的方法还可以实现为一种计算机程序或计算机程序产品,该计算机程序或计算机程序产品包括用于执行本发明的上述方法中限定的上述各步骤的计算机程序代码指令。或者,本发明还可以实施为一种非暂时性机器可读存储介质(或计算机可读存储介质、或机器可读存储介质),其上存储有可执行代码(或计算机程序、或计算机指令代码),当所述可执行代码(或计算机程序、或计算机指令代码)被电子设备(或计算设备、服务器等)的处理器执行时,使所述处理器执行根据本发明的上述方法的各个步骤。本领域技术人员还将明白的是,结合这里的公开所描述的各种示例性逻辑块、模块、电路和算法步骤可以被实现为电子硬件、计算机软件或两者的组合。所属领域的普通技术人员应当理解:以上所述仅为本发明的具体实施例而已,并不用于限制本发明,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1