发明内容
本说明书实施例旨在提供一种更有效的套现交易识别方案,以解决现有技术中的不足。
为实现上述目的,本说明书一个方面提供一种训练套现识别模型的方法,所述套现识别模型包括第一DQN网络和第二DQN网络,所述方法包括:
获取第一交易的第一交易信息、第一交易的第一套现预测值、以及与所述第一交易信息和第一套现预测值对应的Q值标签值,其中,所述第一套现预测值通过对所述第一DQN网络输入所述第一交易信息而计算得出,并且所述第一套现预测值指示所述第一交易是否被预测为套现交易,以及其中,所述Q值标签值通过使用Q学习算法基于所述第一DQN网络的输出和第一交易的第一套现标签值计算得出,其中所述第一DQN网络的输出包括对所述第一DQN网络输入所述第一交易信息的输出、和对所述第一DQN网络输入第二交易的第二交易信息的输出,所述第一套现标签值指示所述第一交易是否被标定为套现交易;以及
利用所述第一交易信息、所述第一套现预测值和所述Q值标签值训练所述第二DQN网络,使得:在对所述第二DQN网络输入所述第一交易信息和所述第一套现预测值之后,相比于训练前,所述第二DQN网络在训练后输出的Q值预测值与所述Q值标签值之差的绝对值减小,其中所述Q值预测值与所述第一交易信息和所述第一套现预测值对应。
在一个实施例中,在所述训练套现识别模型的方法中,所述Q学习算法通过以下步骤实现:获取第一交易的第一交易信息和第一交易的第一套现标签值,其中所述第一交易信息中包括交易金额,所述第一套现标签值指示所述第一交易是否被标定为套现交易;获取第二交易的第二交易信息和第二交易的第二套现标签值,所述第二套现标签值指示所述第二交易是否被标定为套现交易;对所述第一DQN网络输入所述第一交易信息,以获取所述第一套现预测值;基于所述第一套现预测值、第一套现标签值和所述交易金额,确定所述第一交易的回报值;对所述第一DQN网络输入所述第二交易信息,以获取对应于所述第二交易信息和所述第二套现标签值的第二Q值预测值;以及基于所述回报值和与所述第二Q值预测值,获取与所述第一交易信息和所述第一套现预测值对应的Q值标签值。
在一个实施例中,在所述训练套现识别模型的方法中,所述第一DQN网络的参数基于所述第二DQN网络的参数设置。
在一个实施例中,在所述训练套现识别模型的方法中,所述第一DQN网络通过所述方法得到训练。
在一个实施例中,在所述训练套现识别模型的方法中,所述套现识别模型还包括样本队列,其中,所述样本队列顺序存储有固定数目的样本,并且,所述样本队列在接收预定数目的样本时删除其排在前面的所述预定数目的已有样本,以及其中,获取第一交易的第一交易信息、第一交易的第一套现预测值、以及与所述第一交易信息和第一套现预测值对应的Q值标签值包括,从所述样本队列随机获取第一样本,所述第一样本包括第一交易的第一交易信息、第一交易的第一套现预测值、以及与所述第一交易信息和第一套现预测值对应的Q值标签值。
在一个实施例中,在所述训练套现识别模型的方法中,所述第一交易信息包括交易属性信息、买家信息、卖家信息以及物流信息。
在一个实施例中,在所述训练套现识别模型的方法中,所述第一或第二DQN网络中包括以下一种神经网络:LSTM、DNN、CNN和RNN。
在一个实施例中,在所述训练套现识别模型的方法中,利用所述第一交易信息、所述第一套现预测值和所述Q值标签值训练所述第二DQN网络包括,利用所述第一交易信息、所述第一套现预测值和所述Q值标签值,通过随机梯度下降法训练所述第二DQN网络。
在一个实施例中,在所述训练套现识别模型的方法中,对所述第一DQN网络输入所述第一交易信息,以获取第一套现预测值包括,对所述第一DQN网络输入所述第一交易信息以输出与所述第一交易信息对应的Q值预测值的二维向量,以及,根据ε-贪婪策略,基于所述向量获取第一套现预测值。
在一个实施例中,在所述训练套现识别模型的方法中,对所述第一DQN网络输入所述第二交易信息,以获取对应于所述第二交易信息和所述第二套现标签值的第二Q值预测值包括:对所述第一DQN网络输入所述第二交易信息,以获取与所述第二交易信息对应的二维的Q值预测值向量;通过对所述第二套现标签值进行独热编码,以获取二维的第二套现标签值向量;将所述Q值预测值向量与所述第二套现标签值向量进行对位相乘,以获取二维的联合表征向量;以及获取所述联合表征向量中的非零Q值作为所述第二Q值预测值。
在一个实施例中,在所述训练套现识别模型的方法中,基于所述第一套现预测值、第一套现标签值和交易金额,确定所述第一交易的回报值包括,在所述第一套现预测值与所述第一套现标签值一致的情况中,确定所述第一交易的回报值等于所述交易金额,在所述第一套现预测值与所述第一套现标签值不一致的情况中,确定所述第一交易的回报值等于所述交易金额的负数。
在一个实施例中,所述训练套现识别模型的方法还包括,在基于所述第一套现预测值、第一套现标签值和交易金额,确定所述第一交易的回报值之后,对所述模型的总回报值累加所述第一交易的回报值。
本说明书另一方面提供一种套现识别方法,包括:获取交易的交易信息;以及对通过根据上述训练方法训练获取的套现识别模型输入所述交易信息,以获取所述交易的套现预测值,所述套现预测值指示所述交易是否被预测为套现交易。
在一个实施例中,在所述套现识别方法中,对所述套现识别模型输入所述交易信息,以获取所述交易的套现预测值包括,对所述套现识别模型输入所述交易信息,以获取与所述交易信息对应的二维的Q值预测值向量,以及,根据ε-贪婪策略,基于所述Q值预测值向量获取所述交易的套现预测值。
本说明书另一方面提供一种训练套现识别模型的装置,所述套现识别模型包括第一DQN网络和第二DQN网络,所述装置包括:
获取单元,配置为,获取第一交易的第一交易信息、第一交易的第一套现预测值、以及与所述第一交易信息和第一套现预测值对应的Q值标签值,其中,所述第一套现预测值通过对所述第一DQN网络输入所述第一交易信息而计算得出,并且所述第一套现预测值指示所述第一交易是否被预测为套现交易,以及其中,所述Q值标签值通过使用Q学习算法基于所述第一DQN网络的输出和第一交易的第一套现标签值计算得出,其中所述第一DQN网络的输出包括对所述第一DQN网络输入所述第一交易信息的输出、和对所述第一DQN网络输入第二交易的第二交易信息的输出,所述第一套现标签值指示所述第一交易是否被标定为套现交易;以及
训练单元,配置为,利用所述第一交易信息、所述第一套现预测值和所述Q值标签值训练所述第二DQN网络,使得:在对所述第二DQN网络输入所述第一交易信息和所述第一套现预测值之后,相比于训练前,所述第二DQN网络在训练后输出的Q值预测值与所述Q值标签值之差的绝对值减小,其中所述Q值预测值与所述第一交易信息和所述第一套现预测值对应。
在一个实施例中,所述训练套现识别模型的装置还包括Q学习算法实现单元,所述Q学习算法实现单元包括以下子单元:第一获取子单元,配置为,获取第一交易的第一交易信息和第一交易的第一套现标签值,其中所述第一交易信息中包括交易金额,所述第一套现标签值指示所述第一交易是否被标定为套现交易;第二获取子单元,配置为,获取第二交易的第二交易信息和第二交易的第二套现标签值,所述第二套现标签值指示所述第二交易是否被标定为套现交易;第三获取子单元,配置为,对所述第一DQN网络输入所述第一交易信息,以获取所述第一套现预测值;确定单元,配置为,基于所述第一套现预测值、第一套现标签值和所述交易金额,确定所述第一交易的回报值;第四获取子单元,配置为,对所述第一DQN网络输入所述第二交易信息,以获取对应于所述第二交易信息和所述第二套现标签值的第二Q值预测值;以及计算单元,配置为,基于所述回报值和与所述第二Q值预测值,计算与所述第一交易信息和所述第一套现预测值对应的Q值标签值。
在一个实施例中,在所述训练套现识别模型的装置中,所述套现识别模型还包括样本队列,其中,所述样本队列顺序存储有固定数目的样本,并且,所述样本队列在接收预定数目的样本时删除其排在前面的所述预定数目的已有样本,以及其中,所述获取单元还配置为,从所述样本队列随机获取第一样本,所述第一样本包括第一交易的第一交易信息、第一交易的第一套现预测值、以及与所述第一交易信息和第一套现预测值对应的Q值标签值。
在一个实施例中,在所述训练套现识别模型的装置中,所述训练单元还配置为,利用所述第一交易信息、所述第一套现预测值和所述Q值标签值,通过随机梯度下降法训练所述第二DQN网络。
在一个实施例中,在所述训练套现识别模型的装置中,第一获取子单元还配置为,对所述第一DQN网络输入所述第一交易信息以输出与所述第一交易信息对应的Q值预测值的二维向量,以及,根据ε-贪婪策略,基于所述向量获取第一套现预测值。
在一个实施例中,在所述训练套现识别模型的装置中,第四获取子单元还配置为:对所述第一DQN网络输入所述第二交易信息,以获取与所述第二交易信息对应的二维的Q值预测值向量;通过对所述第二套现标签值进行独热编码,以获取二维的第二套现标签值向量;将所述Q值预测值向量与所述第二套现标签值向量进行对位相乘,以获取二维的联合表征向量;以及获取所述联合表征向量中的非零Q值作为所述第二Q值预测值。
在一个实施例中,在所述训练套现识别模型的装置中,所述确定单元还配置为,在所述第一套现预测值与所述第一套现标签值一致的情况中,确定所述第一交易的回报值等于所述交易金额,在所述第一套现预测值与所述第一套现标签值不一致的情况中,确定所述第一交易的回报值等于所述交易金额的负数。
在一个实施例中,所述训练套现识别模型的装置还包括累加单元,配置为,在基于所述第一套现预测值、第一套现标签值和交易金额,确定所述第一交易的回报值之后,对所述模型的总回报值累加所述第一交易的回报值。
本说明书另一方面提供一种套现识别装置,包括:获取单元,配置为,获取交易的交易信息;以及预测单元,配置为,对通过根据上述训练方法训练获取的套现识别模型输入所述交易信息,以获取所述交易的套现预测值,所述套现预测值指示所述交易是否被预测为套现交易。
在一个实施例中,在所述套现识别装置中,所述预测单元还配置为,对所述套现识别模型输入所述交易信息,以获取与所述交易信息对应的二维的Q值预测值向量,以及,根据ε-贪婪策略,基于所述Q值预测值向量获取所述交易的套现预测值。
通过根据本说明书实施例的套现识别方案,通过将交易的金额作为强化学习模型的回报,将金额纳入学习过程中,模型如果能够正确地识别大额的套现交易将可获得较大的正收益,如果误判则会造成较大的负收益,因此模型针对大额交易的处理将会更加的谨慎,这种机制更加符合业务的需要。通过使用深度神经网络作为值函数的逼近函数,神经网络的训练采用分批次小批量输入的方式进行,有助于降低模型更新迭代的时间开销与资源开销,加快模型的收敛速度。通过使用经验回放、随机采样和批量数据训练机制,实现了按时间窗口采样的效果,随机采样则保证了样本在时间维度上的相对随机性。
具体实施方式
下面将结合附图描述本说明书实施例。
图1示出了根据本说明书实施例的套现识别系统100的示意图。如图1所示,系统100包括第一DQN网络11、策略单元12、样本准备单元13、样本队列14、第二DQN网络15以及评估单元16。其中,第一DQN网络11可用于识别套现交易,第二DQN网络15可用于进行模型训练。其中,DQN网络为深度Q网络,其中通过神经网络对值函数(Q函数)进行非线性逼近。DQN网络中使用的网络可以为以下一种神经网络:LSTM、DNN、CNN和RNN,在本说明书中,在DQN网络中使用LSTM网络作为示例。其中,DQN网络根据输入的交易的交易信息特征向量,输出二维的Q值向量,该Q值向量中的两个Q值分别对应于交易为套现交易和套现为非套现交易两个动作。
根据本说明书实施例的套现识别系统100可用于识别例如花呗的消费信贷产品中的套现交易。其中,在花呗业务中,例如可通过近场通信(Near Field Communication,NFC)、WIFI、二维码扫码技术、条形码扫码技术、蓝牙、红外、短消息(Short MessageService,SMS)、多媒体消息(Mul timedia Message Service,MMS)等进行支付。
在模型训练阶段,如下准备用于模型训练的一个样本。首先,从一批通过花呗支付的交易数据中获取第一交易的信息s1和套现标签值b1,随后从该批交易数据中随机获取第二交易的信息s2和套现标签值b2,其中套现标签值b1/b2只是第一交易/第二交易是否被标定为套现交易。这里,s1、s2对应于DQN网络中的状态,b1、b2对应于DQN网络中的动作的标签值。该批交易数据例如包括几百或几千个交易的数据,也即,可准备几百或几千个样本。然后,将s1和s2先后输入第一DQN网络11,以分别输出对应的二维的Q值向量q(s1)和q(s2)。之后,将第一交易的Q值向量q(s1)发送给策略单元12,将第二交易的Q值向量q(s2)发送给样本准备单元13。策略单元12根据预定的策略(例如贪婪策略、ε-贪婪策略(ε-greedy)等)从q(s1)获取第一交易的套现预测值a1,并将a1传送给样本准备单元13。
在样本准备单元13中,首先基于第二交易的套现标签值b2,从第二交易的Q值向量q(s2)获取与b2对应的Q预测值q(s2,b2),以作为Q值向量q(s2)中包含的Q值的最大值;将第一交易的套现预测值a1与套现标签值b1相比较,以确定回报r,即当a1与b1一致时,r等于交易信息中s1中包括的交易金额,当a1与b1不一致时,则r等于交易信息中s1中包括的交易金额的负数;之后,样本准备单元13基于上述计算的r和q(s2,b2),根据Q学习算法(Q-Learning)计算出第一交易的Q值标签值Q(s1,a1),从而将a1、Q(s1,a1)和从交易数据中获取的s1作为一个样本发送给样本队列14,并将回报r发送给评估单元16。其中,在DQN网络中,与一对状态(交易信息)和动作(套现预测值或套现标签值)对应的Q值表示在执行该动作之后系统的累计回报。
样本队列14是固定长度的队列,例如,其可存储1000个交易的样本。例如,在对系统100输入一批500个交易的数据,并根据上述过程准备了500个样本并存入样本队列14之后,样本队列14删除其初始保存的前500个样本。第二DQN网络15可从样本队列14中随机选取一批(例如500个)样本进行模型训练,在训练过程中,对应于每个样本,以s1、a1作为输入,以Q(s1,a1)作为输出标签值,通过随机梯度下降法进行调参,以使得,在调参后,该第二DQN网络15对应于s1、a1的输出q(s1,a1)更逼近标签值Q(s1,a1)。第二DQN网络15可在进行多批(例如100批)样本(每批样本包括例如500个样本)的训练之后,将其权重(即参数)迁移赋值给第一DQN网络11。另外,评估单元16在接收第一交易的回报r之后,对系统的总回报值累加r,从而可以该总回报值评估系统的学习能力。总的回报值会随着训练迭代次数不断增加,并在模型收敛后稳定在固定的值附近。
在使用模型识别套现时,对系统输入第三交易信息s3,系统通过套现识别DQN11和策略单元12对交易信息s3预测第三交易的套现预测值a3,以估计该交易是否为套现交易,并输出该套现预测值a3。
上述对系统100的图示和说明只是示意性的,根据本说明书实施例的系统100不限于此。例如,第一DQN网络11可以是以与第二DQN网络15相同的方法训练的网络。即,第一DQN网络11与第二DQN网络15具有两套参数。在该情况中,第一DQN网络11与第二DQN网络15在系统100中是对称的、且可互换的。例如,样本队列14也与第一DQN网络11相连,并对其提供训练样本。通过这样的双DQN架构,可避免模型的过估计。
图2示出了根据本说明书实施例的训练套现识别模型的方法。所述套现识别模型包括第一DQN网络和第二DQN网络,所述方法包括:
在步骤S202,获取第一交易的第一交易信息、第一交易的第一套现预测值、以及与所述第一交易信息和第一套现预测值对应的Q值标签值,其中,所述第一套现预测值通过对所述第一DQN网络输入所述第一交易信息而计算得出,并且所述第一套现预测值指示所述第一交易是否被预测为套现交易,以及其中,所述Q值标签值通过使用Q学习算法基于所述第一DQN网络的输出和第一交易的第一套现标签值计算得出,其中所述第一DQN网络的输出包括对所述第一DQN网络输入所述第一交易信息的输出、和对所述第一DQN网络输入第二交易的第二交易信息的输出,所述第一套现标签值指示所述第一交易是否被标定为套现交易;以及
在步骤S204,利用所述第一交易信息、所述第一套现预测值和所述Q值标签值训练所述第二DQN网络,使得:在对所述第二DQN网络输入所述第一交易信息和所述第一套现预测值之后,相比于训练前,所述第二DQN网络在训练后输出的Q值预测值与所述Q值标签值之差的绝对值减小,其中所述Q值预测值与所述第一交易信息和所述第一套现预测值对应。
首先,在步骤S202,获取第一交易的第一交易信息、第一交易的第一套现预测值、以及与所述第一交易信息和第一套现预测值对应的Q值标签值。这里的套现识别模型例如为图1所示的系统,也就是说,获取用于训练图1中的第二DQN网络15的一个训练样本。
如参考图1所述,第一交易信息s1来自于模型外的输入,例如,可通过环境系统向模型输入第一交易信息s1,或者可通过从数据源(例如存储花呗业务数据的历史数据库)直接获取第一交易信息s1。环境系统为用于向模型输入数据的模块,其例如可通过对一批交易数据进行随机采样而获取第一交易的相关数据,其中包括第一交易信息s1,或者其也可以通过顺序采样而获取第一交易的相关数据。第一交易信息s1也即DQN算法中的状态,其例如在花呗业务中为每笔在线支付交易的相关特征,包括交易属性特征(交易自身的特征)、买家特征、卖家特征、物流特征等。通常,第一交易信息s1以特征向量的形式输入模型,s1向量的各个维度即为上述相关特征,如交易属性特征、买家特征等等。然而,第一交易信息s1不限于以特征向量的形式输入,例如,其可以以特征表格的形式输入模型,以便于计算。
如图1中所示,在训练模型阶段,在对第一DQN网络11输入第一交易信息s1之后,第一DQN网络11向策略单元12输出Q值向量q(s1)。该向量q(s1)为二维向量,即,其包括两个Q值预测值,其中一个对应于套现动作,另一个对应于非套现动作,其中套现动作表示s1被预测为套现交易,非套现动作表示s1被预测为非套现交易。策略单元12在接收到Q值向量q(s1)之后,根据预定的策略选定动作。例如,预定的策略可以为ε-贪婪策略。根据ε-贪婪策略,通过如下公式(1)选定动作a:
其中ε为0到1之间的实数,σ为随机选定的0到1之间的实数,A(s)表示包含所有可用动作的集合。根据公式(1)可以得出,当ε较小(例如ε=0.1)时,a的取值较大概率(例如90%+5%)是向量q(s1)中包含的较大的Q预测值,较小概率(例如5%)是向量q(s1)中包含的较小的Q预测值。也就是说,a的取值概率π(a|s)如公式(2)所示:
从而,根据上述ε-贪婪策略,通过随机确定σ,可基于从第一DQN网络输出的Q值向量q(s1)预测交易s1的套现预测值a1,即预测s1是否为套现交易。
如本领域技术人员所知,在Q学习算法中,通过如下公式(3)更新Q(s,a):
其中,s’为s的下一时刻的状态。在本说明书实施例的应用场景中,由于交易与交易之间的相关性不强,因此,可相对于s随机选取一个交易作为其下一时刻的状态s’。r为动作a的回报值,如上文所述,在本说明书实施例中,当交易的套现预测值与套现标签值一致时,r为交易s的交易金额,当交易的套现预测值与套现标签值不一致时,r为交易s的交易金额的负数。表示Q函数在状态取为s’时所获得的与各个动作对应的Q值中的最大值。通常,将公式(3)中的α取1,从而可将上述公式(3)简化为下面的公式(4):
如公式(4)所示,通过获取动作a的回报值r和下一个状态s’的Q值的最大值,即可计算更新的Q(s,a)的值。从而,在训练DQN网络时,可将通过公式(3)或(4)计算得到的Q值Q(s,a)作为该DQN网络输出的Q值预测值q(s,a)的标签值。
图3示出了根据本说明书实施例的Q学习算法的实现步骤,即上述公式(4)的实现步骤,包括以下步骤S302~S312,这些步骤通过图1所示的系统100实施。
在步骤S302,获取第一交易的第一交易信息s1和第一套现标签值b1,其中所述第一交易信息s 1中包括交易金额,所述第一套现标签值b1指示所述第一交易是否被标定为套现交易。其中,第一交易信息s 1如上文所述获取,第一套现标签值b1与所述第一交易信息s1一起获取,其为业务(例如花呗业务)数据中的第一交易的历史标定数据。
在步骤S304,获取第二交易的第二交易信息s2和第二套现标签值b2,所述第二套现标签值b2指示所述第二交易是否被标定为套现交易。第二交易信息即为上述公式(3)或(4)中的下一时刻状态s’。由于在本说明书实施例的场景中,例如,对于花呗中的交易,交易与交易之间的相关性不是很强,只是存在一定的时间相关性,就是说,一定时间段内的交易数据存在一定的相似性。因此,可以选定预定时段内的交易数据作为一批待处理数据。例如,可选取一天内的交易数据,选取半天内的交易数据等。在该预定时段内交易数据中,在选定第一交易以获取第一交易的相关数据(s1,b1)之后,可随机选取第二交易,从而获取第二交易的相关输入(s2,b2)。当然,本说明书中对第二交易的选取方式不限于随机选取,例如,也可以通过根据预定时段内的交易的时刻顺序进行顺序选取,从而获取第二交易的相关数据。
在步骤S306,对所述第一DQN网络输入所述第一交易信息s 1,以获取上述第一套现预测值a1。
在步骤S308,基于所述第一套现预测值a1、第一套现标签值b1和所述交易金额,确定所述第一交易的回报值r。也就是说,假设第一交易的交易金额为R,则当a1=b1的情况中,r=R,当a1≠b1的情况中,r=-R。这里,a1、b1以及上述a2的取值可以是一维数值的或二维向量。例如,可以设定其的取值为0时,对应的交易为套现交易,取值为1时,对应的交易为非套现交易。或者,通过独热编码(one hot encoder)的编码方式,将其的取值转换为二维向量,例如设定其的取值为(1,0)时,对应的交易的为套现交易,取值为(0,1)时,对应的交易为非套现交易。
如参考图1所述,在图1中的样本准备单元13中确定回报值r,样本准备单元13从策略单元12接收第一交易的套现预测值a1,从系统外部接收第一交易的套现标签值b2和交易金额(例如被包含在s1中),从而基于a1、b2和交易金额确定第一交易的动作a1的回报值r。在确定r之后,一方面,样本准备单元13利用r计算下面的第一交易的Q值标签值Q(s1,a1)。另一方面,将r值发送给图1中的评估单元16。评估单元16在接收第一交易的回报值r之后,对系统的总回报值累加r,从而可以该总回报值评估系统的学习能力。总的回报值会随着训练迭代次数不断增加,并在模型收敛后稳定在固定的值附近。
在步骤S310,对所述第一DQN网络输入所述第二交易信息s2,以基于所述第二套现标签值b2获取与所述第二交易信息s2和所述第二套现标签值b2对应的第二Q值预测值q(s2,b2)。在对所述第一DQN网络输入第二交易信息s2之后,第一DQN网络输出与s2对应的Q值预测值向量q(s2),该向量q(s2)为二维向量,即,其包括两个Q值预测值(q1,q2),可设定例如q1对应于交易为套现交易的动作,q2对应于交易为非套现交易的动作。在例如第二套现标签值b2为独热码的情况中,例如(0,1),将q(s2)与b2进行对位相乘,即(q1×0,q2×1),从而获得二维的联合表征向量,例如(0,q2)。从而,可通过对表征向量包括的两个Q值取最大值(即非零Q值)作为第二Q值预测值q(s2,b2),例如在表征向量为(0,q2)的情况中,q(s2,b2)=q2。
在步骤S312,基于所述回报值r和与所述第二Q值预测值q(s2,b2),计算与所述第一交易信息s1和所述第一套现预测值a1对应的Q值标签值Q(s1,a1)。参考上述公式(4)可以得出,Q(s1,a1)与动作a1的回报值r相关,还与s1的下一时刻状态(即s2)的Q值预测值的最大值相关。而在本说明书实施例中,将输入s2获得的Q值预测值向量与b2的独热码进行对位相乘,并对其取最大值,以获得q(s2,b2),并以q(s2,b2)作为公式(4)中的进行计算。这是因为,由于b2为s2标签值,也就是说,b2对应的Q值,也即q(s2,b2)根据Q学习算法理论上应该是q(s2)包括的Q值中的最大值,因此将人为取定为q(s2,b2),以对Q值标签值Q(s1,a1)进行修正。从而,基于r和q(s2,b2),根据公式(4)可计算与s1和a1对应的Q值标签值Q(s1,a1)。
在图1所示的系统100中,在样本准备单元13中进行对Q值标签值Q(s1,a1)的计算,而样本准备单元13通过将上述计算获得的第一交易的套现预测值a1、Q值标签值Q(s1,a1)和从外部输入的第一交易信息s1集合到一起可准备一个训练样本,即(s1,a1,Q(s1,a1))。该训练样本可直接输入图1中的第二DQN网络15以训练该网络。即,第二DQN网络15可从样本准备单元13直接获取训练样本。
然而,如果在训练中的状态转移过程中各个状态非独立同分布,会造成训练过程的不稳定。例如,在上述准备样本的过程中,通过选取一定时段内的第一交易(s1)和第二交易(s2)准备第一训练样本(s1,a1,Q1),通过选取该时段内的第三交易(s3),以准备第二训练样本(s2,a2,Q2),从而类似地,将该预定时段内的交易数据都准备为训练样本。而这些训练样本由于是同一个时段内的交易数据,因此训练样本与训练样本之间可能存在一定的相关性,尤其是,如果s1、s2、s3都是从交易数据中按照时刻的顺序选取的,则第一样本与第二样本、第二样本与第三样本可能存在更强的相关性。
在一个实施例中,通过使用样本队列来对训练DQN网络提供训练样本。如参考图1中所述,样本队列14顺序存储有固定数目的样本,例如,其可顺序存储分别对应于1000个交易的1000个样本。所述样本队列具有后进先出的特性。例如,在对系统100输入一批500个交易的数据,并根据上述过程准备了500个样本并顺序存入样本队列14之后,样本队列14删除其初始保存的前500个样本。第二DQN网络15可从样本队列14中随机选取一批(例如500个)样本进行模型训练。通过使用样本队列进行样本获取,队列中的数据会随着时间移动逐步更新,即保证了采样稳定性,抑制了由于相邻状态间的高关联带来的训练过程的波动,同时也保证了采样时效性。
再参考图2,在步骤S204,利用所述第一交易信息、所述第一套现预测值和所述Q值标签值训练所述第二DQN网络,使得:在对所述第二DQN网络输入所述第一交易信息和所述第一套现预测值之后,相比于训练前,所述第二DQN网络在训练后输出的Q值预测值与所述Q值标签值之差的绝对值减小,其中所述Q值预测值与所述第一交易信息和所述第一套现预测值对应。也就是说,在训练中,通过调整第二DQN网络15的网络参数(权重),使得第二DQN网络15的Q值预测值更逼近Q值标签值。
在该实施例中,采用随机梯度下降法(SGD)对卷积神经网络进行训练。然而,本说明书实施例中对卷积神经网络的训练不限于随机梯度下降法,例如,可以通过批量梯度下降法(BGD)、小批量梯度下降法(MBGD)、适应性动量估计法(Adam)、RMSprop法等本领域公知的优化算法进行训练。
在一个实施例中,通过上述公式(4)获得第一交易的Q值标签值Q(s1,a1)。损失函数采样MSE(均方误差),即损失函数L(s,a,θ)如下公式(5)所示:
其中,γ为0到1之间的因子,θ’为第一DQN网络11的网络参数,θ为第二DQN网络15的参数。
根据梯度下降法,通过如下公式(6)调整第二DQN网络15的参数θ。
其中α为调参的步幅,θt+1为第二DQN网络15在训练之后的参数取值,θt为第二DQN网络15在训练之前的参数取值。其中,如上文所述,公式(6)中即上述计算的第一交易的Q值标签值Q(s1,a1),Q(s,a;θ)中的s即为s1,a为上述第一交易的套现预测值a1,θ取值为θt。
在训练中,首先对第二DQN网络15输入第一交易信息s1,第一DQN网络依据当前参数输出对应的Q值预测值向量q(s1)。然后,根据a1的值,从向量q(s1)中获取与a1对应的Q值预测值q(s1,a1)。从而将Q(s1,a1)、q(s1,a1)、s1、a1和θt代入上述公式(6),计算得出更新的参数θt+1。
在该实施例中,通过随机梯度下降法,对于每个样本,只对θ进行一次调参,从而通过多个样本对θ进行多次调整,不断更新θ。而随着训练样本的更新,可根据不同时段的样本特征实时更新第二DQN网络15。第二DQN网络15可在进行预定次数(例如几千次、千万次等等)的训练之后将参数迁移给第一DQN网络11。从而使得该模型根据时间窗口得到实时训练,并适用于对当前时间窗口的交易数据进行预测。
图4示出了根据本说明书实施例的套现识别方法,包括:
在步骤S402,获取交易的交易信息;以及
在步骤S404,对通过根据上述训练套现识别模型的方法训练获取的套现识别模型输入所述交易信息,以输出所述交易的套现预测值,所述套现预测值指示所述交易是否被预测为套现交易。
如参考图1所述,在步骤S402,获取第三交易的交易信息s3。第三交易信息s3可从模型外部的环境系统获取,或者,可通过从数据源(例如存储花呗业务数据的当前交易数据库)直接获取。与第一交易信息s1类似地,第三交易信息s3例如在花呗业务中为在线支付交易的相关特征,包括交易属性特征(交易自身的特征)、买家特征、卖家特征、物流特征等。通常,第三交易信息s3以特征向量的形式输入模型,s3向量的各个维度即为上述相关特征,如交易属性特征、买家特征等等。然而,第三交易信息s3不限于以特征向量的形式输入,例如,其可以以特征表格的形式输入模型,以便于计算。
在步骤S404,对通过根据上述训练套现识别模型的方法训练获取的套现识别模型输入所述交易信息,以输出所述交易的套现预测值,所述套现预测值指示所述交易是否被预测为套现交易。在对所述套现识别模型输入所述第三交易信息s3之后,所述第三交易信息s3被输入图1中的第一DQN网络11。第一DQN网络基于s3向策略单元12输出与所述第三交易信息s3对应的二维的Q值预测值向量q(s3)。在策略单元12中,如上文所述,根据例如ε-贪婪策略,基于所述Q值预测值向量q(s3)获取所述交易的套现预测值a3,并将a3作为模型预测结果输出。
图5示出一种训练套现识别模型的装置500,所述套现识别模型包括第一DQN网络和第二DQN网络,所述装置包括:
获取单元51,配置为,获取第一交易的第一交易信息、第一交易的第一套现预测值、以及与所述第一交易信息和第一套现预测值对应的Q值标签值,其中,所述第一套现预测值通过对所述第一DQN网络输入所述第一交易信息而计算得出,并且所述第一套现预测值指示所述第一交易是否被预测为套现交易,以及其中,所述Q值标签值通过使用Q学习算法基于所述第一DQN网络的输出和第一交易的第一套现标签值计算得出,其中所述第一DQN网络的输出包括对所述第一DQN网络输入所述第一交易信息的输出、和对所述第一DQN网络输入第二交易的第二交易信息的输出,所述第一套现标签值指示所述第一交易是否被标定为套现交易;以及
训练单元52,配置为,利用所述第一交易信息、所述第一套现预测值和所述Q值标签值训练所述第二DQN网络,使得:在对所述第二DQN网络输入所述第一交易信息和所述第一套现预测值之后,相比于训练前,所述第二DQN网络在训练后输出的Q值预测值与所述Q值标签值之差的绝对值减小,其中所述Q值预测值与所述第一交易信息和所述第一套现预测值对应。
在一个实施例中,所述训练套现识别模型的装置500还包括Q学习算法实现单元53,所述Q学习算法实现单元53包括以下子单元:第一获取子单元531,配置为,获取第一交易的第一交易信息和第一交易的第一套现标签值,其中所述第一交易信息中包括交易金额,所述第一套现标签值指示所述第一交易是否被标定为套现交易;第二获取子单元532,配置为,获取第二交易的第二交易信息和第二交易的第二套现标签值,所述第二套现标签值指示所述第二交易是否被标定为套现交易;第三获取子单元533,配置为,对所述第一DQN网络输入所述第一交易信息,以获取所述第一套现预测值;确定单元534,配置为,基于所述第一套现预测值、第一套现标签值和所述交易金额,确定所述第一交易的回报值;第四获取子单元535,配置为,对所述第一DQN网络输入所述第二交易信息,以获取对应于所述第二交易信息和所述第二套现标签值的第二Q值预测值;以及计算单元536,配置为,基于所述回报值和与所述第二Q值预测值,计算与所述第一交易信息和所述第一套现预测值对应的Q值标签值。
在一个实施例中,在所述训练套现识别模型的装置500中,所述套现识别模型还包括样本队列,其中,所述样本队列顺序存储有固定数目的样本,并且,所述样本队列在接收预定数目的样本时删除其排在前面的所述预定数目的已有样本,以及其中,所述获取单元51还配置为,从所述样本队列随机获取第一样本,所述第一样本包括第一交易的第一交易信息、第一交易的第一套现预测值、以及与所述第一交易信息和第一套现预测值对应的Q值标签值。
在一个实施例中,在所述训练套现识别模型的装置500中,所述训练单元52还配置为,利用所述第一交易信息、所述第一套现预测值和所述Q值标签值,通过随机梯度下降法训练所述第二DQN网络。
在一个实施例中,在所述训练套现识别模型的装置500中,第一获取子单元531还配置为,对所述第一DQN网络输入所述第一交易信息以输出与所述第一交易信息对应的Q值预测值的二维向量,以及,根据ε-贪婪策略,基于所述向量获取第一套现预测值。
在一个实施例中,在所述训练套现识别模型的装置500中,第四获取子单元535还配置为:对所述第一DQN网络输入所述第二交易信息,以获取与所述第二交易信息对应的二维的Q值预测值向量;通过对所述第二套现标签值进行独热编码,以获取二维的第二套现标签值向量;将所述Q值预测值向量与所述第二套现标签值向量进行对位相乘,以获取二维的联合表征向量;以及获取所述联合表征向量中的非零Q值作为所述第二Q值预测值。
在一个实施例中,在所述训练套现识别模型的装置500中,所述确定单元534还配置为,在所述第一套现预测值与所述第一套现标签值一致的情况中,确定所述第一交易的回报值等于所述交易金额,在所述第一套现预测值与所述第一套现标签值不一致的情况中,确定所述第一交易的回报值等于所述交易金额的负数。
在一个实施例中,所述训练套现识别模型的装置500还包括累加单元54,配置为,在基于所述第一套现预测值、第一套现标签值和交易金额,确定所述第一交易的回报值之后,对所述模型的总回报值累加所述第一交易的回报值。
图6示出一种套现识别装置600,包括:获取单元61,配置为,获取交易的交易信息;以及预测单元62,配置为,对通过根据上述训练方法训练获取的套现识别模型输入所述交易信息,以获取所述交易的套现预测值,所述套现预测值指示所述交易是否被预测为套现交易。
在一个实施例中,在所述套现识别装置600中,所述预测单元62还配置为,对所述套现识别模型输入所述交易信息,以获取与所述交易信息对应的二维的Q值预测值向量,以及,根据ε-贪婪策略,基于所述Q值预测值向量获取所述交易的套现预测值。
通过根据本说明书实施例的套现识别方案,将DQN强化学习机制引入套现交易识别中,将交易相关的特征作为输入模型的状态,将交易标签作为输入模型的套现标签值,将交易金额作为模型做出动作选择后可以获取的回报,从而建立了端对端的交易识别系统。针对套现识别与模型训练分别建立DQN网络,模型训练网络参数随着训练过程实时更新,并每隔一定的迭代次数将其参数迁移给套现识别DQN。通过将交易的金额作为强化学习模型的回报,将金额纳入学习过程中,模型如果能够正确地识别大额的套现交易将可获得较大的正收益,如果误判则会造成较大的负收益,因此模型针对大额交易的处理将会更加的谨慎,这种机制更加符合业务的需要。通过使用深度神经网络作为值函数的逼近函数,神经网络的训练采用分批次小批量输入的方式进行。对于增量样本数据,皆可使用该机制训练,有助于降低模型更新迭代的时间开销与资源开销,加快模型的收敛速度。通过使用经验回放、随机采样和批量数据训练机制,即通过固定长度的记忆队列存储训练数据,新的时刻的训练样本会将历史时刻的样本挤出,实现了按时间窗口采样的效果;随机采样则保证了样本在时间维度上的相对随机性。
上述对本说明书特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
本领域普通技术人员应该还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执轨道,取决于技术方案的特定应用和设计约束条件。本领域普通技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
结合本文中所公开的实施例描述的方法或算法的步骤可以用硬件、处理器执轨道的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的存储介质中。
以上所述的具体实施方式,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施方式而已,并不用于限定本发明的保护范围,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。