一种资源分配方法、装置、设备及介质
技术领域
本申请涉及计算机技术领域,尤其涉及一种资源分配方法、装置、设备及介质。
背景技术
出于发展用户、活跃用户或者培养用户粘性等目的,很多企业,包括互联网企业会主动分配给用户一定的资源作为奖励,或者通过设置一定的行为规则,当用户的行为符合行为规则时,分配给用户一定的资源作为奖励,这样可以对用户起到一定的激励作用。但是,实际情况中,可能会出现部分用户通过非法或不合规手段来获取资源的情况,例如通过虚假交易来获取资源。如何识别并管控这类非正常的资源获取行为,降低资源分配中的虚假交易等风险,提高资源分配效率和效果,是一个巨大的挑战:如果管控太严,则用户获取资源相对困难,难以达到奖励和/或激励目的;如果管控太松,则有可能造成企业的大量资源损失,同样不利于达到奖励和/或激励目的。
有鉴于此,需要更有效和更高效的资源分配方案。
发明内容
本说明书实施例提供了一种资源分配方法、装置、设备及介质,用以解决如何更有效和更高效地进行资源分配的技术问题。
为解决上述技术问题,本说明书实施例是这样实现的:
本说明书实施例提供了一种资源分配方法,包括:
资源分配条件触发后,接收触发事件的特征向量,所述特征向量包含所述触发事件的一个或多个特征,和/或,接收触发事件之前的一次或多次资源分配决策反馈结果;
根据接收的上述特征向量和/或接收的上述资源分配决策反馈结果确定触发事件对应的资源分配决策。
本说明书实施例还提供了一种资源分配方法,包括:
资源分配条件触发后,确定并发送触发事件的特征向量,所述特征向量包含所述触发事件的一个或多个特征,和/或,资源分配条件触发后,发送触发事件之前的一次或多次资源分配决策反馈结果;
确定触发事件对应的资源分配决策的资源分配决策反馈结果。
本说明书实施例还提供了一种资源分配方法,包括;
资源分配条件触发后,资源分配模型根据触发事件的特征向量确定触发事件对应的资源分配决策,所述特征向量包含所述触发事件的一个或多个特征;和/或,资源分配条件触发后,资源分配模型根据触发事件之前的一次或多次资源分配决策反馈结果确定触发事件对应的资源分配决策;
执行所述资源分配决策。
本说明书实施例还提供了一种资源分配装置,包括:
条件接收模块,用于接收触发事件的特征向量,所述特征向量包含所述触发事件的一个或多个特征,和/或,接收触发事件之前的一次或多次资源分配决策反馈结果;
决策模块,用于根据接收的上述特征向量和/或接收的上述资源分配决策反馈结果确定触发事件对应的资源分配决策。
本说明书实施例还提供了一种资源分配装置,包括:
条件确定模块,用于资源分配条件触发后,确定并发送触发事件的特征向量,所述特征向量包含所述触发事件的一个或多个特征,和/或,资源分配条件触发后,发送触发事件之前的一次或多次资源分配决策反馈结果;
反馈确定模块,用于确定触发事件对应的资源分配决策的资源分配决策反馈结果。
本说明书实施例还提供了一种资源分配装置,包括:
决策模块,用于资源分配条件触发后,资源分配模型根据触发事件的特征向量确定触发事件对应的资源分配决策,所述特征向量包含所述触发事件的一个或多个特征;和/或,资源分配条件触发后,资源分配模型根据触发事件之前的一次或多次资源分配决策反馈结果确定触发事件对应的资源分配决策;
执行模块,用于执行所述资源分配决策。
本说明书实施例还提供了一种资源分配设备,包括:至少一个处理器;以及,与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够:
资源分配条件触发后,接收触发事件的特征向量,所述特征向量包含所述触发事件的一个或多个特征,和/或,接收触发事件之前的一次或多次资源分配决策反馈结果;
根据接收的上述特征向量和/或接收的上述资源分配决策反馈结果确定触发事件对应的资源分配决策。
本说明书实施例还提供了一种资源分配设备,包括:至少一个处理器;以及,与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够:
资源分配条件触发后,确定并发送触发事件的特征向量,所述特征向量包含所述触发事件的一个或多个特征,和/或,资源分配条件触发后,发送触发事件之前的一次或多次资源分配决策反馈结果;
确定触发事件对应的资源分配决策的资源分配决策反馈结果。
本说明书实施例还提供了一种资源分配设备,包括:至少一个处理器;以及,与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够:
资源分配条件触发后,资源分配模型根据触发事件的特征向量确定触发事件对应的资源分配决策,所述特征向量包含所述触发事件的一个或多个特征;和/或,资源分配条件触发后,资源分配模型根据触发事件之前的一次或多次资源分配决策反馈结果确定触发事件对应的资源分配决策;
执行所述资源分配决策。
本说明书实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机可执行指令,所述计算机可执行指令被处理器执行时实现如下的步骤:
资源分配条件触发后,接收触发事件的特征向量,所述特征向量包含所述触发事件的一个或多个特征,和/或,接收触发事件之前的一次或多次资源分配决策反馈结果;
根据接收的上述特征向量和/或接收的上述资源分配决策反馈结果确定触发事件对应的资源分配决策。
本说明书实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机可执行指令,所述计算机可执行指令被处理器执行时实现如下的步骤:
资源分配条件触发后,确定并发送触发事件的特征向量,所述特征向量包含所述触发事件的一个或多个特征,和/或,资源分配条件触发后,发送触发事件之前的一次或多次资源分配决策反馈结果;
确定触发事件对应的资源分配决策的资源分配决策反馈结果。
本说明书实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机可执行指令,所述计算机可执行指令被处理器执行时实现如下的步骤:
资源分配条件触发后,资源分配模型根据触发事件的特征向量确定触发事件对应的资源分配决策,所述特征向量包含所述触发事件的一个或多个特征;和/或,资源分配条件触发后,资源分配模型根据触发事件之前的一次或多次资源分配决策反馈结果确定触发事件对应的资源分配决策;
执行所述资源分配决策。
本说明书实施例采用的上述至少一个技术方案能够达到以下有益效果:
通过特征向量和/或资源分配决策反馈结果的引入,能够引导资源分配向最优方向演进,以及能够进行资源分配的连续化分层管控和精细化运行;同时,通过过往的特征向量和/或资源分配决策反馈结果可以对资源分配决策进行调整和优化,使得作出的资源分配决策能够适应实际情景的变化,有利于资源分配决策取得更积极效果。
附图说明
为了更清楚地说明本说明书实施例或现有技术中的技术方案,下面将对本说明书实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本说明书中记载的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是本说明书第一个实施例提供的一种资源分配系统的示意图。
图2是本说明书第二个实施例提供的一种资源分配方法的流程示意图。
图3是本说明书第二个实施例中的资源分配过程示意图。
图4是本说明书第三个实施例提供的一种资源分配方法的流程示意图。
图5是本说明书第三个实施例中的资源分配决策反馈结果确定示意图。
图6是本说明书第四个实施例提供的一种资源分配方法的流程示意图。
图7是本说明书第四个实施例中的A3C算法示意图。
图8是本说明书第五个实施例提供的一种资源分配装置的结构示意图。
图9是本说明书第六个实施例提供的一种资源分配装置的结构示意图。
图10是本说明书第六个实施例提供的另一种资源分配装置的结构示意图。
图11是本说明书第七个实施例提供的一种资源分配装置的结构示意图。
图12是本说明书第七个实施例提供的另一种资源分配装置的结构示意图。
具体实施方式
为了使本技术领域的人员更好地理解本说明书中的技术方案,下面将结合本说明书实施例中的附图,对本说明书实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本说明书实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都应当属于本申请保护的范围。
如图1所示,在本说明书的第一个实施例中,任意或指定的某次资源分配条件触发后,资源分配系统根据该次触发事件的特征向量(所述特征向量包含所述触发事件的一个或多个特征)和/或该次触发事件之前的一次或多次资源分配决策反馈结果(图1中为特征向量和资源分配决策均有的情况),做出资源分配决策,并且可以根据之前一次或多次的特征向量和/或之前一次或多次的资源分配决策反馈结果来调整做出资源分配决策所依据的策略或者模型。
通过特征向量和/或资源分配决策反馈结果的引入,能够引导资源分配向最优方向演进,以及能够进行资源分配的连续化分层管控和精细化运行;同时,通过过往的特征向量和/或资源分配决策反馈结果可以对资源分配决策进行调整和优化,使得作出的资源分配决策能够适应实际情景的变化,有利于资源分配决策取得更积极效果。
从程序角度而言,上述流程的执行主体可以为计算机或者服务器或者相应的资源分配系统等。另外,也可以由第三方应用客户端协助所述执行主体执行上述流程。
图2是本说明书第二个实施例提供的资源分配方法的流程示意图。图3是本说明书第二个实施例中的资源分配过程示意图。结合图2和图3,在本实施例中,资源分配方法包括:
S101:资源分配条件触发后,接收触发事件的特征向量,所述特征向量包含所述触发事件的一个或多个特征,和/或,接收触发事件之前的一次或多次资源分配决策反馈结果。
在本实施例中,资源分配对应着“资源分配对象”(即所分配的资源的被授予者或者接收者)。资源分配条件的触发者(以下简称“触发者”或“触发方”)和资源分配对象不一定是同一人。由于在互联网领域,往往使用互联网账户(例如社交账户、电子支付账户)来代表现实中的人或者说人需要通过互联网账户来发出或者接收或者操作数据等,所以在本实施例中,资源分配条件的触发者和资源分配对象都可以看作是账户,两者不一定是同一账户。在本实施例中,资源分配对象可以由触发者指定。资源分配对象可以是触发者本身,也可以异于触发者本身,或者可以既包括触发者本身,又包括异于触发者本身的其他对象,资源分配对象可以是一个或多个。
在本实施例中,任意或指定的某次资源分配条件触发后,可以接收该次触发事件的特征向量(可以称为“主特征向量”),特征向量包含所述触发事件的一个或多个特征,包括触发事件中触发方的特征和/或资源分配对象的特征。特征向量中的元素个数、每个元素所代表的特征可以根据实际需要设置。比如,各个元素可以分别代表触发者和资源分配对象(假设两者不一致)的量化的消费记录、注册信息、风险行为、设备信息、环境信息以及关系等,其中设备信息、环境信息以及关系等特征可以看作是场景特征。特征向量中代表触发者的特征的元素可以形成触发方的特征向量,特征向量中代表资源分配对象的特征的元素可以形成资源分配对象的特征向量。下文中如无特别说明,特征向量均指上述的主特征向量。例如某次触发事件的特征向量为(x1,...,xi,xi+1,...xi+j,xi+j+1,...,xi+j+k),其中(x1,...,xi)中元素所代表的特征来自于触发者,例如触发者的消费记录、注册信息以及风险行为、过去一定时间内的资源分配条件触发次数等;(xi+1,...xi+j)中元素所代表的的特征来自于资源分配对象,例如资源分配对象的消费记录、注册信息以及风险行为、资源分配对象的账户注册设备上过去一定时间累计注册账户数等;(xi+j+1,...,xi+j+k)中元素所代表的的特征为当前触发事件的场景特征,比如触发者和资源分配对象的设备信息、环境信息以及关系等,关系可以包括是否是亲友关系。特别的,所接收的可以是归一化后的特征向量。
在本实施例中,任意或指定的某次资源分配条件触发后,还可以接收该次触发事件之前的一次或多次资源分配决策反馈结果(“资源分配决策反馈结果”是指资源分配决策的反馈结果)。在本实施例中,资源分配决策反馈结果是可以量化的。
在本实施例中,任意或指定的某次资源分配条件触发后,可以既接收该次触发事件的特征向量,又接收该次触发事件之前的一次或多次资源分配决策反馈结果。考虑一种初始情况,即某次资源分配条件触发后,没有可供接收的资源分配决策反馈结果,或者之前没有进行过资源分配决策,则可以仅接收特征向量。
S102:根据接收的上述特征向量和/或接收的上述资源分配决策反馈结果确定触发事件对应的资源分配决策。
在本实施例中,在任意或指定的某次资源分配条件触发后,需要进行资源分配。即任意或指定的某次资源分配条件触发后,在接收到特征向量和/或资源分配决策反馈结果后,就可以根据特征向量和/或资源分配决策确定该次触发事件对应的资源分配决策。
资源分配决策包括资源分配对象和/或资源分配标准。其中资源分配对象如前述。资源分配标准可以看作资源分配对象可得到的资源值,其可以采用分档的形式确定,即设置第一档、第二档、……、第n档,每一档可以代表不同的分配折扣或者分配系数,不同的分档也可以代表不同的资源分配管控手段。比如第一档代表的分配折扣为0.1,档次之间的分配折扣差值为0.1,则第二档代表的分配折扣为0.2,第三档代表的分配折扣为0.3,以此类推,n=10,第n档代表的分配折扣为1(分配折扣最高值可以根据需要确定,本实施例中,分配折扣最高为1)。又比如若第一档代表的分配折扣为0.1,档次之间的分配折扣差值为0.05,则第二档代表的分配折扣为0.15,第三档代表的分配折扣为0.2,以此类推,n=19,第n档代表的分配折扣为1。可见,每个档次对应的分配折扣是可以根据需要进行设置和变化的。可以确定一个资源分配基数,然后将资源分配基数乘以本次资源分配决策所确定的档次,得到本次资源分配决策的资源分配标准。
在本实施例中,任意或指定的某次资源分配条件触发后,接收前述的特征向量和/或资源分配决策反馈结果,然后可以采取映射的方式,即将接收的特征向量和/或资源分配决策反馈结果映射到上述的分配折扣档次上,进而确定资源分配标准。
在本实施例中,接收资源分配决策后,会执行资源分配决策。执行资源分配决策指授予资源分配对象相应的资源分配标准,这里的资源分配对象可以是互联网账户。
在本实施例中,在确定资源分配决策时,引入和利用了特征向量和/或资源分配决策反馈结果,能够引导资源分配向最优方向演进,以及能够进行资源分配的连续化分层管控和精细化运行;同时,通过过往的特征向量和/或资源分配决策反馈结果可以对资源分配决策进行调整和优化,使得作出的资源分配决策能够适应实际情景的变化,有利于资源分配决策取得更积极效果。
图4是本说明书的第三个实施例提供的资源分配方法的流程示意图,图5是本实施例中的资源分配决策反馈结果确定示意图。在本实施例中,资源分配方法包括:
S201:资源分配条件触发后,确定并发送触发事件的特征向量,所述特征向量包含所述触发事件的一个或多个特征,和/或,资源分配条件触发后,发送触发事件之前的一次或多次资源分配决策反馈结果。
在本实施例中,特征向量和资源分配决策反馈结果同第二个实施例。特别的,在本实施例中,在发送特征向量前,会将特征向量进行归一化,归一化的方法可以是(max-score)/(max-min)。对于特征向量中的任一个元素,不妨为x1,可以得到x1的历史最大值max和历史最小值min,或者触发方的历史记录中x1的最大值max和最小值min,然后计算x1'=(max-x1)/(max-min)或者x1'=(x1-min)/(max-min),x1'即为归一化后的x1对应的值。对于特征向量中的各个元素按照x1进行操作,就得到归一化后的特征向量。在本实施例中,所发送的可以是归一化后的特征向量。
S202:确定触发事件对应的资源分配决策的资源分配决策反馈结果。
任一次资源分配决策确定后,都可以确定该次资源分配决策所对应的资源分配决策反馈结果。在本实施例中,可以依据一个或多个特征或参数来确定资源分配决策反馈结果。具体的,对于任一次资源分配决策来说,用于确定该次资源分配决策对应的资源分配决策反馈结果的特征包括:资源分配对象在该次资源分配前后的活跃度变化值;和/或,该次资源分配决策的资源分配对象的用户价值;和/或,该次资源分配决策的成本;和/或,资源分配对象获得该次资源分配后的虚假交易比例;和/或,该次资源分配决策对应的校正系数。可以利用这些特征中的一个或多个特征的值或者多个特征的值的乘积确定资源分配决策反馈结果,或者可以将这些特征中的一个或多个特征的值或者多个特征的值的乘积作为资源分配决策反馈结果。特别的,若乘积中涉及了该次资源分配决策的成本,则在相乘时使用其倒数作为乘法运算的因子,即相乘时不直接使用“该次资源分配决策的成本”与其他特征的值相乘,而是使用“该次资源分配决策的成本”的倒数与其他特征的值相乘。若乘积中涉及了资源分配对象获得该次资源分配后的虚假交易比例,在相乘时对其也采用这样的方式处理。
上述的活跃度变化值是对用户活跃度变化进行分层后映射取得的值,例如根据资源分配对象在资源分配前后的活跃度变化将之分为高中低三层,并对每一层对应的活跃度赋予不同的值,比如高、中、低层的活跃度对应赋值分别为10、3、1,这表示对于活跃度变化达到高层的资源分配对象相比活跃度变化达到低层的用户在其他条件给定的情况下,给予10倍的看重。假设资源分配的目的是推广某应用,则可以通过资源分配对象在过去一定时间内或资源分配前后一定时间内使用该应用的次数衡量活跃度。
上述的用户价值是对资源分配对象的用户价值进行分层后取得的对应价值分,同样可以分为高中低三层并对每一层赋值,例如高、中、低层的用户价值的对应赋值分别是3、2、1。
上述的该次资源分配决策的成本可以基于过去一定时间或一定次数的相应分配折扣下的资源分配标准平均值得到,比如该次资源分配决策的分配折扣为第一档,过去一定时间内有i次资源分配决策的分配折扣为第一档,这i次资源分配决策对应i个资源分配标准,可以将这i个资源分配标准的平均值作为该次资源分配决策的成本;又比如该次资源分配决策的分配折扣为第一档,可以取过去j次分配折扣为第一档的资源分配决策的资源分配标准的平均值作为该次资源分配决策的成本。上面相乘时使用成本的倒数表现出了成本与资源决策反馈结果成反比关系,不考虑其他特征的情况下,成本越高,则资源分配决策反馈结果越低。
上述的资源分配对象获得该次资源分配后的虚假交易比例可以是该次资源分配决策后续一定时间内的交易中的虚假交易比例或后续一定交易次数内的虚假交易比例。同样的,相乘时使用虚假交易比例的倒数也表现出了虚假交易比例与资源分配决策反馈结果成反比关系。
上述的校正系数是为各个分配折扣配置的相应的加权系数,即各个档对应各自的加权系数,以减少资源分配决策的分配折扣集中在某个或某些档次的情况的出现。例如对已经出现的数量较多的档次,可以对其进行降权。
可以看出,资源分配决策反馈结果包括正面反馈结果和/或负面反馈结果,例如资源分配对象在资源分配后活跃度可能增加或降低或不变,虚假交易比例可能增加或降低或不变。进一步,在资源分配决策反馈结果中包括正向目标和/或负向目标,正向目标可以是对资源分配反馈结果中的某些特征进行保留或提高(称为“正面特征”),如提高留存率;负向目标可以是对资源分配反馈结果中的某些特征进行去除或降低(称为“负面特征”),如降低虚假交易比例,。
在第一、第二以及第三个实施例中,资源分配决策反馈结果都可以通过上述方式得出。
在本实施例中,通过为资源分配决策提供特征向量和/或资源分配决策反馈结果,能够引导资源分配向最优方向演进,以及能够进行资源分配的连续化分层管控和精细化运行;同时,通过过往的特征向量和/或资源分配决策反馈结果可以对资源分配决策进行调整和优化,使得作出的资源分配决策能够适应实际情景的变化,有利于资源分配决策取得更积极效果。
图6是本说明书的第四个实施例提供的资源分配方法的流程示意图。在本实施例中,资源分配方法包括:
S301:资源分配条件触发后,资源分配模型根据触发事件的特征向量确定触发事件对应的资源分配决策,所述特征向量包含所述触发事件的一个或多个特征;和/或,资源分配条件触发后,资源分配模型根据触发事件之前的一次或多次资源分配决策反馈结果确定触发事件对应的资源分配决策。
在本实施例中,可以使用资源分配模型来确定资源分配决策。具体的,本实施例中,可以利用训练后的A3C算法(Asynchronous Advantage Actor-Critic算法)来作为资源分配模型。图7展示了该算法的网络结构示意图,该算法结合了强化学习中value based与policy based思想,同时维护策略π(at|st;θ)(对应policy net)和值函数估计V(st;θv)(对应value net),采用DNN做函数逼近,分别学习策略参数θ和值函数估计参数θv。在本实施例中,不是用两个独立的DNN,而是用一个DNN共享除输出层外的所有层,对于策略π(at|st;θ)输出层采用softmax,对于值函数V(st;θv)输出层采用linear。
算法训练时的参数包括DNN层数以及每层的节点数,本实施例中可以设计3层relu共享,每层节点数为(512,256,128),policy net使用softmax输出,value net使用linear输出。训练时的输入为(特征向量,资源分配决策,资源分配决策反馈结果)三元组构成的集合,训练得到DNN的参数后,在实际预测时要求输入为(特征向量,资源分配决策)二元组,但只用策略的输出做资源分配决策打分,并按最高分选最终资源分配决策。
在刚开始训练A3C算法时,可以先根据业务规则确定一些资源分配条件触发事件的资源分配决策(例如根据资源分配对象的活跃度进行分层,对于活跃度低的资源分配对象给予更高的资源分配标准),并得到资源分配决策反馈结果。在积累了一定量的特征向量、资源分配决策以及资源分配决策反馈结果后,可以据此训练A3C算法。
在训练A3C算法后,任意或指定的某次资源分配条件触发后,A3C接收该次触发事件的特征向量,和/或,接收该次触发事件之前的一次或多次资源分配决策反馈结果,特征向量和资源分配决策反馈结果同第二个实施例。接收的特征向量和/或资源分配决策反馈结果可以作为A3C算法的输入,通过A3C算法确定该次触发事件对应的资源分配决策。
S302:执行所述资源分配决策。
本实施例中执行资源分配决策同第二个实施例。
进一步,在本实施例中,任意或指定的某次资源分配条件触发后,确定该次触发事件的特征向量,和/或,确定该次触发事件对应的资源分配决策对应的资源分配决策反馈结果,根据定时和/或定量积累的特征向量校正所述资源分配模型,和/或,根据定时和/或定量积累的资源分配决策校正所述资源分配模型,和/或,根据定时和/或定量积累的资源分配决策反馈结果校正所述资源分配模型。
在实际情况中,用户的心智可能不断变化,在不同时期或不同情况下,即使是同一触发者或同一资源分配对象,在不同次的资源分配条件触发事件中的特征向量或资源分配决策反馈结果也可能是不同的。由于在任意或指定的某次资源分配条件触发后,都可以确定该次触发事件的特征向量、该次触发事件对应的资源分配决策和该次触发事件对应的资源分配决策对应的资源分配决策反馈结果,在本实施例中,可以根据定时和/或定量积累的特征向量校正所述资源分配模型,和/或,根据定时和/或定量积累的资源分配决策校正所述资源分配模型,和/或,根据定时和/或定量积累的资源分配决策反馈结果校正所述资源分配模型。
具体的,可以根据过去一定时间内的特征向量和/或资源分配决策校正资源分配模型(即“定时”的情况);或者可以根据过去积累的一定量的特征向量和/或资源分配决策校正资源分配模型(即“定量”的情况)。对于定量的情况,又可以分为以下情况:
(1)积累的特征向量每达到指定次时,根据最新积累的指定次的特征向量校正资源分配模型。不妨以某一次特征向量A1为例,假设“指定次”为b次,则可以利用特征向量“A1至Ab”(相对于Ab最新)、“A(b+1)至A(2b)”(相对于A2b最新)、……、“A(kb+1)至A[(k+1)b]”(相对于A[(k+1)b]最新)、……来校正资源分配模型;或者可以利用特征向量“A1至Ab”(相对于Ab最新)、“A2至A(b+1)”(相对于A(b+1)最新)、……、“Ac至A(c+b-1)”(相对于A(c+b-1)最新)、……来校正资源分配模型。
(2)积累的特征向量总次数达到指定次时,根据当前积累的所有特征向量校正资源分配模型。指定次不限于一个数值,例如指定次可以分别是b1、b2、……、bi,不妨b1<b2<……<bi。仍以A1为例,可以利用特征向量“A1至A(b1)”(相对于A(b1)最新)、“A1至A(b2)”(相对于A(b2)最新)、……、“A1至A(bi)”(相对于A(bi)最新)来校正资源分配模型。另外,考虑这里的单个“指定次”,其可以作为(1)中的“指定次b”,从而包含了(1)的情况。
可见,相邻两次积累的定量特征向量可以是不重合的,或者相邻两次中后一次积累的定量特征向量可以包含前一次积累的定量特征向量的一部分或者全部。
定量积累资源分配决策或定量积累资源分配决策反馈结果同定量积累特征向量。
校正资源分配模型可以是对模型的再训练或者重构。在本实施例中,校正资源分配模型具体可以是将上述定时和/或定量的特征向量、定时和/或定量积累的资源分配决策以及定时和/或定量积累的资源分配决策反馈结果作为A3C算法的输入来进行训练,将训练后的A3C用于之后的资源分配。
由上可知,本实施例采用了强化学习的方法来进行资源分配,本实施例中的特征向量相当于强化学习中的state,资源分配决策相当于强化学习中的action,资源分配反馈结果相当于强化学习中的reward。environment确定特征向量和/或资源分配决策反馈结果,并接收资源分配决策;特征向量和/或资源分配决策反馈结果可以由agent接收,并由agent做出资源分配决策;执行资源分配决策可以交由agent或交由另外的执行系统。本实施例中中的资源分配模型不限于上述的A3C算法,其他满足需要的算法(例如各种强化学习算法)都可以应用。
在本实施例中,强化学习天然的支持在资源分配决策反馈结果中融合业务的正向目标以及负向目标,这将逐渐引导资源分配策略向业务目标最优的方向演进。通过积累的特征向量和/或资源分配决策和/或资源分配决策反馈结果校正资源分配模型,使得本实施例的资源分配方法具备动态使用活动演变的能力,随着用户的心智变化,强化学习只需要进行定期或定量的重新训练即可。本实施例中采用了创新性的reward设计,reward设计在强化学习中历来重要而困难,本实施例中,在引入正向目标&负向目标的同时,还通过引入样本权重帮助训练过程避免过拟合,使得整个算法的收敛速度更快。在资源分配过程中需要考虑风险管控,通常由于风控场景对稳定性的高度要求,业内领先的算法很难直接用于该领域。基于强化学习的特点,可以使得资源分配既能够满足风控要求,又能够满足最优化需求。
如图8所示,本说明书五个实施例提供了一种资源分配装置,包括:
条件接收模块401,用于接收触发事件的特征向量,所述特征向量包含所述触发事件的一个或多个特征,和/或,接收触发事件之前的一次或多次资源分配决策反馈结果;
决策模块402,用于根据接收的上述特征向量和/或接收的上述资源分配决策反馈结果确定触发事件对应的资源分配决策。
可选的,所述资源分配决策包括:接收所分配资源的资源分配对象,所述资源分配对象包括或不包括所述资源分配条件的触发方;和/或,资源分配标准。
如图9所示,本说明书第六个实施例提供了一种资源分配装置,包括:
条件确定模块501,用于资源分配条件触发后,确定并发送触发事件的特征向量,所述特征向量包含所述触发事件的一个或多个特征,和/或,资源分配条件触发后,发送触发事件之前的一次或多次资源分配决策反馈结果;
反馈确定模块502,用于确定触发事件对应的资源分配决策的资源分配决策反馈结果。
可选的,所述特征向量包括:触发事件的触发方的特征向量;和/或,触发事件对应的资源分配对象的特征向量。
可选的,如图10所示,所述装置还包括:
归一化模块503,用于发送所述特征向量前,归一化所述特征向量。
可选的,所述资源分配决策反馈结果包括正面反馈结果和/或负面反馈结果。
可选的,对于任一次资源分配决策,用于确定其对应的资源分配决策反馈结果的特征包括:
资源分配对象在该次资源分配前后的活跃度变化值;和/或,资源分配对象的用户价值;和/或,该次资源分配决策的成本;和/或,资源分配对象获得该次资源分配后的虚假交易比例;和/或,该次资源分配决策对应的校正系数。
可选的,根据上述一个或多个特征或多个特征的乘积确定所述资源分配决策反馈结果。
如图11所示,本说明书第七个实施例提供了一种资源分配装置,包括:
决策模块601,资源分配条件触发后,资源分配模型根据触发事件的特征向量确定触发事件对应的资源分配决策,所述特征向量包含所述触发事件的一个或多个特征;和/或,资源分配条件触发后,资源分配模型根据触发事件之前的一次或多次资源分配决策反馈结果确定触发事件对应的资源分配决策;
执行模块602,用于执行所述资源分配决策。
可选的,如图12所示,所述装置还包括:
条件确定模块603,用于资源分配条件触发后,确定触发事件的特征向量,和/或,确定触发事件对应的资源分配决策的资源分配决策反馈结果;
决策校正模块604,用于根据定时和/或定量积累的特征向量校正所述资源分配模型,和/或,根据定时和/或定量积累的资源分配决策校正所述资源分配模型,和/或,根据定时和/或定量积累的资源分配决策反馈结果校正所述资源分配模型。
可选的,根据定量积累的特征向量校正所述资源分配模型包括:
积累的特征向量每达到指定次时,根据最新积累的指定次的特征向量校正所述资源分配模型;和/或,当前确定的特征向量总次数达到指定次时,根据当前积累的所有特征向量校正所述资源分配模型;
根据定量积累的资源分配决策反馈结果校正所述资源分配模型包括:
积累的资源分配决策反馈结果每达到指定次时,根据最新积累的指定次的资源分配决策反馈结果校正所述资源分配模型;和/或,当前确定的资源分配决策反馈结果总次数达到指定次时,根据当前积累的所有资源分配决策反馈结果校正所述资源分配模型。
本说明书第八个实施例提供了一种资源分配设备,包括:至少一个处理器;以及,与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够:
资源分配条件触发后,接收触发事件的特征向量,所述特征向量包含所述触发事件的一个或多个特征,和/或,接收触发事件之前的一次或多次资源分配决策反馈结果;
根据接收的上述特征向量和/或接收的上述资源分配决策反馈结果确定触发事件对应的资源分配决策。
本说明书第九个实施例提供了一种资源分配设备,包括:至少一个处理器;以及,与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够:
资源分配条件触发后,确定并发送触发事件的特征向量,所述特征向量包含所述触发事件的一个或多个特征,和/或,资源分配条件触发后,发送触发事件之前的一次或多次资源分配决策反馈结果;
确定触发事件对应的资源分配决策的资源分配决策反馈结果。
本说明书第十个实施例提供了一种资源分配设备,包括:至少一个处理器;以及,与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够:
资源分配条件触发后,资源分配模型根据触发事件的特征向量确定触发事件对应的资源分配决策,所述特征向量包含所述触发事件的一个或多个特征;和/或,资源分配条件触发后,资源分配模型根据触发事件之前的一次或多次资源分配决策反馈结果确定触发事件对应的资源分配决策;执行所述资源分配决策。
本说明书第十一个实施例提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机可执行指令,所述计算机可执行指令被处理器执行时实现如下的步骤:
资源分配条件触发后,接收触发事件的特征向量,所述特征向量包含所述触发事件的一个或多个特征,和/或,接收触发事件之前的一次或多次资源分配决策反馈结果;
根据接收的上述特征向量和/或接收的上述资源分配决策反馈结果确定触发事件对应的资源分配决策。
本说明书第十二个实施例提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机可执行指令,所述计算机可执行指令被处理器执行时实现如下的步骤:
资源分配条件触发后,确定并发送触发事件的特征向量,所述特征向量包含所述触发事件的一个或多个特征,和/或,资源分配条件触发后,发送触发事件之前的一次或多次资源分配决策反馈结果;
确定触发事件对应的资源分配决策的资源分配决策反馈结果。
本说明书第十三个实施例提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机可执行指令,所述计算机可执行指令被处理器执行时实现如下的步骤:
资源分配条件触发后,资源分配模型根据触发事件的特征向量确定触发事件对应的资源分配决策,所述特征向量包含所述触发事件的一个或多个特征;和/或,资源分配条件触发后,资源分配模型根据触发事件之前的一次或多次资源分配决策反馈结果确定触发事件对应的资源分配决策;执行所述资源分配决策。
上述对本说明书特定实施例进行了描述,其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,附图中描绘的过程不一定必须按照示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置、设备、非易失性计算机可读存储介质实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
本说明书实施例提供的装置、设备、非易失性计算机可读存储介质与方法是对应的,因此,装置、设备、非易失性计算机存储介质也具有与对应方法类似的有益技术效果,由于上面已经对方法的有益技术效果进行了详细说明,因此,这里不再赘述对应装置、设备、非易失性计算机存储介质的有益技术效果。
在20世纪90年代,对于一个技术的改进可以很明显地区分是硬件上的改进(例如,对二极管、晶体管、开关等电路结构的改进)还是软件上的改进(对于方法流程的改进)。然而,随着技术的发展,当今的很多方法流程的改进已经可以视为硬件电路结构的直接改进。设计人员几乎都通过将改进的方法流程编程到硬件电路中来得到相应的硬件电路结构。因此,不能说一个方法流程的改进就不能用硬件实体模块来实现。例如,可编程逻辑器件(Programmable Logic Device,PLD)(例如现场可编程门阵列(Field Programmable GateArray,FPGA))就是这样一种集成电路,其逻辑功能由用户对器件编程来确定。由设计人员自行编程来把一个数字系统“集成”在一片PLD上,而不需要请芯片制造厂商来设计和制作专用的集成电路芯片。而且,如今,取代手工地制作集成电路芯片,这种编程也多半改用“逻辑编译器(logic compiler)”软件来实现,它与程序开发撰写时所用的软件编译器相类似,而要编译之前的原始代码也得用特定的编程语言来撰写,此称之为硬件描述语言(Hardware Description Language,HDL),而HDL也并非仅有一种,而是有许多种,如ABEL(Advanced Boolean Expression Language)、AHDL(Altera Hardware DescriptionLanguage)、Confluence、CUPL(Cornell University Programming Language)、HDCal、JHDL(Java Hardware Description Language)、Lava、Lola、MyHDL、PALASM、RHDL(RubyHardware Description Language)等,目前最普遍使用的是VHDL(Very-High-SpeedIntegrated Circuit Hardware Description Language)与Verilog。本领域技术人员也应该清楚,只需要将方法流程用上述几种硬件描述语言稍作逻辑编程并编程到集成电路中,就可以很容易得到实现该逻辑方法流程的硬件电路。
控制器可以按任何适当的方式实现,例如,控制器可以采取例如微处理器或处理器以及存储可由该(微)处理器执行的计算机可读程序代码(例如软件或固件)的计算机可读介质、逻辑门、开关、专用集成电路(Application Specific Integrated Circuit,ASIC)、可编程逻辑控制器和嵌入微控制器的形式,控制器的例子包括但不限于以下微控制器:ARC 625D、Atmel AT91SAM、Microchip PIC18F26K20以及Silicone Labs C8051F320,存储器控制器还可以被实现为存储器的控制逻辑的一部分。本领域技术人员也知道,除了以纯计算机可读程序代码方式实现控制器以外,完全可以通过将方法步骤进行逻辑编程来使得控制器以逻辑门、开关、专用集成电路、可编程逻辑控制器和嵌入微控制器等的形式来实现相同功能。因此这种控制器可以被认为是一种硬件部件,而对其内包括的用于实现各种功能的装置也可以视为硬件部件内的结构。或者甚至,可以将用于实现各种功能的装置视为既可以是实现方法的软件模块又可以是硬件部件内的结构。
上述实施例阐明的系统、装置、模块或单元,具体可以由计算机芯片或实体实现,或者由具有某种功能的产品来实现。一种典型的实现设备为计算机。具体的,计算机例如可以为个人计算机、膝上型计算机、蜂窝电话、相机电话、智能电话、个人数字助理、媒体播放器、导航设备、电子邮件设备、游戏控制台、平板计算机、可穿戴设备或者这些设备中的任何设备的组合。
为了描述的方便,描述以上装置时以功能分为各种单元分别描述。当然,在实施本说明书时可以把各单元的功能在同一个或多个软件和/或硬件中实现。
本领域内的技术人员应明白,本说明书实施例可提供为方法、系统、或计算机程序产品。因此,本说明书实施例可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本说明书实施例可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本说明书是参照根据本说明书实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
在一个典型的配置中,计算设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。
内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。内存是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。
本说明书可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实践本说明书,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
以上所述仅为本说明书实施例而已,并不用于限制本申请。对于本领域技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。