用于对交易风险数据进行风险聚类的方法及装置
技术领域
本说明书的实施例涉及交易风险处理领域,具体地,涉及一种用于对交易风险数据进行风险聚类的方法及装置。
背景技术
在涉及比如欺诈交易的交易风险防控中,需要对交易风险的风险类别进行归类,以便分别采取适当的防控方案。
在对交易风险的风险类别进行归类时,传统的方法是利用无监聚类算法进行聚类,例如k均值(k-means)算法。K-means算法依赖于样本间距离的定义,当样本的各个维度特征度量单位相差较大时定义合适的距离函数比较困难。例如年龄的单位为年,交易金额的单位为元,不具有可比性,直接计算一个用户的年龄+交易金额与另一个用户的年龄+交易金额的欧氏距离进行聚类效果有限。现有的方案是通过特征向量归一化的方法对不同单位的特征进行单位归一化处理,这种方法将不同单位的特征取值直接利用函数变换转换为统一单位,是数字上的转换技巧,丢失了实际业务信息,所得到的归类效果比直接聚类的归类效果改进有限。
发明内容
鉴于上述问题,本说明书的实施例提供一种用于对交易风险数据进行风险聚类的方法及装置。利用该方法及装置,能够提高交易风险数据聚类的聚类效率。
根据本说明书实施例的一个方面,提供一种用于对交易风险数据进行风险聚类的方法,包括:从交易风险数据中提取出第一多个风险特征维度数据;将所述第一多个风险特征维度数据提供给风险预测模型来进行风险预测,所述风险预测模型是有监预测模型;确定各个风险特征维度数据的特征贡献度;以及基于所述各个风险特征维度数据的特征贡献度,使用无监聚类算法来对所述交易风险数据进行风险聚类。
可选地,在上述方面的一个示例中,所述特征贡献度可以是利用解释模型确定出的。
可选地,在上述方面的一个示例中,所述解释模型可以包括利用下述算法中的一种算法得到的解释模型:Permutation Importance;Lime;SHAP;Infocode。
可选地,在上述方面的一个示例中,在所述解释模型是使用SHAP算法得到的解释模型时,确定各个风险特征维度数据的特征贡献度向量可以包括:针对所述第一多个风险特征维度数据中的每个风险特征维度数据,从所述第一多个风险维度数据中去除该风险特征维度数据,以得到对应的第二多个风险特征维度数据;获取所述第二多个风险特征维度数据的所有可能的风险特征维度数据组合;将该风险特征维度数据分别与各个可能的风险特征维度数据组合进行组合,以生成对应的第三多个风险特征维度数据;针对各个可能的风险特征维度数据组合,将该风险特征维度数据组合以及对应的第三多个风险特征维度数据分别提供给所述风险预测模型,以得到第一风险预测值和第二风险预测值;计算所述第一风险预测值和所述第二风险预测值的几率对数差;以及基于所得到的与各个风险特征维度数据组合对应的几率对数差,确定该风险特征数据的特征贡献度。
根据本说明书实施例的另一方面,提供一种用于对交易风险数据进行风险聚类的装置,包括:风险特征提取单元,从交易风险数据中提取出第一多个风险特征维度数据;风险预测单元,将所述第一多个风险特征维度数据提供给风险预测模型来进行风险预测,所述风险预测模型是有监预测模型;特征贡献度确定单元,确定各个风险特征维度数据的特征贡献度;以及风险聚类单元,基于所述各个风险特征维度数据的特征贡献度,使用无监聚类算法来对所述交易风险数据进行风险聚类。
可选地,在上述方面的一个示例中,所述特征贡献度可以是利用解释模型确定出的。
可选地,在上述方面的一个示例中,所述解释模型可以包括利用下述算法中的一种算法得到的解释模型:Permutation Importance;Lime;SHAP;Infocode。
可选地,在上述方面的一个示例中,在所述解释模型是使用SHAP算法得到的解释模型时,所述特征贡献度确定单元可以包括:维度数据确定模块,针对所述第一多个风险特征维度数据中的每个风险特征维度数据,从所述第一多个风险维度数据中去除该风险特征维度数据,以得到对应的第二多个风险特征维度数据;维度数据组合获取模块,针对所述第一多个风险特征维度数据中的每个风险特征维度数据,获取对应的第二多个风险特征维度数据的所有可能的风险特征维度数据组合;风险特征组合模块,针对所述第一多个风险特征维度数据中的每个风险特征维度数据,将该风险特征维度数据分别与各个风险特征维度数据组合进行组合,以生成对应的第三多个风险特征维度数据;预测差值计算模块,针对所述第一多个风险特征维度数据中的每个风险特征维度数据所对应的各个风险特征维度数据组合,将该风险特征维度数据组合以及对应的第三多个风险特征维度数据分别提供给所述风险预测模型,以得到第一风险预测值和第二风险预测值;并且计算所述第一风险预测值和所述第二风险预测值的几率对数差;以及特征贡献度确定模块,针对所述第一多个风险特征维度数据中的每个风险特征维度数据,基于所得到的与各个风险特征维度数据组合对应的几率对数差,确定该风险特征数据的特征贡献度。
根据本说明书实施例的另一方面,提供一种计算设备,包括:至少一个处理器;以及存储器,所述存储器存储指令,当所述指令被所述至少一个处理器执行时,使得所述至少一个处理器执行如上所述的用于对交易风险数据进行风险聚类的方法。
根据本说明书实施例的另一方面,提供一种机器可读存储介质,其存储有可执行指令,所述指令当被执行时使得所述机器执行如上所述的用于对交易风险数据进行风险聚类的方法。
附图说明
通过参照下面的附图,可以实现对于本说明书实施例的内容的本质和优点的进一步理解。在附图中,类似组件或特征可以具有相同的附图标记。附图是用来提供对本说明书的实施例的进一步理解,并且构成说明书的一部分,与下面的具体实施方式一起用于解释本说明书的实施例,但并不构成对本说明书的实施例的限制。在附图中:
图1示出了根据本说明书的实施例的用于对交易风险数据进行风险聚类的方法的流程图;
图2示出了根据本说明书的实施例的用于确定特征贡献度的过程的一个示例的流程图;
图3示出了根据本说明书的实施例的用于对交易风险数据进行风险聚类的装置的方框图;
图4示出了根据本说明书的实施例的特征贡献度确定单元的一个示例的方框图;
图5示出了根据本说明书的实施例的用于对交易风险数据进行风险聚类的计算设备的硬件结构图。
具体实施方式
以下将参考示例实施方式讨论本文描述的主题。应该理解,讨论这些实施方式只是为了使得本领域技术人员能够更好地理解从而实现本文描述的主题,并非是对权利要求书中所阐述的保护范围、适用性或者示例的限制。可以在不脱离本说明书内容的保护范围的情况下,对所讨论的元素的功能和排列进行改变。各个示例可以根据需要,省略、替代或者添加各种过程或组件。另外,相对一些示例所描述的特征在其它例子中也可以进行组合。
如本文中使用的,术语“包括”及其变型表示开放的术语,含义是“包括但不限于”。术语“基于”表示“至少部分地基于”。术语“一个实施例”和“一实施例”表示“至少一个实施例”。术语“另一个实施例”表示“至少一个其他实施例”。术语“第一”、“第二”等可以指代不同的或相同的对象。下面可以包括其他的定义,无论是明确的还是隐含的。除非上下文中明确地指明,否则一个术语的定义在整个说明书中是一致的。
现在结合附图来描述本说明书实施例的用于对交易风险数据进行风险聚类的方法及装置。
图1示出了根据本说明书的实施例的用于对交易风险数据进行风险聚类的方法100的流程图。
如图1所示,在接收到交易风险数据后,例如,接收到用户提交的交易风险数据或者经由比如第三方机构的其它实体提交的交易风险数据,在块110,从交易风险数据中提取出第一多个风险特征维度数据。这里,所提取出的风险特征维度是创建风险预测模型时所选择的特征维度,并且所提取出的风险特征维度是创建风险预测模型时所选择的特征维度的数目。所述风险特征例如可以但不局限于是用户年龄、交易金额、用户性别等。可选地,第一多个风险特征维度数据可以采用特征向量的形式表示。例如,所述第一多个风险特征可以采用规定的顺序组成特征向量。
在提取出第一多个风险特征维度数据后,在块120,将第一多个风险特征维度数据提供给风险预测模型来进行风险预测。这里,风险预测模型是有监预测模型,用于预测该交易风险数据是否具有风险,比如,预测具有风险的概率。在本说明书的实施例中,风险预测模型例如可以是但不局限于决策树、神经网络、支持向量机或贝叶斯分类器等。该风险预测模型是利用交易风险样本数据训练得到的,每个交易风险样本数据具有多个风险风险维度数据,并且被标注有用于指示该交易风险样本数据是否具有风险的标签。在本说明书的实施例中,风险预测模型例如可以是用于预测交易欺诈风险的风险预测模型。
然后,在块130,确定各个风险特征维度数据的特征贡献度。在本说明书实施例的一个示例中,所述特征贡献度可以是利用解释模型确定出的。所述解释模型可以包括利用下述算法中的一种算法得到的解释模型:Permutation Importance;Lime(LocalInterpretable Model-Agnostic Explanations);SHAP(SHapley AdditiveexPlanations)和Infocode。关于如何确定各个风险特征维度数据的特征贡献度,将在下面参照图2示出的一个示例来进行详细描述。
在得到各个风险特征维度数据的特征贡献度后,在块140,基于各个风险特征维度数据的特征贡献度,使用无监聚类算法(或者无监聚类模型)来对交易风险数据进行风险聚类。所述无监聚类算法例如可以是k均值(k-means)算法或者其它适用的无监聚类算法。在本说明书实施例的一个示例中,所得到的各个风险特征维度数据的特征贡献度也可以采用特征贡献度向量的形式,然后使用无监聚类算法来进行风险聚类。
图2示出了根据本说明书的实施例的用于确定特征贡献度的过程的一个示例的流程图。图2中所示出的示例所使用的解释模型是使用SHAP算法得到的解释模型。
如图2所示,首先,在块210,选择第一多个风险特征维度数据中的第一个风险特征维度数据,作为初始处理的风险特征维度(即,下文中提及的当前风险特征维度)。这里要说明的是,在本说明书的实施例的其它示例中,也可以从第一多个风险特征维度数据中随机选择一个风险特征维度数据,作为初始处理的风险特征维度。
然后,在块220,从第一多个风险维度数据中去除该当前风险特征维度数据,以得到与该当前风险特征维度数据对应的第二多个风险特征维度数据。例如,假设第一多个风险维度数据包括5个维度数据a1,a2,a3,a4和a5,当前风险维度数据为a1,则第二多个风险特征维度数据为a2,a3,a4和a5。
接着,在块230,获取第二多个风险特征维度数据的所有可能的风险特征维度数据组合。在一个示例中,可以通过使用遍历的方式来获取第二多个风险特征维度数据的所有可能的风险特征维度数据组合。例如,假设第二多个风险特征维度数据为a2,a3,a4和a5,则所有可能的风险特征维度数据组合包括:{NULL},{a2},{a3},{a4},{a5},{a2,a3},{a2,a4},{a2,a5},{a3,a4},{a3,a5},{a4,a5},{a2,a3,a4},{a2,a3,a5},{a2,a4,a4},{a3,a4,a5},{a2,a3,a4,a5}。
在如上得出所有可能的风险特征维度数据组合后,在块240,将该风险特征维度数据分别与各个可能的风险特征维度数据组合进行组合,以生成对应的第三多个风险特征维度数据。例如,将风险特征维度数据a1与所有可能的风险特征维度数据组合{a2},{a3},{a4},{a5},{a2,a3},{a2,a4},{a2,a5},{a3,a4},{a3,a5},{a4,a5},{a2,a3,a4},{a2,a3,a5},{a2,a4,a4},{a3,a4,a5},{a2,a3,a4,a5}分别进行组合,以得到与各个风险特征维度数据组合对应的第三多个风险特征维度数据,即,{a1,a2},{a1,a3},{a1,a4},{a1,a5},{a1,a2,a3},{a1,a2,a4},{a1,a2,a5},{a1,a3,a4},{a1,a3,a5},{a1,a4,a5},{a1,a2,a3,a4},{a1,a2,a3,a5},{a1,a2,a4,a4},{a1,a3,a4,a5},{a1,a2,a3,a4,a5}。
然后,在块250,计算当前风险特征维度数据的与各个可能的风险特征维度数据组合对应的几率对数差。例如,计算风险特征维度数据a1的与各个可能的风险特征维度数据组合对应的几率对数差。
具体地,针对各个可能的风险特征维度数据组合,首先,将该可能的风险特征维度数据组合以及对应的第三多个风险特征维度数据分别提供给风险预测模型,以得到第一风险预测值和第二风险预测值。例如,将特征组合1{a2}和对应的第三多个风险特征维度数据{a1,a2}分别提供给风险预测模型,以得到第一风险预测值P1和第二风险预测值P2。
随后,计算第一风险预测值和第二风险预测值的几率对数差。例如,假设,第一风险预测值为P1,第二风险预测值为P2,则几率对数差为ΔP=logodd(P2)-logodd(P1)=log(P2/(1-P2))-log(P1/(1-P1)),其中logodd称为几率对数。
在得到与各个可能的风险特征维度数据组合对应的几率对数差后,在块260,基于所得到的与各个可能的风险特征维度数据组合对应的几率对数差,确定该风险特征数据的特征贡献度,即,Shap值。
例如,在一个示例中,可以通过计算所得到的与各个可能的风险特征维度数据组合对应的几率对数差的均值,作为该风险特征数据的特征贡献度。
在另一示例中,可以为各个特征组合赋予权重,并且通过对所得到的与各个可能的风险特征维度数据组合对应的几率对数差进行加权平均,来得到该风险特征数据的特征贡献度。
要说明的是,所有风险特征数据的Shap值之和等于风险预测模型的预测值的logodd(P)。这里,logodd(P)=log(P/(1-P)),其中,P是风险预测模型给出的预测概率。
如上参照图1和图2描述了根据本说明书的实施例的用于对交易风险数据进行风险聚类的方法。
利用该方法,通过使用各个风险特征的特征贡献度来替代风险特征的特征值来进行风险聚类,从而对风险特征的特征空间进行了归一化,由此避免由于各个风险特征的特征度量单位不统一导致的问题。此外,在使用特征贡献度对风险特征进行归一化处理时,由于每个特征贡献度变化1个单位,意味着预测值的logodd也变化1个单元,从而使得这种归一化处理后的结果具有可解释的物理意义。
图3示出了根据本说明书的实施例的用于对交易风险数据进行风险聚类的风险聚类装置300的方框图。
如图3所示,风险聚类装置300包括风险特征提取单元310、风险预测单元320、特征贡献度确定单元330和风险聚类单元340。
风险特征提取单元310被配置为从交易风险数据中提取出第一多个风险特征维度数据。风险特征提取单元310的操作可以参考上面参照图1描述的块110的操作。
风险预测单元320被配置为将第一多个风险特征维度数据提供给风险预测模型来进行风险预测,所述风险预测模型是有监预测模型。风险预测单元320的操作可以参考上面参照图1描述的块110的操作。
特征贡献度确定单元330被配置为确定各个风险特征维度数据的特征贡献度。特征贡献度确定单元330的操作可以参考上面参照图1描述的块130的操作。
风险聚类单元340被配置为基于各个风险特征维度数据的特征贡献度,使用无监聚类算法来对交易风险数据进行风险聚类。风险聚类单元340的操作可以参考上面参照图1描述的块140的操作。
在本说明书实施例的一个示例中,特征贡献度确定单元可以利用解释模型来确定出各个风险特征维度数据的特征贡献度。此外,所述解释模型可以包括利用下述算法中的一种算法得到的解释模型:Permutation Importance;Lime;SHAP和Infocode。
图4示出了根据本说明书的实施例的特征贡献度确定单元400的一个示例的方框图。图2中所示出的示例所使用的解释模型是使用SHAP算法得到的解释模型。
如图4所示,特征贡献度确定单元400包括维度数据确定模块410、维度数据组合获取模块420、风险特征组合模块430、预测差值计算模块440和特征贡献度确定模块450。
维度数据确定模块410被配置为针对第一多个风险特征维度数据中的每个风险特征维度数据,从第一多个风险维度数据中去除该风险特征维度数据,以得到对应的第二多个风险特征维度数据。维度数据确定模块410的操作可以参考上面参照图2描述的块220的操作。
维度数据组合获取模块420被配置为针对第一多个风险特征维度数据中的每个风险特征维度数据,获取对应的第二多个风险特征维度数据的所有可能的风险特征维度数据组合。维度数据组合获取模块420的操作可以参考上面参照图2描述的块230的操作。
风险特征组合模块430被配置为针对第一多个风险特征维度数据中的每个风险特征维度数据,将该风险特征维度数据分别与各个对应的风险特征维度数据组合进行组合,以生成对应的第三多个风险特征维度数据。风险特征组合模块430的操作可以参考上面参照图2描述的块240的操作。
预测差值计算模块440被配置为针对第一多个风险特征维度数据中的每个风险特征维度数据所对应的各个风险特征维度数据组合,将该风险特征维度数据组合以及对应的第三多个风险特征维度数据分别提供给所述风险预测模型,以得到第一风险预测值和第二风险预测值;并且计算所述第一风险预测值和所述第二风险预测值的几率对数差。预测差值计算模块440的操作可以参考上面参照图2描述的块250的操作。
特征贡献度确定模块450被配置为针对第一多个风险特征维度数据中的每个风险特征维度数据,基于所得到的与各个对应的风险特征维度数据组合对应的几率对数差,确定该风险特征数据的特征贡献度。特征贡献度确定模块450的操作可以参考上面参照图2描述的块260的操作。
如上参照图1到图4,对根据本说明书实施例的用于对交易风险数据进行风险聚类的方法及装置进行了描述。在以上对方法实施例的描述中所提及的细节,同样适用于本说明书实施例的风险聚类装置。上面的风险聚类装置可以采用硬件实现,也可以采用软件或者硬件和软件的组合来实现。
图5示出了根据本说明书的实施例的用于对交易风险数据进行风险聚类的计算设备500的硬件结构图。如图5所示,计算设备500可以包括至少一个处理器510、存储器(例如非易失性存储器)520、内存530和通信接口540,并且至少一个处理器510、存储器520、内存530和通信接口540经由总线560连接在一起。至少一个处理器510执行在存储器中存储或编码的至少一个计算机可读指令。
在一个实施例中,在存储器中存储计算机可执行指令,其当执行时使得至少一个处理器510:从交易风险数据中提取出第一多个风险特征维度数据;将所述第一多个风险特征维度数据提供给风险预测模型来进行风险预测,所述风险预测模型是有监预测模型;确定各个风险特征维度数据的特征贡献度;以及基于所述各个风险特征维度数据的特征贡献度,使用无监聚类算法来对所述交易风险数据进行风险聚类。
应该理解,在存储器中存储的计算机可执行指令当执行时使得至少一个处理器510进行本说明书的各个实施例中以上结合图1-4描述的各种操作和功能。
在本说明书的实施例中,计算设备500可以包括但不限于:个人计算机、服务器计算机、工作站、桌面型计算机、膝上型计算机、笔记本计算机、移动计算设备、智能电话、平板计算机、蜂窝电话、个人数字助理(PDA)、手持装置、消息收发设备、可佩戴计算设备、消费电子设备等等。
根据一个实施例,提供了一种比如机器可读介质的程序产品。机器可读介质可以具有指令(即,上述以软件形式实现的元素),该指令当被机器执行时,使得机器执行本说明书的各个实施例中以上结合图1-4描述的各种操作和功能。具体地,可以提供配有可读存储介质的系统或者装置,在该可读存储介质上存储着实现上述实施例中任一实施例的功能的软件程序代码,且使该系统或者装置的计算机或处理器读出并执行存储在该可读存储介质中的指令。
在这种情况下,从可读介质读取的程序代码本身可实现上述实施例中任何一项实施例的功能,因此机器可读代码和存储机器可读代码的可读存储介质构成了本说明书的一部分。
可读存储介质的实施例包括软盘、硬盘、磁光盘、光盘(如CD-ROM、CD-R、CD-RW、DVD-ROM、DVD-RAM、DVD-RW、DVD-RW)、磁带、非易失性存储卡和ROM。可选择地,可以由通信网络从服务器计算机上或云上下载程序代码。
本领域技术人员应当理解,上面公开的各个实施例可以在不偏离发明实质的情况下做出各种变形和修改。因此,本说明书的保护范围应当由所附的权利要求书来限定。
需要说明的是,上述各流程和各系统结构图中不是所有的步骤和单元都是必须的,可以根据实际的需要忽略某些步骤或单元。各步骤的执行顺序不是固定的,可以根据需要进行确定。上述各实施例中描述的装置结构可以是物理结构,也可以是逻辑结构,即,有些单元可能由同一物理实体实现,或者,有些单元可能分由多个物理实体实现,或者,可以由多个独立设备中的某些部件共同实现。
以上各实施例中,硬件单元或模块可以通过机械方式或电气方式实现。例如,一个硬件单元、模块或处理器可以包括永久性专用的电路或逻辑(如专门的处理器,FPGA或ASIC)来完成相应操作。硬件单元或处理器还可以包括可编程逻辑或电路(如通用处理器或其它可编程处理器),可以由软件进行临时的设置以完成相应操作。具体的实现方式(机械方式、或专用的永久性电路、或者临时设置的电路)可以基于成本和时间上的考虑来确定。
上面结合附图阐述的具体实施方式描述了示例性实施例,但并不表示可以实现的或者落入权利要求书的保护范围的所有实施例。在整个本说明书中使用的术语“示例性”意味着“用作示例、实例或例示”,并不意味着比其它实施例“优选”或“具有优势”。出于提供对所描述技术的理解的目的,具体实施方式包括具体细节。然而,可以在没有这些具体细节的情况下实施这些技术。在一些实例中,为了避免对所描述的实施例的概念造成难以理解,公知的结构和装置以框图形式示出。
本公开内容的上述描述被提供来使得本领域任何普通技术人员能够实现或者使用本公开内容。对于本领域普通技术人员来说,对本公开内容进行的各种修改是显而易见的,并且,也可以在不脱离本公开内容的保护范围的情况下,将本文所定义的一般性原理应用于其它变型。因此,本公开内容并不限于本文所描述的示例和设计,而是与符合本文公开的原理和新颖性特征的最广范围相一致。