掌桥专利:专业的专利平台
掌桥专利
首页

一种对象处理方法、装置、电子设备及存储介质

文献发布时间:2023-06-19 09:49:27


一种对象处理方法、装置、电子设备及存储介质

技术领域

本申请涉及数据处理领域,尤其涉及一种对象处理方法、装置、电子设备及存储介质。

背景技术

互联网产业的高速发展,带来了内容的爆炸性增长。为了帮助用户的有效获取信息,个性化推送系统正发挥着越来越重要的作用。协同过滤技术是在推送系统中广受关注的一类技术。与传统的基于内容直接过滤分析进行推送不同,协同过滤利用大量的用户信息,选取与目标用户相似的用户,或是与目标物品相似的物品,来最终推送当前目标用户的可能感兴趣的物品。

在现有技术中分析两种物品是否相同,目前相关算法有:

(1)欧几里德算法:用于将信息抽象为一个N维空间的点,通过分析点与点之间的欧几里德距离来确定不同信息间的相似度;

(2)余弦相似度算法:用于将信息抽象为一个N维向量,通过分析计算两个向量的余弦值来获得向量夹角值,以夹角值确定不同信息的相似度。

在实现本申请的过程中,发明人发现,现有技术中上述分析物品是否相同的相关算法存在以下缺陷:运算量大且复杂;算法相对固定,不具备配置性;因此在物品的数据量庞大时,处理性能低。

发明内容

为了解决上述技术问题或者至少部分地解决上述技术问题,本申请提供了一种对象处理方法、装置、电子设备及存储介质。

根据本申请实施例的一方面,提供了一种对象处理方法,包括:

获取推送服务请求,所述推送服务请求携带待推送对象的目标对象标识;

采用N个不同的哈希函数对所述目标对象标识进行哈希计算得到N个目标哈希值,其中N为大于1的整数;

获取所述目标对象标识对应的目标位图信息;

从所述目标位图信息中查询所述N个目标哈希值对应的目标数据位上的目标参数信息;

根据所述目标数据位上的目标参数信息对所述待推送对象执行处理操作。

进一步的,所述方法还包括:

获取历史推送集合,所述历史推送集合中包括至少一个对象集合,所述对象集合是基于至少一个对象类型对所述历史推送集合进行划分得到;

获取根据所述对象集合建立的初始位图,以及所述对象集合中历史推送对象对应的对象标识;

采用所述N个不同的哈希函数对所述对象标识进行哈希计算得到N个哈希值;

对所述哈希值进行取模计算得到的计算结果;

根据所述计算结果对所述初始位图中数据位显示的参数信息进行更新,得到位图信息。

进一步的,所述获取所述目标对象标识对应的目标位图信息,包括:

根据所述目标对象标识确定所述待推送对象的目标对象类型;

从所述历史推送集合中查询与所述目标对象类型相匹配的目标对象集合;

将所述目标对象集合对应的位图作为所述目标位图信息。

进一步的,所述根据所述目标数据位上的目标参数信息对所述待推送对象执行处理操作,包括:

根据所述目标参数信息确定所述目标对象集合中存在所述待推送对象时,对所述待推送对象执行过滤操作。

进一步的,所述对所述待推送对象执行过滤操作,包括:

获取所述对象的历史推送信息,所述历史推送信息包括以下至少一项:推送时间、推送次数、和/或推送反馈数据;

当所述历史推送信息满足预设条件时,对所述待推送对象执行过滤操作;

所述历史推送信息满足预设条件,包括以下至少一项:

所述推送时间小于预设推送时间;

所述推送次数大于预设推送次数;

所述推送反馈数据的数据量大于预设推送反馈数据的数据量。

进一步的,所述根据所述目标数据位上的目标参数信息对所述待推送对象执行处理操作,还包括:

根据所述目标参数信息确定所述目标对象集合中不存在所述待推送对象时,对所述目标参数信息进行更新,并确定所述待推送对象对应的目标接收方;

将所述待推送对象发送至所述目标接收方。

进一步的,所述获取所述待推送对象对应的目标接收方,包括:

根据所述目标对象标识确定所述待推送对象对应的接收方集合,所述接收方集合包括至少一个接收方,以及所述接收方对应的接收方信息;

确定所述待推送对象的属性信息;

从所述接收方集合中查询得到与所述属性信息相匹配的目标接收方信息;

将所述目标接受方信息对应的接收方作为所述目标接收方。

根据本申请实施例的另一方面,还提供了一种对象处理装置,包括:

第一获取模块,用于获取推送服务请求,所述推送服务请求携带待推送对象的目标对象标识;

计算模块,用于采用N个哈希函数对所述目标对象标识进行哈希计算得到N个目标哈希值,其中N为大于等于1的整数;

第二获取模块,用于获取所述目标对象标识对应的目标位图;

查询模块,用于从所述目标位图中查询所述N个目标哈希值对应的目标数据位;

执行模块,用于根据所述目标数据位显示的目标参数信息对所述待推送对象执行处理操作。

根据本申请实施例的另一方面,还提供了一种存储介质,该存储介质包括存储的程序,程序运行时执行上述的步骤。

根据本申请实施例的另一方面,还提供了一种电子装置,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;其中:存储器,用于存放计算机程序;处理器,用于通过运行存储器上所存放的程序来执行上述方法中的步骤。

本申请实施例还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述方法中的步骤。

本申请实施例提供的上述技术方案与现有技术相比具有如下优点:在本申请实施例中通过对目标对象标识进行计算得到的哈希值,来获取目标位图中数据位显示的参数,根据参数能够快速的确定待推送对象是否被推送,该方法运算简单,且算法具有可配置性,在对象的数据量庞大时,处理效率更高。

附图说明

此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本申请的实施例,并与说明书一起用于解释本申请的原理。

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

图1为本申请实施例提供的一种对象处理方法的流程图;

图2为本申请实施例提供的一种对目标对象标识进行计算的示意图;

图3为本申请另一实施例提供的一种对象处理方法的流程图;

图4为本申请另一实施例提供的一种对象处理方法的流程图;

图5为本申请实施例提供的一种对象处理装置的框图;

图6为本申请实施例提供的一种电子设备的结构示意图。

具体实施方式

为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请的一部分实施例,而不是全部的实施例,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本申请保护的范围。

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

本申请实施例提供了一种对象处理方法、装置及系统。本发明实施例所提供的方法可以应用于任意需要的电子设备,例如,可以为服务器、终端等电子设备,在此不做具体限定,为描述方便,后续简称为电子设备。

根据本申请实施例的一方面,提供了一种对象处理方法的方法实施例。图1为本申请实施例提供的一种对象处理的控制方法的流程图,如图1所示,该方法还包括:

步骤S11,获取推送服务请求,推送服务请求求携带待推送对象的目标对象标识;

在本申请实施例中,推送服务请求可以是请求方发送的,待推送对象可以是待推送商品、待推送广告、待推送新闻等等。目标对象标识可以是商品标识、广告标识、新闻标识等等。本申请实施例以商品标识为例进行说明。商品标识通常为字符串,例如商品标识为“123323235413451”。

步骤S12,采用N个哈希函数对目标对象标识进行哈希计算得到N个目标哈希值,N为大于等于1的整数;

在本申请实施例中,通过N个不同的哈希函数对商品标识进行哈希计算,得到N个哈希值。作为一个示例,商品ID=“123323235413451”,通过预先设置的多个哈希函数对该进行计算,分别得到第一哈希值为621,第二哈希值为500,第N哈希值为712。

哈希函数设计原则:哈希函数的定义域必须包括需要存储的全部关键码,而如果散列表允许有m个地址时,其值域必须在0到m-1之间。哈希函数计算出来的地址能均匀分布在整个空间中。哈希函数应该比较简单。

常见使用哈希函数计算方法:

(1)直接定址法:

取目标对象标识的某个线性函数为哈希值:

Hash(Key)=A×Key+B。其中,Key为目标对象标识,A、B为常数。

直接定址法的特点在于,哈希值集合的大小等于目标对象标识集合的大小,这样,计算过程比较简单,计算得到的哈希值在为图中分布均匀。

(2)除留余数法:

设散列表中允许的地址数为m,m为正整数。取一个不大于m,但最接近或者等于m的质数p作为除数,按照哈希函数:Hash(Key)=Key mod p(p≤m),将目标对象标识Key转换成哈希值。

除留余数法特点在于,计算过程简单,计算速度快。

常用的哈希函数计算方法并不限于上述两种,在此不再一一赘述。

步骤S13,获取目标对象标识对应的目标位图;

在本申请实施例中,首先根据目标对象标识确定对象所属的对象集合,确定对象集合的集合标识,根据预先存储的集合标识与位图的对应关系确定目标标识对象对应的目标位图,其中每一个集合标识对对应一个位图。

可以理解的,以商品为例,每一个商品集合对应一个位图,其中商品集合可以包括同一类型的商品,或者属于同一业务平台的商品,在此不做具体限定。

需要说明的是,位图中每一数据位存放某种状态。通常是用来判断某个数据是否存在,例如:当确定某一个商品是否被推送过时,可以通过商品是否被推送确定商品的状态,其中商品被推送过即表示为1,商品未被推送过即表示为0。

步骤S14,从目标位图信息中查询N个目标哈希值对应的目标数据位上的目标参数信息;

在本申请实施例中,分别根据第一哈希值,第二哈希值以及第三哈希值得到第一地址,第二地址以及第三地址,其中,第一地址,第二地址以及第三地址为目标位图中数据位的地址,确定目标数据位后,读取目标数据位上的目标参数信息,其中目标参数信息可以是0或1,其中“1”表示商品被推送过,“0”表示商品未推送过。

步骤S15,根据目标数据位上的目标参数信息对待推送对象执行处理操作。

在本申请实施例中,当目标数据位上的目标参数信息都是1时,则确定对象集合中存在待推送对象,则对待推送对象进行过滤操作。

例如:如图2所示,当确定待推送对象的目标对象标识后,通过不同哈希函数对目标对象标识分别进行哈希计算得到第一哈希值hash1,第二哈希值hash2,第三哈希值hash3,此时图2所示的目标位图中第一哈希值hash1,第二哈希值hash2,第三哈希值hash3对应的目标数据位上的三个值都是1,则表示待推送对象曾经被推送过。

相反,如果当目标数据位上的三个目标参数信息都是0时,则确定对象集合中不存在待推送对象,则对待推送对象进行推送。同时对目标数据位上的目标参数信息进行更新,并获取待推送对象对应的目标接收方;将待推送对象发送至目标接收方。

本申请实施例中,通过对目标对象标识进行计算得到的哈希值,来获取目标位图中数据位显示的参数,根据参数能够快速的确定待推送对象是否被推送,该方法运算简单,且算法具有可配置性,在对象的数据量庞大时,处理效率更高。

在本申请实施例提供的方法还包括:获取待推送对象的历史推送信息,历史推送信息包括以下至少一项:推送时间、推送次数、和/或推送反馈数据;当历史推送信息满足预设条件时,对待推送对象执行过滤操作;历史推送信息满足预设条件,包括以下至少一项:推送时间小于预设推送时间;推送次数大于预设推送次数;所述推送反馈数据的数据量大于预设推送反馈数据的数据量。

可以理解的,推送反馈数据可以是商品评价类型,例如通过网络爬虫的方式爬取各个推送商品的评价信息,得到评价信息之后可以通过语义分析模型,对评价信息进行分析确定该商品的评价信息的评价类型,评价类型可以是第一评价类型,第二评价类型,第三评价类型等等。其中,第一评价类型可以是好评,第二评价类型可以是中评,第三评价类型可以是差评。最后统计各个评价类型对应的数量,当第一类型的数量大于第一预设阈值,且第二评价类型和第三评价类型的数量小于或等于第二预设阈值时,则确定所述推送反馈数据的数据量大于预设推送反馈数据的数据量。

本申请实施例提供的方法在对待推送对象进行过滤之前,还通过对历史推送信息进行分析,使得对用户的商品推送更加准确、有针对性,避免过于频繁地推送相同商品信息。

以下实施例为确定待推送对象对应目标接收方的方法实施例,图3为本申请实施例提供的一种对象处理方法的流程图,如图3所示,该方法可以包括以下步骤:

步骤S31,根据目标对象标识确定待推送对象对应的接收方集合,接收方集合包括至少一个接收方,以及接收方对应的接收方信息;

在本申请实施例中,首先确定目标对象标识对应的对象标签类型,例如目标对象标识中携带用户表示对象标签类型的字符串,根据字符串确定对象标签类型。然后可以确定对象标签类型关联的接收方集合。其中对象标签类型与接收方集合的关联关系是预先设置的。

作为一个示例,对象标签类型与接收方集合的关联关系过程如下:获取接收方(用户)的历史访问记录,历史访问记录包括:用户信息以及商品购买记录,以此得到各个商品的商品标识对应的用户信息;根据特定算法基于各个商品对应的用户信息进行分析得到分析结果,分析结果用于建立商品标识的与用户信息之间的映射关系。

本申请实施例中历史访问记录包括:用户A的用户信息m1,用户商品购买记录为:商品标识1,商品标识2以及商品标识3;用户B的用户信息m2,用户B商品购买记录为:商品标识2以及商品标识3;用户C的用户信息m3,用户C商品购买记录为:商品标识4以及商品标识5;用户D的用户信息m4,用户D商品购买记录为:商品标识1。

则商品标识1对应的用户信息m为:用户信息m1、用户信息m4以及用户信息m5;商品标识2对应的用户信息m为:用户信息m1、用户信息m2;商品标识3对应的用户信息m为:用户信息1以及用户信息m5;商品标识4对应的用户信息m为:用户信息m3;商品5对应的用户信息m为:用户信息m3以及用户信息m5。

在本申请实施例中,接收方集合可以是用户集合,接收方对应的接收方信息可以是用户信息,例如:用户信息可以是用户的性别,用户的年龄,用户的消费水平,用户的收入,用户的学历,用户所属的人群等等。

步骤S32,确定待推送对象的属性信息;

在本申请实施例中,当待推送对象为商品时,待推送对象的属性信息可以是商品名称,商品类型,商品价格,商品折扣,商品适用范围等等。

步骤S33,从接收方集合中查询与属性信息相匹配的目标接收方信息;将目标接受方信息对应的接收方作为目标接收方。

在本申请实施例中,判断属性信息与接收方信息是否相匹配,判断过程可以包括以下至少一项:判断商品价格是否满足用户的消费水平,商品的适用范围是否满足用户所属的人群等等,能够有针对性向用户进行商品推送,并提高商品推送的准确性。

如图4所示,在可选实施例中,该方法还包括生成位图的过程,具体步骤如下:

步骤S41,获取历史推送集合,历史推送集合中包括至少一个对象集合,对象集合是基于至少一个对象类型对历史推送集合进行划分得到;

在本申请实施例中,在获取目标对象标识对应的目标位图之前,还需要获取历史推送集合,其中历史推送集合中包括至少一个对象集合,对象集合是基于至少一个对象类型对历史推送集合进行划分得到。

作为一个示例,以商品的历史推送集合为例,其包含的对象类型可以是业务平台类型,例如金融平台,电子商务平台,直播平台等等。也可以是商品类型,例如:家居商品,办公商品,学习商品等等。

步骤S42,获取根据对象集合建立的初始位图,以及对象集合中历史推送对象对应的对象标识;

获取根据对象集合建立的初始位图,以及对象集合对应的对象标识。可以理解的,一个对象集合对应一个初始位图,对象集合对应的集合标识可以是平台的代码,例如金融平台的集合标识为JR,电子商务平台的集合标识为DZSW,直播平台的集合标识为ZB。然后确定每个对象集合中历史推送对象的数量以及历史推送对象的对象标识,根据对象的数量确定初始位图的数据位的大小。其中历史推送对象可以是历史推送商品,对象标识即为商品标识。

作为一个示例,历史推送集合为M,针对数据量M(比如5000万件商品),创建一个包含Size=a×M的位图的值,其中,a表示权重系统。比如电子商务平台的权重系数a为0.2。则电子商务平台对应的位图大小Size=0.2×M,并将该位图中的数据位初始化值全为0。

步骤S43,采用N个不同的哈希函数对对象标识进行哈希计算得到N个哈希值;

步骤S44,对哈希值进行取模计算得到的计算结果;

步骤S45,根据计算结果对初始位图中数据位显示的参数信息进行更新,得到位图信息。

在本申请实施例中,采用N个哈希函数对对象标识进行哈希计算得到N个哈希值;根据哈希值进行取模计算得到的计算结果;根据计算结果对初始位图中数据位显示的参数信息进行更新,得到位图。

比如商品ID=“123323235413451”,通过预先设置的N个哈希函数对此商品ID进行计算,分别得到第一哈希值621,第二哈希值500,第N个哈希值712。并在位图中,将N个哈希值对应的数据位都更新为1。直至对该对象集合中所有历史推送对象的对象标识进行哈希计算完成后,即得到该对象集合对应的位图信息。

图5为本申请实施例提供的一种对象处理装置的框图,该装置可以通过软件、硬件或者两者的结合实现成为电子设备的部分或者全部。如图5所示,该装置包括:

第一获取模块51,用于获取推送服务请求,推送服务请求携带待推送对象的目标对象标识;

计算模块52,用于采用N个哈希函数对目标对象标识进行哈希计算得到N个目标哈希值,N为大于等于1的整数;

第二获取模块53,用于获取目标对象标识对应的目标位图;

查询模块54,用于从目标位图中查询N个目标哈希值对应的目标数据位;

执行模块55,用于根据目标数据位显示的目标参数信息对待推送对象执行处理操作。

进一步的,本申请实施例提供的装置还包括:位图处理模块,用于获取历史推送集合,历史推送集合中包括至少一个对象集合,对象集合是基于至少一个对象类型对历史推送集合进行划分得到;获取根据所述对象集合建立的初始位图,以及所述对象集合中历史推送对象对应的对象标识;采用N个哈希函数对对象标识进行哈希计算得到N个哈希值;根据哈希值进行取模计算得到的计算结果;根据计算结果对初始位图中数据位显示的参数信息进行更新,得到位图。

进一步的,第二获取模块,具体用于根据目标对象标识确定待推送对象的目标对象类型;从历史推送集合中查询与目标对象类型相匹配的目标对象集合;将目标对象集合对应的位图作为目标位图。

进一步的,执行模块,具体用于根据目标参数信息确定目标对象集合中存在待推送对象时,对待推送对象执行过滤操作。

进一步的,本申请实施例提供的装置还包括:验证模块,用于获取待推送对象的历史推送信息,历史推送信息包括以下至少一项:推送时间、推送次数、和/或推送反馈数据;当历史推送信息满足预设条件时,对待推送对象执行过滤操作;历史推送信息满足预设条件,包括以下至少一项:推送时间小于预设推送时间;推送次数大于预设推送次数;推送反馈数据的数据量大于预设推送反馈数据的数据量。

进一步的,执行模块,具体用于根据目标参数信息确定目标对象集合中不存在待推送对象时,对目标参数信息进行更新,并获取待推送对象对应的目标接收方;将待推送对象发送至目标接收方。

进一步的,执行模块,具体用于根据目标对象标识确定待推送对象对应的接收方集合,接收方集合包括至少一个接收方,以及接收方对应的接收方信息;确定待推送对象的属性信息;从接收方集合中查询与属性信息相匹配的目标接收方信息;将目标接受方信息对应的接收方作为目标接收方。

本申请实施例还提供一种电子设备,如图6所示,电子设备可以包括:处理器1501、通信接口1502、存储器1503和通信总线1504,其中,处理器1501,通信接口1502,存储器1503通过通信总线1504完成相互间的通信。

存储器1503,用于存放计算机程序;

处理器1501,用于执行存储器1503上所存放的计算机程序时,实现上述实施例的步骤。

上述终端提到的通信总线可以是外设部件互连标准(Peripheral ComponentInterconnect,简称PCI)总线或扩展工业标准结构(Extended Industry StandardArchitecture,简称EISA)总线等。该通信总线可以分为地址总线、数据总线、控制总线等。为便于表示,图中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。

通信接口用于上述终端与其他设备之间的通信。

存储器可以包括随机存取存储器(Random Access Memory,简称RAM),也可以包括非易失性存储器(non-volatile memory),例如至少一个磁盘存储器。可选的,存储器还可以是至少一个位于远离前述处理器的存储装置。

上述的处理器可以是通用处理器,包括中央处理器(Central Processing Unit,简称CPU)、网络处理器(Network Processor,简称NP)等;还可以是数字信号处理器(Digital Signal Processing,简称DSP)、专用集成电路(Application SpecificIntegrated Circuit,简称ASIC)、现场可编程门阵列(Field-Programmable Gate Array,简称FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。

在本申请提供的又一实施例中,还提供了一种计算机可读存储介质,该计算机可读存储介质中存储有指令,当其在计算机上运行时,使得计算机执行上述实施例中任一所述的对象处理方法。

在本申请提供的又一实施例中,还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述实施例中任一所述的对象处理方法。

在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本申请实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线)或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或者半导体介质(例如固态硬盘SolidState Disk)等。

以上所述仅为本申请的较佳实施例而已,并非用于限定本申请的保护范围。凡在本申请的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本申请的保护范围内。

以上所述仅是本申请的具体实施方式,使本领域技术人员能够理解或实现本申请。对这些实施例的多种修改对本领域的技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本申请的精神或范围的情况下,在其它实施例中实现。因此,本申请将不会被限制于本文所示的这些实施例,而是要符合与本文所申请的原理和新颖特点相一致的最宽的范围。

相关技术
  • 一种对象描述信息的处理方法、装置、电子设备及存储介质
  • 一种对象处理方法、装置、电子设备及存储介质
技术分类

06120112312580