一种应用程序的搜索方法和装置、搜索服务器及系统与流程

文档序号:11155302阅读:348来源:国知局
一种应用程序的搜索方法和装置、搜索服务器及系统与制造工艺

本发明涉及互联网通信技术领域,具体涉及一种应用程序(APP)的搜索方法和装置、搜索服务器及系统。



背景技术:

随着互联网技术的飞速发展,各种应用下载平台已经成为人们下载安装各种应用程序(APP)的主要手段,通过手机助手用户可以轻松的搜索、下载、安装以及管理其终端资源。

搜索引擎(Search Engine)是指根据一定的策略、运用特定的计算机程序从互联网上搜集信息,在对信息进行组织和处理后,为用户提供检索服务,将用户检索相关的信息展示给用户的系统。目前,在手机助手的APP搜索方法中,主要包括两种方式,一种是采用语义搜索引擎进行搜索,另一种是采用广告搜索引擎进行搜索。语义搜索引擎根据候选内容与用户搜索词的相关性提供搜索结果,以相关性的最大化为目标,其召回(某款App出现在某个词的搜索结果中,称引擎在该词下“召回”了该App)依据是用户搜索词与APP标题、标签、简介等属性信息的文字关联性,搜索结果排序依据是相关性和点击反馈(表示搜索结果被点击的情况,某个搜索词下某条搜索结果的点击反馈越好,表明该搜索结果越受用户的欢迎)的综合结果,即相关性越强、点击情况越好的结果排的越靠前。广告搜索引擎则是根据广告主(即APP提供方)在用户输入的搜索词下投放的广告内容(即APP)提供搜索结果,以广告收益的最大化为目标。

当前,助手的语义搜索结果质量在竞品中处于领先水平,深得用户好评,原因在于搜索结果相关度高、排序合理。但在实际中,广告主希望搜索引擎召回给用户的是其投放在用户搜索词下的推广内容,且助手的搜索收入主要就是依赖于广告主的广告投放,由于助手搜索广告采用CPC(cost per click)计费,即根据用户的点击行为,按点击次数向被点击内容的提供方(广告主)收取费用,想要提高助手收入就需要将广告结果的点击总量做到最大化。由于语义搜索引擎和广告搜索引擎二者的出发点不同,广告搜索引擎评分与语义搜索引擎评分无法直接作比较(引擎评分即引擎得分是由引擎后台通过后台计算,为搜索结果打出的分数,越大表示引擎越推荐把该条搜索结果排到靠前的位置),这就导致广告内容(APP提供方投放的APP及其它相关信息)难以在自然搜索结果中找到合适的位置,如何将两种方式有机结合起来,是助手搜索需要解决的一大问题。

现有方案中,助手原有的搜索广告展示策略是在固定的区域范围内展现广告,即将搜索结果划分为多个区域,每个区域允许出现设定个数的广告,例如,将搜索结果划分为前两位、3~5位、6~15位三个区域,前两位允许出一个广告、3~5位允许出一个广告、6~15位允许出两个广告,总共最多只能展现4个广告,但该方案的广告相关性(插入到上述特定位置的APP与用户搜索词的相关性)较低,使得展示给用户的整个搜索结果的相关性降低,排序合理性较差、降低了用户体验,且广告数量少、广告平均出现的位置也较靠后,实际使用中广告的点击效果也一般。如何使得既能保证搜索结果的整体相关性、排序合理性和优秀的用户体验、又能达到广告主预期的投放效果和助手的收入指标,是目前亟待解决的一大难题。



技术实现要素:

针对现有技术中存在的缺陷,本发明实施例的目的在于提供一种能够克服上述问题或者至少能够部分地解决上述问题的应用程序APP的搜索方法、和装置、搜索服务器及系统。

为实现上述目的,本发明的一个实施例中提供了一种应用程序(APP)的搜索方法,该搜索方法包括:

获取用户的APP搜索请求;

根据所述APP搜索请求获取第一搜索引擎响应所述搜索请求的第一APP搜索结果,获取第二搜索引擎响应所述搜索请求的第二APP搜索结果;

将所述第一APP搜索结果和第二APP搜索结果进行匹配,根据匹配结果对第一APP搜索结果和第二APP搜索结果进行整合重排,得到第三APP搜索结果,并推送给所述用户。

本发明的一个实施例中提供了一种应用程序(APP)的搜索装置,该搜索装置包括:

搜索请求获取模块,用于获取用户的APP搜索请求;

搜索结果获取模块,用于根据所述APP搜索请求获取第一搜索引擎响应所述搜索请求的第一APP搜索结果,获取第二搜索引擎响应所述搜索请求的第二APP搜索结果;

搜索结果确定模块,用于将所述第一APP搜索结果和第二APP搜索结果进行匹配,根据匹配结果对第一APP搜索结果和第二APP搜索结果进行整合重排,得到第三APP搜索结果;

搜索结果推送模块,用于将第三APP搜索结果推送给所述用户。

本发明的一个实施例中提供了一种应用程序(APP)搜索服务器,包括所述的应用程序(APP)的搜索装置。

本发明的一个实施例中提供了一种应用程序(APP)搜索系统,包括客户端和所述的搜索服务器;所述客户端包括:

搜索请求接收模块,用于接收用户的APP搜索请求,并将APP搜索请求发送到所述搜索请求获取模块;

搜索结果接收模块,用于接收所述搜索结果推送模块推送的第三APP搜索结果;

搜索结果展示模块,用于将所述第三APP搜索结果展示给用户。

本发明的有益效果在于:本发明提供了一种新的应用程序APP的搜索方法和装置、搜索服务器及系统,该技术方案综合考虑了不同搜索引擎下返回的搜索结果,通过将不同搜索引擎下的初步搜索结果相匹配,再根据匹配结果对初步搜索结果进行整合重排,该方案在保证了搜索结果的整体相关性的同时,也保证了用户的良好体验。

本发明的一个实施例中,当第一搜索引擎为语义搜索引擎,第二搜索引擎为广告搜索引擎时,本发明的技术方案在保证了搜索结果的整体相关性和用户良好体验的同时,又保证了广告展现效果和助手搜索收入,更好的满足了实际应用中的需求,解决了现有技术中语义搜索和广告搜索结合结果差的问题。

上述说明仅是本发明技术方案的概述,本发明附加的方面和优点将在下面的描述中部分给出或者通过本发明的实践了解到。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1为本发明一个实施例中的一种应用程序(APP)的搜索方法的流程图;

图2为本发明一个实施例中的一种应用程序(APP)的搜索方法的流程图;

图3为本发明一个实施例中将第一APP进行Onebox展示的示意图;

图4为本发明一个实施例中将第一APP进行Onebox展示的示意图;

图5为本发明一个实施例中的一种应用程序(APP)的搜索方法的流程图;

图6为本发明一个实施例中的一种应用程序(APP)的搜索装置的结构示意图;

图7为本发明一个实施例中的搜索位置确定模块的第一位置调整单元的结构示意图;

图8为本发明一个实施例中的搜索位置确定模块的第一位置调整单元的结构示意图;

图9为本发明一个实施例中的搜索位置确定模块的结构示意图;

图10为本发明一个实施例中的搜索位置确定模块的结构示意图;

图11为本发明一个实施例中的搜索位置确定模块的第二位置调整单元的结构示意图;

图12为本发明一个实施例中的APP搜索系统的结构示意图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,均属于本发明保护的范围。

为了更好的理解本发明实施例中的方案,首先对本发明实施例中所涉及到的技术用于进行简单的介绍说明:

自然结果:语义搜索引擎返回的搜索排序结果称为自然结果,即不受广告内容干扰的原始搜索结果;

自然结果位置:APP在自然结果中的排序位置;

Rank值:即引擎得分,是搜索引擎通过后台计算为每个搜索结果打出的分数,越大表示引擎越推荐把该条搜索结果排到靠前的位置;广告搜索引擎的搜索结果中APP的Rank值即是广告搜索引擎通过后台计算为其搜索出的APP打出的分值。

图1示出了本发明一个实施例的一种应用程序(APP)的搜索方法,由图中可以看出,该搜索方法包括:

步骤S110:获取用户的APP搜索请求;

步骤S120:根据所述APP搜索请求获取第一搜索引擎返回的第一APP搜索结果,获取第二搜索引擎返回的第二APP搜索结果;

步骤S130:将所述第一APP搜索结果和第二APP搜索结果进行匹配,根据第一APP搜索结果和第二APP搜索结果的匹配结果,对第一APP搜索结果和第二APP搜索结果进行整合重排,得到第三APP搜索结果,并推送给所述用户。

首先获取用户的APP搜索请求,即用户在终端界面上输入的其想要搜索的APP的相关词,如用户在360手机助手的界面输入“购物”一词,则“购物”即为用户的APP搜索词。获取到用户的APP搜索请求后,根据该搜索请求分别获取到不同搜索引擎返回的搜索结果,包括第一搜索引擎响应所述搜索请求的第一APP搜索结果,第二搜索引擎响应所述搜索请求的第二APP搜索结果。

获取到所述第一APP搜索结果和第二APP搜索结果后,将第一APP搜索结果和第二APP搜索结果进行匹配,根据匹配结果对第一APP搜索结果和第二APP搜索结果进行整合重排,得到第三APP搜索结果,并推送给所述用户。所述将第一APP搜索结果和第二APP搜索结果进行匹配,指的即是筛选第一APP搜索结果和第二搜索结果中的相同的搜索结果,如果两个搜索结果中都有相同的APP,则该相同的APP匹配成功,相同的两个APP相互匹配。

在实际应用中,对第一APP搜索结果和第二APP搜索结果进行整合重排的具体方式可以根据实际需要进行确定,例如,可以将匹配成功的APP在第一APP搜索结果中的位置向前提,第一APP搜索结果中的其它APP的位置向后依次顺延。

具体的,所述第一搜索引擎可以为语义搜索引擎,如360搜索引擎,所述第二搜索引擎可以为广告搜索引擎,如360点睛引擎。当然,在实际应用中,第一搜索引擎和第二搜索引擎也可以其它类型的搜索引擎,或者是用户自定义的搜索引擎。

本实施例中,图1所示的搜索方法,根据不同搜索引擎下的不同搜索结果的匹配结果对不同引擎下返回的初步搜索结果进行整合重排,得到最终要推送给用户的搜索结果列表,该方案使推送到用户的搜索结果综合了不同搜索引擎下的搜索结果,且同时保证最终排序结果的整体关联性和用户的良好体验。在本发明的一实施例中,当第一搜索引擎为语义搜索引擎,第二搜索引擎为广告搜索引擎时,该方案还保证了广告展现效果和应用搜索下载平台的搜索收入,更好的满足了实际应用中的需求。

在实际应用中,考虑到服务器端的运算速度以及第三APP搜索结果的数量,一般会选取设定数量的第一APP搜索结果和第二APP搜索结果进行匹配,例如,只选取了前40条第一APP搜索结果和前50条的第二APP搜索结果进行匹配,既保证了服务端运算速度,又保证了进行匹配的结果数量充足。当然,具体选取多少个搜索结果进行匹配可以根据实际业务灵活调整匹配范围。

图2示出了本发明的一个实施例中一种应用程序(APP)的搜索方法的流程图,由图中可以看出,该搜索方法包括:

步骤S210:获取用户的APP搜索请求;

步骤S220:根据所述APP搜索请求获取第一搜索引擎返回的第一APP搜索结果,获取第二搜索引擎返回的第二APP搜索结果;

步骤S230:将第一APP搜索结果和第二APP搜索结果进行匹配,根据匹配成功的第二APP搜索结果中的第二APP的Rank值对与第一APP搜索结果中与其匹配成功的第一APP的排序位置进行调整,得到第三APP搜索结果,并推送给用户。

本实施例中,图2中所示的搜索方法,步骤S210和步骤S220与图1中所示的步骤S110和步骤S120是相同的,具体可参见前文中对步骤S110和步骤S120的描述。

本实施例中提供了一种对APP搜索结果进行整合重排的具体方式,即对于第一APP搜索结果和第二APP搜索结果中匹配成功的第一APP和第二APP,根据第二APP的Rank值对与其相匹配的第一APP在第一APP搜索结果中的排序位置进行调整,调整的公式为:

POS=P‐a

其中,POS为与第二APP相匹配的第一APP调整后的最终排序位置,P为第一APP的自然结果位置(即第一APP在第一APP搜索结果列表中的顺序),a为第一APP的位置提前量;第一APP的位置提前量根据第二APP的Rank值确定;第二APP的Rank值是指第二APP在第二搜索引擎下的搜索排序分值即引擎得分。

本实施例中所述的搜索方法,提升了两种搜索引擎中搜索出共同的APP在第一APP搜索结果中的排序位置,并将调整后的第一APP搜索结果即所述的第三APP搜索结果推送给用户。

本发明的一个实施例中,根据第二APP的Rank值确定与其相匹配的第一APP的位置提前量的一种方式包括:

将所有第二APP的Rank值进行归一化处理,归一化到[0,1]之间;

确定最大归一化Rank值的最大位置提前量和最小归一化Rank值的最小位置提前量;

根据最大位置提前量和最小位置提前量,确定最大归一化Rank值和最小归一化Rank值之外的其它Rank值对应的位置提前量。

具体的,所述所有第二APP指的是第二APP搜索结果中的与第一APP搜索结果中匹配成功的所有APP。

本实施例中,通过预先设置最大Rank值对应的最大位置提前量和最小Rank值对应的最小位置提前量,最大和最小Rank值之外的其它Rank值对应的位置提前量按照比例确定即可。

为了计算方便,首先将所有第二APP的Rank值进行归一化处理,一种归一化处理后公示如下:

其中,Rankmax表示所有第二APP的Rank值中最大的Rank值,Rankmin表示所有第二APP的Rank值中最小的Rank值,Rank表示某一第二APP的Rank值,R表示Rank归一化后的Rank值。处理后,R的值域在[0,1]区间。

在实际应用中,由于零不适合参与乘法计算,为了避免归一化后的Rank值中出现有零值的情况,则需要对所有第二APP的归一化Rank值进行值域平移,再根据平移后的第二APP的归一化Rank值对第一APP的排序位置进行调整,在避开零值的同时不改变所有第二APP的归一化后Rank值之间的相对大小。

在本发明的一个实施例中,可以采用一次函数进行归一化Rank值的值域平移,对所有第二APP的归一化的Rank值进行值域平移的公式:

R’=R×R1+R2

其中,R’为对R进行值域平移后的结果,R1和R2分别为第一平移系数和第二平移系数,R1+R2=1。

R1和R2的具体取值可以根据需要设定,但两者的取值都不能为0或1,在本发明的一个实施例中,R1=0.9,R2=0.1,平移后的归一化Rank值的值域在[0.1,1]区间。

在本发明的一个实施例中,根据第二APP的Rank值确定与其相匹配的第一APP的位置提前量的一种方式包括:

将所有第二APP的Rank值进行归一化处理,归一化到[0,1]之间;

根据第二APP的归一化Rank值计算相匹配的第一APP的位置提前量,计算公式为:

a=Round(R×P1+P2)

其中,a为第一APP的位置提前量,R为第二APP的归一化Rank值,P1为第一位置提前量系数,P2为第二位置提前量系数,Round()表示将括号中的数值四舍五入后取整。

同样的,当某一第二APP的归一化Rank值为0时,也需要对所有第二APP的归一化Rank值进行值域平移,再根据平移后的第二APP的归一化Rank值对第一APP的排序位置进行调整。

本发明的一个实施例中,P1=14,P2=24,当然也可以根据实际情况进行调整,此时,若R1=0.9,R2=0.1,平移后的归一化Rank值的值域在[0.1,1]区间,由于平移后的归一化Rank最小为0.1,位置提前量的范围取值也控制在了[25,38],在只选取前40条第一APP搜索结果进行匹配时,同样实现了匹配成功的第二APP在第三APP搜索结果中的最终展现位置总在第15为之前。

例如,假设预置的位置提前量的取值范围为[25,38],即最大位置提前量为38,最小位置提前量为25,第二APP搜索结果中与第一APP搜索结果匹配成功的APP为5个,即第二APP为5个,平移后的五个第二APP的Rank值的归一化的Rank值分别为0.1、0.2、0.4、0.7和1,则0.1对应的第一APP的位置提前量为25,1对应的第一APP的位置提前量为38,0.2、0.4、0.7对应的第一APP的位置提前量分别为:25+(38-25)×(0.2-0.1)/(1-0.1)、25+13×3/9、25+13×6/9,取整后分别为26、29和34。对于第二搜索引擎为广告搜索引擎而言,采用该方案,在只选取前40条第一APP搜索结果进行匹配时,保证了匹配成功的APP的最终展现位置总在第15为之前(除非匹配成功的第二APP的匹配个数大于15个),保证了广告(广告搜索引擎下返回的APP搜索结果)能够被充分地看见。

考虑到实际中的情况,由于APP的最终排序位置的最靠前位置也就是第一位,因此,若根据所述位置提前量计算出的第一APP在第一APP搜索结果最终位置为零或负值,则需要将计算出的第一APP的位置再进行修正,修正后的POS值最小为1,即若根据POS=P‐a计算出结果小于1,则对其进行修正,其他APP的排序位置一次向后顺延。

在本发明的一个实施例中,当所述第一APP搜索结果中包括和第二APP搜索结果的第四APP相匹配成功的第三APP时,若调整后的第一APP的排序位置与调整后的第三APP的排序位置冲突,此时,则比较第二APP的Rank值和第四APP的Rank值,将其中Rank值较大者对应的第一APP或第三APP置于冲突的排序位置,Rank值较小者对应的第三APP或第一APP置于冲突的排序位置的下一位。

即根据调整后的位置冲突的APP在第二APP搜索结果下的Rank值确定APP的位置冲突的APP最终排序。

需要说明的,本实施例中的该方案同样适用于若存在多个第一APP的最终排序位置计算后小于1的情况,此时,根据每个第一APP对应的第二APP的Rank值确定这些修正后的第一APP的排序关系,将Rank值最大的第二APP所匹配成功的第一APP置于第一位,其它修正后的第一APP的最终排序位置依次按照各自所对应的第二APP的Rank值依次顺延。还适用于后续其它实施例中对第一APP搜索结果和第二APP搜索结果进行整合重排过程中,可能会出现的两个或两个APP最终排序位置冲突的情况。

在本发明的另一个实施例中,若相匹配的第一APP和第二APP分别位于第一APP搜索结果的首位和第二APP搜索结果的首位,则在将第三APP搜索结果推送给所述用户时,将第一APP置于预设的品牌专区位置进行Onebox展示。

第一APP与第二APP分别位于第一APP搜索结果的首位和第二APP搜索结果的首位,表明这个APP是两个引擎都最想推荐给用户的,对于语义搜索引擎和广告搜索引擎而言,则表明用户想找的结果与广告出价最高的结果正好一致,此时通过对这款APP进行首位Onebox展示的方式来对其重点展示。

其中,所述品牌专区位置为第三APP搜索结果的首位,第三APP搜索结果中除品牌专区位置的第一APP之外的其它APP的排序位置依次顺延。

在本发明的一个实施例中,将第一APP置于预设的品牌专区位置进行Onebox展示的一种方式为:将第一APP和与其关联的若干张介绍图片置于所述品牌专区位置进行Onebox展示。例如,用横排三张介绍图片的形式对目标APP进行重点展示,如图3中所示的APP蘑菇街。

在本发明的一个实施例中,将第一APP置于预设的品牌专区位置进行Onebox展示的一种方式为:根据第一APP和其投放业主预定制的APP宣传图片置于所述品牌专区位置进行Onebox展示,进一步提升广告展现效果,如图4中所示的APP苏宁易购。

本领域技术人员应可了解,上述Onebox展示方式可以根据具体方案进行调整,且并不仅限于Onebox的形式,只要区别于其他APP显示方式的方式皆可应用于此,本发明对此不做限制。

图5示出了本发明的一个实施例中一种应用程序(APP)的搜索方法的流程图,由图中可以看出,该搜索方法包括以下步骤:

步骤S510:获取用户的APP搜索请求;

步骤S520:根据所述APP搜索请求获取第一搜索引擎返回的第一APP搜索结果,获取第二搜索引擎返回的第二APP搜索结果;

步骤S530:将第一APP搜索结果和第二APP搜索结果进行匹配,得到第二APP搜索结果中匹配成功的m个第五APP;

步骤S540:根据第二APP搜索结果的排序结果,选择n-m个第二APP搜索结果中的第六APP;

步骤S550:根据第五APP和第六APP的Rank值对第一APP搜索结果和第二APP搜索结果进行整合重排,得到第三APP搜索结果,并推送给用户。

本实施例中,图5中所示的搜索方法,步骤S510与步骤S520与图1中所示的步骤S110和步骤S120以及图2中的步骤S210和步骤S220是相同的,具体可参见前文中的描述。

本实施例中的方案,在第一APP搜索结果和第二APP搜索结果中匹配成功的APP的个数m少于设定阈值n时,需要从第二APP搜索结果中再选取n-m个进行补足,以保证最后整合重排得到的第三APP搜索结果中来自第二搜索引擎的搜索结果的APP的个数不少于设定阈值n。其中,n的具体取值可以根据实际情况设置,如n=4。

对于语义搜索引擎和广告搜索引擎而言,由于广告搜索引擎返回的第二APP搜索结果中APP的Rank值除了体现了广告主的出价外,也体现了广告的点击反馈(表示搜索结果被点击的情况,包括总点击占比、最近一万次点击量、最后一次点击量等多个维度加权得到,某个搜索词下某条搜索结果的点击反馈越好,表明该搜索结果越受用户的欢迎),应用下在平台会根据设定的标准将点击结果交出的下线,因此,即使从第二AP搜索结果中选取没有匹配成功的n-m个第六APP作为补充,最终第三APP搜索结果的总体相关性也不会因为第六APP的加入而降低,且由于广告搜索引擎下的第二APP搜索结果下APP的Rank值也体现了广告投放主的出价,采用该方式也保障了广告投放主和助手平台的收益。

在本发明的一个实施例中,根据第五APP和第六APP的Rank值对第一APP搜索结果和第二APP搜索结果进行整合重排,包括:

根据第五APP和第六APP的Rank值,对第五APP和第六APP进行排序;

根据第五APP和第六APP在第二APP搜索结果中的排序结果,将与第五APP相匹配的第一APP搜索结果中的第七APP的排序位置调整到第一APP搜索结果中预留的APP第一插入位置,将第六APP插入到第一APP搜索结果中预留的APP第二插入位置。

其中,所述APP第一插入位置和APP第二插入位置为第一APP搜索结果中预先设定的APP插入位置,如n=4时,可以设定4个APP的插入位置分别为第2位、第4位、第7位和第9位,完成上述整合重排后,得到的调整后的第一APP搜索结果即为所要推送给用户的第三APP搜索结果。

在本发明的另一个实施例中,为了保证与第五APP相匹配的第七APP的最终排序位置不会因为整合重排导致位置下降,所述搜索方法还包括:

比较第七APP的自然结果位置和预留的APP第一插入位置,将两者中靠前的位置确定为第七APP在第一APP搜索结果中的最终排序位置。

即将第一插入位置与第七APP在第一APP搜索结果中的自然结果位置的前者确定为第七APP的最终排序位置。对于广告搜索引擎而言,该方式保证了广告投放主希望推广的APP的最终排序位置能有提升。例如,第七APP的自然结果位置为第3位,而其调整后所在的预留的APP第一插入位置为第4位,此时则保持第七APP的原自然结果位置不变。

图6示出了本发明的一个实施例中一种应用程序(APP)的搜索装置的结构示意图,由图中可以看出,该搜索装置包括搜索请求获取模块100、搜索结果获取模块200、搜索结果确认模块300和搜索结果推送模块400。其中:

所述搜索请求获取模块100,用于获取用户的APP搜索请求;

所述搜索结果获取模块200,用于根据所述APP搜索请求获取第一搜索引擎响应所述搜索请求的第一APP搜索结果,获取第二搜索引擎响应所述搜索请求的第二APP搜索结果;

所述搜索结果确定模块300,用于将所述第一APP搜索结果和第二APP搜索结果进行匹配,根据匹配结果对第一APP搜索结果和第二APP搜索结果进行整合重排,得到第三APP搜索结果;

所述搜索结果推送模块400,用于将所述第三APP搜索结果推送给所述用户。

在本发明的一个实施例中,所述第一搜索引擎为语义搜索引擎,所述第二搜索引擎为广告搜索引擎。

在本发明的一个实施例中,所述搜索结果确定模块300包括第一位置调整单元310,如图7和图8中所示。

第一位置调整单元310,用于对第一APP搜索结果和第二APP搜索结果中匹配成功的第一APP和第二APP,根据第二APP的Rank值对相匹配的第一APP在第一APP搜索结果中的排序位置进行调整,进行调整的公式为:

POS=P‐a

其中,POS为与第二APP相匹配的第一APP调整后的最终排序位置,P为第一APP的自然结果位置,a为第一APP的位置提前量;第一APP的位置提前量根据第二APP的Rank值确定;第二APP的Rank值是指第二APP在第二搜索引擎下的搜索排序分值。

在本发明的一个实施例中,所述第一位置调整单元310包括第一归一化子单元3110、提前量范围确定子单元3111和位置提前量确定子单元3112,如图7中所示。其中:

第一归一化子单元3110,用于将所有第二APP的Rank值进行归一化处理,归一化到[0,1]之间;

提前量范围确定子单元3111,用于确定最大归一化Rank值的最大位置提前量和最小归一化Rank值的最小位置提前量;

位置提前量确定子单元3112,用于根据最大位置提前量和最小位置提前量,确定最大归一化Rank值和最小归一化Rank值之外的其它Rank值对应的位置提前量。

在本发明的另一个实施例中,所述第一位置调整单元310包括第二归一化子单元3120和位置提前量计算子单元3121,如图8中所示。其中:

第二归一化子单元3120,用于将所有第二APP的Rank值进行归一化处理,归一化到[0,1]之间;

位置提前量计算子单元3121,用于根据第二APP的归一化Rank值计算相匹配的第一APP的位置提前量,计算公式为:

a=Round(R×P1+P2)

其中,R为第二APP的归一化Rank值,P1为第一位置提前量系数,P2为第二位置提前量系数,Round()表示将括号中的数值四舍五入后取整。

在本发明的一个实施例中,所述第一位置调整单元310还包括分值平移子单元3130,如图7和图8中所示。分值平移子单元3130,用于在某一第二APP的归一化Rank值为0,则对所有第二APP的Rank值进行值域平移。平移后,第一位置调整单元310根据平移后的第二APP的归一化Rank值对第一APP的排序位置进行调整。

通过值域平移的方式,在避开了归一化Rank值为零的同时也不改变所有第二APP的Rank值与Rank值之间的相对大小。本发明的一个实施例中,可以采用一次函数进行值域平移,具体的,所述值域平移的公式为:

R’=R×R1+R2

其中,R’为对R进行值域平移后的结果,R1和R2分别为第一平移系数和第二平移系数,R1+R2=1。

在本发明的一个实施例中,所述搜索结果确定模块300还包括冲突位置调整单元320,如图9所示。其中:

冲突位置调整单元320,用于在第一APP搜索结果中包括和第二APP搜索结果的第四APP相匹配的第三APP,若调整后的第一APP的排序位置与调整后的第三APP的排序位置冲突时,比较第二APP的Rank值和第四APP的Rank值,将Rank值较大者对应的第一APP或第三APP置于冲突的排序位置,Rank值较小者对应的第三APP或第一APP置于冲突的排序位置的下一位。

在本发明的一个实施例中,所述搜索结果确定模块300包括补充APP选择单元330和第二位置调整单元340,如图10所示。其中:

补充APP选择单元330,用于在第二APP搜索结果中与第一APP搜索结果中匹配成功的第五APP的个数m小于设定阈值n时,根据第二APP搜索结果的排序结果,再选择n-m个第二搜索结果中的第六APP;

第二位置调整单元340,用于根据第五APP和第六APP的Rank值对第一APP搜索结果和第二APP搜索结果进行整合重排。

在本发明的一个实施例中,所述第二位置调整单元340包括APP排序子单元3410和位置调整子单元3411,如图11所示。

APP排序子单元3410,用于根据第五APP和第六APP的Rank值,对第五APP和第六APP进行排序;

位置调整子单元3411,用于根据第五APP和第六APP的排序结果,将与第五APP相匹配的第一APP搜索结果中的第七APP的排序位置调整到第一APP搜索结果中预留的APP第一插入位置,将第六APP插入到第一APP搜索结果中预留的APP第二插入位置。

在本发明的另一个实施例中,所述第二位置调整单元3411还用于比较第五APP的自然结果位置和预留的APP第一插入位置,将两者中靠前的位置确定为第五APP在第一APP搜索结果中的最终排序位置。

本发明实施例中还公开了一种应用程序(APP)搜索服务器,如图12中所示,所述搜索服务器2包括前文所述的任意一种应用程序APP搜索装置。

本发明实施例中还公开了一种应用程序(APP)搜索系统,如图12中所示,该APP搜索系统包括客户端1和上述的搜索服务器2;其中,所述客户端包括搜索请求接收模块10、搜索结果接收模块20和搜索结果展示模块30。其中:

搜索请求接收模块10,用于接收用户的APP搜索请求,并将APP搜索请求发送到所述搜索请求获取模块100;

搜索结果接收模块20,用于接收所述搜索结果推送模块400推送的第三APP搜索结果;

搜索结果展示模块30,用于将所述第三APP搜索结果展示给用户。

本发明实施例中所提供的APP的搜索方法和装置、APP搜索服务器及系统,适用于包括但不限于第一搜索引擎为语义搜索引擎,第二搜索引擎为广告搜索引擎的方案;该方案适用于包括但不限于PC、智能手机等终端设备的应用下载平台中的APP搜索,通过该方案为用户提供了两种搜索引擎下的综合搜索结果,且结果在保持整体相关性的同时,也不会用户的整体使用体验,更好的满足了实际应用需求。

需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。

本说明书中的各个实施例均采用相关的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。

本领域普通技术人员可以理解实现上述装置实施方式中各部分的全部或部分可以以硬件实现,或者以在一个或多个硬件上运行的软件模块来实现,方法实施方式中的全部或部分步骤是可以通过程序来指令相关的硬件来完成。本领域技术人员应该明白,本发明所述的方法和装置并不限于具体实施方式中所述的实施例,上面的具体描述只是为了解释本发明的目的,并非用于限制本发明。本领域技术人员根据本发明的技术方案得出其他的实施方式,同样属于本发明的技术创新范围,本发明的保护范围由权利要求及其等同物限定。

本发明实施例公开了:A1、一种应用程序(APP)的搜索方法,包括:

获取用户的APP搜索请求;

根据所述APP搜索请求获取第一搜索引擎响应所述搜索请求的第一APP搜索结果,获取第二搜索引擎响应所述搜索请求的第二APP搜索结果;

将所述第一APP搜索结果和第二APP搜索结果进行匹配,根据匹配结果对第一APP搜索结果和第二APP搜索结果进行整合重排,得到第三APP搜索结果,并推送给所述用户。

A2、如A1所述的搜索方法,所述第一搜索引擎为语义搜索引擎,所述第二搜索引擎为广告搜索引擎。

A3、如A1所述的搜索方法,根据匹配结果对第一APP搜索结果和第二APP搜索结果进行整合重排,包括:

对于第一APP搜索结果和第二APP搜索结果中匹配成功的第一APP和第二APP,根据第二APP的Rank值对相匹配的第一APP在第一APP搜索结果中的排序位置进行调整,进行调整的公式为:

POS=P‐a

其中,POS为与第二APP相匹配的第一APP调整后的最终排序位置,P为第一APP的自然结果位置,a为第一APP的位置提前量;第一APP的位置提前量根据第二APP的Rank值确定;

第二APP的Rank值是指第二APP在第二搜索引擎下的搜索排序分值。

A4、如A3所述的搜索方法,根据第二APP的Rank值确定与其相匹配的第一APP的位置提前量,包括:

将所有第二APP的Rank值进行归一化处理,归一化到[0,1]之间;

确定最大归一化Rank值的最大位置提前量和最小归一化Rank值的最小位置提前量;

根据最大位置提前量和最小位置提前量,确定最大归一化Rank值和最小归一化Rank值之外的其它Rank值对应的位置提前量。

A5、如A3所述的搜索方法,根据第二APP的Rank值确定与其相匹配的第一APP的位置提前量,包括:

将所有第二APP的Rank值进行归一化处理,归一化到[0,1]之间;

根据第二APP的归一化Rank值计算相匹配的第一APP的位置提前量,计算公式为:

a=Round(R×P1+P2)

其中,a为第一APP的位置提前量,R为第二APP的归一化Rank值,P1为第一位置提前量系数,P2为第二位置提前量系数,Round()表示将括号中的数值四舍五入后取整。

A6、如A4或A5所述的搜索方法,若某一第二APP的归一化Rank值为0,则对所有第二APP归一化后的的Rank值进行值域平移,根据平移后的第二APP的归一化Rank值对第一APP的排序位置进行调整。

A7、如A6所述的搜索方法,所述值域平移的公式为:

R’=R×R1+R2

其中,R’为对R进行值域平移后的结果,R1和R2分别为第一平移系数和第二平移系数,R1+R2=1。

A8、如A3所述的搜索方法,所述第一APP搜索结果中包括和第二APP搜索结果的第四APP相匹配成功的第三APP,若调整后的第一APP的排序位置与调整后的第三APP的排序位置冲突,则比较第二APP的Rank值和第四APP的Rank值,将其中Rank值较大者对应的第一APP或第三APP置于冲突的排序位置,Rank值较小者对应的第三APP或第一APP置于冲突的排序位置的下一位。

A9、如A3所述的搜索方法,若相匹配的第一APP和第二APP分别位于第一APP搜索结果的首位和第二APP搜索结果的首位,则在将第三APP搜索结果推送给所述用户时,将第一APP置于预设的品牌专区位置进行Onebox展示。

A10、如A9所述的搜索方法,将第一APP置于预设的品牌专区位置进行Onebox展示,包括:

将第一APP和与其关联的若干张介绍图片置于所述品牌专区位置进行Onebox展示;或者,

根据第一APP和其投放业主预定制的APP宣传图片置于所述品牌专区位置进行Onebox展示。

A11、如A9所述的搜索方法,所述品牌专区位置为第三APP搜索结果的首位,第三APP搜索结果中除第一APP之外的其它APP的排序位置依次顺延。

A12、如A1或A2所述的搜索方法,根据匹配结果对第一APP搜索结果和第二APP搜索结果进行整合重排,包括:

若第二APP搜索结果中与第一APP搜索结果中匹配成功的第五APP的个数m小于设定阈值n,则根据第二APP搜索结果的排序结果,再选择n-m个第二APP搜索结果中的第六APP;

根据第五APP和第六APP的Rank值对第一APP搜索结果和第二APP搜索结果进行整合重排。

A13、如A12所述的搜索方法,根据第五APP和第六APP的Rank值对第一APP搜索结果和第二APP搜索结果进行整合重排,包括:

根据第五APP和第六APP的Rank值,对第五APP和第六APP进行排序;

根据第五APP和第六APP在第二APP搜索结果中的排序结果,将与第五APP相匹配的第一APP搜索结果中的第七APP的排序位置调整到第一APP搜索结果中预留的APP第一插入位置,将第六APP插入到第一APP搜索结果中预留的APP第二插入位置。

A14、如A13所述的搜索方法,还包括:

比较第七APP的自然结果位置和预留的APP第一插入位置,将两者中靠前的位置确定为第七APP在第一APP搜索结果中的最终排序位置。

本发明实施例还公开了:B15、一种应用程序(APP)的搜索装置,该搜索装置包括:

搜索请求获取模块,用于获取用户的APP搜索请求;

搜索结果获取模块,用于根据所述APP搜索请求获取第一搜索引擎响应所述搜索请求的第一APP搜索结果,获取第二搜索引擎响应所述搜索请求的第二APP搜索结果;

搜索结果确定模块,用于将所述第一APP搜索结果和第二APP搜索结果进行匹配,根据匹配结果对第一APP搜索结果和第二APP搜索结果进行整合重排,得到第三APP搜索结果;

搜索结果推送模块,用于将所述第三APP搜索结果推送给所述用户。

B16、如B15所述的搜索装置,所述第一搜索引擎为语义搜索引擎,所述第二搜索引擎为广告搜索引擎。

B17、如B15或B16所述的搜索装置,所述搜索结果确定模块,包括:

第一位置调整单元,用于对第一APP搜索结果和第二APP搜索结果中匹配成功的第一APP和第二APP,根据第二APP的Rank值对相匹配的第一APP在第一APP搜索结果中的排序位置进行调整,进行调整的公式为:

POS=P‐a

其中,POS为与第二APP相匹配的第一APP调整后的最终排序位置,P为第一APP的自然结果位置,a为第一APP的位置提前量;第一APP的位置提前量根据第二APP的Rank值确定;

第二APP的Rank值是指第二APP在第二搜索引擎下的搜索排序分值。

B18、如B17所述的搜索装置,所述第一位置调整单元包括:

第一归一化子单元,用于将所有第二APP的Rank值进行归一化处理,归一化到[0,1]之间;

提前量范围确定子单元,用于确定最大归一化Rank值的最大位置提前量和最小归一化Rank值的最小位置提前量;

位置提前量确定子单元,用于根据最大位置提前量和最小位置提前量,确定最大归一化Rank值和最小归一化Rank值之外的其它Rank值对应的位置提前量。

B19、如B17所述的搜索装置,所述第一位置调整单元包括:

第二归一化子单元,用于将所有第二APP的Rank值进行归一化处理,归一化到[0,1]之间;

位置提前量计算子单元,用于根据第二APP的归一化Rank值计算相匹配的第一APP的位置提前量,计算公式为:

a=Round(R×P1+P2)

其中,R为第二APP的归一化Rank值,P1为第一位置提前量系数,P2为第二位置提前量系数,Round()表示将括号中的数值四舍五入后取整。

B20、如B18或B19所述的搜索装置,所述第一位置调整单元还包括:

分值平移子单元,用于在某一第二APP的归一化Rank值为0,则对所有第二APP的Rank值进行值域平移;

第一位置调整单元根据平移后的第二APP的Rank值对第一APP的排序位置进行调整。

B21、如B20所述的搜索装置,所述值域平移的公式为:

R’=R×R1+R2

其中,R’为对R进行值域平移后的结果,R1和R2分别为第一平移系数和第二平移系数,R1+R2=1。

B22、如B17所述的搜索装置,所述搜索结果确定模块,还包括:

冲突位置调整单元,用于在第一APP搜索结果中包括和第二APP搜索结果的第四APP相匹配的第三APP,若调整后的第一APP的排序位置与调整后的第三APP的排序位置冲突时,比较第二APP的Rank值和第四APP的Rank值,将Rank值较大者对应的第一APP或第三APP置于冲突的排序位置,Rank值较小者对应的第三APP或第一APP置于冲突的排序位置的下一位。

B23、如B15或B16所述的搜索装置,所述搜索结果确定模块,包括:

补充APP选择单元,用于在第二APP搜索结果中与第一APP搜索结果中匹配成功的第五APP的个数m小于设定阈值n时,根据第二APP搜索结果的排序结果,再选择n-m个第二搜索结果中的第六APP;

第二位置调整单元,用于根据第五APP和第六APP的Rank值对第一APP搜索结果和第二APP搜索结果进行整合重排。

B24、如B23所述的搜索装置,所述第二位置调整单元包括:

APP排序子单元,用于根据第五APP和第六APP的Rank值,对第五APP和第六APP进行排序;

位置调整子单元,用于根据第五APP和第六APP的排序结果,将与第五APP相匹配的第一APP搜索结果中的第七APP的排序位置调整到第一APP搜索结果中预留的APP第一插入位置,将第六APP插入到第一APP搜索结果中预留的APP第二插入位置。

B25、如B24所述的搜索装置,所述位置调整子单元还用于比较第五APP的自然结果位置和预留的APP第一插入位置,将两者中靠前的位置确定为第五APP在第一APP搜索结果中的最终排序位置。

本发明实施例中还公开了:C26、一种应用程序(APP)搜索服务器,包括B15-B25中任一项所述的应用程序APP的搜索装置。

本发明实施例中还公开了D27、一种应用程序(APP)搜索系统,包括客户端和C26中所述的搜索服务器;所述客户端包括:

搜索请求接收模块,用于接收用户的APP搜索请求,并将APP搜索请求发送到所述搜索请求获取模块;

搜索结果接收模块,用于接收所述搜索结果推送模块推送的第三APP搜索结果;

搜索结果展示模块,用于将所述第三APP搜索结果展示给用户。

显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其同等技术的范围之内,则本发明也意图包含这些改动和变型在内。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1