搜索结果的排序方法、装置、设备及计算机可读存储介质与流程

文档序号:13282268阅读:187来源:国知局

技术领域
:】本发明涉及搜索技术,尤其涉及一种搜索结果的排序方法、装置、设备及计算机可读存储介质。
背景技术
::搜索引擎是指根据一定的策略、运用特定的计算机程序从互联网上搜集信息,在对信息进行组织和处理后,为用户提供搜索服务,将用户搜索相关的信息展示给用户的系统。据国家统计局的报道,中国网民人数已经超过了4亿,这个数据意味着中国已经超过美国成为世界上第一大网民国,且中国的网站总数量已经超过了200万。因此,如何利用搜索服务最大限度满足用户需求,对于互联网企业而言,始终是一个重要的课题。用户可以将搜索关键词提供给相关应用,由应用将搜索关键词,发送给搜索引擎。搜索引擎则根据搜索关键词,在数据库中进行搜索,以获得与搜索关键词匹配的搜索结果,并返回给应用进行输出。然而,由于用户所提供的搜索关键词可能会具有一定的隐含意图,例如,在某个领域内查询搜索关键词所对应的搜索结果等,完全依赖搜索关键词执行搜索操作,可能会使得搜索结果无法满足用户的真实意图,使得用户需要通过应用反复进行搜索,这样,会增加应用与搜索引擎之间的数据交互,从而导致了搜索引擎的处理负担的增加。技术实现要素:本发明的多个方面提供一种搜索结果的排序方法、装置、设备及计算机可读存储介质,用以降低搜索引擎的处理负担。本发明的一方面,提供一种搜索结果的排序方法,包括:获取用户所提供的搜索关键词和所述用户当前所点击的所述搜索关键词所对应的搜索结果;根据所述用户所提供的搜索关键词和所述用户当前所点击的所述搜索关键词所对应的搜索结果,获得排序关键词与所述搜索关键词所对应的未展现的其他搜索结果之间的排序参数;根据所述排序参数,对所述搜索关键词所对应的未展现的其他搜索结果,进行排序处理。如上所述的方面和任一可能的实现方式,进一步提供一种实现方式,所述排序参数,用以指示所述搜索关键词与所述未展现的其他搜索结果之间的相似情况,以及所述当前所点击的搜索结果与所述未展现的其他搜索结果之间的相似情况。如上所述的方面和任一可能的实现方式,进一步提供一种实现方式,所述根据所述用户所提供的搜索关键词和所述用户当前所点击的所述搜索关键词所对应的搜索结果,获得排序关键词与所述搜索关键词所对应的未展现的其他搜索结果之间的排序参数,包括:根据所述用户所提供的搜索关键词和所述用户当前所点击的所述搜索关键词所对应的搜索结果,利用页面排序模型,获得排序关键词与所述搜索关键词所对应的未展现的其他搜索结果之间的排序参数。如上所述的方面和任一可能的实现方式,进一步提供一种实现方式,所述根据所述用户所提供的搜索关键词和所述用户当前所点击的所述搜索关键词所对应的搜索结果,利用页面排序模型,获得排序关键词与所述搜索关键词所对应的未展现的其他搜索结果之间的排序参数之前,还包括:根据用户历史行为数据,获取训练样本数据,所述训练样本数据包括至少一个训练关键词所对应的点击样本页面、正例样本页面和负例样本页面;获取神经网络的损失函数;根据所述损失函数、所述至少一个训练关键词所所对应的点击样本页面、所述正例样本页面和所述负例样本页面,构建所述页面排序模型。如上所述的方面和任一可能的实现方式,进一步提供一种实现方式,所述根据所述损失函数、所述至少一个训练关键词所所对应的点击样本页面、所述正例样本页面和所述负例样本页面,构建所述页面排序模型,包括:根据所述至少一个训练关键词中每个训练关键词,以及该训练关键词所对应的点击样本页面、所述正例样本页面和所述负例样本页面,利用所述神经网络,获得该训练关键词的向量表示,以及所述点击样本页面的向量表示、所述正例样本页面的向量表示和所述负例样本页面的向量表示;根据所述该训练关键词的向量表示和所述点击样本页面的向量表示,获得实时关键词的向量表示;根据所述实时关键词的向量表示,以及所述正例样本页面的向量表示和所述负例样本页面的向量表示,获得所述实时关键词与所述正例样本页面之间的第一相似度和所述实时关键词与所述负例样本页面之间的第二相似度;根据所述第一相似度和所述第二相似度,利用所述损失函数,构建所述页面排序模型。如上所述的方面和任一可能的实现方式,进一步提供一种实现方式,所述根据所述排序参数,对所述搜索关键词所对应的未展现的其他搜索结果,进行排序处理,包括:获取搜索结果展现命令;根据所述排序参数,按照从大到小的顺序,对所述搜索关键词所对应的未展现的其他搜索结果,进行排序处理;输出所述排序处理之后的所述搜索关键词所对应的未展现的其他搜索结果。本发明的另一方面,提供一种搜索结果的排序装置,包括:获取单元,用于获取用户所提供的搜索关键词和所述用户当前所点击的所述搜索关键词所对应的搜索结果;计算单元,用于根据所述用户所提供的搜索关键词和所述用户当前所点击的所述搜索关键词所对应的搜索结果,获得排序关键词与所述搜索关键词所对应的未展现的其他搜索结果之间的排序参数;排序单元,用于根据所述排序参数,对所述搜索关键词所对应的未展现的其他搜索结果,进行排序处理。如上所述的方面和任一可能的实现方式,进一步提供一种实现方式,所述排序参数,用以指示所述搜索关键词与所述未展现的其他搜索结果之间的相似情况,以及所述当前所点击的搜索结果与所述未展现的其他搜索结果之间的相似情况。如上所述的方面和任一可能的实现方式,进一步提供一种实现方式,所述计算单元,具体用于根据所述用户所提供的搜索关键词和所述用户当前所点击的所述搜索关键词所对应的搜索结果,利用页面排序模型,获得排序关键词与所述搜索关键词所对应的未展现的其他搜索结果之间的排序参数。如上所述的方面和任一可能的实现方式,进一步提供一种实现方式,所述计算单元,还用于根据用户历史行为数据,获取训练样本数据,所述训练样本数据包括至少一个训练关键词所对应的点击样本页面、正例样本页面和负例样本页面;获取神经网络的损失函数;以及根据所述损失函数、所述至少一个训练关键词所所对应的点击样本页面、所述正例样本页面和所述负例样本页面,构建所述页面排序模型。如上所述的方面和任一可能的实现方式,进一步提供一种实现方式,所述计算单元,具体用于根据所述至少一个训练关键词中每个训练关键词,以及该训练关键词所对应的点击样本页面、所述正例样本页面和所述负例样本页面,利用所述神经网络,获得该训练关键词的向量表示,以及所述点击样本页面的向量表示、所述正例样本页面的向量表示和所述负例样本页面的向量表示;根据所述该训练关键词的向量表示和所述点击样本页面的向量表示,获得实时关键词的向量表示;根据所述实时关键词的向量表示,以及所述正例样本页面的向量表示和所述负例样本页面的向量表示,获得所述实时关键词与所述正例样本页面之间的第一相似度和所述实时关键词与所述负例样本页面之间的第二相似度;以及根据所述第一相似度和所述第二相似度,利用所述损失函数,构建所述页面排序模型。如上所述的方面和任一可能的实现方式,进一步提供一种实现方式,所述排序单元,具体用于获取搜索结果展现命令;根据所述排序参数,按照从大到小的顺序,对所述搜索关键词所对应的未展现的其他搜索结果,进行排序处理;以及输出所述排序处理之后的所述搜索关键词所对应的未展现的其他搜索结果。本发明的另一方面,提供一种设备,所述设备包括:一个或多个处理器;存储装置,用于存储一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如上述一方面所提供的搜索结果的排序方法。本发明的另一方面,提供一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如上述一方面所提供的搜索结果的排序方法。由上述技术方案可知,本发明实施例通过获取用户所提供的搜索关键词和所述用户当前所点击的所述搜索关键词所对应的搜索结果,进而根据所述用户所提供的搜索关键词和所述用户当前所点击的所述搜索关键词所对应的搜索结果,获得所述搜索关键词所对应的未展现的其他搜索结果的排序参数,使得能够根据所述排序参数,对所述搜索关键词所对应的未展现的其他搜索结果,进行排序处理,由于不再完全依赖搜索关键词执行搜索操作,而是进一步结合用户当前所点击的该搜索关键词所对应的搜索结果执行搜索操作,将由搜索关键词和用户当前所点击的搜索结果作为计算未展现的其他搜素结果的排序参数的依据,进而对未展现的其他搜索结果进行重新排序,使得所展现的搜索结果基本满足用户的真实意图,因此,能够避免现有技术中由于用户通过应用反复进行搜索而导致的增加应用与搜索引擎之间的数据交互的问题,从而降低了搜索引擎的处理负担。另外,采用本发明所提供的技术方案,通过采集用户的实时点击行为,综合考虑搜索关键词与未展现的其他搜索结果之间的相似情况,以及当前所点击的搜索结果与未展现的其他搜索结果之间的相似情况,获得所述搜索关键词所对应的未展现的其他搜索结果的排序参数,能够有效提高搜索结果的可靠性和有效性。另外,采用本发明所提供的技术方案,能够预测用户在搜索关键词中没有显示表达出来的真实意图,或者更细粒度的搜索意图,进而调整所展现的搜索结果的顺序,展现更加合适的搜索结果,能够有效提高搜索的效率。另外,采用本发明所提供的技术方案,能够有效地提高用户的体验。【附图说明】为了更清楚地说明本发明实施例中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。图1为本发明一实施例提供的搜索结果的排序方法的流程示意图;图2为本发明另一实施例提供的搜索结果的排序装置的结构示意图;图3为适于用来实现本发明实施方式的示例性计算机系统/服务器12的框图。【具体实施方式】为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的全部其他实施例,都属于本发明保护的范围。需要说明的是,本发明实施例中所涉及的终端可以包括但不限于手机、个人数字助理(personaldigitalassistant,pda)、无线手持设备、平板电脑(tabletcomputer)、个人电脑(personalcomputer,pc)、mp3播放器、mp4播放器、可穿戴设备(例如,智能眼镜、智能手表、智能手环等)等。另外,本文中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,a和/或b,可以表示:单独存在a,同时存在a和b,单独存在b这三种情况。另外,本文中字符“/”,一般表示前后关联对象是一种“或”的关系。图1为本发明一实施例提供的搜索结果的排序方法的流程示意图,如图1所示。101、获取用户所提供的搜索关键词和所述用户当前所点击的所述搜索关键词所对应的搜索结果。102、根据所述用户所提供的搜索关键词和所述用户当前所点击的所述搜索关键词所对应的搜索结果,获得所述搜索关键词所对应的未展现的其他搜索结果的排序参数。103、根据所述排序参数,对所述搜索关键词所对应的未展现的其他搜索结果,进行排序处理。需要说明的是,101~103的执行主体的部分或全部可以为位于本地终端的应用,或者还可以为设置在位于本地终端的应用中的插件或软件开发工具包(softwaredevelopmentkit,sdk)等功能单元,或者还可以为位于网络侧服务器中的搜索引擎,或者还可以为位于网络侧的分布式系统,本实施例对此不进行特别限定。可以理解的是,所述应用可以是安装在终端上的本地程序(nativeapp),或者还可以是终端上的浏览器的一个网页程序(webapp),本实施例对此不进行限定。这样,通过获取用户所提供的搜索关键词和所述用户当前所点击的所述搜索关键词所对应的搜索结果,进而根据所述用户所提供的搜索关键词和所述用户当前所点击的所述搜索关键词所对应的搜索结果,获得所述搜索关键词所对应的未展现的其他搜索结果的排序参数,使得能够根据所述排序参数,对所述搜索关键词所对应的未展现的其他搜索结果,进行排序处理,由于不再完全依赖搜索关键词执行搜索操作,而是进一步结合用户当前所点击的该搜索关键词所对应的搜索结果执行搜索操作,将由搜索关键词和用户当前所点击的搜索结果作为计算未展现的其他搜素结果的排序参数的依据,进而对未展现的其他搜索结果进行重新排序,使得所展现的搜索结果基本满足用户的真实意图,因此,能够避免现有技术中由于用户通过应用反复进行搜索而导致的增加应用与搜索引擎之间的数据交互的问题,从而降低了搜索引擎的处理负担。本发明中,所获得的排序参数,可以用以指示所述搜索关键词与所述未展现的其他搜索结果之间的相似情况,以及所述当前所点击的搜索结果与所述未展现的其他搜索结果之间的相似情况。这样,通过采集用户的实时点击行为,综合考虑搜索关键词与未展现的其他搜索结果之间的相似情况,以及当前所点击的搜索结果与未展现的其他搜索结果之间的相似情况,获得所述搜索关键词所对应的未展现的其他搜索结果的排序参数,能够有效提高搜索结果的可靠性和有效性。通常,搜索引擎在获取到用户所提供的搜索关键词之后,可以采用现有的搜索方法,获得与所述搜索关键词,对应的若干个页面,进而根据这些页面生成包含页面摘要等内容的搜索结果,并将搜索结果提供给用户。详细描述可以参见现有技术中的相关内容,此处不在赘述。可选地,在本实施例的一个可能的实现方式中,在102中,具体可以根据所述用户所提供的搜索关键词和所述用户当前所点击的所述搜索关键词所对应的搜索结果,利用预先构建的页面排序模型,获得所述搜索关键词所对应的未展现的其他搜索结果的排序参数。在一个具体的实现过程中,在102之前,还可以进一步预先构建页面排序模型。首先,可以根据用户历史行为数据,获取训练样本数据,所述训练样本数据包括至少一个训练关键词所对应的点击样本页面、正例样本页面和负例样本页面。可以理解的是,本发明所涉及的页面,也可以称为web页面或网页,可以是基于超文本标记语言(hypertextmarkuplanguage,html)编写的网页(webpage),即html页面,或者还可以是基于html和java语言编写的网页,即java服务器页面(javaserverpage,jsp),或者还可以为其他语言编写的网页,本实施例对此不进行特别限定。页面可以包括由一个或者多个页面标签例如,超文本标记语言(hypertextmarkuplanguage,html)标签、jsp标签等,定义的一个显示区块,称为页面元素,例如,文字、图片、超链接、按钮、编辑框、下拉框等。在完成一次搜索之后,可以将该搜索相关的数据记录下来,形成用户历史行为数据。基于所记录的用户历史行为数据,则可以获得同一个搜索关键词(query)所对应的点击样本页面,以及正例样本页面和负例样本页面,并将同一个搜索关键词所对应的正例样本页面与负例样本页面两两组合,组成配对样本<<q+c,t,1><q+c,t,0>>(q表示query,c表示点击样本页面,t表示样本数据,0表示负例样本页面,1表示正例样本页面),以作为训练样本数据。进而,则可以利用所述训练样本数据,执行该实现过程中的步骤,构建神经网络即页面排序模型。其中,所述神经网络可以包括但不限于深度神经网络(deepneuralnetwork,dnn),本实施例对此不进行特别限定。所谓的正例样本页面,是指点击过的页面;所谓的负例样本页面,是指未点击过的页面。对于同一个query和一个点击样本页面,一个正例样本页面和一个负例样本页面就组成了一个训练用的数据样本即训练样本数据。这里的点击过的页面与未点击过的页面,具体可以是指在搜索引擎的点击日志当中所记录的,当某个用户搜索了一个query之后,选择了其中的某个搜索结果进行进一步浏览,则可以称该搜索结果所对应的页面为点击过的页面,称未选择的其他搜索结果所对应的页面为未点击的页面。例如可以根据预先设置的时间间隔(timeinterval,ti),对指定用户的用户历史行为数据进行划分,以组成用户意图(session)段,进而则可以根据session段,确定该用户的行为意图。其中,session段是一个逻辑意义,它代表一个用户在某段时间内的一个行为意图,从用户的浏览行为来看,session段具体可以规约成在语义上具有相同关联的连续检索行为。基于所划分的session段,抽取过往的所有用户在一个session段内的所有点击行为,以构成搜索行为数据。这里假设里用户搜索了“苹果”,展现了10条搜索结果,它们的题目(title)分别是:表1搜索结果的点击行为列表序号title点击行为u1apple官方网站有点击u2苹果(蔷薇科苹果属果实)_百度百科无点击u3苹果的图片无点击u4iphone手机有点击u5苹果范冰冰版无点击u6小苹果歌曲无点击u7什么样的苹果好吃无点击u8电影苹果无点击u9二手苹果手机价格有点击u10苹果京东到家无点击基于上一步构建的搜索行为数据,构造深度实时反馈模型即页面排序模型的训练样本数据。基于每一个query和有点击搜索结果urla的组合,去构造相关的正负例数据即正例样本页面和负例样本页面,其他有点击的搜索结果为正例样本页面,用集合urlb+表示,没有点击的搜索结果为负例样本页面,用集合urlb-表示。如表1所示,在query=苹果,urla=u1的情况下,urlb+包括u4,u9,urlb-包括u2,u3,u5,u6,u7,u8,u10。在query=苹果,urla=u4的情况下,urlb+包括u1,u9,urlb-包括u2,u3,u5,u6,u7,u8,u10。接着,可以获取神经网络的损失函数。本发明中,所采用的损失项可以交叉熵损失函数,或者还可以为hingeloss损失函数,本实施例对此不进行特别限定。进而,则可以根据所述损失函数、所述至少一个训练关键词所所对应的点击样本页面、所述正例样本页面和所述负例样本页面,构建所述页面排序模型。具体来说,具体可以根据所述至少一个训练关键词中每个训练关键词,以及该训练关键词所对应的点击样本页面、所述正例样本页面和所述负例样本页面,利用所述神经网络,获得该训练关键词的向量表示,以及所述点击样本页面的向量表示、所述正例样本页面的向量表示和所述负例样本页面的向量表示。进而,则可以根据所述该训练关键词的向量表示和所述点击样本页面的向量表示,获得实时关键词的向量表示。然后,可以根据所述实时关键词的向量表示,以及所述正例样本页面的向量表示和所述负例样本页面的向量表示,获得所述实时关键词与所述正例样本页面之间的第一相似度和所述实时关键词与所述负例样本页面之间的第二相似度,并根据所述第一相似度和所述第二相似度,利用所述损失函数,构建所述页面排序模型。例如,可以采用pairwise的rank模型训练实时反馈的深度实时反馈模型,遍历数据库d,对每一个query和其相应urla,urlb+,urlb-的组合训练。具体来说,可以是用切词获得词粒度单元,然后使用词袋(bagofwords,bow)模型分别获得这些词的向量(embedding)表示ew∈rd(d维向量)。在信息检索中,假定对于一个文本即输入序列,忽略其词序、语法和句法,将其仅仅看做是一个词集合,或者说是词的一个组合。所谓的词集合或者词的组合,可以称之为词袋(bagofwords)。然后,可以使用求和功能(vsum)层,对这些embedding进行相加,获得query,urla,urlb-,urlb+的语义表达vquery,接着,可以分别进行下一层的非线性变换处理,得到xquery=tanh(wquery·vquery),为了让正负例数据的urlb+和urlb-的语义表示的逻辑相同,则可以设置它们共享非线性变换参数接下来,将得到的这些语义表达进行拼接处理,以及组合处理,最后经过一个二分类的分类器例如,softmax分类器,可以得到similar_score(query&urla,urlb+)=其中,f,g,h为不同的非线性变换,w1,w2,w3,w4为待学习的变换矩阵,同理,可以得到利用如下损失(loss)函数l,构建页面排序模型。所采用的损失函数是一个关于urlb+和urlb-的hingeloss,即其中,c为常量,可以取值为0.1。这样,页面排序模型就可以构建完毕。进一步地,可以采用误差反向传播(errorbackpropagation,bp)算法,进行反向回传处理,分别更新embedding、wquery、w1、w2、w3、w4,来获得更优的基于深度学习的页面排序模型。可选地,在本实施例的一个可能的实现方式中,在103中,具体可以获取搜索结果展现命令,进而,则可以根据所述排序参数,按照从大到小的顺序,对所述搜索关键词所对应的未展现的其他搜索结果,进行排序处理。然后,则可以输出所述排序处理之后的所述搜索关键词所对应的未展现的其他搜索结果。本发明中,采用所提供的方法输出排序处理之后的所述搜索关键词所对应的未展现的其他搜索结果,可以使得用户很快找到自己想要的搜索结果,从而减少了用户的输入次数,能够有效提高搜索效率。本实施例中,通过获取用户所提供的搜索关键词和所述用户当前所点击的所述搜索关键词所对应的搜索结果,进而根据所述用户所提供的搜索关键词和所述用户当前所点击的所述搜索关键词所对应的搜索结果,获得所述搜索关键词所对应的未展现的其他搜索结果的排序参数,使得能够根据所述排序参数,对所述搜索关键词所对应的未展现的其他搜索结果,进行排序处理,由于不再完全依赖搜索关键词执行搜索操作,而是进一步结合用户当前所点击的该搜索关键词所对应的搜索结果执行搜索操作,将由搜索关键词和用户当前所点击的搜索结果作为计算未展现的其他搜素结果的排序参数的依据,进而对未展现的其他搜索结果进行重新排序,使得所展现的搜索结果基本满足用户的真实意图,因此,能够避免现有技术中由于用户通过应用反复进行搜索而导致的增加应用与搜索引擎之间的数据交互的问题,从而降低了搜索引擎的处理负担。另外,采用本发明所提供的技术方案,通过采集用户的实时点击行为,综合考虑搜索关键词与未展现的其他搜索结果之间的相似情况,以及当前所点击的搜索结果与未展现的其他搜索结果之间的相似情况,获得所述搜索关键词所对应的未展现的其他搜索结果的排序参数,能够有效提高搜索结果的可靠性和有效性。另外,采用本发明所提供的技术方案,能够预测用户在搜索关键词中没有显示表达出来的真实意图,或者更细粒度的搜索意图,进而调整所展现的搜索结果的顺序,展现更加合适的搜索结果,能够有效提高搜索的效率。另外,采用本发明所提供的技术方案,能够有效地提高用户的体验。需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明并不受所描述的动作顺序的限制,因为依据本发明,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本发明所必须的。在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。图2为本发明另一实施例提供的搜索结果的排序装置的结构示意图,如图2所示。本实施例的搜索结果的排序装置可以包括获取单元21、计算单元22和排序单元23。其中,获取单元21,用于获取用户所提供的搜索关键词和所述用户当前所点击的所述搜索关键词所对应的搜索结果;计算单元22,用于根据所述用户所提供的搜索关键词和所述用户当前所点击的所述搜索关键词所对应的搜索结果,获得排序关键词与所述搜索关键词所对应的未展现的其他搜索结果之间的排序参数;所述排序关键词由所述搜索关键词和所述用户当前所点击的所述搜索关键词所对应的搜索结果组成;排序单元23,用于根据所述排序参数,对所述搜索关键词所对应的未展现的其他搜索结果,进行排序处理。需要说明的是,本实施例所提供的搜索结果的排序装置的部分或全部可以为位于本地终端的应用,或者还可以为设置在位于本地终端的应用中的插件或软件开发工具包(softwaredevelopmentkit,sdk)等功能单元,或者还可以为位于网络侧服务器中的搜索引擎,或者还可以为位于网络侧的分布式系统,本实施例对此不进行特别限定。可以理解的是,所述应用可以是安装在终端上的本地程序(nativeapp),或者还可以是终端上的浏览器的一个网页程序(webapp),本实施例对此不进行限定。本发明中,所获得的排序参数,可以用以指示所述搜索关键词与所述未展现的其他搜索结果之间的相似情况,以及所述当前所点击的搜索结果与所述未展现的其他搜索结果之间的相似情况。这样,通过采集用户的实时点击行为,综合考虑搜索关键词与未展现的其他搜索结果之间的相似情况,以及当前所点击的搜索结果与未展现的其他搜索结果之间的相似情况,获得所述搜索关键词所对应的未展现的其他搜索结果的排序参数,能够有效提高搜索结果的可靠性和有效性。可选地,在本实施例的一个可能的实现方式中,所述计算单元22,具体可以用于根据所述用户所提供的搜索关键词和所述用户当前所点击的所述搜索关键词所对应的搜索结果,利用页面排序模型,获得排序关键词与所述搜索关键词所对应的未展现的其他搜索结果之间的排序参数。在一个具体的实现过程中中,所述计算单元22,还可以进一步用于根据用户历史行为数据,获取训练样本数据,所述训练样本数据包括至少一个训练关键词所对应的点击样本页面、正例样本页面和负例样本页面;获取神经网络的损失函数;以及根据所述损失函数、所述至少一个训练关键词所所对应的点击样本页面、所述正例样本页面和所述负例样本页面,构建所述页面排序模型。具体来说,所述计算单元22,具体可以用于根据所述至少一个训练关键词中每个训练关键词,以及该训练关键词所对应的点击样本页面、所述正例样本页面和所述负例样本页面,利用所述神经网络,获得该训练关键词的向量表示,以及所述点击样本页面的向量表示、所述正例样本页面的向量表示和所述负例样本页面的向量表示;根据所述该训练关键词的向量表示和所述点击样本页面的向量表示,获得实时关键词的向量表示;根据所述实时关键词的向量表示,以及所述正例样本页面的向量表示和所述负例样本页面的向量表示,获得所述实时关键词与所述正例样本页面之间的第一相似度和所述实时关键词与所述负例样本页面之间的第二相似度;以及根据所述第一相似度和所述第二相似度,利用所述损失函数,构建所述页面排序模型。可选地,在本实施例的一个可能的实现方式中,所述排序单元23,具体可以用于获取搜索结果展现命令;根据所述排序参数,按照从大到小的顺序,对所述搜索关键词所对应的未展现的其他搜索结果,进行排序处理;以及输出所述排序处理之后的所述搜索关键词所对应的未展现的其他搜索结果。需要说明的是,图1对应的实施例中方法,可以由本实施例提供的搜索结果的排序装置实现。详细描述可以参见图1对应的实施例中的相关内容,此处不再赘述。本实施例中,通过获取单元获取用户所提供的搜索关键词和所述用户当前所点击的所述搜索关键词所对应的搜索结果,进而由计算单元根据所述用户所提供的搜索关键词和所述用户当前所点击的所述搜索关键词所对应的搜索结果,获得所述搜索关键词所对应的未展现的其他搜索结果的排序参数,使得排序单元能够根据所述排序参数,对所述搜索关键词所对应的未展现的其他搜索结果,进行排序处理,由于不再完全依赖搜索关键词执行搜索操作,而是进一步结合用户当前所点击的该搜索关键词所对应的搜索结果执行搜索操作,将由搜索关键词和用户当前所点击的搜索结果作为计算未展现的其他搜素结果的排序参数的依据,进而对未展现的其他搜索结果进行重新排序,使得所展现的搜索结果基本满足用户的真实意图,因此,能够避免现有技术中由于用户通过应用反复进行搜索而导致的增加应用与搜索引擎之间的数据交互的问题,从而降低了搜索引擎的处理负担。另外,采用本发明所提供的技术方案,通过采集用户的实时点击行为,综合考虑搜索关键词与未展现的其他搜索结果之间的相似情况,以及当前所点击的搜索结果与未展现的其他搜索结果之间的相似情况,获得所述搜索关键词所对应的未展现的其他搜索结果的排序参数,能够有效提高搜索结果的可靠性和有效性。另外,采用本发明所提供的技术方案,能够预测用户在搜索关键词中没有显示表达出来的真实意图,或者更细粒度的搜索意图,进而调整所展现的搜索结果的顺序,展现更加合适的搜索结果,能够有效提高搜索的效率。另外,采用本发明所提供的技术方案,能够有效地提高用户的体验。图3示出了适于用来实现本发明实施方式的示例性计算机系统/服务器12的框图。图3显示的计算机系统/服务器12仅仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。如图3所示,计算机系统/服务器12以通用计算设备的形式表现。计算机系统/服务器12的组件可以包括但不限于:一个或者多个处理器或者处理单元16,存储装置或者系统存储器28,连接不同系统组件(包括系统存储器28和处理单元16)的总线18。总线18表示几类总线结构中的一种或多种,包括存储器总线或者存储器控制器,外围总线,图形加速端口,处理器或者使用多种总线结构中的任意总线结构的局域总线。举例来说,这些体系结构包括但不限于工业标准体系结构(isa)总线,微通道体系结构(mac)总线,增强型isa总线、视频电子标准协会(vesa)局域总线以及外围组件互连(pci)总线。计算机系统/服务器12典型地包括多种计算机系统可读介质。这些介质可以是任何能够被计算机系统/服务器12访问的可用介质,包括易失性和非易失性介质,可移动的和不可移动的介质。系统存储器28可以包括易失性存储器形式的计算机系统可读介质,例如随机存取存储器(ram)30和/或高速缓存存储器32。计算机系统/服务器12可以进一步包括其它可移动/不可移动的、易失性/非易失性计算机系统存储介质。仅作为举例,存储系统34可以用于读写不可移动的、非易失性磁介质(图3未显示,通常称为“硬盘驱动器”)。尽管图3中未示出,可以提供用于对可移动非易失性磁盘(例如“软盘”)读写的磁盘驱动器,以及对可移动非易失性光盘(例如cd-rom,dvd-rom或者其它光介质)读写的光盘驱动器。在这些情况下,每个驱动器可以通过一个或者多个数据介质接口与总线18相连。系统存储器28可以包括至少一个程序产品,该程序产品具有一组(例如至少一个)程序模块,这些程序模块被配置以执行本发明各实施例的功能。具有一组(至少一个)程序模块42的程序/实用工具40,可以存储在例如系统存储器28中,这样的程序模块42包括——但不限于——操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。程序模块42通常执行本发明所描述的实施例中的功能和/或方法。计算机系统/服务器12也可以与一个或多个外部设备14(例如键盘、指向设备、显示器24等)通信,还可与一个或者多个使得用户能与该计算机系统/服务器12交互的设备通信,和/或与使得该计算机系统/服务器12能与一个或多个其它计算设备进行通信的任何设备(例如网卡,调制解调器等等)通信。这种通信可以通过输入/输出(i/o)接口44进行。并且,计算机系统/服务器12还可以通过网络适配器20与一个或者多个网络(例如局域网(lan),广域网(wan)和/或公共网络,例如因特网)通信。如图所示,网络适配器20通过总线18与计算机系统/服务器12的其它模块通信。应当明白,尽管图中未示出,可以结合计算机系统/服务器12使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、raid系统、磁带驱动器以及数据备份存储系统等。处理单元16通过运行存储在系统存储器28中的程序,从而执行各种功能应用以及数据处理,例如实现图1所对应的实施例所提供的搜索结果的排序方法。本发明另一实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现图1所对应的实施例所提供的搜索结果的排序方法。具体来说,可以采用一个或多个计算机可读的介质的任意组合。计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机存取存储器(ram)、只读存储器(rom)、可擦式可编程只读存储器(eprom或闪存)、光纤、便携式紧凑磁盘只读存储器(cd-rom)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本文件中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括——但不限于——电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括——但不限于——无线、电线、光缆、rf等等,或者上述的任意合适的组合。可以以一种或多种程序设计语言或其组合来编写用于执行本发明操作的计算机程序代码,所述程序设计语言包括面向对象的程序设计语言—诸如java、smalltalk、c++,还包括常规的过程式程序设计语言—诸如”c”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(lan)或广域网(wan)——连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。在本发明所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或页面组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。上述以软件功能单元的形式实现的集成的单元,可以存储在一个计算机可读取存储介质中。上述软件功能单元存储在一个存储介质中,包括若干指令用以使得一个计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器(processor)执行本发明各个实施例所述方法的部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(read-onlymemory,rom)、随机存取存储器(randomaccessmemory,ram)、磁碟或者光盘等各种可以存储程序代码的介质。最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。当前第1页12当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1