CN111310023B - 基于记忆网络的个性化搜索方法及系统 - Google Patents

基于记忆网络的个性化搜索方法及系统 Download PDF

Info

Publication number
CN111310023B
CN111310023B CN202010042175.4A CN202010042175A CN111310023B CN 111310023 B CN111310023 B CN 111310023B CN 202010042175 A CN202010042175 A CN 202010042175A CN 111310023 B CN111310023 B CN 111310023B
Authority
CN
China
Prior art keywords
query
document
memory
vector
intention
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
Application number
CN202010042175.4A
Other languages
English (en)
Other versions
CN111310023A (zh
Inventor
窦志成
文继荣
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Renmin University of China
Original Assignee
Renmin University of China
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Renmin University of China filed Critical Renmin University of China
Priority to CN202010042175.4A priority Critical patent/CN111310023B/zh
Publication of CN111310023A publication Critical patent/CN111310023A/zh
Application granted granted Critical
Publication of CN111310023B publication Critical patent/CN111310023B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/953Querying, e.g. by the use of web search engines
    • G06F16/9535Search customisation based on user profiles and personalisation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/33Querying
    • G06F16/332Query formulation
    • G06F16/3329Natural language query formulation or dialogue systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/33Querying
    • G06F16/335Filtering based on additional data, e.g. user or group profiles
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/33Querying
    • G06F16/338Presentation of query results
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • YGENERAL 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
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE 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/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Databases & Information Systems (AREA)
  • Data Mining & Analysis (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computational Linguistics (AREA)
  • Mathematical Physics (AREA)
  • Artificial Intelligence (AREA)
  • Human Computer Interaction (AREA)
  • Health & Medical Sciences (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • Evolutionary Computation (AREA)
  • General Health & Medical Sciences (AREA)
  • Molecular Biology (AREA)
  • Computing Systems (AREA)
  • Software Systems (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明涉及一种基于记忆网络的个性化搜索方法及系统,该方法的具体过程为:S1、基于记忆网络,根据用户当前需求从查询内存和文档内存中动态寻找相关的历史行为;S2、基于记忆网络,从意图内存中寻找与查询和文档相关的会话信息;S3、根据历史信息和会话信息,预测每一个候选文档被点击的概率,并结合文档与查询的相关性,完成候选文档的个性化重排。本发明针对用户搜索行为中的重查行为,使用记忆网络来存储完善的用户信息,从而强化重查行为的识别与影响力,进而改善个性化搜索结果。

Description

基于记忆网络的个性化搜索方法及系统
技术领域
本发明是关于一种基于记忆网络的个性化搜索方法及系统,涉及数据搜索技术领域。
背景技术
个性化搜索是各大搜索引擎的主要目标之一,当前主流的个性化算法是基于文本内容进行分析,即通过比较用户兴趣与文档相似度来对结果进行重排。其主要依据是用户点击数据建立的用户模型,刻画出用户兴趣特征,以此来完成个性化搜索。个性化搜索的主要目标是根据用户兴趣不同,为不同用户返回满足其需要的个性化排序列表。
现有技术已经提出了一系列个性化搜索算法,这些算法的基本思想是首先对用户兴趣进行建模,进而在文档排序时,除了考虑文档和查询的相关性,还同时考虑文档和用户兴趣的匹配程度。用户提交一个查询词后,搜索引擎在对待检索的结果进行打分时,将综合考虑文档本身相对于查询的相关性,以及文档和用户历史兴趣的匹配程度,通过设定方法对这两方面的因素进行融合并最终对文档进行打分。由于个性化算法的不同,用户兴趣表示和建模方法也不尽相同,但其主要思路都是基于用户历史搜索行为(包括用户提交过的查询、查询上点击的文档、浏览行为等)来进行用户兴趣模型和个性化排序。例如,现有技术有提出基于用户对文档的历史点击次数和点击文档的主题分布来进行个性化排序的方法,如果用户在查询某个查询时经常点击某个文档,则下一次用户再次查询该文档时,这个文档的排序位置将被提前。现有技术还公开利用用户查询历史、页面浏览历史、点击驻留时间等多个因素对用户兴趣进行更为细致的建模,在对结果的个性化重排上取得了很好的效果。现有技术还有通过提取用户查询和点击页面的主题来刻画用户兴趣特征,进而来评估文档与用户兴趣的相似性。
现有技术的个性化搜索策略不尽相同,但是他们都指出用户经常查找他们之前遇到的信息。这个现象被叫做重查行为,它被用来以一个更加可靠的方式建立用户模型。然而,现有方法大都通过词法匹配的方式来识别重查行为,这种方式无法处理语义相似的情况。事实上,有一些查询看起来差别很大,但是却表达相同的查询意图。现有的深度学习算法通过循环神经网络来表示用户兴趣,然而,循环神经网络把所有的历史信息编码为一个向量,这样会损失很多有用的信息,不利于建立完善的用户模型来识别重查行为。
发明内容
针对上述问题,本发明的目的是提供引入会话级别的重查行为,从而建立更准确用户模型的基于记忆网络的个性化搜索方法及系统。
为实现上述目的,本发明采取以下技术方案:
第一方面,本发明提供一种基于记忆网络的个性化搜索方法,具体过程为:
S1、基于记忆网络,根据用户当前需求从查询内存和文档内存中动态寻找相关的历史行为,其中,对于用户u,历史查询包含{q1,q2,…,qn}及每一个qi对应的相关文档集为{di,1,di,2,…},新的查询q和其候选文档集D={d1,d2,…};
S2、基于记忆网络,从意图内存中寻找与查询和文档相关的会话信息;
S3、根据历史信息和会话信息,预测每一个候选文档被点击的概率,并结合文档与查询的相关性,完成候选文档的个性化重排。
进一步地,上述步骤S1的具体过程为:
S11、设置查询内存MQ和文档内存MD记录用户的历史行为;
S12、从查询内存中寻找与用户查询相关的历史行为,将查询结果通过循环神经网络编码成向量,作为基于用户查询的兴趣特征,并利用注意力机制学习权重得到基于用户查询的历史查询向量集合Qq、满意文档向量集合D+,q和跳过文档向量集合D-,q
S13、从文档内存中寻找与候选文档相关的历史行为,并将文档结果通过循环神经网络编码成向量,作为基于用户文档的兴趣特征,并利用注意力机制学习权重得到基于此文档的历史文档向量集合Dd和平均查询向量集合Qd
进一步地,查询内存用于处理基于查询的重查,查询内存的读操作:
读操作在用户提出新的查询时开始,用来学习在当前查询下每个记忆槽的权重,对于查询字符串qs和查询向量qv,第i个记忆槽的权重
Figure BDA0002368138160000021
是通过结合字符串级别的权重和向量级别的权重而成的:
Figure BDA0002368138160000022
假设当前查询q和历史查询qi的字符串符合第j种变化方式,则将第j中变化方式的向量进行更新:
Figure BDA0002368138160000023
其中,f(·)是一个映射函数,f(x)=e-|x|
给定一个新的查询q,根据历史查询和q的关系,提取关系向量,若而这不符合设计关系,则关系向量置为0,据此学得每个记忆槽字符串级别的权重:
Figure BDA0002368138160000024
Figure BDA0002368138160000025
对于向量级别的权重,使用注意力机制,根据当前查询向量,学得历史查询在语义相似性上的权重:
Figure BDA0002368138160000031
学习到了每个记忆槽的权重,表示每个历史查询对于当前的贡献程度,最终按照权重从查询内存中读取历史查询向量集合Qq,满意文档向量集合D+,q,跳过文档向量集合D-,q
进一步地,文档内存用来分析用户基于文档的查询习惯,当评估一个文档d时,通过读操作学习每个记忆槽的权重,由于网址具有结构性,其变化方式很有限,因此在字符串级别只考虑了相同和相同域名两种匹配方式,在向量级别同样利用注意力机制学习权重,二者相结合,强化了历史上相关文档对当前的影响,按照权重读取到历史文档向量集合Dd和平均查询向量集合Qd
进一步地,上述步骤S2的具体过程为:
S21、构建意图内存存储每个历史会话的用户意图,每个记忆槽包含一个查询意图向量和一个该意图下的满意文档向量,表示为
Figure BDA0002368138160000032
其中,/>
Figure BDA0002368138160000033
代表每个记忆槽,/>
Figure BDA0002368138160000034
代表一个查询意图向量,/>
Figure BDA0002368138160000035
代表该意图下满意文档向量;
S22、将历史查询向量集合Qq,经过一层GRU得到一个更完善的查询q′,利用注意力机制根据新的查询和其完善查询学习每个会话的权重,读取意图内存中文档向量得到会话级别的满意文档向量集合Vq
S23、将历史文档向量集合Dd经过一层GRU得到一个更完善的文档d′,利用注意力机制根据新的文档和其完善文档学习每个会话的权重,读取意图内存中的查询意图向量,得到会话级别的查询意图向量集合Kd
进一步地,意图内存利用RNN探索用户历史会话意图,意图内存读操作定义如下:从查询和文档角度分别提取会话级别的信息,在意图内存中记录下了用户每个历史会话的查询意图和满意文档向量;
对于基于查询的查重行为,将意图内存中查询意图作为键,满意文档作为值进行读取,给定一个新的查询q,经过一层GRU得到一个更完善的查询q′:
Figure BDA0002368138160000036
式中,
Figure BDA0002368138160000037
是集合中最后一个查询的向量表示,/>
Figure BDA0002368138160000038
是根据当前查询下它的权重,
Figure BDA0002368138160000039
是循环神经网络上一时刻的状态;
利用注意力机制根据新的查询和其完善查询学习每个记忆槽的权重:
Figure BDA0002368138160000041
按照权重读取兴趣文档向量得到集合Vq来表示当前查询下不同用户兴趣的概率分布;
对于基于文档的查重行为,满意文档向量作为键,查询意图向量作为值,用相同的方法学得权重,读取意图内存中的查询意图向量,得到历史意图的概率分布Kd
进一步地,上述步骤S3的具体过程为:
S31、获得基于查询重查的概率
基于赋予权重的满意文档和跳过文档的向量集合D+,q和D-,q以及会话级别的满意文档向量集合Vq计算文档点击率;
S32、获得基于文档重查的概率
基于赋予权重的查询向量集合Qd和会话级别的查询意图向量集合Kd计算文档点击概率;
S33、获得文档和查询之间的相关性;
S34、通过多层感知机自动学习S31-S33中每一部分的权重,按照权重进行线性组合,获得当前查询下对文档的点击概率,完成文档个性化排序。
第二方面,本发明还提供一种基于记忆网络的个性化搜索系统,该系统包括:
历史行为定位模块,基于记忆网络,根据用户当前需求从查询内存和文档内存动态寻找相关的历史行为,其中,对于用户u,历史查询包含{q1,q2,…,qn}及每一个qi对应的相关文档集为{di,1,di,2,…},新的查询q和其候选文档集D={d1,d2,…};
会话识别模块,基于记忆网络,从意图内存中寻找与查询和文档相关的会话信息;
个性化重排模块,根据历史信息和会话信息,预测每一个候选文档被点击的概率,并结合文档与查询的相关性,完成候选文档的个性化重排。
第三方面,本发明还提供一种计算机程序,包括计算机程序指令,其中,所述程序指令被处理器执行时用于实现所述的基于记忆网络的个性化搜索方法对应的步骤。
第四方面,本发明还提供一种可读存储介质,所述可读存储介质上存储有计算机程序指令,其中,所述程序指令被处理器执行时用于实现所述的基于记忆网络的个性化搜索方法对应的步骤。
本发明由于采取以上技术方案,其具有以下特点:
1、由于本发明引入记忆网络,以一种可解释方法来更好的对用户搜索过程中的重查行为进行识别,利用其强大的存储能力,强化针对重查行为的用户模型质量,在识别重查行为的过程中引入会话级别的重查,从而建立更准确的用户模型;
2、为了覆盖更广泛的重查行为,本发明分别对基于查询和文档进行重查行为识别,并且扩充到会话级别的重查行为,重查行为中,如果一个文档曾经被忽略,那么再次看到的时候更可能不去点击,因此考虑了用户兴趣建模时未点击文档的消极影响;
3、本发明利用记忆网络来增强基于细粒度用户模型难以识别的重查行为,设计了用于查询和文档的内存,以涵盖两种类型的重查行为;此外,得益于RNN在序列数据建模方面的优势,进一步构造了意图内存,将重查的识别范围扩展到会话级别,实验结果证实了本发明的有效性和可解释性,因此针对用户搜索行为中的重查行为,使用记忆网络来存储完善的用户信息,从而强化重查行为的识别与影响力,进而改善个性化搜索结果;
综上,本发明可以广泛应用于数据搜索中。
附图说明
图1为本发明的基于记忆网络的个性化搜索方法原理示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明的一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。
由于本发明提出的基于记忆网络的个性化搜索方法涉及到基于神经网络的动态个性化搜索算法和深度学习在信息检索领域相关内容,下面对相关内容进行介绍,以便本领域技术人员对本发明的内容更加清楚。
基于神经网络的动态个性化搜索算法:个性化搜索是各大搜索引擎的主要目标之一,当前主流的个性化搜索算法是基于文本内容进行分析,即通过比较用户兴趣与文档相似度来对结果进行重排。其主要依据用户点击数据建立的用户模型,刻画出用户兴趣特征,以此来完成个性化搜索。现有的个性化算法主要通过比较用户模型与文档的相似度来估计该文档与用户需求的契合程度。本发明主要关注基于文档主题的个性化特征,传统的方法是通过计算用户历史点击文档与当前文档的相似度,返回相似度更高的结果。而本申请同时也考虑了用户查询需求动态性与随机性的特点,根据历史查询时间的不同与查询内容的不同,动态地赋予不同的权重,进而影响当前文档排序结果。
深度学习在信息检索:深度学习的方法现如今已开始在信息检索领域崭露头角,相比于传统的方法,深度学习在自动学习单词嵌入和特征提取能力上具有明显的优势,尤其在ad-hoc(即文档集不变,查询改变)任务中取得了令人满意的结果。本发明可以采用listwise方法训练出一个完整的深度学习框架来完成个性化搜索(实施例中具体采用listwise的方法中的LambdaRank的排序算法,以此为例,不限于此)。根据个人兴趣调整搜索结果的排序可以提高检索模型的质量。
本发明提出基于记忆网络的侧重于重查行为的个性化搜索,希望借助额外的存储空间,筛选出与当前需求相关的历史行为,并识别语义上的重查行为:假设用户u的历史信息为U,其中包括历史查询{q1,q2,…,qn},以及每一个qi对应的相关文档集{di,1,di,2,…},当给定一个新的查询q和其候选文档集D={d1,d2,…},根据历史信息预测每一个候选文档被点击的概率,并结合文档与查询的相关性,计算该文档最终被点击的概率。
本发明将用户的重查行为分为两类,一种是使用相似的查询词来获取某个领域的信息,另一种是专门为了寻找某个曾经看过的文档。本发明称这二者为基于查询的重查和基于文档的重查,他们的概率分别表示为p(d|Uq)和p(q|Ud),最终概率的计算如下:
Figure BDA0002368138160000061
其中,p(d|q)表示文档和查询之间的相关性。
Figure BDA0002368138160000062
是一个多层感知机(MLP),用来平衡三者的权重关系。
实施例一
基于上述原理,本实施例提出的基于记忆网络的个性化搜索方法,首先,设计两个额外的存储空间从查询和文档两个角度强化用户的历史行为;然后,借助循环神经网络生成了更加完善的向量并且构建意图内存识别会话级别的重查行为;最后,计算出每个文档的最终概率对结果进行重新排序,具体过程为:
S1、基于记忆网络,根据用户当前需求从查询内存和文档内存中动态寻找相关的历史行为,具体过程为:
S11、设置查询内存MQ和文档内存MD记录用户的历史行为;
S11、从查询内存中寻找与用户查询相关的历史行为,并将查询结果通过循环神经网络编码成向量作为基于用户查询的兴趣特征,利用注意力机制学习权重得到基于此查询的历史查询向量集合Qq,满意文档向量集合D+,q和跳过文档向量集合D-,q,其中,将查询结果通过循环神经网络编码成向量的方法为现有技术,具体来讲,是将历史上用户的每一个查询,按照时间顺序,输入到循环神经网络中,最终取最后一个时刻的状态向量;另外,本实施例的兴趣特征即用户过去的查询意图的偏好,例如:爱好体育,爱好旅游等。
S12、从查询内存中寻找与用户查询相关的历史行为,并将文档结果通过循环神经网络编码成向量作为基于用户文档的兴趣特征,并利用注意力机制学习权重得到基于此文档的历史文档向量集合Dd和平均查询向量集合Qd
虽然查询日志中蕴含着大量的个性化信息,但是相同的内容在不同情境下贡献也应当不同,因此希望可以根据用户当前需求动态地提取出相关历史信息,尤其是那些具有重查价值的行为。为了更全面地利用每个查询和文档,从两个方面获取它们的向量表示,其一是基于词向量嵌入,这种方式在表示语义相似性方面更具优势,每一个查询和文档的表示是通过对其中的每个词向量赋予TF-IDF权重后聚合而成的。其二是基于图嵌入,这种方式把每个查询和文档视为一个节点,通过他们之间的连接关系来计算距离。最终,将两种表示相连接作为每一个元素的向量表示。
进一步地,为了处理个性化搜索中的重查行为,本发明使用了记忆网络详细存储查询日志,并且以可解释的方式识别重查行为。为了涵盖两种类型的重查,本实施例设置一个查询内存MQ和一个文档内存MD来记录用户的历史行为。值得注意的是,本实施例会为每个用户独立建立记忆以存储其个人行为。
优选地,查询内存用于处理基于查询的重查。由于相似查询下的用户行为对于做出预测很有价值,查询存储器MQ的主要功能是找出与当前查询相关的历史查询。特别地,除了使用满意的文档构建用户个人资料外,还利用跳过的文档对用户兴趣进行反向建模。基本思想是,如果用户之前跳过了某文档,则在遇到相同文档时更有可能再次跳过。满意的点击通常是指停留时间超过30秒或会话中的最后一次点击,而跳过的文档定义为满意的点击上方的未点击文档。
假设MQ中有nQ个记忆槽,每个记忆槽存储了一个查询字符串,一个查询向量和两个平均文档向量(满意点击的和跳过的),
Figure BDA0002368138160000071
值得注意的是每一个记忆槽中存储的查询都是不同的。
查询内存的写操作定义如下:给定一个新的交互行为,将满意点击文档的平均向量
Figure BDA0002368138160000072
和跳过文档的平均向量/>
Figure BDA0002368138160000073
写入查询内存中,如果该查询曾经被提出过,修改对应记忆槽中的两个平均文档向量:
Figure BDA0002368138160000074
Figure BDA0002368138160000075
其中,GATE(·)是控制新信息比例的门控单元,本实施例此比例设置为0.5。如果这是一个新的查询,则把它存入一个新的记忆槽,或替换掉距离当前最远的查询所在的记忆槽,目的是保持记忆槽是按照时间顺序排列的,从而保留历史行为中的时序性信息。
查询内存的读操作:读操作在用户提出新的查询时开始,用来学习在当前查询下每个记忆槽的权重,特别地,为了覆盖更多潜在的重查行为,从词法匹配和语义相似两个角度来进行权重计算。正式地,对于查询字符串qs和查询向量qv,第i个记忆槽的权重
Figure BDA0002368138160000081
是通过结合字符串级别的权重和向量级别的权重而成的:
Figure BDA0002368138160000082
对于字符串级别的权重,选择了十个常用的查询变化方式,认为不同的变化方式在重查中作用力不同,为了学习每种变化方式的影响力,采用向量表示每种变化方式,假设当前查询q和历史查询qi的字符串符合第j种变化方式,则将第j中变化方式的向量rj进行更新:
Figure BDA0002368138160000083
其中,f(·)是一个映射函数,f(x)=e-|x|,该函数的特点是,当两个查询完全相同时,函数值最大,并且随着二者差距的增大而减小。
给定一个新的查询q,根据历史查询和q的关系,提取出关系向量,若而这不符合设计的关系,则关系向量置为0,据此可以学得每个记忆槽字符串级别的权重:
Figure BDA0002368138160000084
Figure BDA0002368138160000085
式中,
Figure BDA0002368138160000086
是指第i个历史查询和qs的关系向量。
对于向量级别的权重,使用注意力机制,根据当前查询向量,学得历史查询在语义相似性上的权重:
Figure BDA0002368138160000087
现在已经学习到了每个记忆槽的权重,表示了每个历史查询对于当前的贡献程度。最终按照权重从查询内存中读取历史查询向量集合Qq,满意文档向量集合D+,q,跳过文档向量集合D-,q,将在计算最终概率时发挥作用。
优选地,文档内存用来分析用户基于文档的查询习惯,希望通过文档内存MD来关注那些能够检索出与候选文档相似的文档的查询。其构建方式与查询内存相似,在此不做赘述,每一个记忆槽包含一个文档的网址,一个文档向量,以及一个平均查询向量,当出现新的交互行为时,写操作仿照查询内存将其写入文档内存,其中,平均查询向量指检索到该文档的所有查询向量的平均值。
当评估一个文档d时,通过读操作学习每个记忆槽的权重,由于网址具有结构性,其变化方式很有限,因此在字符串级别本实施例只考虑了相同和相同域名两种匹配方式,在向量级别同样利用注意力机制学习权重。二者相结合,强化了历史上相关文档对当前的影响,最终按照权重读取到历史文档向量集合Dd和平均查询向量集合Qd
S2、基于记忆网络,从意图内存中寻找与查询和文档相关的会话信息,从会话级别进一步分析用户重查行为,具体过程为:
S21、构建意图内存存储每个历史会话的用户意图;
S22、将历史查询向量集合Qq,经过一层GRU得到一个更完善的查询q′,利用注意力机制根据新的查询和其完善查询学习每个会话的权重,按照权重读取意图内存中兴趣文档向量得到会话级别的满意文档向量集合Vq表示当前查询下不同用户兴趣的概率分布,即将会话级别的一连串相似查询进行编码得到查询意图向量,通过编码的查询意图向量寻找该查询意图下用户的满意文档;
S22、将历史文档向量集合Dd经过一层GRU得到一个更完善的文档d′,利用注意力机制根据新的文档和其完善文档每个会话的权重,读取意图内存中的查询意图向量,得到会话级别的查询意图向量集合Kd,即通过文档向量在意图内存中追寻文档点击过哪些查询,推测查询意图。
在大量的搜索行为中,有时用户仅通过一次查询就无法获得满意的结果。他们通常在会话开始时提出一个查询并逐步修改查询,直到获得满意的文档。本实施例认为会话中的用户行为反映了查询意图。直观地,当用户下次显示相同的查询意图时,历史会话中的查询和点击数据会很有帮助。因此,本实施例尝试从会话级别进一步分析用户重查行为。
进一步地,本实施例将查询日志分为不同的会话,而后构建一个意图内存来存储每个历史会话的用户意图,每个记忆槽包含一个查询意图向量和一个该意图下的满意文档向量,表示为
Figure BDA0002368138160000091
其中,/>
Figure BDA0002368138160000092
代表每个记忆槽,/>
Figure BDA0002368138160000093
代表一个查询意图向量,/>
Figure BDA0002368138160000094
代表该意图下满意文档向量。
优选地,意图内存利用RNN探索用户历史会话意图。假设用户在会话中发出一系列查询,并且每个查询都对应一个平均满意的文档向量。通常,如果当前查询不能满足用户的信息需求,则他将提交下一个查询,直到满足信息需求为止。因此,后面的查询和会话中满意的文档可以更好地反映用户的真实意图。本实施例将RNN用于学习基于会话的意图和兴趣的表示。RNN的主要缺点是在处理长序列时,存在梯度消失的问题。因此,一些学者提出了基于RNN的更复杂的结构,例如门控循环单元(GRU)和长短期记忆网络(LSTM),以解决该问题。本实施例将门控循环单元GRU作为基本单元,因为它比LSTM更简单并且更容易训练。本实施例使用两个GRU网络分别对每个会话中用户查询意图和满意文档进行表示。
意图内存写操作定义如下:当一个新的交互发生时,如果它属于一个已经存在的会话,则更新该会话对应的记忆槽中的向量:
Figure BDA0002368138160000101
Figure BDA0002368138160000102
其中,GRU(·)表示一个GRU结点,新的状态向量是通过新的输入和之前的状态向量计算而成的。如果它属于一个新的会话,则将其存入一个新的记忆槽。
意图内存读操作定义如下:从查询和文档角度分别提取会话级别的信息。现在已经在意图内存中记录下了用户每个历史会话的查询意图和满意文档向量,对于两种不同的查重行为,意图内存发挥的作用也不相同,对于基于查询的查重行为,本实施例将意图内存中查询意图作为键,满意文档作为值进行读取。给定一个新的查询q,为了更准确地表达该查询的含义,例如歧义性查询,错误拼写查询,通过之前得到的赋予权重后的历史查询向量集合Qq,经过一层GRU得到一个更完善的查询q′。
Figure BDA0002368138160000103
式中,
Figure BDA0002368138160000104
是集合中最后一个查询的向量表示,/>
Figure BDA0002368138160000105
是根据当前查询下它的权重,
Figure BDA0002368138160000106
是循环神经网络上一时刻的状态。
而后利用注意力机制根据新的查询和其完善查询学习每个记忆槽的权重。
Figure BDA0002368138160000107
最终,按照权重读取兴趣文档向量得到集合Vq来表示当前查询下不同用户兴趣的概率分布。
对于基于文档的查重行为,交换查询意图和满意文档的角色,即满意文档向量作为键,查询意图向量作为值,用相同的方法学得权重,读取意图内存中的查询意图向量,得到历史意图的概率分布Kd为查询意图向量集合,这两个来自意图向量的集合在接下来的概率计算中很重要。
S3、根据历史信息预测每一个候选文档被点击的概率,并结合文档与查询的相关性,完成文档的个性化重排。
S31、获得基于查询重查的概率
基于赋予权重的满意文档和跳过文档的向量集合D+,q和D-,q以及会话级别的满意文档向量集合Vq计算文档点击率;
S32、获得基于文档重查的概率
基于赋予权重的查询向量集合Qd和会话级别的查询意图向量集合Kd计算文档点击概率;
S33、获得文档和查询之间的相关性;
S34、通过多层感知机自动学习S31-S33中每一部分的权重,按照权重进行线性组合,获得当前查询下对文档的点击概率,完成文档个性化排序。
具体地,对于获得基于查询重查的概率p(d|Uq),利用基于查询的重查行为收集的信息,也就是与q相关的信息,包括:
(a)赋予权重的满意文档和跳过文档的向量集合D+,q和D-,q
(b)估计的会话级别的满意文档向量集合Vq
为了评估历史行为积极和消极影响,分别计算两部分得分而后使用多层感知机相结合,其中,本实施例的分数定义为预测的概率值。两部分得分计算方法类似,在此本实施例只介绍积极影响的计算方法。
p(d|U+,q)=Fk([d,d′],[D+,q,Vq])
其中,Fk是匹配函数,这里利用K-NRM模型的思想,设计了k个核来覆盖不同程度的匹配,这个参数在模型中被设置为11,以此为例。
在将所有的向量映射到相同的语义空间后,使用余弦相似度构建交互矩阵
Figure BDA0002368138160000111
该匹配方式通过多层感知机结合k个核的得分:
Figure BDA0002368138160000112
Figure BDA0002368138160000113
其中,μo根据k平均分布在-1到1之间,
Figure BDA0002368138160000114
被设置为0.01,这种匹配方法可以调整匹配程度,f1…fk代表第1个到第k个核的得分,每个核的计算公式如上所示,本实施例以第o个核为例进行说明,以此为例。
具体地,对于基于文档重查的概率p(q|Ud),此概率的计算依赖于与d相关的用户信息,包括:
(a)赋予权重的查询向量集合Qd
(b)估计的会话级别的查询意图向量集合Kd
仿照获得基于查询重查的概率中的匹配方式,通过匹配个性化信息和当前查询q,q′来计算概率:
p(q|Ud)=Fk([q,q′],[Qd,Kd])。
具体地,获得文档和查询之间的相关性:对于p(d|q)为每个文档抽取大量的特征,包括原始排序位置,点击熵,时间权重,主题特征等,除此之外,还增加了而一些基于跳过文档的特征。
优选地,本实施例采用LambdaRank排序算法训练模型。在pairwise的基础上,根据交换文档对顺序后最终结果MAP的变化,为每个文档对增加了相应的权重,例如:某文档对(a1,a2)在交换位置后,排序的MAP变化值为a,而另一文档(b1,b2)对交换位置后MAP变化值为b,a>b,则可说明a1与a2之间的差异大于b1与b2之间的差异,根据这个特点,对差异较大的文档对赋予较大的权重,反之赋予较小的权重,可以使最终排序结果的平均准确度更高。因此选取LambdaRank作为训练方法来训练出合适的参数。选取相关文档集中的文档di和不相关文档集中的文档dj作为一对数据来训练模型(训练模型就是对模型中的参数进行更新,最终能够得到一组使Loss尽可能小的参数),损失函数为预测值与实际值之间的交叉熵,定义如下:
Figure BDA0002368138160000121
Loss(LambdaRank)=Δ*Loss(RankNet)
其中,pij表示文档di比dj更相关的预测概率,
Figure BDA0002368138160000122
表示实际概率,是通过logistic函数计算而得,ΔLoss交换文档di与dj顺序后,排序结果MAP的变化,其中:
Figure BDA0002368138160000123
对最终得到的分数排序后即为个性化排序结果。
实施例二
本实施例还提供一种基于记忆网络的个性化搜索系统,该系统包括:
历史行为定位模块,用于基于记忆网络,根据用户当前需求从查询内存和文档内存动态寻找相关的历史行为,其中,对于用户u,历史查询包含{q1,q2,…,qn}及每一个qi对应的相关文档集为{di,1,di,2,…},新的查询q和其候选文档集D={d1,d2,…};
会话识别模块,用于基于记忆网络,从意图内存中寻找与查询和文档相关的会话信息;
个性化重排模块,用于根据历史信息和会话信息,预测每一个候选文档被点击的概率,并结合文档与查询的相关性,完成候选文档的个性化重排。
实施例三
本实施例还提供一种计算机程序,包括计算机程序指令,其中,所述程序指令被处理器执行时用于实现实施例一所述的基于记忆网络的个性化搜索方法对应的步骤。
实施例四
本实施例还提供一种可读存储介质,所述可读存储介质上存储有计算机程序指令,其中,所述程序指令被处理器执行时用于实现实施例一所述的基于记忆网络的个性化搜索方法对应的步骤。
最后应当说明的是:以上实施例仅用于说明本发明的技术方案而非对其保护范围的限制,尽管参照上述实施例对本申请进行了详细的说明,所属领域的普通技术人员应当理解:本领域技术人员阅读本申请后依然可对申请的具体实施方式进行种种变更、修改或者等同替换,但这些变更、修改或者等同替换,均在申请待批的权利要求保护范围之内。

Claims (7)

1.一种基于记忆网络的个性化搜索方法,其特征在于具体过程为:
S1、基于记忆网络,根据用户当前需求从查询内存和文档内存中动态寻找相关的历史行为,其中,对于用户u,历史查询包含{q1,q2,…,qn}及每一个qi对应的相关文档集为{di,1,di,2,…},新的查询q和其候选文档集D={d1,d2,…};
S2、基于记忆网络,从意图内存中寻找与查询和文档相关的会话信息,具体过程为:
S21、构建意图内存存储每个历史会话的用户意图,每个记忆槽包含一个查询意图向量和一个该意图下的满意文档向量,表示为
Figure FDA0004242927680000011
其中,/>
Figure FDA0004242927680000012
代表每个记忆槽,/>
Figure FDA0004242927680000013
代表一个查询意图向量,/>
Figure FDA0004242927680000014
代表该意图下满意文档向量;
S22、将历史查询向量集合Qq,经过一层GRU得到一个更完善的查询q′,利用注意力机制根据新的查询和其完善查询学习每个会话的权重,读取意图内存中文档向量得到会话级别的满意文档向量集合Vq
S23、将历史文档向量集合Dd经过一层GRU得到一个更完善的文档d′,利用注意力机制根据新的文档和其完善文档学习每个会话的权重,读取意图内存中的查询意图向量,得到会话级别的查询意图向量集合Kd,其中,
意图内存利用RNN探索用户历史会话意图,意图内存读操作定义如下:从查询和文档角度分别提取会话级别的信息,在意图内存中记录下了用户每个历史会话的查询意图和满意文档向量;
对于基于查询的查重行为,将意图内存中查询意图作为键,满意文档作为值进行读取,给定一个新的查询q,经过一层GRU得到一个更完善的查询q′:
Figure FDA0004242927680000015
式中,
Figure FDA0004242927680000016
是集合中最后一个查询的向量表示,/>
Figure FDA0004242927680000017
是根据当前查询下它的权重,/>
Figure FDA0004242927680000018
是循环神经网络上一时刻的状态;
利用注意力机制根据新的查询和其完善查询学习每个记忆槽的权重:
Figure FDA0004242927680000019
按照权重读取兴趣文档向量得到集合Vq来表示当前查询下不同用户兴趣的概率分布;
对于基于文档的查重行为,满意文档向量作为键,查询意图向量作为值,用相同的方法学得权重,读取意图内存中的查询意图向量,得到历史意图的概率分布Kd
S3、根据历史信息和会话信息,预测每一个候选文档被点击的概率,并结合文档与查询的相关性,完成候选文档的个性化重排。
2.根据权利要求1所述的基于记忆网络的个性化搜索方法,其特征在于,上述步骤S1的具体过程为:
S11、设置查询内存MQ和文档内存MD记录用户的历史行为;
S12、从查询内存中寻找与用户查询相关的历史行为,将查询结果通过循环神经网络编码成向量,作为基于用户查询的兴趣特征,并利用注意力机制学习权重得到基于用户查询的历史查询向量集合Qq、满意文档向量集合D+,q和跳过文档向量集合D-,q
S13、从文档内存中寻找与候选文档相关的历史行为,并将文档结果通过循环神经网络编码成向量,作为基于用户文档的兴趣特征,并利用注意力机制学习权重得到基于此文档的历史文档向量集合Dd和平均查询向量集合Qd
3.根据权利要求2所述的基于记忆网络的个性化搜索方法,其特征在于,查询内存用于处理基于查询的重查,查询内存的读操作:
读操作在用户提出新的查询时开始,用来学习在当前查询下每个记忆槽的权重,对于查询字符串qs和查询向量qv,第i个记忆槽的权重
Figure FDA0004242927680000021
是通过结合字符串级别的权重和向量级别的权重而成的:
Figure FDA0004242927680000022
假设当前查询q和历史查询qi的字符串符合第j种变化方式,则将第j中变化方式的向量进行更新:
Figure FDA0004242927680000023
其中,f(·)是一个映射函数,f(x)=e-|x|,GATE(·)是控制新信息比例的门控单元;
给定一个新的查询q,根据历史查询和q的关系,提取关系向量,若而这不符合设计关系,则关系向量置为0,据此学得每个记忆槽字符串级别的权重:
Figure FDA0004242927680000024
Figure FDA0004242927680000025
对于向量级别的权重,使用注意力机制,根据当前查询向量,学得历史查询在语义相似性上的权重:
Figure FDA0004242927680000026
学习到了每个记忆槽的权重,表示每个历史查询对于当前的贡献程度,最终按照权重从查询内存中读取历史查询向量集合Qq,满意文档向量集合D+,q,跳过文档向量集合D-,q
4.根据权利要求2所述的基于记忆网络的个性化搜索方法,其特征在于,文档内存用来分析用户基于文档的查询习惯,当评估一个文档d时,通过读操作学习每个记忆槽的权重,由于网址具有结构性,其变化方式很有限,因此在字符串级别只考虑了相同和相同域名两种匹配方式,在向量级别同样利用注意力机制学习权重,二者相结合,强化了历史上相关文档对当前的影响,按照权重读取到历史文档向量集合Dd和平均查询向量集合Qd
5.根据权利要求1所述的基于记忆网络的个性化搜索方法,其特征在于,上述步骤S3的具体过程为:
S31、获得基于查询重查的概率
基于赋予权重的满意文档和跳过文档的向量集合D+,q和D-,q以及会话级别的满意文档向量集合Vq计算文档点击率;
S32、获得基于文档重查的概率
基于赋予权重的查询向量集合Qd和会话级别的查询意图向量集合Kd计算文档点击概率;
S33、获得文档和查询之间的相关性;
S34、通过多层感知机自动学习S31-S33中每一部分的权重,按照权重进行线性组合,获得当前查询下对文档的点击概率,完成文档个性化排序。
6.一种基于记忆网络的个性化搜索系统,其特征在于,该系统包括:
历史行为定位模块,用于基于记忆网络,根据用户当前需求从查询内存和文档内存动态寻找相关的历史行为,其中,对于用户u,历史查询包含{q1,q2,…,qn}及每一个qi对应的相关文档集为{di,1,di,2,…},新的查询q和其候选文档集D={d1,d2,…};
会话识别模块,用于基于记忆网络,从意图内存中寻找与查询和文档相关的会话信息;具体过程为:
构建意图内存存储每个历史会话的用户意图,每个记忆槽包含一个查询意图向量和一个该意图下的满意文档向量,表示为
Figure FDA0004242927680000031
其中,/>
Figure FDA0004242927680000032
代表每个记忆槽,/>
Figure FDA0004242927680000033
代表一个查询意图向量,/>
Figure FDA0004242927680000034
代表该意图下满意文档向量;
将历史查询向量集合Qq,经过一层GRU得到一个更完善的查询q′,利用注意力机制根据新的查询和其完善查询学习每个会话的权重,读取意图内存中文档向量得到会话级别的满意文档向量集合Vq
将历史文档向量集合Dd经过一层GRU得到一个更完善的文档d′,利用注意力机制根据新的文档和其完善文档学习每个会话的权重,读取意图内存中的查询意图向量,得到会话级别的查询意图向量集合Kd,其中,
意图内存利用RNN探索用户历史会话意图,意图内存读操作定义如下:从查询和文档角度分别提取会话级别的信息,在意图内存中记录下了用户每个历史会话的查询意图和满意文档向量;
对于基于查询的查重行为,将意图内存中查询意图作为键,满意文档作为值进行读取,给定一个新的查询q,经过一层GRU得到一个更完善的查询q′:
Figure FDA0004242927680000041
式中,
Figure FDA0004242927680000042
是集合中最后一个查询的向量表示,/>
Figure FDA0004242927680000043
是根据当前查询下它的权重,/>
Figure FDA0004242927680000044
是循环神经网络上一时刻的状态;
利用注意力机制根据新的查询和其完善查询学习每个记忆槽的权重:
Figure FDA0004242927680000045
按照权重读取兴趣文档向量得到集合Vq来表示当前查询下不同用户兴趣的概率分布;
对于基于文档的查重行为,满意文档向量作为键,查询意图向量作为值,用相同的方法学得权重,读取意图内存中的查询意图向量,得到历史意图的概率分布Kd
个性化重排模块,用于根据历史信息和会话信息,预测每一个候选文档被点击的概率,并结合文档与查询的相关性,完成候选文档的个性化重排。
7.一种可读存储介质,其特征在于,所述可读存储介质上存储有计算机程序指令,其中,所述程序指令被处理器执行时用于实现1~5任一项所述的基于记忆网络的个性化搜索方法对应的步骤。
CN202010042175.4A 2020-01-15 2020-01-15 基于记忆网络的个性化搜索方法及系统 Active CN111310023B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010042175.4A CN111310023B (zh) 2020-01-15 2020-01-15 基于记忆网络的个性化搜索方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010042175.4A CN111310023B (zh) 2020-01-15 2020-01-15 基于记忆网络的个性化搜索方法及系统

Publications (2)

Publication Number Publication Date
CN111310023A CN111310023A (zh) 2020-06-19
CN111310023B true CN111310023B (zh) 2023-06-30

Family

ID=71161467

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010042175.4A Active CN111310023B (zh) 2020-01-15 2020-01-15 基于记忆网络的个性化搜索方法及系统

Country Status (1)

Country Link
CN (1) CN111310023B (zh)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112069399B (zh) * 2020-08-25 2023-06-02 中国人民大学 一种基于交互匹配的个性化搜索系统
CN112182154B (zh) * 2020-09-25 2023-10-10 中国人民大学 一种利用个人词向量消除关键词歧义的个性化搜索模型
CN112182373B (zh) * 2020-09-25 2023-06-02 中国人民大学 一种基于上下文表示学习的性化搜索方法
CN113343941B (zh) * 2021-07-20 2023-07-25 中国人民大学 一种基于互信息相似度的零样本动作识别方法及系统
CN115545853B (zh) * 2022-12-02 2023-06-23 云筑信息科技(成都)有限公司 一种寻找供应商的搜索方法

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108509461A (zh) * 2017-02-28 2018-09-07 华为技术有限公司 一种基于强化学习的排序学习方法及服务器
CN108829667A (zh) * 2018-05-28 2018-11-16 南京柯基数据科技有限公司 一种基于记忆网络的多轮对话下的意图识别方法
CN108921657A (zh) * 2018-06-25 2018-11-30 中国人民大学 一种基于知识增强记忆网络的序列推荐方法
CN109241243A (zh) * 2018-08-30 2019-01-18 清华大学 候选文档排序方法及装置
CN110008408A (zh) * 2019-04-12 2019-07-12 山东大学 一种会话推荐方法、系统、设备及介质

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8706725B2 (en) * 2011-03-14 2014-04-22 Microsoft Corporation Ranking contextual signals for search personalization
US9064016B2 (en) * 2012-03-14 2015-06-23 Microsoft Corporation Ranking search results using result repetition

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108509461A (zh) * 2017-02-28 2018-09-07 华为技术有限公司 一种基于强化学习的排序学习方法及服务器
CN108829667A (zh) * 2018-05-28 2018-11-16 南京柯基数据科技有限公司 一种基于记忆网络的多轮对话下的意图识别方法
CN108921657A (zh) * 2018-06-25 2018-11-30 中国人民大学 一种基于知识增强记忆网络的序列推荐方法
CN109241243A (zh) * 2018-08-30 2019-01-18 清华大学 候选文档排序方法及装置
CN110008408A (zh) * 2019-04-12 2019-07-12 山东大学 一种会话推荐方法、系统、设备及介质

Also Published As

Publication number Publication date
CN111310023A (zh) 2020-06-19

Similar Documents

Publication Publication Date Title
CN111310023B (zh) 基于记忆网络的个性化搜索方法及系统
CN105808590B (zh) 搜索引擎实现方法、搜索方法以及装置
CN112182387B (zh) 一种时间信息增强的个性化搜索方法
CN111125538B (zh) 一个利用实体信息增强个性化检索效果的搜索方法
US8527564B2 (en) Image object retrieval based on aggregation of visual annotations
CN108182186B (zh) 一种基于随机森林算法的网页排序方法
CN109992674B (zh) 一种融合自动编码器和知识图谱语义信息的推荐方法
CN111241407A (zh) 一种基于强化学习的个性化搜索方法
WO2009046649A1 (fr) Procédé et dispositif de tri de textes et procédé et dispositif de reconnaissance de fraude dans des textes
CN107145519B (zh) 一种基于超图的图像检索与标注方法
CN114169869B (zh) 一种基于注意力机制的岗位推荐方法及装置
CN109684548B (zh) 一种基于用户图谱的数据推荐方法
CN111581519A (zh) 基于会话中用户意图的物品推荐方法和系统
CN112131261B (zh) 基于社区网络的社区查询方法、装置和计算机设备
CN115270007B (zh) 一种基于混合图神经网络的poi推荐方法及系统
CN110765348B (zh) 一种热词的推荐方法、装置、电子设备及存储介质
CN116955650A (zh) 基于小样本知识图谱补全的信息检索优化方法及其系统
CN109582953B (zh) 一种资讯的言据支撑评分方法、设备和存储介质
Wang et al. Adaptive user profile model and collaborative filtering for personalized news
CN116010681A (zh) 一种召回模型的训练及检索方法、装置及电子设备
CN111435378B (zh) 查询结果的排序方法、装置、电子设备以及存储介质
CN115953215A (zh) 一种基于时间和图结构的搜索式推荐方法
CN111831847B (zh) 相似图片集推荐方法及其系统
CN113987366A (zh) 一种融合搜索行为与好友网络的个性化搜索方法与系统
Balfe et al. A comparative analysis of query similarity metrics for community-based web search

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