用于确定相似用户的方法、装置和服务器与流程

文档序号:11323336阅读:256来源:国知局
用于确定相似用户的方法、装置和服务器与流程

本申请涉及计算机技术领域,具体涉及互联网数据挖掘技术领域,尤其涉及用于确定相似用户的方法、装置和服务器。



背景技术:

随着电子商务技术的发展,越来越多的用户选择在线上购物平台进行采购。线上购物平台可以获取海量的用户数据,包括用户的基本属性信息、订单数据、评价信息、物流信息等。基于这些用户数据,可以构建出每个用户的画像,包括用户的年龄、喜好、消费能力、购物习惯等。线上购物平台可以利用用户画像筛选出与每个商户的忠实用户相似的用户作为商户的潜在用户进行推荐。

在现有的相似用户筛选方法中,用户画像构建过程中未考虑用户的各类别属性对相似度计算的影响,然而在相似用户筛选过程中,各类别属性对用户间相似度计算的影响力不同,例如用户的性别比用户的购物习惯对相似度计算的影响力小,因此现有的相似用户定位结果的准确性有待提升。



技术实现要素:

为了解决上述背景技术部分的一个或多个技术问题,本申请实施例提供了用于确定相似用户的方法、装置和服务器。

本申请实施例公开a1、一种用于确定相似用户的方法,所述方法包括:获取待处理用户集中各用户的用户信息,所述用户信息包括地理位置信息以及与至少一个预设标签关联的历史订单信息;统计与各所述预设标签关联的历史订单信息对应的用户数量,以确定各所述预设标签的权重;基于所述待处理用户集中各用户的历史订单信息以及各所述预设标签的权重,生成各所述用户的标签属性特征;根据所述标签属性特征和地理位置信息将所述待处理用户集中的用户聚类为多个用户簇;基于所述标签属性特征计算目标用户与同一用户簇中其他用户的相似度并确定出所述目标用户的相似用户。

a2、如a1所述的方法中,所述统计与各所述预设标签关联的历史订单信息对应的用户数量,以确定各所述预设标签的权重,包括:对每个所述预设标签,筛选出与所述预设标签关联的历史订单信息;

统计筛选出的历史订单信息对应的用户数量;对统计出的用户数量求对数后取倒数作为所述预设标签的权重。

a3、如a1所述的方法中,所述基于所述待处理用户集中各用户的历史订单信息以及各所述预设标签的权重,生成各所述用户的标签属性特征,包括:根据所述历史订单信息,确定每个所述用户对应于各预设标签的下单频次;基于每个用户对应于各预设标签的下单频次和对应预设标签的权重,计算得出每个用户对应的各所述预设标签的有效下单频次;基于各所述预设标签的有效下单频次生成各所述用户的标签特征向量,作为各所述用户的标签属性特征。

a4、如a3所述的方法中,所述基于每个用户对应于各预设标签的下单频次和对应预设标签的权重,计算得出每个用户对应的各所述预设标签的有效下单频次,包括:将每个用户对应于各预设标签的下单频次与对应各预设标签的权重相乘,作为每个用户对应的各预设标签的有效下单频次;所述基于各所述预设标签的有效下单频次生成各所述用户的标签特征向量,包括:将各所述预设标签的有效下单频次作为所述标签特征向量中对应于各所述预设标签的特征值。

a5、如a3所述的方法中,所述根据标签属性特征和地理位置信息将待处理用户集中的用户聚类为多个用户簇,包括:对各用户的标签特征向量中的元素按特征值进行降序排序,选择排序前预设位的元素对应的预设标签为待匹配标签;以所述地理位置信息和所述待匹配标签为各所述用户的特征信息,基于所述特征信息将所述待处理用户集中的用户聚类为多个用户簇。

a6、如a5所述的方法中,所述以所述地理位置信息和所述待匹配标签为各所述用户的特征信息,基于所述特征信息将所述待处理用户集中的用户聚类为多个用户簇,包括:将所述地理位置信息相同且至少一个待匹配标签相同的用户聚为同一用户簇。

a7、如a3所述的方法中,所述基于所述标签属性特征计算目标用户与同一用户簇中其他用户的相似度并确定出所述目标用户的相似用户,包括:计算所述目标用户的标签特征向量与同一用户簇中其他各用户的标签特征向量的相似度;基于所述目标用户的标签特征向量与同一用户簇中其他各用户的标签特征向量的相似度筛选出所述目标用户的相似用户。

本申请实施例公开b1、一种用于确定相似用户的装置,所述装置包括:获取单元,配置用于获取待处理用户集中各用户的用户信息,所述用户信息包括地理位置信息以及与至少一个预设标签关联的历史订单信息;统计单元,配置用于统计与各所述预设标签关联的历史订单信息对应的用户数量,以确定各所述预设标签的权重;生成单元,配置用于基于所述待处理用户集中各用户的历史订单信息以及各所述预设标签的权重,生成各所述用户的标签属性特征;聚类单元,配置用于根据所述标签属性特征和地理位置信息将所述待处理用户集中的用户聚类为多个用户簇;确定单元,配置用于基于所述标签属性特征计算目标用户与同一用户簇中其他用户的相似度并确定出所述目标用户的相似用户。

b2、如b1所述的装置中,所述统计单元进一步配置用于按照如下方式确定各所述预设标签的权重:对每个所述预设标签,筛选出与所述预设标签关联的历史订单信息;统计筛选出的历史订单信息对应的用户数量;对统计出的用户数量求对数后取倒数作为所述预设标签的权重。

b3、如b1所述的装置中,所述生成单元进一步配置用于按照如下方式生成各所述用户的标签属性特征:根据所述历史订单信息,确定每个所述用户对应于各预设标签的下单频次;基于每个用户对应于各预设标签的下单频次和对应预设标签的权重,计算得出每个用户对应的各所述预设标签的有效下单频次;基于各所述预设标签的有效下单频次生成各所述用户的标签特征向量,作为各所述用户的标签属性特征。

b4、如b3所述的装置中,所述生成单元进一步配置用于按照如下方式计算得出每个用户对应的各所述预设标签的有效下单频次:将每个用户对应于各预设标签的下单频次与对应各预设标签的权重相乘,作为每个用户对应的各预设标签的有效下单频次;所述生成单元进一步配置用于按照如下方式生成各所述用户的标签特征向量:将各所述预设标签的有效下单频次作为所述标签特征向量中对应于各所述预设标签的特征值。

b5、如b3所述的装置中,所述聚类单元进一步配置用于按照如下方式将待处理用户集中的用户聚类为多个用户簇:对各用户的标签特征向量中的元素按特征值进行降序排序,选择排序前预设位的元素对应的预设标签为待匹配标签;以所述地理位置信息和所述待匹配标签为各所述用户的特征信息,基于所述特征信息将所述待处理用户集中的用户聚类为多个用户簇。

b6、如b5所述的装置中,所述聚类单元进一步配置用于按照如下方式将待处理用户集中的用户聚类为多个用户簇:将所述地理位置信息相同且至少一个待匹配标签相同的用户聚为同一用户簇。

b7、如b3所述的装置中,所述确定单元进一步配置用于按照如下方式计算目标用户与同一用户簇中其他用户的相似度并确定出所述目标用户的相似用户:计算所述目标用户的标签特征向量与同一用户簇中其他各用户的标签特征向量的相似度;基于所述目标用户的标签特征向量与同一用户簇中其他各用户的标签特征向量的相似度筛选出所述目标用户的相似用户。

本申请实施例公开c1、一种服务器,包括:一个或多个处理器;存储装置,用于存储一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如a1至a7中任一所述的方法。

本申请实施例公开d1、一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如a1至a7中任一所述的方法。

本申请实施例提供的用于确定相似用户的方法、装置和服务器,通过获取待处理用户集中各用户的用户信息,然后统计与各预设标签关联的历史订单信息对应的用户数量,以确定各预设标签的权重,而后基于待处理用户集中各用户的历史订单信息以及各预设标签的权重,生成各用户的标签属性特征,之后根据标签属性特征和地理位置信息对用户集中的用户进行聚簇,最后基于标签属性特征计算目标用户与同一簇中其它用户的相似度并确定出目标用户的相似用户,能够合理、有效地确定不同预设标签的权重,并依此来准确描述用户的属性特征,从而提升了用户间相似度计算的准确性。此外通过对用户进行聚类,然后在同一用户簇内查找相似用户,能够有效降低用户间相似度的计算复杂度,提升相似用户定位的效率。

附图说明

通过阅读参照以下附图所作的对非限制性实施例详细描述,本申请的其它特征、目的和优点将会变得更明显:

图1是本申请可以应用于其中的一种示例性系统架构图;

图2是根据本申请的用于确定相似用户的方法的一个实施例的流程图;

图3是根据本申请的用于确定相似用户的方法的另一个实施例的流程图;

图4是根据本申请的用于确定相似用户的方法的一个应用场景的效果示意图;

图5是本申请的用于确定相似用户的装置的一个实施例的结构示意图;

图6是适于用来实现本申请实施例的服务器的计算机系统的结构示意图。

具体实施方式

下面结合附图和实施例对本申请作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释相关发明,而非对该发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与有关发明相关的部分。

需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本申请。

图1示出了可以应用本申请的用于确定相似用户的方法或用于确定相似用户的装置的实施例的一种示例性系统架构100。

如图1所示,系统架构100可以包括商户110使用的终端设备101、102、用户120、130、…的终端设备103、104、…、网络105和服务器106。网络105用以在终端设备101、102、103、104、…和服务器106之间提供通信链路的介质。网络105可以包括各种连接类型,例如有线、无线通信链路或者光纤电缆等等。

商户110可以使用终端设备101、102通过网络105与服务器106交互,以接收或发送消息。终端设备101、102可以安装有与服务器106提供的服务关联的应用,例如购物类应用。

用户120、130、…也可以使用终端设备103、104、…通过网络105与服务器106交互,以接收或发送消息。终端设备103、104、…可以安装有各种通讯客户端应用,例如网页浏览器应用、购物类应用、社交软件等。

终端设备101、102、103、104、...可以是具有显示屏并且支持网络数据通讯的各种电子设备,包括但不限于智能手机、平板电脑、电子书阅读器、mp3播放器(movingpictureexpertsgroupaudiolayeriii,动态影像专家压缩标准音频层面3)、mp4(movingpictureexpertsgroupaudiolayeriv,动态影像专家压缩标准音频层面4)播放器、膝上型便携计算机和台式计算机等等。

服务器106可以是为商户110的终端设备101、102和用户120、130、…的终端设备103、104、…提供同一种数据服务的服务器,例如为购物类应用的后台服务器。购物类应用的后台服务器可以接收用户120、130、…的终端设备103、104、…的数据请求,并对数据请求进行分析、存储等处理后发送至商户110的终端设备101、102,并将商户110的终端设备101、102返回的反馈信息进行分析处理后发送至用户120、130、…的终端设备103、104、…。

需要说明的是,本申请实施例所提供的用于确定相似用户的方法一般由服务器106执行,相应地,用于确定相似用户的装置一般设置于服务器106中。

应该理解,图1中的终端设备、网络和服务器的数目仅仅是示意性的。根据实现需要,可以具有任意数目的终端设备、网络和服务器。

继续参考图2,示出了根据本申请的用于确定相似用户的方法的一个实施例的流程200。该用于确定相似用户的方法,包括以下步骤:

步骤201,获取待处理用户集中各用户的用户信息。

在本实施例中,待处理用户集可以是在上述用于确定相似用户的方法运行与其上的电子设备(例如图1所示的服务器106)提供支持的应用平台(例如在线购物平台)的全部用户的集合。上述电子设备可以在从本地或从其他设备获取该应用平台的用户集中各用户的用户信息,例如可以从本地的存储器中调取平台上各用户的用户信息,也可以通过网络从远程设备中接收各用户的用户信息。

上述用户信息包括地理位置信息以及与至少一个预设标签关联的历史订单信息。其中,地理位置信息可以由门牌号码、经纬度坐标、标志性建筑等表示,也可以由上述应用平台预先定义的区域标识(例如商圈名称)来表示。预设标签可以为商户中的商品标签(例如餐馆的菜品标签)、用户的年龄标签、商品价格标签等。

以订餐平台上的用户作为示例,该订餐平台中预设标签包括多个菜品标签,例如“红烧”、“肉夹馍”、“酸辣”、“水饺”、“米饭”等,每个商户的各个菜品的菜品标签可以通过利用菜品名称匹配该标签集合得到。

上述历史订单信息包括多条历史订单记录,每条历史订单记录中的下单对象都具有至少一个预设标签,每条历史订单记录对应用户的一次下单操作,则可以将用户在一段时间内的下单操作与上述预设的标签相关联地存储,得到与至少一个预设标签关联的历史订单记录,进而得到上述与至少一个预设标签关联的历史订单信息。

在一些可选的实现方式中,上述用户信息还可以包括用户的基本属性信息,包括用户的年龄、性别、职业、爱好、习惯等信息。这些基本属性信息可以由用户主动录入,例如年龄、性别;也可以结合用户在平台的操作行为数据获得,例如可以由用户的下单时间、下单方式等分析得出用户的习惯、爱好等信息。在获取用户的历史订单信息时,可以根据用户的身份标识,同时获取用户的上述基本属性信息。

步骤202,统计与各预设标签关联的历史订单信息对应的用户数量,以确定各预设标签的权重。

在本实施例中,不同预设标签对用户与其他用户的区别的描述准确性不同。也就是说,不同预设标签对用户特征描述的能力不相同。通常与一个预设标签关联的历史订单信息对应的用户数量越多,则该预设标签用于区分不同用户的能力越差,反之与一个预设标签关联的历史订单信息对应的用户数量越少,则该预设标签用于区分不同用户的能力越强。举例来说,在订餐类平台中,预设标签“大米”与平台中的大部分用户的订单记录相关联,而与预设标签“螺蛳粉”关联的平台中的用户所占比例较小,则预设标签“螺蛳粉”相较于“大米”可以更有效地描述用户的喜好或特征。

在本实施例中,可以按照不同预设标签区分不同用户的能力对预设标签进行加权,权重可以与预设标签关联的历史订单信息对应的用户数量相关。具体地,预设标签的权重可以与预设标签关联的历史订单信息对应的用户数量负相关。可选地,可以利用与预设标签的关联的历史订单信息对应的用户数量的倒数作为预设标签的权重。

在这里,与预设标签关联的历史订单信息对应的用户数量可以按照如下方式进行统计:将待处理用户集中所有用户的历史订单信息按照预设标签进行统计,即可以将所有的历史订单信息划分每个预设标签对应的历史订单记录集合,然后针对每个预设标签的历史订单记录集合,统计该历史订单记录集合对应的用户总数,作为与各预设标签关联的历史订单信息对应的用户数量的统计结果。

在本实施例的一些可选的实现方式中,可以按照如下方式确定各预设标签的权重:对每个预设标签,筛选出与预设标签关联的历史订单信息;统计筛选出的历史订单信息对应的用户数量;对统计出的用户数量求对数后取倒数作为预设标签的权重。具体来说,对每个预设标签tagk,若筛选出的与该预设标签tagk关联的历史订单信息对应的用户数量为user_count(tagk),则该预设标签的权重weight(tagk)为:

其中,k=1,2,3,…n,n为预设标签的数量。

通过对与预设标签tagk关联的历史订单信息对应的用户数量为user_count(tagk)取对数后求倒数,可以在上述应用软件平台上的用户总数较大时避免user_count(tagk)较小时预设标签tagk的权重成为特别小的数,保证用户的历史订单信息关联的各个预设标签在用户特征描述中都具有一定的影响力。

步骤203,基于待处理用户集中各用户的历史订单信息以及各预设标签的权重,生成各用户的标签属性特征。

在这里,标签属性特征可以为基于标签的用户属性特征,换言之,也就是用标签特性来表示的用户的属性。在本实施例中,可以结合每个预设标签的权重,按照预设标签对每个用户的历史订单信息中的订单进行统计,将统计结果作为对应用户的标签属性特征。

具体地,可以采用多种方式来表示用户的标签属性特征。举例来说,用户a的历史订单信息中包括与预设标签a的关联的订单3条以及与预设标签b关联的订单1条,假设步骤202中得出预设标签a,b的权重分别为weight(a)和weight(b),则用户a的标签属性特征可以表示为weight(a)×a3+weight(b)×b1,或者weight(a)×a3&weight(b)×b1。可选地,标签属性特征的形式可以预先设定,在得出每个用户的订单数量基于各预设标签的统计结果后,结合每个预设标签的权重,按照预先设定的形式来表示用户的标签属性特征

在本实施例的一些可选的实现方式中,上述预设标签的数量较多,可以首先将预设标签分类,将所有的预设标签划分为多个标签类别,然后针对每个标签类别,基于标签类别中所有预设标签的权重确定出该标签类别的权重,例如可以讲标签类别中各预设标签的权重的均值作为该标签类别的权重,之后基于标签类别对用户的历史订单信息进行统计,即统计与每一个标签类别关联的历史订单记录的数量,作为各用户的标签属性特征。这样可以减少后续的运算量,缩短运算时间,提高相似用户定位的效率。

步骤204,根据标签属性特征和地理位置信息将待处理用户集中的用户聚类为多个用户簇。

在本实施例中,上述电子设备可以根据用户的标签属性特征和地理位置信息对用户进行聚簇,也即按照标签属性特征和地理位置信息对待处理用户集中的用户进行分类。在这里。每个用户的特征可以由步骤203生成的标签属性特征和步骤201获取的地理位置信息来表示,在聚类时,可以将标签属性特征和地理位置信息作为每个用户簇的特征。

具体来说,可以将地理位置信息相同且用户的标签属性特征一致的用户聚为同一用户簇,将地理位置信息不同的用户划分入不同的用户簇,将标签属性特征不一致的用户划分入不同的用户簇。在实际场景中,地理位置信息相同可以为“商圈”相同,这里的“商圈”可以为多级“商圈”,高级别的“商圈”可以覆盖低级别“商圈”的地理位置范围。在具体的实现中可以根据相似用户定位精确度的需求来选定“商圈”的级别。标签属性特征的一致性可以采用多种现有的方法判断,例如可以直接将两个用户的标签属性特征进行全局比对或局部比对来得出。

在本实施例中,对待处理用户集中的用户进行聚簇的方法可以包括但不限于基于k均值(k-means)算法、层次聚类算法、模糊c均值(fcm)聚类算法等。

通过基于标签属性特征和地理位置信息对用户进行聚类,可以将用户聚类为不同的用户簇,同一用户簇内用户相似度高,不同用户簇间的用户相似度低,这样,在后续筛选相似用户时,仅需在同一用户簇内计算用户间的相似度,无需对每个目标用户计算平台中其他所有用户与该目标用户的相似度,从而能够显著地降低用户间相似度计算的复杂度,提升相似用户定位效率。

步骤205,基于标签属性特征计算目标用户与同一用户簇中其他用户的相似度并确定出目标用户的相似用户。

在将待处理用户集中的用户聚类为多个用户簇之后,可以在同一用户簇内计算用户之间的相似度。上述目标用户为待处理用户集中的一个用户,可以为待匹配相似用户的对象。在实际场景中,目标用户可以是具有特定特征的用户,例如在平台上某一店铺下单频次较高或者对店铺的评价良好的用户。

在本实施例中,可以在目标用户所在的用户簇中查找目标用户的相似用户。具体来说,可以基于标签属性特征计算目标用户与同一用户簇中其他用户的相似度,并基于相似度确定出目标用户的相似用户。

具体地,在计算相似度时,可以对目标用户的标签属性特征和目标用户所在用户簇中其他用户的标签属性特征进行比对,可以采用多种方法,例如可以将各用户的标签属性特征用数据形式(例如字符串、向量、矩阵等方式)表示,然后提取标签属性特征的特征值或特征数据点,利用特征值或特征数据点对两个标签属性特征进行匹配,将两个标签属性特征的特征值或特征数据点的匹配度作为对应的两个用户的相似度。另外,还可以采用诸如余弦相似度、皮尔森相关系数等方法计算两个用户的标签属性特征之间的相似度,作为两个用户的相似度。

在计算得出目标用户与同一用户簇中其他各个用户的相似度之后,可以将相似度高于设定的阈值的用户作为目标用户的相似用户,或者可以按照相似度进行降序排序,选定排序前n(n为预先设定的正整数)位的为目标用户的相似用户。

之后,上述电子设备可以将相似用户的相关信息推送至目标用户兴趣度较高的商户。这里目标用户的兴趣度较高可以包括但不限于目标用户在商户下单频次较高、或者对商户的评价较好、下单总金额超过设定的金额等。

本申请上述实施例提供的用于确定相似用户的方法,首先获取待处理用户集中各用户的用户信息,然后统计与各预设标签关联的历史订单信息对应的用户数量,以确定各预设标签的权重,而后基于待处理用户集中各用户的历史订单信息以及各预设标签的权重,生成各用户的标签属性特征,之后根据标签属性特征和地理位置信息对用户集中的用户进行聚簇,最后基于标签属性特征计算目标用户与同一簇中其它用户的相似度并确定出目标用户的相似用户,能够合理、有效地确定不同预设标签的权重,并依此来准确描述用户的属性特征,从而提升了用户间相似度计算的准确性。

此外,本申请上述实施例通过对用户进行聚簇,在用户簇内查找相似用户来有效降低用户间相似度的计算复杂度,可以提升相似用户定位的效率。

继续参考图3,其示出了用于确定相似用户的方法的又一个实施例的流程300。该用于确定相似用户的方法的流程300,包括以下步骤:

步骤301,获取待处理用户集中各用户的用户信息。

在本实施例中,用于确定相似用户的方法运行于其上的电子设备可以在从本地或从其他设备获取待处理用户集中各用户的用户信息。其中,待处理用户集可以为应用软件平台上的所有用户的集合。用户信息包括地理位置信息以及与至少一个预设标签关联的历史订单信息。预设标签可以为商户的商品类型标签(例如餐馆的菜品标签)、商品价格标签、配送信息标签等。历史订单信息包括多条历史订单记录,每条历史订单记录对应用户的一次下单操作,则可以将用户在一段时间内的下单操作与上述预设的标签相关联地存储,得到与至少一个预设标签关联的历史订单记录,进而得到上述与至少一个预设标签关联的历史订单信息。

步骤302,统计与各预设标签关联的历史订单信息对应的用户数量,以确定各预设标签的权重。

在本实施例中,可以按照不同预设标签区分不同用户的能力对预设标签进行加权,权重可以与预设标签关联的历史订单信息对应的用户数量相关。具体地,预设标签的权重可以与该预设标签关联的历史订单信息对应的用户数量负相关,也就是说,当一个预设标签关联的历史订单信息对应的用户数量较多时,该预设标签区分不同用户的能力较差,则其权重较低;反之,当一个预设标签关联的历史订单信息对应的用户数量较少时,该预设标签区分不同用户的能力较强,则其权重较高。由此,可以利用与预设标签关联的历史订单信息对应的用户数量得到预设标签的权重。

步骤303,根据历史订单信息,确定每个用户对应于各预设标签的下单频次。

在本实施例中,可以根据待处理用户集中的每个用户的历史订单信息,对每个用户对应于各预设标签的下单频次进行统计。在这里,历史订单信息中的每条历史订单记录都与一个或多个预设标签关联。对于每个用户,具体可以统计每个预设标签关联的历史订单记录的数量,或统计该用户与每个标签关联的历史下单频率,作为该用户对应于各预设标签的下单频次。可选地,可以仅统计一段时间内(例如3个月内)的历史订单记录,以减小后续的运算量。

举例来说,如果用户在3个月内下单3次,包括与预设标签a、b关联的一条历史订单记录,与预设标签a、c、d关联的一条历史订单记录,以及与预设标签a、b、c、e关联的一条历史订单记录,则该用户对应于预设标签a、b、c、d、e的下单频次统计结果分别为:3、2、2、1、1。

在本实施例的一些可选的实现方式中,在统计各用户的下单频次时,还可以考虑用户的兴趣度随时间的变化,例如历史订单记录中的一条订单记录的下单时间距离当前时间较远时,该条订单记录对用户标签属性特征评估的重要性低于另一条下单时间距离当前时间较近的订单记录的重要性。

具体地,在一些可选的实现方式中,可以根据用户对应于该标签的历史订单记录的订单生成时间与当前时间的距离,确定时间衰减因子对下单频次统计的影响力,例如预设的时间衰减因子为α(0<α<1,例如α=0.95),历史订单记录的订单生成时间距离当前时间t天,则时间衰减因子对下单频次统计的影响力为αt,该条历史订单记录的等效下单次数为αt。这样,对与同一个预设标签关联的每条历史订单记录的等效下单次数相加,即得到用户对应于该标签的下单频次的统计结果。

步骤304,基于每个用户对应于各预设标签的下单频次和对应预设标签的权重,计算得出每个用户对应的各预设标签的有效下单频次。

可以根据各预设标签的权重和下单频次统计结果计算对应的有效下单频次。有效下单频次可以是更精确地表示加权后每个用户的对应于各预设标签的下单频次统计结果。在这里,可以将每个用户对应于各预设标签的下单频次与对应各预设标签的权重相乘,作为每个用户对应的各预设标签的有效下单频次。

步骤305,基于各预设标签的有效下单频次生成各用户的标签特征向量,作为各用户的标签属性特征。

在本实施例中,可以利用标签特征向量的形式来表示标签属性特征。标签特征向量中的各个元素对应于各个预设特征标签。可以将各预设标签的有效下单频次作为标签特征向量中对应于各预设标签的特征值。

在一些可选的实现方式中,还可以对用户对应于预设标签集合中的各标签的下单频次的统计结果进行归一化处理,将归一化处理后的下单频次统计结果作为标签特征向量中各对应元素的特征值。具体来说,用户i的标签特征向量vi可以表示为:

vi=[vi1,vi2,…,vin](2)

其中,

count(tagj)为第j个预设标签的下单频次的统计结果,n为预设标签的总数量,weight(tagj)为第j个预设标签的权重,k=1,2,3,…,n。

这样,每个用户的标签属性特征都可以用一个一维的标签特征向量表示,作为用户画像的量化值进行后续的聚类和相似度计算。

步骤306,对各用户的标签特征向量中的元素按特征值进行降序排序,选择排序前预设位的元素对应的预设标签为待匹配标签。

在生成用户的标签特征向量之后,可以对各用户的标签特征向量中的元素按照有效下单频次的统计值进行降序排序,假设用户i的标签特征向量vi中排序前m位的分别为第t1、t2、…、tm个特征值vit1、vit2、…、vitm,则可以将标签特征向量vi中第t1、t2、…、tm个元素对应的预设标签作为待匹配标签。在实际场景中,m可设置为一个较小的整数,例如为3,这样,可以保证聚类结果中不同用户簇之间具有较大的差异,同时由于待匹配的预设标签数量较少,可以进一步降低计算复杂度。

步骤307,以地理位置信息和待匹配标签为各用户的特征信息,基于特征信息将待处理用户集中的用户聚类为多个用户簇。

在本实施例中,上述电子设备可以利用地理位置信息和步骤306确定出的待匹配标签作为用户的特征信息进行聚类,可以采用预先设定的与地理位置信息和待匹配标签系相关的聚类规则将用户划分为多个用户簇,每个用户簇中用户的特征信息的相似度较高。

在一些可选的实现方式中,可以将地理位置信息相同且至少一个待匹配标签相同的用户聚为同一用户簇。

在进一步的实现方式中,为了更准确地对用户进行分类,当两个用户的地理位置信息相同,且各个待匹配标签也匹配成功时,可以将两个用户划分入同一用户簇。可选地,若两个用户的地理位置信息相同,且待匹配标签相匹配,还可以进一步判断两个用户的标签特征向量中的待匹配标签对应的特征值是否相同,若是,则将两个用户划分入同一用户簇,否则划分入不同的用户簇。

这样,采用预先设定的规则对用户进行聚类,可以在保证聚类准确度的同时简化聚类算法,可以减小聚类的计算复杂度,从而进一步提升相似用户的定位效率。

步骤308,基于标签属性特征计算目标用户与同一用户簇中其他用户的相似度并确定出目标用户的相似用户。

在将待处理用户集中的用户聚类为多个用户簇之后,可以在同一用户簇内计算用户之间的相似度。上述目标用户为待处理用户集中的一个用户,可以为预先确定的用户。在实际场景中,目标用户可以是具有特定特征的用户,例如在平台上某一店铺下单频次较高或者对店铺的评价较高的用户。

在本实施例中,可以计算目标用户的标签特征向量与同一簇中其他各用户的标签特征向量的相似度,并基于目标用户的标签特征向量与同一用户簇中其他各用户的标签特征向量的相似度筛选出目标用户的相似用户。可选的相似度计算方法可以包括但不限于余弦相似度、皮尔森相关系数、欧氏距离等。

在筛选目标用户的相似用户时,可以判断相似度是否高于设定的阈值、将相似度高于设定的阈值的用户作为目标用户的相似用户;或者可以按照相似度进行降序排序,选定排序前n(n为预先设定的正整数)位的为目标用户的相似用户。

上述方法流程中的步骤301、步骤302分别与前述实施例中的步骤201、步骤202相同,此处不再赘述。

从图3中可以看出,与图2对应的实施例相比,本实施例中的用于确定目相似用户的方法的流程300通过将用户的标签属性特征量化为标签特征向量,并进一步从标签特征向量中提取出较大的特征值对应的预设标签作为待匹配标签,基于待匹配标签和地理位置信息进行聚类,能够快速、有效地将用户聚类为不同的用户簇,从而可以进一步减小相似用户计算的复杂度,提升相似用户定位的效率。

图4示出了图2和图3所示的用于确定相似用户的方法的一个应用场景的效果示意图。如图4所示,商户“**小馆”所在平台的后端服务器可以提供在本商户下单次数最多的客户列表,包括用户“aaaa”和“bbbb”,若商户选择“拉新”服务,上述后端服务器可以将用户“aaaa”和“bbbb”作为目标用户,查找目标用户“aaaa”和“bbbb”的相似用户。具体地可以获取线上所有用户的历史订单信息,统计平台中各个菜品标签对应的用户数量,从而确定出每个菜品的权重,并结合历史订单信息中每次下单用户所点菜品的标签确定每个用户的标签属性特征。之后将筛选出与目标用户“aaaa”或“bbbb”位于同一商圈的用户,对该商圈内的用户进行聚类,最后计算目标用户“aaaa”和“bbbb”与同一类中的其他用户的相似度,并选择相似度较高的作为相似用户。如图4中用户“bbbb0”的相似用户的定位结果为用户“xx”和用户“yyy”。可以将相似用户的定位结果推送至商户“**小馆”的客户端中并呈现。还可以提供相似用户的下单记录等信息,以便商户对相似用户进行针对性的商品推荐或活动信息推送。

进一步参考图5,作为对上述各图所示方法的实现,本申请提供了一种用于确定相似用户的装置的一个实施例,该装置实施例与图5所示的方法实施例相对应,该装置具体可以应用于各种电子设备中。

如图5所示,本实施例的用于确定目相似用户的装置500包括:获取单元501、统计单元502、生成单元503、聚类单元504以及确定单元505。其中,获取单元501配置用于获取待处理用户集中各用户的用户信息,其中,用户信息包括地理位置信息以及与至少一个预设标签关联的历史订单信息;统计单元502配置用于统计与各预设标签关联的历史订单信息对应的用户数量,以确定各预设标签的权重;生成单元503配置用于基于待处理用户集中各用户的历史订单信息以及各预设标签的权重,生成各用户的标签属性特征;聚类单元504配置用于根据标签属性特征和地理位置信息将待处理用户集中的用户聚类为多个用户簇;确定单元505配置用于基于标签属性特征计算目标用户与同一用户簇中其他用户的相似度并确定出目标用户的相似用户。

在本实施例中,获取单元501可以从本地存储器调取出平台上各用户的用户信息,或者可以通过有线连接方式或者无线连接方式从其他服务器中接收平台上各用户的用户信息。这里的用户信息还可以包括用户的年龄、喜好、职业等基本属性信息。

统计单元502可以基于获取单元501获取的每个用户的用户信息,统计每个预设标签关联的历史订单记录对应的用户数量,并依据统计的用户数量设定每个预设标签的权重。

生成单元503可以根据统计单元502统计得到的各预设标签的权重,结合各用户的对应于各预设标签的历史订单记录的数量,生成用户的标签属性特征。可选地,可以将用户对应于每个预设标签的历史订单记录的数量与对应的预设标签的权重相乘,得到用户的对应于该预设标签的特征值,然后将用户的对应于各预设标签的特征值合成为用户的标签属性特征。

聚类单元504可以对根据获取单元501获取的用户的地理位置信息以及生成单元503生成的用户的标签特征属性对待处理用户集中的用户进行聚类。也就是说,可以将地理位置信息和标签特征属性作为聚类所依据的特征,将用户划分为不同的用户簇。同一用户簇内的用户的特征的相似度较高,不同用户簇间用户的特征的相似度较低。这样,能够通过聚类初步将与目标用户相似度低的用户排除,从而加快后续相似用户定位的速度。

确定单元505可以计算目标用户与同一用户簇中其他用户的相似度并确定出目标用户的相似用户。具体地,可以将目标用户与其他用户的标签属性特征间的相似度作为二者的相似度。之后可以选择相似度高于设定的阈值或排序前n位的用户作为相似用户。

在一些实施例中,上述统计单元502可以配置用于按照如下方式确定各预设标签的权重:对每个预设标签,筛选出与预设标签关联的历史订单信息;统计筛选出的历史订单信息对应的用户数量;对统计出的用户数量求对数后取倒数作为预设标签的权重。

在一些实施例中,生成单元503可以配置用于按照如下方式生成各用户的标签属性特征:根据历史订单信息,确定每个用户对应于各预设标签的下单频次;基于每个用户对应于各预设标签的下单频次和对应预设标签的权重,计算得出每个用户对应的预设标签的有效下单频次;基于各预设标签的有效下单频次生成各用户的标签特征向量,作为各用户的标签属性特征。

在进一步的实施例中,上述生成单元503可以进一步配置用于将每个用户对应于各预设标签的下单频次与对应各预设标签的权重相乘,作为每个用户对应的各预设标签的有效下单频次;并进一步配置用于将各预设标签的有效下单频次作为标签特征向量中对应于各预设标签的特征值。

在进一步的实施例中,上述聚类单元504可以进一步配置用于按照如下方式将待处理用户集中的用户聚类为多个用户簇:对各用户的标签特征向量中的元素按特征值进行降序排序,选择排序前预设位的元素对应的预设标签为待匹配标签;以地理位置信息和待匹配标签为各用户的特征信息,基于特征信息将待处理用户集中的用户聚类为多个用户簇。

进一步地,上述聚类单元504可以配置用于将地理位置信息相同且至少一个待匹配标签相同的用户聚为同一用户簇。

在一些实施例中,上述确定单元505进一步配置用于:计算目标用户的标签特征向量与同一用户簇中其他各用户的标签特征向量的相似度;基于目标用户的标签特征向量与同一用户簇中其他各用户的标签特征向量的相似度筛选出目标用户的相似用户。

应当理解,装置500中记载的诸单元与参考图2和图3描述的方法中的各个步骤相对应。由此,上文针对方法描述的操作和特征同样适用于装置500及其中包含的单元,在此不再赘述。

本申请实施例提供的用于确定相似用户的装置500,利用统计单元统计各预设标签管关联的订单信息对应的用户数量,能够合理、有效地确定不同预设标签的权重,生成单元依此来准确描述用户的属性特征,从而提升了用户间相似度计算的准确性;并且通过对聚类单元用户进行聚类,然后确定单元在同一用户簇内查找相似用户,能够有效降低计算复杂度,提升相似用户定位的效率。

下面参考图6,其示出了适于用来实现本申请实施例的服务器的计算机系统600的结构示意图。图6示出的服务器仅仅是一个示例,不应对本申请实施例的功能和使用范围带来任何限制。

如图6所示,计算机系统600包括中央处理单元(cpu)601,其可以根据存储在只读存储器(rom)602中的程序或者从存储部分608加载到随机访问存储器(ram)603中的程序而执行各种适当的动作和处理。在ram603中,还存储有系统600操作所需的各种程序和数据。cpu601、rom602以及ram603通过总线604彼此相连。输入/输出(i/o)接口605也连接至总线604。

以下部件连接至i/o接口605:包括键盘、鼠标等的输入部分606;包括诸如阴极射线管(crt)、液晶显示器(lcd)等以及扬声器等的输出部分607;包括硬盘等的存储部分608;以及包括诸如lan卡、调制解调器等的网络接口卡的通信部分609。通信部分609经由诸如因特网的网络执行通信处理。驱动器610也根据需要连接至i/o接口605。可拆卸介质611,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器610上,以便于从其上读出的计算机程序根据需要被安装入存储部分608。

特别地,根据本公开的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本公开的实施例包括一种计算机程序产品,其包括承载在计算机可读介质上的计算机程序,该计算机程序包含用于执行上述流程图2或图3所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信部分609从网络上被下载和安装,和/或从可拆卸介质611被安装。在该计算机程序被中央处理单元(cpu)601执行时,执行本申请的方法中限定的上述功能。需要说明的是,本申请所述的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(ram)、只读存储器(rom)、可擦式可编程只读存储器(eprom或闪存)、光纤、便携式紧凑磁盘只读存储器(cd-rom)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本申请中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本申请中,计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:无线、电线、光缆、rf等等,或者上述的任意合适的组合。

附图中的流程图和框图,图示了按照本申请各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,该模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。

描述于本申请实施例中所涉及到的单元可以通过软件的方式实现,也可以通过硬件的方式来实现。所描述的单元也可以设置在处理器中,例如,可以描述为:一种处理器包括获取单元、统计单元、筛选单元、计算单元和确定单元。其中,这些单元的名称在某种情况下并不构成对该单元本身的限定,例如,获取单元还可以被描述为“获取待处理用户集中各用户的用户信息的单元”。

作为另一方面,本申请还提供了一种计算机可读介质,该计算机可读介质可以是上述实施例中描述的装置中所包含的;也可以是单独存在,而未装配入该装置中。上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被该装置执行时,使得该装置获取待处理用户集中各用户的用户信息,所述用户信息包括地理位置信息以及与至少一个预设标签关联的历史订单信息;统计与各所述预设标签关联的历史订单信息对应的用户数量,以确定各所述预设标签的权重;基于所述待处理用户集中各用户的历史订单信息以及各所述预设标签的权重,生成各所述用户的标签属性特征;根据所述标签属性特征和地理位置信息将所述待处理用户集中的用户聚类为多个用户簇;基于所述标签属性特征计算目标用户与同一用户簇中其他用户的相似度并确定出所述目标用户的相似用户。

以上描述仅为本申请的较佳实施例以及对所运用技术原理的说明。本领域技术人员应当理解,本申请中所涉及的发明范围,并不限于上述技术特征的特定组合而成的技术方案,同时也应涵盖在不脱离上述发明构思的情况下,由上述技术特征或其等同特征进行任意组合而形成的其它技术方案。例如上述特征与本申请中公开的(但不限于)具有类似功能的技术特征进行互相替换而形成的技术方案。

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