CN116258539A - 数据处理方法、装置、设备、存储介质及计算机程序产品 - Google Patents
数据处理方法、装置、设备、存储介质及计算机程序产品 Download PDFInfo
- Publication number
- CN116258539A CN116258539A CN202111492236.8A CN202111492236A CN116258539A CN 116258539 A CN116258539 A CN 116258539A CN 202111492236 A CN202111492236 A CN 202111492236A CN 116258539 A CN116258539 A CN 116258539A
- Authority
- CN
- China
- Prior art keywords
- candidate
- target
- sequence
- probability
- type
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q30/00—Commerce
- G06Q30/06—Buying, selling or leasing transactions
- G06Q30/0601—Electronic shopping [e-shopping]
- G06Q30/0603—Catalogue ordering
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q30/00—Commerce
- G06Q30/06—Buying, selling or leasing transactions
- G06Q30/0601—Electronic shopping [e-shopping]
- G06Q30/0631—Item recommendations
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q30/00—Commerce
- G06Q30/06—Buying, selling or leasing transactions
- G06Q30/0601—Electronic shopping [e-shopping]
- G06Q30/0641—Shopping interfaces
Landscapes
- Business, Economics & Management (AREA)
- Accounting & Taxation (AREA)
- Finance (AREA)
- Development Economics (AREA)
- Economics (AREA)
- Marketing (AREA)
- Strategic Management (AREA)
- Physics & Mathematics (AREA)
- General Business, Economics & Management (AREA)
- General Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本申请公开了数据处理方法、装置、设备、存储介质及计算机程序产品。该方法包括:获取候选对象集合和目标对象序列;基于目标对象序列包括的已选择对象的排列情况确定当前排列位置;确定候选对象集合中的每一个候选对象对应当前排列位置的预测触发概率;候选对象集合中的已选择对象的预测触发概率为第一概率值;在设置了对象选择规则的情况下,候选对象集合中不符合对象选择规则的候选对象的预测触发概率为第二概率值;从候选对象集合中确定目标对象,目标对象为候选对象集合中预测触发概率满足设定条件的候选对象;基于当前排列位置将目标对象添加至目标对象序列中。采用本申请,可以根据设置的对象选择规则进行目标对象的选择及排序。
Description
技术领域
本申请涉及计算机技术领域,尤其涉及数据处理方法、数据处理装置、计算机设备、计算机可读存储介质以及计算机程序产品。
背景技术
终端设备在向用户展示目标对象时,可以在候选对象集合中对满足需要的一个或多个候选消息进行选择,并将筛选出的目标对象进行排序,以按照顺序依次向用户展示上述目标对象。例如:在电商购物的场景下,终端设备可以在包括200个推荐商品的候选商品集合中选择10个推荐商品,并将选择出的该10个推荐商品进行排序,从而可以依次向用户展示该10个推荐商品。但如何对目标对象进行选择和排序是目前亟需解决的问题。
发明内容
本申请实施例提供一种数据处理方法、装置、设备、存储介质及计算机程序产品,可以根据设置的对象选择规则进行目标对象的选择及排序。
本申请实施例一方面提供了一种数据处理方法,包括:
获取候选对象集合和目标对象序列,该候选对象集合包括一个或者多个候选对象;
基于上述目标对象序列包括的已选择对象的排列情况确定当前排列位置;
确定候选对象集合中的每一个候选对象对应上述当前排列位置的预测触发概率;其中,上述候选对象集合中的已选择对象的预测触发概率为第一概率值;在设置了对象选择规则的情况下,上述候选对象集合中不符合该对象选择规则的候选对象的预测触发概率为第二概率值;
从上述候选对象集合中确定目标对象,该目标对象为候选对象集合中预测触发概率满足设定条件的候选对象;
基于当前排列位置将上述目标对象添加至目标对象序列中。
本申请实施例一方面提供了一种数据处理装置,包括:
获取模块,用于获取候选对象集合和目标对象序列,该候选对象集合包括一个或者多个候选对象;
确定模块,用于基于上述目标对象序列包括的已选择对象的排列情况确定当前排列位置;
上述确定模块,还用于确定候选对象集合中的每一个候选对象对应上述当前排列位置的预测触发概率;其中,上述候选对象集合中的已选择对象的预测触发概率为第一概率值;在设置了对象选择规则的情况下,上述候选对象集合中不符合该对象选择规则的候选对象的预测触发概率为第二概率值;
上述确定模块,还用于从上述候选对象集合中确定目标对象,该目标对象为候选对象集合中预测触发概率满足设定条件的候选对象;
处理模块,用于基于当前排列位置将上述目标对象添加至目标对象序列中。
本申请实施例一方面提供了一种计算机设备,包括存储器和处理器,存储器存储有计算机程序,计算机程序被处理器执行时,使得处理器执行上述各实施例中的方法。
本申请实施例一方面提供了一种计算机存储介质,计算机存储介质存储有计算机程序,计算机程序包括程序指令,程序指令当被处理器执行时,执行上述各实施例中的方法。
本申请实施例一方面提供了一种计算机程序产品或计算机程序,计算机程序产品或计算机程序包括计算机指令,计算机指令存储在计算机可读存储介质中,计算机指令被计算机设备的处理器执行时,执行上述各实施例中的方法。
本申请实施例中,通过获取候选对象集合和目标对象序列,并基于目标对象序列包括的已选择对象的排列情况确定当前排列位置,从而可以采用触发概率预测方式,对候选对象集合中的每一个候选对象对应当前排列位置的初始预测触发概率进行确定;在设置了对象选择规则时,可以通过获取目标规则掩码向量,并将初始预测触发概率序列与该目标规则掩码向量进行运算,以得到目标概率序列,从而以将该目标概率序列中概率最大值所对应的候选对象,确定为目标对象,并基于当前排列位置将上述目标对象添加至目标对象序列中,进而实现根据设置的对象选择规则进行目标对象的选择及排序。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请实施例提供的数据处理方法所适用的一种网络架构的示意图;
图2是本申请实施例提供的一种数据处理方法的流程示意图;
图3是本申请实施例提供的另一种数据处理方法的流程示意图;
图4A是本申请实施例提供的一种数据处理设备显示界面示意图;
图4B是本申请实施例提供的另一种数据处理设备显示界面示意图;
图5A是本申请实施例提供的又一种数据处理设备显示界面示意图;
图5B是本申请实施例提供的还一种数据处理设备显示界面示意图;
图6是本申请实施例提供的一种数据处理装置的结构示意图;
图7是本申请实施例提供的一种计算机设备的结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
本申请实施例提供了一种数据处理方法,可以根据设置的对象选择规则对目标对象进行选择和排序。本申请实施例提供的数据处理方法可以基于人工智能(ArtificialIntelligence,AI)技术实现。其中,AI是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用系统。换句话说,AI是计算机科学的一个综合技术,它企图了解智能的实质,并生产出一种新的能以人类智能相似的方式做出反应的智能机器。AI也就是研究各种智能机器的设计原理与实现方法,使机器具有感知、推理与决策的功能。AI技术是一门综合学科,涉及领域广泛,既有硬件层面的技术也有软件层面的技术。人工智能基础技术一般包括如传感器、云计算、分布式存储、大数据处理技术、操作/交互系统、机电一体化等技术。人工智能软件技术主要包括自然语言处理技术、计算机视觉技术、机器学习/深度学习等几大方向。本申请实施例提供的方法主要涉及AI技术中的机器学习(Machine Learning,ML)技术。
机器学习是一门多领域交叉学科,涉及概率论、统计学、逼近论、凸分析、算法复杂度理论等多门学科。ML专门研究计算机怎样模拟或实现人类的学习行为,以获取新的知识或技能,重新组织已有的知识结构使之不断改善自身的性能。ML是人工智能的核心,是使计算机具有智能的根本途径,其应用遍及人工智能的各个领域。ML和深度学习(DeepLearning,DL)通常包括人工神经网络、置信网络、强化学习、迁移学习、归纳学习等技术。
随着AI技术研究和进步,AI技术在多个领域展开研究和应用,例如常见的智能家居、智能穿戴设备、虚拟助理、智能音箱、智能营销、无人驾驶、自动驾驶、无人机、机器人、智能医疗、智能客服、车联网、自动驾驶、智慧交通等。随着技术的发展,AI技术将在更多的领域得到应用,并发挥越来越重要的价值。
在可行的实施例中,本申请实施例提供的数据处理方法还可以基于云技术(Cloudtechnology)和/或区块链技术实现。具体可以涉及云技术中的云存储(Cloud storage)、云数据库(Cloud Database)、大数据(Big data)中的一种或者多种。例如,从云数据库中获取执行该数据处理方法所需要的数据(例如候选对象集合的数据、目标对象序列的数据等)。又例如,执行该数据处理方法所需要的数据可以是以区块的形式存储在区块链上;可以将执行该数据处理方法所产生的数据(例如预测触发概率序列、目标对象特征、已选择对象特征等)以区块的形式存储到区块链上;另外,执行该数据处理方法的数据处理设备可以是区块链网络中的节点设备。
本申请实施例提供的数据处理方法可以适用于图1所示的网络架构。图1所示的数据处理设备10可以是具备数据处理功能的服务器或者终端设备,服务器可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、CDN、以及大数据和人工智能平台等基础云计算服务的云服务器。终端设备可以是智能手机、平板电脑、笔记本电脑、台式计算机、智能语音交互设备、智能家电、车载终端,等等,但并不局限于此。图1所示的数据库11可以是数据处理设备10的本地数据库,也可以是数据处理设备10能够访问的云端数据库。需要说明的是,图1中以候选对象集合的数据和目标对象序列的数据,均存于数据库11为例进行说明,不对本申请造成限制。可选的,候选对象集合的数据可以存于一个数据库,目标对象序列的数据可以存于另一个数据库,本申请对此不作限制。本申请实施例提供的数据处理方法可以由数据处理设备10执行,具体的:
从数据库11中获取候选对象集合和目标对象序列,该候选对象集合中可以包括一个或者多个候选对象;并基于上述目标对象序列包括的已选择对象的排列情况确定当前排列位置。在确定了当前排列位置之后,可以确定候选对象集合中的每一个候选对象对应上述当前排列位置的预测触发概率。具体的,可以采用触发概率预测方式,对候选对象集合中的每一个候选对象对应当前排列位置的预测触发概率进行确定。其中,上述候选对象集合中的已选择对象的预测触发概率为第一概率值。在确定上述预测触发概率,可以得到目标概率序列,从而可以将该目标概率序列中概率最大值所对应的候选对象,确定为目标对象,并基于当前排列位置将上述目标对象添加至目标对象序列中,以根据预测触发概率对目标对象进行选择和排序。
在设置了对象选择规则的情况下,可以通过获取目标规则掩码向量,并将上述采用触发概率预测方式确定的初始预测触发概率序列,与该目标规则掩码向量进行运算,以对候选对象集合中的每一个候选对象对应上述当前排列位置的预测触发概率进行确定。其中,可以将候选对象集合中不符合该对象选择规则的候选对象的预测触发概率,确定为第二概率值。通过上述运算可以得到目标概率序列,以将该目标概率序列中概率最大值所对应的候选对象,确定为目标对象,从而基于当前排列位置将上述目标对象添加至目标对象序列中,进而根据设置的对象选择规则对目标对象进行选择和排序。
图2是本申请实施例提供的一种数据处理方法的流程示意图。该数据处理方法可以由图1所示的数据处理设备执行,具体可由该数据处理设备的处理器执行。该数据处理方法包括如下步骤:
S201,获取候选对象集合和目标对象序列,该候选对象集合包括一个或者多个候选对象。
在推荐应用场景中,数据处理设备对目标对象进行排序时,可以从获取到的候选对象集合中确定出一个或多个目标对象,并将该一个或多个目标对象填充至获取到的目标对象序列中对应的位置,从而得到填充完成的目标对象序列,进而可以将该填充完成的目标对象序列展示给用户。
需要说明的是,数据处理设备所获取的目标对象序列,可以包括与该目标对象序列相关的信息。其中,该相关的信息可以包括:目标对象序列中已选择对象的信息,以及目标对象序列的长度等,本申请对此不作限制。上述目标对象序列的长度,即为该目标对象序列中可以包括的已选择对象数量。例如:数据处理设备可以获取到目标对象序列的长度为10,且该目标对象序列中包括了2个已选择对象,以及该2个已选择对象所对应的位置等信息。
可选的,在上述目标对象序列为空时,即该目标对象序列中还未存在已选择对象时,数据处理设备可以通过获取该目标对象序列对应的长度,以在确定该目标对象序列的长度的情况下,对该目标对象序列中的各个位置进行填充。
S202,基于上述目标对象序列包括的已选择对象的排列位置确定当前排列位置。
需要说明的是,在上述目标对象序列不为空的情况下,数据处理设备可以根据该目标对象序列中的已选择对象,确定在上述目标对象序列中当前待填充的位置,即上述当前排列位置。
示例性的,假设目标对象序列的长度为5,数据处理设备获取到的目标对象序列中包括2个已选择对象,且该2个已选择对象分别位于目标对象序列中的第一个位置和第二个位置,则数据处理设备可以根据上述2个已选择对象的排列位置,确定第三个位置为当前排列位置。其中,上述已选择对象的排列位置以及当前排列位置所对应的具体位置,仅用于举例,不对本申请造成限制。
可选的,数据处理设备在对目标对象序列进行填充时,可以不按照顺序依次对该目标对象序列进行填充。例如:假设目标对象序列的长度为5,数据处理设备获取到的目标对象序列中包括2个已选择对象,该2个已选择对象可以分别位于目标对象序列中的第三个位置和第五个位置;数据处理设备可以根据该2个已选择对象的排列位置,确定第一个位置为当前排列位置。
S203,确定上述候选对象集合中每一个候选对象对应上述当前排列位置的预测触发概率;其中,上述候选对象集合中的已选择对象的预测触发概率为第一概率值。
数据处理设备在获取到上述候选对象集合和目标对象序列,并确定上述当前排列位置之后,可以确定上述候选对象集合中的每一个候选对象,处于上述当前排列位置上的预测触发概率。
在一种实现方式中,针对上述候选对象集合中的任一候选对象,若该任一候选对象不为上述已选择对象,则采用触发概率预测方式确定上述任一候选对象对应当前排列位置的初始预测触发概率;若该任一候选对象为上述已选择对象,则确定上述任一候选对象对应当前排列位置的初始预测触发概率为上述第一概率值;基于上述候选对象集合中的各个候选对象的初始预测触发概率生成目标概率序列;其中,该目标概率序列包括上述候选对象集合中的每一个候选对象对应当前排列位置的预测触发概率。
需要说明的是,数据处理设备在确定上述候选对象集合中每一个候选对象处于当前排列位置的初始预测触发概率时,若目标对象序列不为空,即上述候选对象集合中存在已选择对象,则可以将该候选对象集合中的已选择对象的初始预测触发概率确定为第一概率值。其中,该第一概率值可以为0,也可以为一个趋近于0的数值,例如:0.001。也就是说,在后续对目标对象的选择过程中,数据处理设备将不会选择已选择过的对象。
在一种实现方式中,将上述候选对象集合中的各个候选对象的初始预测触发概率排列成初始预测触发概率序列;将该初始预测触发概率序列确定为目标概率序列。
需要说明的是,数据处理设备采用触发概率预测方式,确定出上述任一候选对象对应当前排列位置的初始预测触发概率之后,可以基于各个候选对象的初始预测触发概率,生成目标概率序列。也就是说,数据处理设备可以采用触发概率预测方式确定的初始预测触发概率为最高优先级,并按照各个候选对象在上述候选对象集合中所处的位置,将各个候选对象对应的初始预测触发概率依次排列,以得到初始预测触发概率序列,从而可以将该初始预测触发概率序列确定为目标概率序列。
S204,从上述候选对象集合中确定目标对象,该目标对象为上述候选对象集合中预测触发概率满足设定条件的候选对象。
其中,上述设定条件可以为,选取预测触发概率取值最大的候选对象。
数据处理设备生成了目标概率序列之后,可将该目标概率序列中的预测触发概率取值最大的候选对象,确定为目标对象。例如:假设目标概率序列中第五个候选对象的预测触发概率取值最大,则数据处理设备可以将该第五个候选对象确定为目标对象。
S205,基于上述当前排列位置将上述目标对象添加至目标对象序列中。
由前述内容可知,每一次所选取的目标对象,都包括了该目标对象对应的当前排列位置。例如:第一次所选取的目标对象为对应于位置1的目标对象,第二次所选取的目标对象为对应于位置3的目标对象,则数据处理设备可以分别将上述两次选取过程所选取的目标对象,分别添加至目标对象序列中对应的排列位置,直至目标对象序列中所有的位置均填充完成。
示例性的,下文以消息推送场景为例,对上述目标对象的选取和排列进行详细说明,具体实施步骤可以参见如下处理流程:
1、获取候选消息集合C(即前述候选对象集合)以及目标消息序列(即前述目标对象序列)长度T。
2、令迭代次数t=1;此时,初始化目标消息序列为空序列,p=[];其中,若t<=T,初始化当前位置预估点击率分数集合为空序列,S=[]。
需要说明的是,当前迭代次数t,也可以理解为前述当前排列位置t。也就是说,数据处理设备在进行第t次迭代时,即在判断候选对象集合中任一候选对象处于位置t上的预测触发概率。
3、遍历候选消息集合中的每个候选消息i(i∈C),若消息i不属于目标消息序列即消息i尚未被选择,则计算消息i放置于位置t上的预估点击率s_i,t=f(i,t);若消息i属于目标消息序列(i∈p),即消息i为已选择消息,则确定消息i放置于位置t上的预估点击率s_i,t=0。
4、将消息i的预估点击率添加到集合S中,即用S+[s_i,t]更新S;其中,‘S+[s_i,t]’表示将消息i放置于当前排列位置t的预估点击概率拼接入集合S的末尾。
需要说明的是,数据处理设备在遍历候选消息集合中的每一个候选消息时,可以确定出各个候选消息的预估点击率,并将各个预估点击率放置于集合S中的对应位置上,从而可以得到完整的集合S,即前述目标概率序列。
5、将目标概率序列中预估点击率最高的消息i(i=argmax(S)),确定为目标消息,并将消息i添加到目标消息序列p中,即用p+[i]更新p;其中,“p+[i]”表示将消息i拼接入目标消息序列的末尾。
6、基于前述位置t,将目标消息添加至目标消息序列中,以确定目标消息序列。
示例性的,假设候选消息集合C中包括5个候选消息,目标消息序列长度T为3;在t=1时,即在数据处理设备进行第1次迭代时,可以遍历上述5个候选消息,若该5个候选消息均为未被选择的消息,则可以依次计算该5个候选消息放置于位置1(其中,位置1可以为目标消息序列中的任意位置)的预估点击率,以得到位置1的预估点击率分数集合S,从而可以将该位置1的预估点击率分数集合中的预估点击率最大值对应的候选消息作为目标消息。例如,若在上述候选消息集合C的5个候选消息中,第三个候选消息的预估点击率最大,则将该第三个候选消息作为目标消息,并更新目标消息序列p(即在p中的位置1上放置上述第三个候选消息)。
可选的,在遍历上述5个候选消息时,若该候选消息中包括已选择消息,则可以将该已选择消息的预估点击率确定为第一概率值。例如:假设在遍历候选消息集合C中的5个候选消息时,第三个候选消息为已选择消息,则可以将该第三个候选消息对应的预估点击率确定为第一概率值(即0),以避免数据处理设备再次对该第三个候选消息进行选择。
需要说明的是,在进行模型训练时,可以向初始化的模型f中,输入候选消息集合C、目标消息序列p、预估点击率序列(即前述目标概率序列),以通过该模型f计算预估点击率序列y与真实点击标签的交叉熵损失函数,并根据梯度下降算法更新生成模型f’。可选的,还可以向模型f中输入各个候选消息的特征,以及针对各个候选消息的点击率等等,本申请对此不作限制,以通过输入更多的信息,从而使得模型训练的结果更加准确。
还需要说明的是,在进行目标消息的选取之前,可以初始化预估点击率序列y为空序列,y=[],并在后续的过程中,将各个候选消息的预估点击率放置于该预估点击率序列中,以在进行模型训练时,可以向模型f输入该预估点击率序列。可以理解的是,在预估点击率序列中放置目标消息的位置,与在上述目标消息序列中放置目标消息的的位置,可以一一对应。例如:若目标消息i放置于目标消息序列中的第三个位置,则目标消息i的预估点击率可以放置于预估点击率序列中的第三个位置。
通过上次方式可以循环迭代T步,以生成目标消息数目为T的有序排列的目标消息序列;并且,在每一次选择当前位置的消息时,以模型f计算出的预估点击率(即上述初始预测触发概率)为最高优先级,从而可以将具有最高预估点击率的目标消息优先选择。同时,通过对“目标消息序列p”进行维护,即将目标消息序列中的已选择消息的预估点击率置为0(即上述第一概率值),可以避免数据处理设备对已选择消息进行重复选择,从而可以保证在所生成的目标序列中,任意两个位置上的消息不相同,进而满足对候选消息集合中的目标消息进行排序的要求。
本申请实施例中,通过获取候选对象集合和目标对象序列,并基于该目标对象序列包括的已选择对象的排列情况,可以确定当前排列位置,以确定上述候选对象集合中每一个候选对象对应于该当前排列位置的预测触发概率,从而将候选对象集合中预测触发概率满足设定条件的候选对象确定为目标对象,进而将该目标对象添加至目标对象序列中对应的上述当前排列位置,以实现对候选对象集合中所选取的各个目标对象进行排序的功能。
图3是本申请实施例提供的一种数据处理方法的流程示意图。该数据处理方法主要针对设置了对象选择规则的情况下,对目标对象的选取和排序。该数据处理方法可以由图1所示的数据处理设备执行,具体可由该数据处理设备的处理器执行。该数据处理方法包括如下步骤:
S301,获取候选对象集合和目标对象序列,该候选对象集合包括一个或者多个候选对象。
S302,基于上述目标对象序列包括的已选择对象的排列位置确定当前排列位置。
需要说明的是,S301~S302的相关内容,可参见前述S201~S202的详细描述,本申请在此不再赘述。
S303,确定上述候选对象集合中每一个候选对象对应上述当前排列位置的预测触发概率;其中,上述候选对象集合中的已选择对象的预测触发概率为第一概率值;在设置了对象选择规则的情况下,上述候选对象集合中不符合对象选择规则的候选对象的预测触发概率为第二概率值。
其中,上述第二概率值可以为0,也可以为一个趋近于0的数值,例如:0.001。该第二概率值与前述第一概率值,可以相同也可以不同,例如:第二概率值和第一概率值均可以为0;或者,第二概率值可以为0,第一概率值可以为一个趋近于0的数值,本申请对此不作限制。
在一种实现方式中,在设置了对象选择规则的情况下,获取目标规则掩码向量;将上述初始预测触发概率序列和上述目标规则掩码向量进行运算,生成目标概率序列;其中,上述目标规则掩码向量和上述初始预测触发概率序列中处于相同位置处的元素所对应的候选对象相同;该目标规则掩码向量是基于上述对象选择规则以及上述目标对象序列中的各个已选择对象的特征信息确定的。
需要说明的是,在设置了对象选择规则的情况下,数据处理设备可以通过获取该对象选择规则对应的目标规则掩码向量,将候选对象集合中不符合对象选择规则的候选对象进行过滤,以使得筛选出的候选对象能够以满足对象选择规则作为最高优先级,以预测触发概率为次优先级,从而对候选对象集合中的目标对象进行排序。
数据处理设备将上述初始预测触发概率序列与目标规则掩码向量进行运算后,可以得到取值为0或者趋近于0(即上述第二概率值)的预测触发概率。也就是说,上述不符合对象选择规则的候选对象对应的目标规则掩码向量可以为0或者趋近于0的数值,以使得数据处理设备在后续对目标对象的选择过程中,将不会选择上述不符合对象选择规则的对象。
需要说明的是,数据处理设备可以在对候选对象集合中的每一个候选对象的初始预测触发概率进行计算之后,再通过目标规则掩码向量对上述初始预测触发概率序列进行过滤,以得到目标概率序列。可选的,数据处理设备也可以通过目标规则掩码向量对不符合对象选择规则的候选对象进行过滤之后,在对候选对象集合中每一个符合规则的候选对象进行预测触发概率计算,本申请对此不作限制。
在一种实现方式中,上述对象选择规则包括:相同类型的对象的数目小于设定数目;获取待更新规则掩码向量和对象特征集合,该对象特征集合包括上述目标对象序列中的各个已选择对象的对象类型;确定对象特征集合中的各个对象类型的数目,根据该各个对象类型的数目从上述各个对象类型中确定第一对象类型和第二对象类型;其中,该第一对象类型为上述数目大于或等于上述设定数目的对象类型,该第二对象类型为上述数目小于上述设定数目的对象类型;若存在第一对象类型,则将上述待更新规则掩码向量中的第一元素的数值调整为第一数值,该第一元素是类型为第一对象类型的候选对象所对应的元素;若存在第二对象类型,则将上述待更新规则掩码向量中的第二元素的数值调整为第二数值,该第二元素是类型为第二对象类型的候选对象所对应的元素;将调整后的待更新规则掩码向量确定为目标规则掩码向量。
需要说明的是,在设置了对象选择规则的情况下,数据处理设备所获取的目标规则掩码向量,可以为上一次选择后所得到的规则掩码向量,并通过该目标规则掩码向量,以对本次选择过程中候选对象集合中的各个候选对象进行过滤。在对上述目标规则掩码向量进行更新时,可以通过获取再上一次选择后所得到的规则掩码向量(即上述待更新规则掩码向量)和对象特征集合,以根据再上一次选择后对象特征集合中各个对象类型的数目,对该待更新规则掩码向量进行更新,从而得到该目标规则掩码向量。
由前述内容可知,对象特征集合中可以包括,目标对象序列中各个已选择对象的对象类型。例如:假设目标对象序列中包括3个已选择对象,且该3个已选择对象的类型分别为类型1、类型2和类型3,则上述对象特征集合中可以包括上述类型1、类型2和类型3。
在上述对象选择规则为相同类型的对象的数目小于设定数目的情况下,数据处理设备可以根据上述对象特征集合中各个对象类型的数目,确定对象类型的数目大于或等于上述设定数目的对象类型为第一对象类型,即将不符合对象选择规则的对象类型确定为该第一对象类型;并确定对象类型的数目小于上述设定数目的对象类型为第二对象类型,即将符合对象选择规则的对象类型确定为该第二对象类型。
示例性的,假设对象选择规则为相同类型的对象的数目小于3,若对象特征集合中类型1的数目为1且类型2的数目为3,则数据处理设备可以将上述类型1确定为第二对象类型,并将上述类型2确定为第一对象类型。可选的,在上述对象选择规则多约束规则时,即该对象选择规则中包括两个及以上的规则(如对象选择规则1和对象选择规则2)时,上述第一对象类型也可以为多个(如第一对象类型1和第一对象类型2)。例如,假设对象选择规则包括两个规则,其中,对象选择规则1为类型1的对象的数目小于2,对象选择规则2为类型2的对象的数目小于3;若对象特征集合中类型1的数目为2且类型2的数目为3,则数据处理设备可以将上述类型1确定为第一对象类型1,并将上述类型2确定为第一对象类型2,即类型1和类型2均为上述第一对象类型。
可选的,在实际的推荐应用场景中,上述目标对象可以为消息、商品、视频、图片、账号等等,本申请对此不作限制。数据处理设备可以根据不同的目标对象设置不同的对象选择规则,以对上述对象特征集合进行维护和对上述目标规则掩码向量进行更新。例如:在目标对象为商品时,数据处理设备可以设置对象选择规则为“属于母婴类商品的数量不超过5个”;在目标对象为音视频时,数据处理设备可以设置对象选择规则为“音频消息的数量不超过3个,视频消息的数量不超过2个”。
数据处理设备根据上述各个对象类型的数目,在各个对象类型中确定了第一对象类型和第二对象类型之后,可以将上述待更新规则掩码向量中属于第一对象类型的候选对象所对应的第一元素的数值,调整为第一数值;并将上述待更新规则掩码向量中属于第二对象类型的候选对象所对应的第二元素的数值,调整为第二数值。
其中,第一数值可以为使第一元素的数值相对于第二元素的数值尽可能小的数值,例如:该第一数值可以为0,或者趋近于0的数值;第二数值可以为使第二元素的数值相对于第一元素的数值尽可能大的数值,例如:该第二数值可以为1,或者100。可选的,第一数值也可以为2,第二数值也可为200,本申请对此不作限制。可以理解的是,在对象特征集合中,属于第一对象类型的候选对象为不符合规则的候选对象,因此,数据处理设备可以将该第一对象类型对应的第一元素的数值调整为尽可能小的数值,以避免对该不符合规则的候选对象进行选择。在对象特征集合中,属于第二对象类型的候选对象为符合规则的候选对象,因此,数据处理设备可以将该第二对象类型对应的第二元素的数值调整为尽可能大的数值,以避免错过对该符合规则的候选对象进行选择。
需要说明的是,上述待更新规则掩码向量中属于第一对象类型的候选对象所对应的第一元素的数值,可以为1也可以为0;上述待更新规则掩码向量中属于第二对象类型的候选对象所对应的第二元素的数值,可以为1也可以为0。也就是说,每一次根据对象选择规则,对候选对象的对象类型进行判断的过程,均为一次独立的判断过程,不会根据该候选对象对应的历史元素的数值改变前述判断结果。
示例性的,假设候选对象集合中包括5个候选对象,该5个候选对象对应的待更新规则掩码向量为:0,1,1,0,1;假设第一个候选对象和第五个候选对象为上述第一对象类型,第二个候选对象、第三个候选对象和第四个候选对象为上述第二对象类型,则可以将第一个候选对象对应的第一元素(即第一个0),以及第五个候选对象对应的第一元素(即第三个1),调整为第一数值(即0);并将第二个候选对象(即第一个1)、第三个候选对象(即第二个1)和第四个候选对象(即第二个0)对应的第二元素,均调整为第二数值(即1),从而得到目标规则掩码向量:0,1,1,1,0。
在一种实现方式中,上述对象选择规则包括:在长度为N的窗口里,相同类型的对象的数目小于上述设定数目,N小于或等于上述目标对象序列对应的参考数目T,N和T为正整数;上述对象特征集合包括的各个已选择对象的对象类型是根据该各个已选择对象在上述目标对象序列中的排列位置进行排列的;在将处于目标对象前一位确定的已选择对象的对象类型加入到上述对象特征集合之后,若该对象特征集合包括的元素的数目大于N,则将上述对象特征集合中排列在第一位的元素从该对象特征集合中剔除。
其中,上述长度为N的窗口,可以理解为在目标对象序列中选取一定范围的目标对象。可以理解的是,上述窗口的长度N可以小于或等于目标对象序列对应的参考数目T,即窗口的长度可以小于或等于目标对象序列的长度。
可选的,在实际的推荐应用场景中,对于上述长度为N的窗口的设置,可以理解为,数据处理设备的屏幕所能显示的目标对象数量为N。如图4A所示,以订阅号消息推送为例,假设数据处理设备可以显示3个目标订阅号的消息,且目标消息序列的长度为10,则可以设置上述窗口的长度为3。需要说明的是,如图4B所示,用户在数据处理设备的屏幕上查看订阅号消息推送时,可以通过上下滑动的方式,使得在屏幕中显示的订阅号消息保持为3个。因此,若需要使得数据处理设备上推送的目标消息,可以在滑动过程中也满足对象选择规则,则将窗口的长度设置为3,并使得该3个目标消息满足对象选择规则即可。
可以理解的是,如图5A所示,以电商购物场景的商品推荐为例,假设数据处理设备可以显示6个目标商品,且目标商品序列的长度为4,则可以将上述窗口的长度设置为小于或等于4(如图5A中设置窗口的长度以4为例),以使得窗口的长度可以小于或等于目标商品序列的长度。需要说明的是,在图5A中,数据处理设备在屏幕上对目标商品进行排列时,可以将目标商品序列中的商品按照先从左到右再从上到下的顺序依次排列。也就是说,图5A所对应的目标商品序列可以为:商品A、商品B、商品C、商品D。可选的,如图5B所示,针对排列顺序为:商品A、商品B、商品C、商品D的目标商品序列,数据处理设备在屏幕上对该序列进行排列时,也可以按照先从上到下再从左到右的顺序进行排列,本申请对此不作限制。
需要说明的是,在长度为N的窗口里,对上述目标对象序列中各个已选择对象的对象类型进行确定时,可以根据当前窗口里的N个对象类型以确定各个对象类型中的第一对象类型或第二对象类型。例如:假设N=5,即在该长度为5的窗口中可以存在5个对象类型;若上述对象选择规则为类型2小于3,则在该5个对象类型中确定各个对象类型为第一对象类型或第二对象类型。
由前述内容可知,上述对象特征集合包括的各个已选择对象的对象类型,是根据该各个已选择对象在上述目标对象序列中的排列位置进行排列的。也就是说,假设存在3个已选择对象,第一个已选择对象为类型2,第二个已选择对象为类型1,第三个已选择对象为类型1,则在对象特征集合中的排列顺序为:类型2、类型1、类型1。
需要说明的是,在通过对象特征集合确定各个对象类型的数目时,该对象特征集合可以为上一次选择后,进行维护过的对象特征集合。其中,在上一次选择后,可以将上一个已选择对象(即目标对象前一位确定的已选择对象)的对象类型,加入到上述对象特征集合中的末尾位置。例如:若上一个已选择对象为类型2,则可以在上一次选择后,将该上一个已选择对象所对应的类型2加入上述对象特征集合中的末尾位置。
可以理解的是,若在上述对象特征集合中加入了该上一个已选择对象的对象类型后,该对象特征集合中所包括的元素的数目大于N,即大于可前述窗口的长度,则可以将该对象特征集合中排列在第一位的元素剔除,以得到更新后的对象特征集合,从而可以通过该更新后的对象特征集合,对上述本次选择过程中各个对象类型的数目进行确定。
示例性的,假设N=5,且上述对象特征集合中包括:类型2、类型1、类型1、类型1、类型3;若加入上一个已选择对象的对象类型(如类型1)后,该对象特征集合所包括的元素的数目为6(大于N),则可以将对象特征集合中位于队首的“类型2”剔除,以得到更新后的对象特征集合:类型1、类型1、类型1、类型3、类型1,从而可以通过该更新后的对象特征集合,对本次选择过程中各个对象类型的数目进行确定。可以理解的是,假设对象选择规则为类型1的数目小于4;在上述示例中,在更新前的对象特征集合中,类型1的数目为3个,此时可以将类型1确定为第二对象类型;在更新后的对象特征集合中,类型1的数目为4个,此时类型1可以确定为第一对象类型。
在一种实现方式中,若上述目标对象序列包括的已选择对象的数目小于该目标对象序列对应的参考数目T,且上述目标规则掩码向量中的各个元素的取值均为第一数值,则可以将该目标规则掩码向量中的各个元素的取值均调整为第二数值。
需要说明的是,若目标规则掩码向量中的各个元素的取值均为第一数值,也就是说,在候选对象集合中的候选对象均不满足上述对象选择规则。而且,上述目标对象序列还未达到参考数目T,即还未将该目标对象序列填充完成。此时,若根据初始预测触发概率序列与上述目标规则掩码向量进行运算后,将无法获得可以选择的目标对象;则数据处理设备可以将上述目标规则掩码向量中的各个元素的取值均调整为第二数值,即不再参考上述对象选择规则。
通过在无法满足对象选择规则的情况下,取消该对象选择规则的最高优先级,并以预测点击概率为最高优先级,可以继续对候选对象集合中的候选对象进行选择,从而完成对目标对象序列的填充。
S304,从上述候选对象集合中确定目标对象,该目标对象为上述候选对象集合中预测触发概率满足设定条件的候选对象。
S305,基于上述当前排列位置将上述目标对象添加至目标对象序列中。
需要说明的是,S304~S305的相关内容,可参见前述S204~S205的详细描述,本申请在此不再赘述。
示例性的,下文以消息推送场景为例,对在设置了对象选择规则的情况下,对上述目标对象的选取和排列进行详细说明,具体实施步骤可以参见如下处理流程:
1、获取候选消息集合C(即前述候选对象集合)、目标消息序列(即前述目标对象序列)长度T,以及下游预设的产品规则rule1(即前述对象选择规则;其中,该下游预设的产品规则rule1的设计是:在长度为N的窗口里(连续N个消息),相同类目的消息数量不超过n)。
2、令迭代次数t=1;此时,初始化目标消息序列为空序列,p=[];初始化历史选择消息信息队列(即前述对象特征集合)为空序列,Q=[];初始化规则掩码(即前述目标规则掩码向量)为|C|维的全一向量,M=[1,…,1];其中,若t<=T,初始化当前位置预估点击率分数集合为空序列,S=[]。
其中,规则掩码的初始值为全一向量,以不错过候选消息集合中对每一个候选消息的判断;在每一次选择了候选消息之后,可以对该规则掩码进行更新,以根据当前已选择消息的特征,过滤不符合规则的候选消息。
需要说明的是,在目标消息序列为空序列时,历史选择消息信息队列也为空;换言之,在还未选取目标消息时,历史选择消息信息队列中也不会包括目标消息的相关类型信息。
3、遍历候选消息集合中的每个候选消息i(i∈C),若消息i不属于目标消息序列即消息i尚未被选择,则计算消息i放置于位置t上的预估点击率s_i,t=f(i,t);若消息i属于目标消息序列(i∈p),即消息i为已选择消息,则确定消息i放置于位置t上的预估点击率s_i,t=0。
4、将消息i的预估点击率添加到集合S中,即用S+[s_i,t]更新S;其中,“S+[s_i,t]”表示将消息i放置于当前排列位置t的预估点击概率拼接入集合S的末尾。
5、通过规则掩码M,过滤不符合产品规则rule1的消息,得到更新后的当前位置预估点击率分数集合S’=S*M。
需要说明的是,步骤3和步骤4的执行顺序与步骤5的执行顺序可以不分前后。也就是说,可以先执行步骤3和步骤4,即可以先计算放置于当前排列位置t的预估点击概率;也可以先执行步骤4,即可以先过滤不符合规则的目标消息,本申请对此不作限制。
6、将目标概率序列中预估点击率最高的消息i(i=argmax(S)),确定为目标消息,并将消息i添加到目标消息序列p中,即用p+[i]更新p;其中,“p+[i]”表示将消息i拼接入目标消息序列的末尾。
7、基于前述位置t,将目标消息添加至目标消息序列中,以确定目标消息序列。
8、更新历史选择信息维护队列Q,即用Q+[消息i的类目]更新Q;其中,“Q+[消息i的类目]”表示将消息i的类目拼接入选择信息维护队列的末尾。
需要说明的是,若历史选择信息维护队列Q长度大于N,则可以弹出队首元素。其中,相关内容可参见前述方法实施例中的详细描述,本申请在此不再赘述。
9、更新规则掩码M;遍历候选消息集合中的每个候选消息i(i∈C),若M[i]=1,且消息i不符合产品规则rule1(即消息i的类目∈队列Q,且Q.count(消息i的类目)>=n),则将M[i]更新为0;若M[i]=0,且消息i符合产品规则rule1(即Q.count(消息i的类目)<n),则将M[i]更新为1。其中,“Q.count(消息i的类目)”可以表示历史选择信息维护队列Q中消息i所属类目的出现次数。
需要说明的是,若无法满足产品规则rule1,且还未达到目标消息序列的长度,则可以取消规则。例如:在M为全零向量,且t≠T时;则将M更新为全一向量。
示例性的,假设候选消息集合C中包括5个候选消息,目标消息序列长度T为4;在t=3时,即在数据处理设备进行第3次迭代时,可以遍历上述5个候选消息,若该5个候选消息存在2个已选择的消息(如第二个候选消息和第三个候选消息),且该5个候选消息中存在1个不符合产品规则的候选消息(如第四个候选消息),则数据处理设备在依次计算上述5个候选消息放置于位置3的预估点击率后,可以将上述已选择的消息和不符合产品规则的候选消息的预估点击率确定为0,以得到位置3最终的预估点击率分数集合S’,从而可以将该位置3的预估点击率分数集合中的预估点击率最大值对应的候选消息作为目标消息。例如:在将上述第二个候选消息、第三个候选消息和第四个候选消息的预估点击率确定为0后,若确定第一个候选消息的预估点击率为最大值,则将该第一个候选消息作为目标消息,并更新目标消息序列p以及目标消息序列预估点击率序列y。
需要说明的是,在上述对目标消息的选择和排序的过程中,所创建和维护的历史选择消息信息队列Q和规则掩码M,可以应用于生成模型的单次推断过程,以用于约束生成的单个排序消息列表满足下游的预设规则。在实际应用中,推荐应用场景可能需要调用多次生成模型、进行多次推断,以生成连续的长消息序列。因此,更一般的设计是:将历史选择消息信息队列Q和规则掩码M和建立为系统全局的对象,并在不同的模型推断过程中进行统一调用和维护。
通过上述方式可以通过循环迭代T步,以生成目标消息数目为T的有序排列的目标消息序列;并且,在每一次选择当前位置的消息时,以满足预设产品规则(即上述对象选择规则)为最高优先级,模型f计算出的预估点击率(即上述初始预测触发概率)为次优先级,从而可以在满足预设产品规则的前提下将具有最高预估点击率的目标消息优先选择。同时,在前述图2对应实施例的基础上,本申请实施例增加了对“历史选择消息信息队列Q(即上述对象特征集合)”的维护,以在完成每一次迭代之后,可以对该历史选择消息信息队列进行判断,以确定该历史选择消息信息队列是否仍然满足预设产品规则的约束。本申请实施例还通过在完成每一次迭代之后,对规则掩码M进行更新,以将不满足预设产品规则的消息的预估点击率置为0,从而避免对不满足预设产品规则的消息进行选择。
本申请实施例中,通过设置对象选择规则,可以在对目标对象进行选取的过程中,以使得筛选出的候选对象能够以满足对象选择规则作为最高优先级,以预测触发概率为次优先级,从而对候选对象集合中的目标对象进行排序。
进一步的,请参见图6,图6是本申请实施例提供的一种数据处理装置的结构示意图。如图6所示,数据处理装置600可以应用于上述图2和图3对应实施例中的数据处理设备。具体的,数据处理装置600可以是运行于数据处理设备中的一个计算机程序(包括程序代码),例如该数据处理装置600为一个应用软件;该数据处理装置600可以用于执行图2和图3对应实施例提供的方法中的相应步骤。
数据处理装置600可以包括:获取单元601、确定单元602和处理单元603。
获取单元601,用于获取候选对象集合和目标对象序列,该候选对象集合包括一个或者多个候选对象;
确定单元602,用于基于上述目标对象序列包括的已选择对象的排列情况确定当前排列位置;
上述确定单元602,还用于确定候选对象集合中的每一个候选对象对应上述当前排列位置的预测触发概率;其中,上述候选对象集合中的已选择对象的预测触发概率为第一概率值;在设置了对象选择规则的情况下,上述候选对象集合中不符合该对象选择规则的候选对象的预测触发概率为第二概率值;
上述确定单元602,还用于从上述候选对象集合中确定目标对象,该目标对象为候选对象集合中预测触发概率满足设定条件的候选对象;
处理单元603,用于基于当前排列位置将上述目标对象添加至目标对象序列中。
在一种可能的实施方式中,上述确定单元602,还用于针对上述候选对象集合中的任一候选对象,若该任一候选对象不为上述已选择对象,则采用触发概率预测方式确定上述任一候选对象对应当前排列位置的初始预测触发概率;若该任一候选对象为上述已选择对象,则确定上述任一候选对象对应当前排列位置的初始预测触发概率为上述第一概率值;上述处理单元603,还用于基于上述候选对象集合中的各个候选对象的初始预测触发概率生成目标概率序列;其中,该目标概率序列包括上述候选对象集合中的每一个候选对象对应当前排列位置的预测触发概率。
在一种可能的实现方式中,上述处理单元603,还用于将上述候选对象集合中的各个候选对象的初始预测触发概率排列成初始预测触发概率序列;上述确定单元602,还用于在未设置对象选择规则的情况下,将该初始预测触发概率序列确定为目标概率序列。
在一种可能的实现方式中,上述获取单元601,还用于在设置了对象选择规则的情况下,获取目标规则掩码向量;上述处理单元603,还用于将上述初始预测触发概率序列和上述目标规则掩码向量进行运算,生成目标概率序列;其中,上述目标规则掩码向量和上述初始预测触发概率序列中处于相同位置处的元素所对应的候选对象相同;该目标规则掩码向量是基于上述对象选择规则以及上述目标对象序列中的各个已选择对象的特征信息确定的。
在一种可能的实现方式中,上述对象选择规则包括:相同类型的对象的数目小于设定数目;上述获取单元601,还用于获取待更新规则掩码向量和对象特征集合,该对象特征集合包括上述目标对象序列中的各个已选择对象的对象类型;上述确定单元602,还用于确定对象特征集合中的各个对象类型的数目,并根据该各个对象类型的数目从上述各个对象类型中确定第一对象类型和第二对象类型;其中,该第一对象类型为上述数目大于或等于上述设定数目的对象类型,该第二对象类型为上述数目小于上述设定数目的对象类型;上述处理单元603,还用于若存在第一对象类型,则将上述待更新规则掩码向量中的第一元素的数值调整为第一数值,该第一元素是类型为第一对象类型的候选对象所对应的元素;上述处理单元603,还用于若存在第二对象类型,则将上述待更新规则掩码向量中的第二元素的数值调整为第二数值,该第二元素是类型为第二对象类型的候选对象所对应的元素;上述确定单元602,还用于将调整后的待更新规则掩码向量确定为目标规则掩码向量。
在一种可能的实现方式中,上述对象选择规则包括:在长度为N的窗口里,相同类型的对象的数目小于上述设定数目,N小于或等于上述目标对象序列对应的参考数目T,N和T为正整数;上述对象特征集合包括的各个已选择对象的对象类型是根据该各个已选择对象在上述目标对象序列中的排列位置进行排列的;上述处理单元603,还用于在将处于目标对象前一位确定的已选择对象的对象类型加入到上述对象特征集合之后,若该对象特征集合包括的元素的数目大于N,则将上述对象特征集合中排列在第一位的元素从该对象特征集合中剔除。
在一种可能的实现方式中,上述处理单元603,还用于若上述目标对象序列包括的已选择对象的数目小于该目标对象序列对应的参考数目T,且上述目标规则掩码向量中的各个元素的取值均为第一数值,则可以将该目标规则掩码向量中的各个元素的取值均调整为第二数值。
根据本申请的实施例,图6所示的数据处理装置中的各个单元可以分别或全部合并为一个或若干个另外的单元来构成,或者其中的某个(些)单元还可以再拆分为功能上更小的多个单元来构成,这可以实现同样的操作,而不影响本申请的实施例的技术效果的实现。上述单元是基于逻辑功能划分的,在实际应用中,一个单元的功能也可以由多个单元来实现,或者多个单元的功能由一个单元实现。在本申请的其它实施例中,基于数据处理装置也可以包括其它单元,在实际应用中,这些功能也可以由其它单元协助实现,并且可以由多个单元协作实现。
根据本申请的实施例,可以通过在包括中央处理单元(CPU)、随机存取存储介质(RAM)、只读存储介质(ROM)等处理元件和存储元件的例如计算机的通用计算设备上运行能够执行如图2和图3所示的相应方法所涉及的各步骤的计算机程序(包括程序代码),来构造如图6中所示的数据处理装置,以及来实现本申请实施例数据处理方法。上述计算机程序可以记载于例如计算机存储介质上,并通过计算机存储介质装载于上述计算设备中,并在其中运行。
进一步地,请参见图7,图7是本申请实施例提供的一种计算机设备的结构示意图。该计算机设备700还可以用于实现上述方法实施例中服务器的功能。如图7所示,该计算机设备700至少可包括:处理器701、通信接口702以及计算机存储介质703。其中,处理器701、通信接口702以及计算机存储介质703可通过总线或其他方式连接。
计算机存储介质703可以存储在计算机设备700的存储器704中,该计算机存储介质703用于存储计算机程序,该计算机程序包括程序指令,上述处理器701用于执行计算机存储介质703存储的程序指令。处理器701(或称CPU(Central Processing Unit,中央处理器))是计算机设备700的计算核心以及控制核心,其适于实现一条或多条指令,具体适于加载并执行:
获取候选对象集合和目标对象序列,该候选对象集合包括一个或者多个候选对象;
基于上述目标对象序列包括的已选择对象的排列情况确定当前排列位置;
确定候选对象集合中的每一个候选对象对应上述当前排列位置的预测触发概率;其中,上述候选对象集合中的已选择对象的预测触发概率为第一概率值;在设置了对象选择规则的情况下,上述候选对象集合中不符合该对象选择规则的候选对象的预测触发概率为第二概率值;
从上述候选对象集合中确定目标对象,该目标对象为候选对象集合中预测触发概率满足设定条件的候选对象;
基于当前排列位置将上述目标对象添加至目标对象序列中。
在一种可能的实施方式中,上述处理器701,还用于针对上述候选对象集合中的任一候选对象,若该任一候选对象不为上述已选择对象,则采用触发概率预测方式确定上述任一候选对象对应当前排列位置的初始预测触发概率;若该任一候选对象为上述已选择对象,则确定上述任一候选对象对应当前排列位置的初始预测触发概率为上述第一概率值;上述处理器701,还用于基于上述候选对象集合中的各个候选对象的初始预测触发概率生成目标概率序列;其中,该目标概率序列包括上述候选对象集合中的每一个候选对象对应当前排列位置的预测触发概率。
在一种可能的实现方式中,上述处理器701,还用于将上述候选对象集合中的各个候选对象的初始预测触发概率排列成初始预测触发概率序列;上述处理器701,还用于在未设置对象选择规则的情况下,将该初始预测触发概率序列确定为目标概率序列。
在一种可能的实现方式中,上述处理器701,还用于在设置了对象选择规则的情况下,获取目标规则掩码向量;上述处理器701,还用于将上述初始预测触发概率序列和上述目标规则掩码向量进行运算,生成目标概率序列;其中,上述目标规则掩码向量和上述初始预测触发概率序列中处于相同位置处的元素所对应的候选对象相同;该目标规则掩码向量是基于上述对象选择规则以及上述目标对象序列中的各个已选择对象的特征信息确定的。
在一种可能的实现方式中,上述对象选择规则包括:相同类型的对象的数目小于设定数目;上述处理器701,还用于获取待更新规则掩码向量和对象特征集合,该对象特征集合包括上述目标对象序列中的各个已选择对象的对象类型;上述处理器701,还用于确定对象特征集合中的各个对象类型的数目,并根据该各个对象类型的数目从上述各个对象类型中确定第一对象类型和第二对象类型;其中,该第一对象类型为上述数目大于或等于上述设定数目的对象类型,该第二对象类型为上述数目小于上述设定数目的对象类型;上述处理器701,还用于若存在第一对象类型,则将上述待更新规则掩码向量中的第一元素的数值调整为第一数值,该第一元素是类型为第一对象类型的候选对象所对应的元素;上述处理器701,还用于若存在第二对象类型,则将上述待更新规则掩码向量中的第二元素的数值调整为第二数值,该第二元素是类型为第二对象类型的候选对象所对应的元素;上述处理器701,还用于将调整后的待更新规则掩码向量确定为目标规则掩码向量。
在一种可能的实现方式中,上述对象选择规则包括:在长度为N的窗口里,相同类型的对象的数目小于上述设定数目,N小于或等于上述目标对象序列对应的参考数目T,N和T为正整数;上述对象特征集合包括的各个已选择对象的对象类型是根据该各个已选择对象在上述目标对象序列中的排列位置进行排列的;上述处理器701,还用于在将处于目标对象前一位确定的已选择对象的对象类型加入到上述对象特征集合之后,若该对象特征集合包括的元素的数目大于N,则将上述对象特征集合中排列在第一位的元素从该对象特征集合中剔除。
在一种可能的实现方式中,上述处理器701,还用于若上述目标对象序列包括的已选择对象的数目小于该目标对象序列对应的参考数目T,且上述目标规则掩码向量中的各个元素的取值均为第一数值,则可以将该目标规则掩码向量中的各个元素的取值均调整为第二数值。
应当理解,本申请实施例中所描述的计算机设备70可执行前文图2和图3所对应实施例中对数据处理方法的描述,也可执行前文图6实施例中对数据处理装置600在此不再赘述。另外,对采用相同方法的有益效果描述,也不再进行赘述。
此外,这里需要指出的是:本申请实施例还提供了一种计算机存储介质,且计算机存储介质中存储有前文提及的数据处理装置600所执行的计算机程序,且计算机程序包括程序指令,当处理器执行程序指令时,能够执行前文图2和图3所对应实施例中对数据处理方法的描述,因此,这里将不再进行赘述。另外,对采用相同方法的有益效果描述,也不再进行赘述。对于本申请所涉及的计算机存储介质实施例中未披露的技术细节,请参照本申请方法实施例的描述。作为示例,程序指令可以被部署在一个计算机设备上执行,或者在位于一个地点的多个计算机设备上执行,又或者,分布在多个地点且通过通信网络互联的多个计算机设备上执行,分布在多个地点且通过通信网络互联的多个计算机设备可以组合为区块链网络。
根据本申请的一个方面,提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备可以执行前文图2和图3所对应实施例中的方法,因此,这里将不再进行赘述。
本领域普通技术人员可以意识到,结合本申请中所公开的实施例描述的各示例的单元及步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用,使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行计算机程序指令时,全部或部分地产生按照本发明实施例所述的流程或功能。计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程设备。计算机指令可以存储在计算机存储介质中,或者通过计算机存储介质进行传输。计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如,同轴电缆、光纤、数字用户线(DSL))或无线(例如,红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。计算机存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。可用介质可以是磁性介质(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或者半导体介质(例如,固态硬盘(Solid State Disk,SSD))等。
以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以所述权利要求的保护范围为准。
Claims (11)
1.一种数据处理方法,其特征在于,所述方法包括:
获取候选对象集合和目标对象序列,所述候选对象集合包括一个或者多个候选对象;
基于所述目标对象序列包括的已选择对象的排列情况确定当前排列位置;
确定所述候选对象集合中的每一个候选对象对应所述当前排列位置的预测触发概率;其中,所述候选对象集合中的所述已选择对象的所述预测触发概率为第一概率值;在设置了对象选择规则的情况下,所述候选对象集合中不符合所述对象选择规则的候选对象的所述预测触发概率为第二概率值;
从所述候选对象集合中确定目标对象,所述目标对象为所述候选对象集合中所述预测触发概率满足设定条件的候选对象;
基于所述当前排列位置将所述目标对象添加至所述目标对象序列中。
2.根据权利要求1所述的方法,其特征在于,所述确定所述候选对象集合中的每一个候选对象对应所述当前排列位置的预测触发概率,包括:
针对所述候选对象集合中的任一候选对象,若所述任一候选对象不为所述已选择对象,则采用触发概率预测方式确定所述任一候选对象对应所述当前排列位置的初始预测触发概率;
若所述任一候选对象为所述已选择对象,则确定所述任一候选对象对应所述当前排列位置的初始预测触发概率为所述第一概率值;
基于所述候选对象集合中的各个候选对象的所述初始预测触发概率生成目标概率序列;其中,所述目标概率序列包括所述候选对象集合中的每一个候选对象对应所述当前排列位置的预测触发概率。
3.根据权利要求2所述的方法,其特征在于,所述基于所述候选对象集合中的各个候选对象的所述初始预测触发概率生成目标概率序列,包括:
将所述候选对象集合中的各个候选对象的所述初始预测触发概率排列成初始预测触发概率序列;
在未设置所述对象选择规则的情况下,将所述初始预测触发概率序列确定为所述目标概率序列。
4.根据权利要求3所述的方法,其特征在于,所述方法还包括:
在设置了所述对象选择规则的情况下,获取目标规则掩码向量;
将所述初始预测触发概率序列和所述目标规则掩码向量进行运算,生成所述目标概率序列;
其中,所述目标规则掩码向量和所述初始预测触发概率序列中处于相同位置处的元素所对应的候选对象相同;所述目标规则掩码向量是基于所述对象选择规则以及所述目标对象序列中的各个已选择对象的特征信息确定的。
5.根据权利要求4所述的方法,其特征在于,所述对象选择规则包括:相同类型的对象的数目小于设定数目;所述方法还包括:
获取待更新规则掩码向量和对象特征集合,所述对象特征集合包括所述目标对象序列中的各个已选择对象的对象类型;
确定所述对象特征集合中的各个对象类型的数目,根据所述各个对象类型的数目从所述各个对象类型中确定第一对象类型和第二对象类型;其中,所述第一对象类型为所述数目大于或等于所述设定数目的对象类型,所述第二对象类型为所述数目小于所述设定数目的对象类型;
若存在所述第一对象类型,则将所述待更新规则掩码向量中的第一元素的数值调整为第一数值,所述第一元素是类型为所述第一对象类型的候选对象所对应的元素;
若存在所述第二对象类型,则将所述待更新规则掩码向量中的第二元素的数值调整为第二数值,所述第二元素是类型为所述第二对象类型的候选对象所对应的元素;
将调整后的所述待更新规则掩码向量确定为所述目标规则掩码向量。
6.根据权利要求5所述的方法,其特征在于,所述对象选择规则包括:在长度为N的窗口里,相同类型的对象的数目小于所述设定数目,N小于或等于所述目标对象序列对应的参考数目T,N和T为正整数;所述对象特征集合包括的所述各个已选择对象的对象类型是根据所述各个已选择对象在所述目标对象序列中的排列位置进行排列的;所述方法还包括:
在将处于所述目标对象前一位确定的已选择对象的对象类型加入到所述对象特征集合之后,若所述对象特征集合包括的元素的数目大于N,则将所述对象特征集合中排列在第一位的元素从所述对象特征集合中剔除。
7.根据权利要求4-6中任一项所述的方法,其特征在于,所述方法还包括:
若所述目标对象序列包括的已选择对象的数目小于所述目标对象序列对应的参考数目T,且所述目标规则掩码向量中的各个元素的取值均为第一数值,则将所述目标规则掩码向量中的各个元素的取值均调整为第二数值。
8.一种数据处理装置,其特征在于,包括:
获取模块,用于获取候选对象集合和目标对象序列,所述候选对象集合包括一个或者多个候选对象;
确定模块,用于基于所述目标对象序列包括的已选择对象的排列情况确定当前排列位置;
所述确定模块,还用于确定所述候选对象集合中的每一个候选对象对应所述当前排列位置的预测触发概率;其中,所述候选对象集合中的所述已选择对象的所述预测触发概率为第一概率值;在设置了对象选择规则的情况下,所述候选对象集合中不符合所述对象选择规则的候选对象的所述预测触发概率为第二概率值;
所述确定模块,还用于从所述候选对象集合中确定目标对象,所述目标对象为所述候选对象集合中所述预测触发概率满足设定条件的候选对象;
处理模块,用于基于所述当前排列位置将所述目标对象添加至所述目标对象序列中。
9.一种计算机设备,其特征在于,包括存储器和处理器,所述存储器存储有计算机程序,所述计算机程序被所述处理器执行时,使得所述处理器执行权利要求1-7中任一项所述方法的步骤。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机程序,所述计算机程序包括程序指令,所述程序指令被处理器执行时,使得具有所述处理器的计算机设备执行权利要求1-7中任一项所述方法的步骤。
11.一种计算机程序产品,包括计算机程序/指令,其特征在于,所述计算机程序/指令被处理器执行时,实现权利要求1-7中任一项所述方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111492236.8A CN116258539A (zh) | 2021-12-08 | 2021-12-08 | 数据处理方法、装置、设备、存储介质及计算机程序产品 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111492236.8A CN116258539A (zh) | 2021-12-08 | 2021-12-08 | 数据处理方法、装置、设备、存储介质及计算机程序产品 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116258539A true CN116258539A (zh) | 2023-06-13 |
Family
ID=86681157
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111492236.8A Pending CN116258539A (zh) | 2021-12-08 | 2021-12-08 | 数据处理方法、装置、设备、存储介质及计算机程序产品 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116258539A (zh) |
-
2021
- 2021-12-08 CN CN202111492236.8A patent/CN116258539A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10599711B1 (en) | Region-specific image download probability modeling | |
CN106953862A (zh) | 网络安全态势的感知方法和装置及感知模型训练方法和装置 | |
CN111090756B (zh) | 基于人工智能的多目标推荐模型的训练方法及装置 | |
KR102203252B1 (ko) | 생성적 적대 신경망에 기반한 협업 필터링을 위한 방법 및 시스템 | |
US20220245424A1 (en) | Microgenre-based hyper-personalization with multi-modal machine learning | |
CN116601626A (zh) | 个人知识图谱构建方法、装置及相关设备 | |
WO2023213157A1 (zh) | 数据处理方法、装置、程序产品、计算机设备和介质 | |
CN114764471A (zh) | 一种推荐方法、装置及存储介质 | |
US20220113951A1 (en) | Linking Stages in Process Flows with Machine Learning | |
CN117056595A (zh) | 一种交互式的项目推荐方法、装置及计算机可读存储介质 | |
CN111814044A (zh) | 一种推荐方法、装置、终端设备及存储介质 | |
CN116258539A (zh) | 数据处理方法、装置、设备、存储介质及计算机程序产品 | |
CN117033760A (zh) | 一种对象推荐方法、装置、设备、存储介质及程序产品 | |
CN114898184A (zh) | 模型训练方法、数据处理方法、装置及电子设备 | |
CN108256018A (zh) | 一种物品推荐方法及装置 | |
CN114662009A (zh) | 一种基于图卷积的工业互联网工厂协同推荐算法 | |
CN113191527A (zh) | 一种基于预测模型进行人口预测的预测方法及装置 | |
CN116662764B (zh) | 误识别纠正的数据识别方法、模型训练方法、装置和设备 | |
CN116089722B (zh) | 基于图产出标签的实现方法、装置、计算设备和存储介质 | |
KR102650574B1 (ko) | 트랜드 및 이슈 데이터 수집 및 분석을 기반으로 한 기업 관련 언론 보도 및 홍보 자료 기획 및 생성 방법, 장치 및 시스템 | |
US20230196435A1 (en) | Subscription-Based Service System | |
CN116777529B (zh) | 一种对象推荐的方法、装置、设备、存储介质及程序产品 | |
CN115455306B (zh) | 推送模型训练、信息推送方法、装置和存储介质 | |
CN112926834B (zh) | 工业app质量评价方法、装置、设备及介质 | |
CN111522887B (zh) | 用于输出信息的方法和装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
REG | Reference to a national code |
Ref country code: HK Ref legal event code: DE Ref document number: 40087911 Country of ref document: HK |