一种兴趣点搜索方法及装置、电子设备与流程

文档序号:12802521阅读:189来源:国知局
一种兴趣点搜索方法及装置、电子设备与流程

本申请涉及计算机技术领域,特别是涉及一种兴趣点搜索方法及装置,电子设备。



背景技术:

随着互联网技术的发展,互联网平台信息量暴增,一些搜索引擎为了给用户提供完全个性化的决策支持和信息服务,通常会根据用户输入的搜索关键词,结合用户所处地理位置为用户搜索相关信息。现有技术中的通常做法是:搜索服务器首先根据用户的搜索关键词和搜索请求进行搜索,以获得多个搜索结果;然后,搜索服务器进一步获取用户的当前地理位置以及用户的用户标识,并根据用户标识获得用户的历史位置信息;最后,搜索服务器根据历史位置信息对多个搜索结果进行排序优化,以便为用户提供丰富的搜索结果。采用现有技术中的方法,当某一用户在a地搜索旅游景点时,如果a地旅游资源有限,则会出现搜索的旅游景点不足的问题。

可见,现有技术中的兴趣点搜索方法中,在搜索旅游景点等地理位置相关的兴趣点的应用中,存在召回的兴趣点不丰富的问题。



技术实现要素:

本申请提供一种兴趣点搜索方法,解决现有技术中存在的搜索过程中召回的兴趣点不丰富的问题。

为了解决上述问题,第一方面,本申请实施例提供了一种兴趣点搜索方法,包括:

确定产生搜索行为的用户的用户场景;

针对所述用户场景,构建所述搜索行为对应的目标城市的城市圈兴趣点库;

基于预设模型,对所述城市圈兴趣点库中的兴趣点进行混合排序并召回。

第二方面,本申请实施例提供了一种兴趣点搜索装置,包括:

用户场景确定模块,用于确定产生搜索行为的用户的用户场景;

城市圈兴趣点库构建模块,用于针对所述用户场景确定模块确定的用户场景,构建所述搜索行为对应的目标城市的城市圈兴趣点库;

混合排序模块,用于基于预设模型,对所述城市圈兴趣点库构建模块构建的城市圈兴趣点库中的兴趣点进行混合排序并召回。

第三方面,本申请实施例提供了一种电子设备,包括存储器、处理器及存储在所述存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现本申请实施例公开的所述的兴趣点搜索方法。

第四方面,本申请实施例提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时本申请实施例公开的所述兴趣点搜索方法的步骤。

本申请实施例公开的兴趣点搜索方法,通过确定产生搜索行为的用户的用户场景,并针对所述用户场景,构建所述搜索行为对应的目标城市的城市圈兴趣点库,然后,基于预设模型,对所述城市圈兴趣点库中的兴趣点进行混合排序并召回,解决了现有技术中存在的搜索过程中召回的兴趣点不丰富的问题。通过构建城市圈兴趣点库有效地丰富了召回的兴趣点,同时,通过区分用户场景,提高了召回兴趣点的准确性。

附图说明

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

图1是本申请实施例一的兴趣点搜索方法的流程图;

图2是本申请实施例二的兴趣点搜索方法的流程图;

图3是本申请实施例二的城市a的城市圈示意图;

图4是本申请实施例三的兴趣点搜索装置结构示意图之一;

图5是本申请实施例三的兴趣点搜索装置结构示意图之二。

具体实施方式

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

本申请实施例公开的兴趣点搜索方法中涉及的兴趣点可以为具有地域差异的旅游景点、饭店、酒店等。

实施例一

本申请公开的一种兴趣点搜索方法,如图1所示,该方法包括:步骤100至步骤120。

步骤100,确定产生搜索行为的用户的用户场景。

用户的搜索行为包括用户在某一页面上输入搜索关键词后发起的搜索行为、用户浏览某个页面后页面程序自动发起的搜索行为、用户在页面上执行筛选操作等搜索相关的操作后程序自动发起的搜索行为等。本申请对用户发起搜索行为的具体方式不做限定。

具体实施时,每一个搜索行为都对应着一个城市,本申请称之为搜索行为的目标城市。如,用户进入a城市的页面之后,在该页面上输入搜索关键词后发起的搜索行为,则该搜索行为的目标城市为城市a。如,用户在城市列表中进行筛选,选择了城市a,则该搜索行为的目标城市为城市a。

具体实施时,用户场景包括本地用户、异地用户。当用户访问应用或网站的某一页面之后,应用或者网站的页面会通过远程服务器获取用户的id,并进一步获取该用户的注册信息、行为日志等数据,进而获取用户的常驻城市。应用或者网站的页面还可以通过对用户设备进行定位获取用户的当前定位城市。然后,确定产生搜索行为的用户的常驻城市或当前定位城市,并根据目标城市和用户的常驻城市或当前定位城市确定用户场景,例如:若所述搜索行为对应的目标城市为所述常驻城市或当前定位城市,则确定所述用户的用户场景为本地用户,否则,确定所述用户的用户场景为异地用户。

步骤110,针对所述用户场景,构建所述搜索行为对应的目标城市的城市圈兴趣点库。

当确定产生搜索行为的用户的用户场景之后,如果用户场景为本地用户,则构建所述搜索行为对应的目标城市的本地用户的城市圈兴趣点库;如果用户场景为异地用户,则构建所述搜索行为对应的目标城市的异地用户的城市圈兴趣点库。

在构建所述搜索行为对应的目标城市的本地用户的城市圈兴趣点库时,首先分别根据所述目标城市的本地用户的历史行为日志(如点击或购买日志),按照城市维度确定与所述目标城市关联的其他城市的城市相关性第一得分;以及根据所述目标城市的所有用户的历史行为日志,按照用户维度确定城市与所述目标城市关联的其他城市的相关性第二得分,并根据第一得分和第二得分确定与所述目标城市关联的其他城市的城市相关性得分;然后,根据获得的城市相关性得分确定所述目标城市的城市圈,或者根据获得的城市相关性得分以及各关联城市与所述目标城市之间的距离确定所述目标城市的城市圈。具体实施时,所述目标城市的城市圈中通常包括多个城市。最后,确定所述城市圈中各城市的满足预设条件的所有兴趣点,构成所述目标城市的本地用户的城市圈兴趣点库。

在构建所述搜索行为对应的目标城市的异地用户的城市圈兴趣点库时,首先分别根据所述目标城市的异地用户的历史行为日志,按照城市维度确定与所述目标城市关联的其他城市的城市相关性第一得分;以及根据所述目标城市的所有用户的历史行为日志,按照用户维度确定城市与所述目标城市关联的其他城市的相关性第二得分,并根据第一得分和第二得分确定与所述目标城市关联的其他城市的城市相关性得分;然后,根据获得的城市相关性得分确定所述目标城市的城市圈,或者根据获得的城市相关性得分以及各关联城市与所述目标城市之间的距离确定所述目标城市的城市圈。具体实施时,所述目标城市的城市圈中通常包括多个城市。最后,确定所述城市圈中各城市的满足预设条件的所有兴趣点,构成所述目标城市的异地用户的城市圈兴趣点库。

步骤120,基于预设模型,对所述城市圈兴趣点库中的兴趣点进行混合排序并召回。

具体实施时,前述步骤生成的本地用户的城市圈兴趣点库或异地用户的城市圈兴趣点库中包括多个兴趣点。具体实施时,城市圈兴趣点库中的兴趣点包括:发生过预设用户行为(如点击和/或购买预设兴趣点)的兴趣点、各城市近期的热门兴趣点。

具体实施时,预设模型包括:点击率预估模型、短期访购率预估模型和长期访购率预估模型。基于预设模型,对所述城市圈兴趣点库中的兴趣点进行混合排序并召回时,对于所述城市圈兴趣点库中每个兴趣点,分别通过预设的点击率预估模型、短期访购率预估模型和长期访购率预估模型获取相应模型的排序得分;然后,对于所述城市圈兴趣点库中每个兴趣点,综合通过各模型获取的排序得分得到该兴趣点的混合排序得分;按照所述混合排序得分对所述城市圈兴趣点库中的兴趣点进行排序,并召回。

本申请实施例公开的兴趣点搜索方法,通过确定产生搜索行为的用户的用户场景,并针对所述用户场景,构建所述搜索行为对应的目标城市的城市圈兴趣点库,然后,基于预设模型,对所述城市圈兴趣点库中的兴趣点进行混合排序并召回,解决了现有技术中存在的搜索过程中召回的兴趣点不丰富的问题。通过构建城市圈兴趣点库有效地丰富了召回的兴趣点,同时,通过区分用户场景,提高了召回兴趣点的准确性。

实施例二

本申请公开的一种兴趣点搜索方法,如图2所示,该方法包括:步骤200至步骤240。

步骤200,创建多个城市兴趣点库。

具体实施时,在构建城市圈兴趣点库之前,预设有每个城市的兴趣点库,所述城市兴趣点库包括:本地用户兴趣点库和异地用户兴趣点库。其中,本地用户兴趣点库中的兴趣点为该城市的本地用户关注的兴趣点,异地用户兴趣点库中的兴趣点为该城市的异地用户关注的兴趣点。

步骤210,训练点击率预估模型和不同周期的访购率预估模型。

本申请实施例中,训练点击率预估模型时,选取t~t+n天的兴趣点的搜索日志作为训练样本,t+n+1~t+n+m天的兴趣点的搜索日志作为测试样本,其中,用户点击的召回兴趣点对应的搜索日志作为正样本,展示但未点击的召回的兴趣点对应的搜索日志作为负样本,用gbrt等非线性模型训练得到点击率预估模型。其中n为训练样本的周期,比如n=30,则选取30天的兴趣点的搜索日志训练。m为测试样本的周期,用于评估模型的泛化能力,比如m=5,则使用之后5天的兴趣点的搜索日志来评估模型效果。具体实施时,m和n可以为大于1的整数。

然后,需要根据兴趣点搜索日志提取各兴趣点的预设特征。提取的特征包括但不限于以下四个维度:用户维度、兴趣点质量维度、交互维度和上下文维度。其中,用户维度进一步包括:用户标签、价格/品类/地理偏好、基于poi-cf(兴趣点协同过滤)的推荐特征等子维度;兴趣点质量维度进一步包括:兴趣点的销量、点击、评论、价格、转化率等子维度;交互维度进一步包括:用户过去第一周期/第二周期/第三周期内是否点击/购买/收藏过该兴趣点子维度;上下文维度进一步包括:当前搜索行为的时间、城市、天气、与所述目标城市的距离等子维度。其中,用户标签用于区分本地用户兴趣点或异地用户兴趣点。兴趣点质量维度中的特征区分本地用户兴趣点和异地用户兴趣点。其中,第一周期可以为7天,第二周期可以为30天,第三周期可以为90天。

具体实施时,从每条兴趣点的搜索日志中提取上述特征,会得到多个预设特征构成的兴趣点特征向量,如(f10,f11,f12,f20,f21,f30,...,f40,f41,...)。然后,利用gbrt等非线性模型训练对得到的特征向量进行训练,得到相应的点击率预估模型。

访购率预估模型是用于预测用户由访问到购买的概率的模型。本申请具体实施时,通常训练至少两个不同周期的访购率预估模型。训练访购率预估模型时,选取t~t+n天的兴趣点的搜索日志作为训练样本,t+n+1~t+n+m天的兴趣点的搜索日志作为测试样本,其中,用户发生支付行为的召回兴趣点对应的搜索日志作为正样本,展示但未点击的召回兴趣点对应的搜索日志作为负样本,用gbrt等非线性模型训练得到点击率预估模型。其中n为训练样本的周期长度,比如n=30,则选取30天的日志进行训练。在训练不同周期的访购率预估模型时,训练样本的周期各不相同,以训练短周期访购率预估模型和训练长周期访购率预估模型为例,训练短周期访购率预估模型时,样本的周期可以选择n=30;训练长周期访购率预估模型时,样本的周期可以选择n=365。m为测试样本的周期,用于评估模型的泛化能力,比如m=5,则使用之后5天的搜索日志来评估模型效果。

然后,需要根据兴趣点搜索日志提取各兴趣点的预设特征。提取的特征维度和提取方法与训练点击率预估模型时相同,此处不再赘述。

具体实施时,从每条兴趣点搜索日志中提取上述特征,会得到多个预设特征构成的兴趣点特征向量,如(f10,f11,f12,f20,f21,f30,...,f40,f41,...)。然后,利用gbrt等非线性模型训练对得到的特征向量进行训练,得到相应的访购率预估模型。

在训练模型时,通过提取用户维度特征,设置用户标签以标识本地用户的兴趣点或异地用户的兴趣点,并将兴趣点质量维度的特征按照本地用户和异地用户分别进行提取,使得训练得到的点击率预估模型和访购率预估模型可以充分表征本地用户和异地用户的行为特点。

步骤220,确定产生搜索行为的用户的用户场景。

具体实施时,获取用户的搜索行为的具体实施方式参见实施例一,此处不再赘述。

获取用户的搜索行为时,同时可以确定所述搜索行为的目标城市,以及,确定发起所属搜索行为的用户的常驻城市或当前定位城市。确定所述搜索行为的目标城市、确定发起所属搜索行为的用户的常驻城市或当前定位城市的具体实施方式参见实施例一,此处不再赘述。

本申请的实施中,用户场景包括本地用户、异地用户。具体实施时,所述确定产生搜索行为的用户的用户场景,包括:确定产生搜索行为的用户的常驻城市或当前定位城市;若所述搜索行为对应的目标城市为所述常驻城市或当前定位城市,则确定所述用户的用户场景为本地用户,否则,确定所述用户的用户场景为异地用户。具体实施时,优选的,如果已经获取产生搜索行为的用户的常驻城市,则判断所述搜索行为对应的目标城市是否为产生搜索行为的用户的常驻城市,若所述搜索行为对应的目标城市为所述常驻城市或当前定位城市,则确定所述用户的用户场景为本地用户,否则,确定所述用户的用户场景为异地用户。如果没有获取产生搜索行为的用户的常驻城市,则获取产生搜索行为的用户的当前定位城市,然后,判断所述搜索行为对应的目标城市是否为产生搜索行为的用户的当前定位城市,若所述搜索行为对应的目标城市为所述当前定位城市,则确定所述用户的用户场景为本地用户,否则,确定所述用户的用户场景为异地用户。

步骤230,针对所述用户场景,构建所述搜索行为对应的目标城市的城市圈兴趣点库。

当确定产生搜索行为的用户的用户场景之后,如果用户场景为本地用户,则构建所述搜索行为对应的目标城市的本地用户的城市圈兴趣点库;如果用户场景为异地用户,则构建所述搜索行为对应的目标城市的异地用户的城市圈兴趣点库。所述针对所述用户场景,构建所述搜索行为对应的目标城市的城市圈兴趣点库包括:根据用户的历史行为日志,按照用户维度的城市相关性、城市维度的城市相关性,构建所述搜索行为对应的目标城市的与所述用户场景匹配的城市圈;确定所述城市圈中各城市的满足预设条件的所有兴趣点,构成所述目标城市的城市圈兴趣点库。

具体实施时,根据用户的历史行为日志,按照用户维度的城市相关性、城市维度的城市相关性,构建所述搜索行为对应的目标城市的与所述用户场景匹配的城市圈,包括以下子步骤s1至子步骤s5。

子步骤s1:根据与所述用户场景匹配的历史行为日志,按照城市维度确定与所述目标城市关联的城市的城市相关性第一得分。

根据与所述用户场景匹配的历史行为日志,按照城市维度确定与所述目标城市关联的城市的城市相关性第一得分时,若用户场景为本地用户,则根据所述目标城市的本地用户的历史行为日志,按照城市维度确定与所述目标城市关联的城市的城市相关性第一得分;若用户场景为异地用户,则根据所述目标城市的异地用户的历史行为日志,按照城市维度确定与所述目标城市关联的城市的城市相关性第一得分。

根据与所述用户场景匹配的历史行为日志,按照城市维度确定与所述目标城市关联的城市的城市相关性第一得分包括:获取与所述用户场景匹配的历史行为日志中以所述目标城市作为访问入口的预设用户行为日志,其中,所述预设用户行为包括:点击和/或购买预设兴趣点;根据所述预设用户行为日志,确定每个兴趣点的城市维度单一得分;按照所述兴趣点所属城市对所有兴趣点的城市维度单一得分进行聚合,得到所述兴趣点所属各城市与所述目标城市的城市相关性第一得分;其中,所述用户场景为:本地用户或异地用户;若所述用户场景为本地用户,则所述与所述用户场景匹配的历史行为日志为所述目标城市的本地用户的历史行为日志;若所述用户场景为异地用户,则所述与所述用户场景匹配的历史行为日志为所述目标城市的异地用户的历史行为日志。

具体实施时,用户的历史行为日志包括本地用户记录和异地用户记录的标识,根据所述标识可以获取到所述目标城市的本地用户的所有历史行为日志或异地用户的所有历史行为日志。获取目标城市的用户历史行为日志的具体实施方式参见现有技术,此处不再赘述。

下面以目标城市为城市a,城市a的用户历史行为日志中包括用户u1和u2的日志,其中,用户u1是城市a的常驻用户,用户u2不是城市a的常驻用户为例,说明获取与所述用户场景匹配的历史行为日志中以所述目标城市作为访问入口的预设用户行为日志的具体过程。假设用户历史行为日志包括:用户u1从城市a的页面进入后,购买了城市b的兴趣点1;用户u1从城市a的页面进入后,点击了城市b的兴趣点2;用户u2从城市a的页面进入后,点击了城市b的兴趣点2。以应用场景为本地用户为例,则获取与所述用户场景匹配的历史行为日志中以所述目标城市作为访问入口的预设用户行为日志包括:用户u1从城市a的页面进入后,购买了城市b的兴趣点1;用户u1从城市a的页面进入后,点击了城市b的兴趣点2。以应用场景为异地用户为例,则获取与所述用户场景匹配的历史行为日志中以所述目标城市作为访问入口的预设用户行为日志包括:用户u2从城市a的页面进入后,点击了城市b的兴趣点2。获取与所述用户场景匹配的历史行为日志中以所述目标城市作为访问入口的预设用户行为日志的具体实施方式参见现有技术,此处不再赘述。

根据所述预设用户行为日志,确定每个兴趣点的城市维度单一得分时,可以通过设置有时间衰减因子的求和公式对兴趣点的被操作次数(如:被点击、购买、分享等)进行求和,将得到的和作为兴趣点的城市维度单一得分。设置有时间衰减因子的求和公式举例如下:

其中,t1为计算周期;i为距离当前时间的天数,orderid(i)为在当前时间之前的第i天对某一城市中某个兴趣点产生的预设行为(如购买和/或点击)的日志;count()为计数函数;a是时间衰减系数,取值在(0,1)之间。由以上公式可见,距离当前时间越久的预设用户行为日志,在计算某一兴趣点的城市维度单一得分时,其权重越小。具体实施时,t1的取值根据具体需要设置,如t1=28天。

具体实施时,orderid(i)还可以为在当前时间之前的第i个时间段内(如将当前时间之前的一个月分为4周,每周作为一个时间段)对某一城市中某个兴趣点产生的预设行为的日志。其中,所述预设行为可以为点击、购买、推荐等用户行为中的一项或多项。具体实施时,还可以将ai或替换为其他形式的随i增大而逐渐减小的表达形式。

在获取到与所述用户场景匹配的历史行为日志中的预设用户行为日志之后,每条日志中记录了产生预设用户行为的兴趣点以及产生时间,可以将每个兴趣点的发生过预设用户行为的日志加入一个集合,然后按照上述公式分别计算每个兴趣点的城市维度单一得分。假设根据获取到与所述用户场景匹配的历史行为日志中的预设用户行为日志确定了5个兴趣点,则可以得到5个兴趣点的城市维度单一得分,如:兴趣点1的poi_score1、兴趣点2的poi_score2、兴趣点3的poi_score3、兴趣点4的poi_score4和兴趣点5的poi_score5。

具体实施时,每个城市具有预设兴趣点,即预先设置有兴趣点和城市的对应关系。如,城市b有兴趣点1、兴趣点2和兴趣点3;城市c有兴趣点4和兴趣点5。按照所述兴趣点所属城市对所有兴趣点的城市维度单一得分进行聚合,得到所述兴趣点所属各城市与所述目标城市的城市相关性第一得分。例如,对兴趣点1、兴趣点2和兴趣点3的城市维度单一得分进行聚合,得到城市b与所述目标城市a的城市相关性第一得分,如w1ab;对兴趣点4和兴趣点5的城市维度单一得分进行聚合,得到城市c与所述目标城市a的城市相关性第一得分,如w1ac。具体实施时,聚合方法可以为累加,或求平均值等其他现有技术,此处不一一例举。

子步骤s2,根据用户的历史行为日志,按照用户维度确定与所述目标城市关联的城市的城市相关性第二得分。

根据用户的历史行为日志,按照用户维度确定与所述目标城市关联的城市的城市相关性第二得分,包括:获取所述目标城市的常驻用户的历史行为日志的预设用户行为日志,其中,所述预设用户行为包括:点击和/或购买预设兴趣点;根据所述预设用户行为日志,确定每个兴趣点的用户维度单一得分;按照所述兴趣点所属城市对所有兴趣点的用户维度单一得分进行聚合,得到所述兴趣点所属各城市与所述目标城市的城市相关性第二得分。

具体实施时,用户的历史行为日志包括用户标识、兴趣点、对兴趣点的预设用户行为、行为发生地点等。根据用户标识可以进一步获取用户的常驻城市,并判断该用户是否为所述目标城市的常驻用户。本申请实施例中,获取所述目标城市的常驻用户的历史行为日志的预设用户行为日志,作为计算用户维度单一得分的依据。具体实施时,可以首先获取所述目标城市的所有用户常驻用户的日志,对于某个城市来说,其常驻用户的行为更具有代表性,并且可以有效减少数据运算量。然后,提取其中预设用户行为(如:点击、购买兴趣点)的日志,作为计算用户维度得分的依据。

获取目标城市的用户历史行为日志的具体实施方式参见现有技术,此处不再赘述。

根据所述预设用户行为日志,确定每个兴趣点的用户维度单一得分时,可以通过设置有行为加速因子的求和公式对兴趣点的被操作次数(如:被点击、购买、分享等)进行求和,将得到的和作为兴趣点的用户维度单一得分。设置有行为加速因子的求和公式举例如下:

其中,i1和i2为每个时间周期的天数,i1>i2;orderid(i)为在当前时间之前的某一个时间周期内i天中对某一城市中某个兴趣点产生的预设行为(如购买和/或点击)的日志;count()为计数函数;n和m为周期的数量;a1和a2是行为加速因子,a1<a2。由以上公式可见,长周期的预设用户行为日志,在计算某一兴趣点的用户维度单一得分时,其权重小于短周期的预设用户行为日志。具体实施时,i1可以取值30,n可以取值3,i2可以取值7,m可以取值4。

在获取到用户的历史行为日志中的预设用户行为日志之后,每条日志中记录了产生预设用户行为的兴趣点以及产生时间,可以将每个兴趣点的发生过预设用户行为的日志加入一个集合,然后按照上述公式分别计算每个兴趣点的用户维度得分。假设根据获取到用户的历史行为日志中的预设用户行为日志确定了5个兴趣点,则可以得到5个兴趣点的用户维度得分,如:兴趣点1的poi_score6、兴趣点2的poi_score7、兴趣点3的poi_score8、兴趣点4的poi_score9和兴趣点5的poi_score10。

具体实施时,每个城市具有预设兴趣点,即预先设置有兴趣点和城市的对应关系。如,城市b有兴趣点1、兴趣点2和兴趣点3;城市c有兴趣点4和兴趣点5。按照所述兴趣点所属城市对所有兴趣点的用户维度单一得分进行聚合,得到所述兴趣点所属各城市与所述目标城市的城市相关性第二得分。例如,对兴趣点1、兴趣点2和兴趣点3的用户维度得分进行聚合,得到城市b与所述目标城市a的城市相关性第二得分,如w2ab;对兴趣点4和兴趣点5的用户维度得分进行聚合,得到城市c与所述目标城市a的城市相关性第二得分,如w2ac。具体实施时,聚合方法可以为累加,或求平均值等其他现有技术,此处不一一例举。

子步骤s3,对于每个与所述目标城市关联的城市,将所述城市相关性第一得分和第二得分进行融合,得到与所述目标城市关联且与所述用户场景匹配的城市的城市相关性得分。

具体实施时,对于每个与所述目标城市关联的城市,将所述城市相关性第一得分和第二得分进行融合,得到与所述目标城市关联且与所述用户场景匹配的城市的城市相关性得分,包括:对于每个与所述目标城市关联的城市,将所述城市相关性第一得分和第二得分进行加权融合,得到与所述目标城市关联且与所述用户场景匹配的城市的城市相关性得分。采用加权加法融合,权重可以根据实际情况调整,比如wab=0.7×w1ab+0.3×w2ab。

具体实施时,将所述城市相关性第一得分和第二得分进行融合时,还可以结合领域知识,人工增加相关性因子。例如,对在地理和风俗上属于一个地域概念的城市(如湘西、长三角等),可以人工增加并指定w3ab,然后根据公式wab=0.7×w1ab+0.3×w2ab+w3ab计算与所述目标城市关联且与所述用户场景匹配的城市的城市相关性得分。通过根据用户设定的相关性条件增加相关性因子,可以增强城市之间的相关性,便于基于用户设定的相关性推荐兴趣点。

子步骤s4,将大于预设相关性得分阈值的所述城市相关性得分对应的城市,作为所述目标城市的与所述用户场景匹配的城市圈的备选城市。

具体实施时,可以预设一个相关性得分阈值,当计算得到的与所述目标城市关联的城市的城市相关性得分大于所述预设相关性得分阈值时,确定该城市为所述目标城市的城市圈中的城市。所述相关性得分阈值根据具体需求确定,可以设置为大于或等于0的数值。

确定的所述目标城市的城市圈的备选城市通常包括多个关联城市。如图3所示,对于城市a,其城市圈300中的城市包括城市:b、c、d和e。

子步骤s5,将与所述目标城市的距离满足预设距离阈值的所述备选城市,构成所述目标城市的与所述用户场景匹配的城市圈。

具体实施时,所述预设距离阈值为根据用户需求定义的需求半径,如1公里。通过根据所述城市圈中的城市与所述目标城市的距离过滤掉一部分与所述目标城市较远的城市,可以在满足用户需求半径的前提下,减小运算量,提高召回兴趣点的准确性。假设计算得到了城市a和城市b、c、d和e的城市相关性得分分别为wab、wac、wad和wae,都大于预设相关性得分阈值,城市a和城市b、c、d和e之间距离分别为dab、dac、dad和dae。如果dab、dac、dad和dae小于或等于预设距离阈值,则城市a的城市圈包括的城市为:城市a、b、c、d和e。如果dae大于预设距离阈值,则城市a的城市圈包括的城市为:城市a、b、c和d。

具体实施时,所述预设距离阈值也可以为一个距离范围,如10公里至100公里之内。

确定的所述目标城市的城市圈通常包括多个与所述目标城市关联的城市。在确定所述目标城市的城市圈之后,进一步确定所述城市圈中各城市的满足预设条件的所有兴趣点,构成所述目标城市的城市圈兴趣点库。

具体实施时,所述用户场景包括:本地用户或异地用户。所述确定所述城市圈中各城市的满足预设条件的所有兴趣点,构成所述目标城市的城市圈兴趣点库,包括:若所述用户场景为本地用户,则确定所述目标城市的本地用户的发生过预设用户行为的兴趣点、以所述目标城市作为访问入口且发生过预设用户行为的城市圈中除所述目标城市外的其他城市的兴趣点,以及预设时间段内所述城市圈中各城市的热门兴趣点;若所述用户场景为异地用户,则确定所述目标城市的异地用户的发生过预设用户行为的兴趣点、以所述目标城市作为访问入口且发生过预设用户行为的城市圈中除所述目标城市外的其他城市的兴趣点,以及预设时间段内所述城市圈中各城市的热门兴趣点;其中,所述预设用户行为包括:点击和/或购买预设兴趣点。

以所述目标城市为城市a,其城市圈中的城市包括城市:a、b、c、d为例,说明确定所述城市圈中各城市的满足预设条件的所有兴趣点,构成所述目标城市的城市圈兴趣点库的具体方法。

如果所述用户场景为本地用户,则将城市a中的本地用户兴趣点中,发生过预设用户行为(如:点击和/或购买)的兴趣点加入所述目标城市a的城市圈兴趣点库;然后,再分别将城市b、c、d和e中的发生过以城市a作为访问入口的预设用户行为(如:点击和/或购买)的兴趣点加入所述目标城市a的城市圈兴趣点库。

为了丰富召回的兴趣点,在将根据所述用户的历史行为日志确定的发生过预设用户行为的兴趣点加入城市圈兴趣点库之后,进一步将预设时间段内所述城市圈中各城市的热门兴趣点(如销量最高的兴趣点)加入所述城市圈兴趣点库。

如果所述用户场景为异地用户,则将城市a中的异地用户兴趣点中,发生过预设用户行为(如:点击和/或购买)的兴趣点加入所述目标城市a的城市圈兴趣点库;然后,再分别将城市b、c、d和e中的发生过以城市a作为访问入口的预设用户行为(如:以城市a作为访问入口,并执行点击和/或购买操作)的兴趣点加入所述目标城市a的城市圈兴趣点库。

同样,为了丰富召回的兴趣点,进一步将预设时间段内所述城市圈中各城市的热门兴趣点(如销量最高的兴趣点)加入所述目标城市a的所述城市圈兴趣点库。

具体实施时,还可以先根据用户的历史行为日志,按照用户维度确定与所述目标城市关联的城市的城市相关性第二得分,再根据与所述用户场景匹配的历史行为日志,按照城市维度确定与所述目标城市关联的城市的城市相关性第一得分,本申请对子步骤s1和子步骤s2的具体执行顺序不做限定。

步骤240,基于预设模型,对所述城市圈兴趣点库中的兴趣点进行混合排序并召回。

具体实施时,前述步骤生成的本地用户的城市圈兴趣点库或异地用户的城市圈兴趣点库中包括多个兴趣点。具体实施时,基于预设模型,对所述城市圈兴趣点库中的兴趣点进行混合排序并召回,包括:对于所述城市圈兴趣点库中每个兴趣点,分别通过预设模型获取相应模型的排序得分;对于所述城市圈兴趣点库中每个兴趣点,对通过各模型获取的排序得分进行综合,得到该兴趣点的混合排序得分;按照所述混合排序得分对所述城市圈兴趣点库中的兴趣点进行排序,并召回;其中,所述预设模型包括:点击率预估模型、至少两个不同周期的访购率预估模型;所述访购率预估模型根据设定长度周期内的兴趣点购买日志训练得到,用于预测兴趣点的购买率。本申请是实施例中,以所述预设模型包括点击率预估模型、短期访购率预估模型和长期访购率预估模型为例。

例如,在根据用户场景和目标城市确定了需要为本次搜索行为返回城市a的城市圈兴趣点库之后,需要对城市a城市圈兴趣点库中的所有兴趣点进行排序。假设城市a的本地用户城市圈兴趣点库包括:城市a的兴趣点1、城市a的兴趣点2、城市b的兴趣点3、城市b的兴趣点4、城市c的兴趣点5、城市d的兴趣点6和城市e的兴趣点7。对于兴趣点1,首先,分别通过预设的点击率预估模型、短期访购率预估模型和长期访购率预估模型获取相应模型的排序得。即,通过预设的点击率预估模型获得点击率预估排序得分score1,通过短期访购率预估模型获得短期访购率预估排序得分score2,通过长期访购率预估模型获得长期访购率预估排序得分score3。然后,对通过各模型获取的排序得分进行综合,得到该兴趣点的混合排序得分。例如,对各模型得到的排序得分加权求和,或者根据公式计算兴趣点的混合排序得分。

按照前述方法,可以分别获得兴趣点1至7的混合排序的分。最后,按照所述混合排序得分对所述城市圈兴趣点库中的兴趣点进行排序,并召回。

在通过每个预设模型获得相应的模型得分时,需要提取各兴趣点的预设特征。提取的特征包括但不限于以下四个维度:用户维度、兴趣点质量维度、交互维度和上下文维度。其中,用户维度进一步包括:用户标签、价格/品类/地理偏好、基于poi-cf(兴趣点协同过滤)的推荐特征等子维度;兴趣点质量维度进一步包括:兴趣点的销量、点击、评论、价格、转化率等子维度;交互维度进一步包括:用户过去第一周期/第二周期/第三周期内是否点击/购买/收藏过该兴趣点子维度;上下文维度进一步包括:当前搜索行为的时间、城市、天气、与所述目标城市的距离等子维度。其中,用户标签用于区分本地用户兴趣点或异地用户兴趣点。兴趣点质量维度中的特征区分本地用户兴趣点和异地用户兴趣点。其中,第一周期可以为7天,第二周期可以为30天,第三周期可以为90天。

具体实施时,点击率预估模型、短期访购率预估模型和长期访购率预估模型分别首先从当前兴趣点中提取预设特征,构成特征向量。以点击率预估模型h为例,模型h在获取某一兴趣点的点击率预估得分时,首先提取兴趣点的预设特征,构成特征向量如(f10,f11,f12,f20,f21,f30,...,f40,f41,...),所述预设特征包括上述四个维度的特征向量;然后,模型h根据提取的特征计算当前兴趣点的点击率预估模型对应的排序得分。

从兴趣点中提取相应特征的方法,以及提取后的各维度特征组合为该兴趣点的整体特征的方法与训练各模型时,从训练样本中提取特征以及组合特征的方法相同,此处不再赘述。

通过利用不同周期的访购率预估模型计算各兴趣点的排序得分以便用于混合排序,实现了结合兴趣点的需求具有周期性和季节性的特点进行兴趣点召回,使召回结果更符合用户需求,进一步提升了用户体验。通过短周期模型可以提升应季变化的感知能力,通过长周期模型提升兴趣点召回效果的稳定性。在o2o消费领域,结合点击率预估模型和访购率预测模型进行排序的分计算,以达到用户兴趣挖掘与最终需求满足间的平衡。

本申请实施例公开的兴趣点搜索方法,通过预先训练点击率预估模型和多个不同周期的访购率预估模型,并在获取到用户的搜索行为之后,确定产生搜索行为的用户的用户场景,并针对所述用户场景,构建所述搜索行为对应的目标城市的城市圈兴趣点库,然后,基于预设模型,对所述城市圈兴趣点库中的兴趣点进行混合排序并召回,解决了现有技术中存在的搜索过程中召回的兴趣点不丰富的问题。通过构建城市圈兴趣点库有效地丰富了召回的兴趣点,同时,通过区分用户场景,提高了召回兴趣点的准确性。

通过结合点击率预估模型和多个不同周期的访购率预估模型计算的兴趣点的排序得分对兴趣点进行混合排序,实现了结合兴趣点的需求具有周期性和季节性的特点进行兴趣点召回,使召回结果更符合用户需求,进一步提升了用户体验。

实施例三

本实施例公开的一种兴趣点搜索装置,如图4所示,该装置包括:

用户场景确定模块400,用于确定产生搜索行为的用户的用户场景;

城市圈兴趣点库构建模块410,用于针对所述用户场景确定模块400确定的用户场景,构建所述搜索行为对应的目标城市的城市圈兴趣点库;

混合排序模块420,用于基于预设模型,对所述城市圈兴趣点库构建模块410构建的城市圈兴趣点库中的兴趣点进行混合排序并召回。

本申请的实施中,用户场景包括本地用户、异地用户。具体实施时,所述用户场景确定模块400具体用于:确定产生搜索行为的用户的常驻城市或当前定位城市;若所述搜索行为对应的目标城市为所述常驻城市或当前定位城市,则确定所述用户的用户场景为本地用户,否则,确定所述用户的用户场景为异地用户。

可选的,如图5所示,所述城市圈兴趣点库构建模块410包括:

城市圈构建单元4101,用于根据用户的历史行为日志,按照用户维度的城市相关性、城市维度的城市相关性,构建所述搜索行为对应的目标城市的与所述用户场景匹配的城市圈;

城市圈兴趣点库构建单元4102,用于确定所述城市圈中各城市的满足预设条件的所有兴趣点,构成所述目标城市的城市圈兴趣点库。

可选的,如图5所示,所述城市圈构建单元4101包括:

城市维度得分确定子单元41011,用于根据与所述用户场景匹配的历史行为日志,按照城市维度确定与所述目标城市关联的城市的城市相关性第一得分;以及,

用户维度得分确定子单元41012,用于根据用户的历史行为日志,按照用户维度确定与所述目标城市关联的城市的城市相关性第二得分;

得分融合子单元41013,用于对于每个与所述目标城市关联的城市,将所述城市相关性第一得分和第二得分进行融合,得到与所述目标城市关联且与所述用户场景匹配的城市的城市相关性得分;

关联城市确定子单元41014,用于将大于预设相关性得分阈值的所述城市相关性得分对应的城市,作为所述目标城市的与所述用户场景匹配的城市圈的备选城市;

城市圈构建子单元41015,用于将与所述目标城市的距离满足预设距离阈值的所述备选城市,构成所述目标城市的与所述用户场景匹配的城市圈。

可选的,所述城市维度得分确定子单元41011,具体用于:

获取与所述用户场景匹配的历史行为日志中以所述目标城市作为访问入口的预设用户行为日志,其中,所述预设用户行为包括:点击和/或购买预设兴趣点;

根据所述预设用户行为日志,确定每个兴趣点的城市维度单一得分;

按照所述兴趣点所属城市对所有兴趣点的城市维度单一得分进行聚合,得到所述兴趣点所属各城市与所述目标城市的城市相关性第一得分;

其中,所述用户场景为:本地用户或异地用户;若所述用户场景为本地用户,则所述与所述用户场景匹配的历史行为日志为所述目标城市的本地用户的历史行为日志;若所述用户场景为异地用户,则所述与所述用户场景匹配的历史行为日志为所述目标城市的异地用户的历史行为日志。

可选的,所述用户维度得分确定子单元41012,具体用于:

获取所述目标城市的常驻用户的历史行为日志的预设用户行为日志,其中,所述预设用户行为包括:点击和/或购买预设兴趣点;

根据所述预设用户行为日志,确定每个兴趣点的用户维度单一得分;

按照所述兴趣点所属城市对所有兴趣点的用户维度单一得分进行聚合,得到所述兴趣点所属各城市与所述目标城市的城市相关性第二得分。

可选的,所述用户场景包括:本地用户或异地用户,所述城市圈兴趣点库构建单元4102,具体用于:

若所述用户场景为本地用户,则确定所述目标城市的本地用户的发生过预设用户行为的兴趣点、以所述目标城市作为访问入口且发生过预设用户行为的城市圈中除所述目标城市外的其他城市的兴趣点,以及预设时间段内所述城市圈中各城市的热门兴趣点;

若所述用户场景为异地用户,则确定所述目标城市的异地用户的发生过预设用户行为的兴趣点、以所述目标城市作为访问入口且发生过预设用户行为的城市圈中除所述目标城市外的其他城市的兴趣点,以及预设时间段内所述城市圈中各城市的热门兴趣点;

其中,所述预设用户行为包括:点击和/或购买预设兴趣点。

可选的,所述混合排序模块420,具体用于:

对于所述城市圈兴趣点库中每个兴趣点,分别通过预设模型获取相应模型的排序得分;

对于所述城市圈兴趣点库中每个兴趣点,对通过各模型获取的排序得分进行综合,得到该兴趣点的混合排序得分;

按照所述混合排序得分对所述城市圈兴趣点库中的兴趣点进行排序,并召回;

其中,所述预设模型至少包括:点击率预估模型、至少两个不同周期的访购率预估模型;所述访购率预估模型根据设定长度周期内的兴趣点购买日志训练得到,用于预测兴趣点的购买率。

本实施例公开的兴趣点搜索装置的各模块、单元和子单元的具体实施方式参见方法实施例中的相关步骤,此处不再赘述。

本申请实施例公开的兴趣点搜索装置,通过在获取到用户的搜索行为之后,确定产生搜索行为的用户的用户场景,并针对所述用户场景,构建所述搜索行为对应的目标城市的城市圈兴趣点库,然后,基于预设模型,对所述城市圈兴趣点库中的兴趣点进行混合排序并召回,解决了现有技术中存在的搜索过程中召回的兴趣点不丰富的问题。通过构建城市圈兴趣点库有效地丰富了召回的兴趣点,同时,通过区分用户场景,提高了召回兴趣点的准确性。

通过结合点击率预估模型和多个不同周期的访购率预估模型计算的兴趣点的排序得分对兴趣点进行混合排序,实现了结合兴趣点的需求具有周期性和季节性的特点进行兴趣点召回,使召回结果更符合用户需求,进一步提升了用户体验。

本申请还公开了一种电子设备,包括存储器、处理器及存储在所述存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现本申请实施例一和实施例二所述的兴趣点搜索方法。所述电子设备可以为pc机、移动终端、个人数字助理、平板电脑等。

本申请还公开了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如本申请实施例一和实施例二所述的兴趣点搜索方法的步骤。

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

以上对本申请提供的一种兴趣点搜索方法及装置,进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的一般技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。

通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件实现。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如rom/ram、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。

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