基于共享数据的建模方法、装置、系统及电子设备
技术领域
本说明书涉及计算机应用领域,尤其涉及一种基于共享数据的建模方法、装置、系统及电子设备。
背景技术
在大数据时代,通过对海量数据进行挖掘,可以获得各种形式的有用信息,因此数据的重要性不言而喻。不同的机构都拥有各自的数据,但是任何一家机构的数据挖掘效果,都会受限于其自身拥有的数据数量和种类。针对该问题,一种直接的解决思路是:多家机构相互合作,将数据进行共享,从而实现更好的数据挖掘效果,实现共赢。
然而对于数据拥有方而言,数据本身是一种具有很大价值的资产,而且出于保护隐私、防止泄露等需求,数据拥有方往往并不愿意直接把数据提供出来,这种状况导致“基于共享数据的建模”在现实中很难实际运作。因此,如何在充分保证数据安全的前提下实现基于共享数据的建模,已经成为行业内备受关注的问题。
发明内容
本说明书提出一种基于共享数据的建模方法,包括:
接收多个数据提供方传输的用户数据;
基于各个数据提供方的信任等级对应的模糊化处理程度对接收到的用户数据中的关键字段的字段取值分别进行模糊化处理;
对模糊化处理完成的各个数据提供方传输的用户数据中的字段进行字段融合;其中,字段融合后的用户数据用于训练机器学习模型。
可选的,所述对模糊化处理完成的各个数据提供方传输的用户数据中的字段进行字段融合,包括:
对模糊化处理完成的各个数据提供方传输的用户数据中相对应的字段的字段取值进行求和;和/或,
将模糊化处理完成的各个数据提供方传输的用户数据中的字段添加到指定的字段区间。
可选的,还包括:
基于各个数据提供方对训练出的机器学习模型的历史贡献度,为各个数据提供方设置所述信任等级。
可选的,还包括:
基于字段融合后的用户数据构建训练样本;
基于所述训练样本对预设的机器学习模型进行训练,得到所述训练样本中各字段的权重值;其中,所述权重值表征各字段对所述机器学习模型的贡献度;
基于各个数据提供方传输的用户数据中所包含的各字段的权重值,为各数据提供方生成对应于所述机器学习模型的权重值;其中,对应于所述机器学习模型的权重值表征各数据提供方对所述机器学习模型的贡献度。
可选的,所述基于各个数据提供方传输的用户数据中所包含的各字段的权重值,为各数据提供方生成对应于所述机器学习模型的权重值之前,还包括:
确定与所述训练样本中的各字段对应的字段融合数量;
基于所述字段融合数量对所述训练样本中的各字段对应的权重值求平均值;
将所述平均值设置为各个数据提供方传输的用户数据中所包含的对应字段的权重值。
可选的,所述基于各个数据提供方传输的用户数据中所包含的各字段的权重值,为各数据提供方生成对应于所述机器学习模型的权重值,包括以下方式中的任一:
对各个数据提供方传输的用户数据中所包含的各字段的权重值进行加权计算,并将加权计算结果设置为各数据提供方对应于所述机器学习模型的权重值;
将各个数据提供方传输的用户数据中所包含的关键字段的权重值,设置为各数据提供方对应于所述机器学习模型的权重值;
对各个数据提供方传输的用户数据中所包含的各关键字段的权重值进行加权计算,并将加权计算结果设置为各数据提供方对应于所述机器学习模型的权重值。
本说明书还提出一种基于共享数据的建模装置,包括:
第一接收单元,接收多个数据提供方传输的用户数据;
处理单元,基于各个数据提供方的信任等级对应的模糊化处理程度对接收到的用户数据中的关键字段的字段取值分别进行模糊化处理;
第一融合单元,对模糊化处理完成的各个数据提供方传输的用户数据中的字段进行字段融合;其中,字段融合后的用户数据用于训练机器学习模型。
可选的,所述第一融合单元进一步:
对模糊化处理完成的各个数据提供方传输的用户数据中相对应的字段的字段取值进行求和;和/或,
将模糊化处理完成的各个数据提供方传输的用户数据中的字段添加到指定的字段区间。
可选的,还包括:
设置单元,基于各个数据提供方对训练出的机器学习模型的历史贡献度,为各个数据提供方设置所述信任等级。
可选的,还包括:
构建单元,基于字段融合后的用户数据构建训练样本;
训练单元,基于所述训练样本对预设的机器学习模型进行训练,得到所述训练样本中各字段的权重值;其中,所述权重值表征各字段对所述机器学习模型的贡献度;
生成单元,基于各个数据提供方传输的用户数据中所包含的各字段的权重值,为各数据提供方生成对应于所述机器学习模型的权重值;其中,对应于所述机器学习模型的权重值表征各数据提供方对所述机器学习模型的贡献度。
可选的,所述生成单元进一步:
在基于各个数据提供方传输的用户数据中所包含的各字段的权重值,为各数据提供方生成对应于所述机器学习模型的权重值之前,确定与所述训练样本中的各字段对应的字段融合数量;基于所述字段融合数量对所述训练样本中的各字段对应的权重值求平均值;将所述平均值设置为各个数据提供方传输的用户数据中所包含的对应字段的权重值。
可选的,所述生成单元进一步执行以下方式中的任一:
对各个数据提供方传输的用户数据中所包含的各字段的权重值进行加权计算,并将加权计算结果设置为各数据提供方对应于所述机器学习模型的权重值;
将各个数据提供方传输的用户数据中所包含的关键字段的权重值,设置为各数据提供方对应于所述机器学习模型的权重值;
对各个数据提供方传输的用户数据中所包含的各关键字段的权重值进行加权计算,并将加权计算结果设置为各数据提供方对应于所述机器学习模型的权重值。
本说明书还提出一种基于共享数据的建模方法,包括:
接收多个数据提供方传输的用户数据;其中,所述多个数据提供方传输的用户数据中的关键字段的字段取值,基于各数据提供方的信任等级对应的模糊化处理程度预先进行了模糊化处理;
对模糊化处理完成的各个数据提供方传输的用户数据中的字段进行字段融合;其中,字段融合后的用户数据用于训练机器学习模型。
可选的,所述对模糊化处理完成的各个数据提供方传输的用户数据中的字段进行字段融合,包括:
对模糊化处理完成的各个数据提供方传输的用户数据中相对应的字段的字段取值进行求和;和/或,
将模糊化处理完成的各个数据提供方传输的用户数据中的字段添加到指定的字段区间。
本说明书还提出一种基于共享数据的建模装置,包括:
第二接收单元,接收多个数据提供方传输的用户数据;其中,所述多个数据提供方传输的用户数据中的关键字段的字段取值,基于各数据提供方的信任等级对应的模糊化处理程度预先进行了模糊化处理;
第二融合单元,对模糊化处理完成的各个数据提供方传输的用户数据中相的字段进行字段融合;其中,字段融合后的用户数据用于训练机器学习模型。
可选的,第二融合单元进一步:
对模糊化处理完成的各个数据提供方传输的用户数据中相对应的字段的字段取值进行求和;和/或,
将模糊化处理完成的各个数据提供方传输的用户数据中的字段添加到指定的字段区间。
本说明书还提出一种基于共享数据的建模系统,包括:
多个数据提供方服务端,向建模方服务端传输用户数据;其中,所述多个数据提供方传输的用户数据中的关键字段的字段取值,由所述数据提供方或者建模方基于各数据提供方的信任等级对应的模糊化处理程度进行了模糊化处理;
建模方服务端,对模糊化处理完成的各个数据提供方传输的用户数据中的字段进行字段融合;其中,字段融合后的用户数据用于训练机器学习模型。
本说明书还提出一种电子设备,包括:
处理器;
用于存储机器可执行指令的存储器;
其中,通过读取并执行所述存储器存储的与基于共享数据的建模的控制逻辑对应的机器可执行指令,所述处理器被促使:
接收多个数据提供方传输的用户数据;
基于各个数据提供方的信任等级对应的模糊化处理程度对接收到的用户数据中的关键字段的字段取值分别进行模糊化处理;
对模糊化处理完成的各个数据提供方传输的用户数据中的字段进行字段融合;其中,字段融合后的用户数据用于训练机器学习模型。
本说明书还提出一种电子设备,包括:
处理器;
用于存储机器可执行指令的存储器;
其中,通过读取并执行所述存储器存储的与基于共享数据的建模的控制逻辑对应的机器可执行指令,所述处理器被促使:
接收多个数据提供方传输的用户数据;其中,所述多个数据提供方传输的用户数据中的关键字段的字段取值,基于各数据提供方的信任等级对应的模糊化处理程度预先进行了模糊化处理;
对模糊化处理完成的各个数据提供方传输的用户数据中的字段进行字段融合;其中,字段融合后的用户数据用于训练机器学习模型。
本说明书中,一方面,由于可以基于各个数据提供方的信任等级对应的模糊化处理程度,对多个数据提供方传输的用户数据中的关键字段的字段取值,来进行模糊化处理,因此对于一些信任等级较高的数据提供方而言,可以对用户数据中的一些关键字段采用轻度模糊化处理或者不进行模糊化处理,从而可以在兼顾数据隐私性保护的前提下,最大程度的保证各数据提供方共享的用户数据的数据可用性;
另一方面,由于在接收到多个数据方提供方传输的用户数据后,可以对各数据提供方传输的用户数据中的字段进行字段融合,因此对于各个数据提供方共享的用户数据而言,可以实现用户数据中的字段互补,从而最大程度的进行数据融合。
附图说明
图1是本说明书一实施例示出的一种基于共享数据的建模方法的流程图;
图2是本说明书一实施例示出的一种基于多个数据提供方传输的用户数据训练机器学习模型的示意图;
图3是本说明书一实施例示出的另一种基于共享数据的建模方法的流程图;
图4是本说明书一实施例示出的另一种基于多个数据提供方传输的用户数据训练机器学习模型的示意图;
图5是本说明书一实施例提供的承载基于共享数据的建模装置的电子设备所涉及的硬件结构图;
图6是本说明书一实施例提供的一种基于共享数据的建模装置的逻辑框图;
图7是本说明书一实施例提供的另一种基于共享数据的建模装置的逻辑框图。
具体实施方式
本说明书中,旨在提出一种在多个数据提供方将各自维护的用户数据“共享”至建模方进行机器学习模型训练的场景下,基于各个数据提供方的信任等级,对“共享”的用户数据中的关键字段的字段取值进行有选择的模糊化处理,以尽可能的保留原始的用户数据中的关键字段所携带的有效信息的技术方案。
在实现时,可以基于各个数据提供方的信任等级,对多个数据提供方需要“共享”至建模方的用户数据中的一些关键字段的字段取值进行模糊化处理;其中,对各关键字段的字段取值的模糊化处理程度可以与数据提供方的信任等级负相关;即信任等级越高,对关键字段的模糊化处理程度越低;例如,对于一些信任等级较高的数据提供方,可以对用户数据中的一些关键字段采用轻度模糊化处理或者不进行模糊化处理。
对于模糊化处理完成的各个数据提供方传输的用户数据,还可以进一步将各个数据提供方传输的用户数据中的字段进行字段融合;
例如,可以对模糊化处理完成的各个数据提供方传输的用户数据中相对应的字段的字段取值进行求和;和/或,将模糊化处理完成的各个数据提供方传输的用户数据中的字段添加到指定的字段区间;比如,可以初始化创建一个融合后的用户数据的标准化的数据结构,并规划出若干个字段区间,然后将各个数据提供方传输的用户数据中的字段,分别放置在指定的字段区间中。
当完成字段融合后,建模方可以基于字段融合后的用户数据来训练机器学习模型。
一方面,由于可以基于各个数据提供方的信任等级对应的模糊化处理程度,对多个数据提供方传输的用户数据中的关键字段的字段取值,来进行模糊化处理,因此对于一些信任等级较高的数据提供方而言,可以对用户数据中的一些关键字段采用轻度模糊化处理或者不进行模糊化处理,从而可以在兼顾数据隐私性保护的前提下,最大程度的保证各数据提供方共享的用户数据的数据可用性;
另一方面,由于在接收到多个数据方提供方传输的用户数据后,可以对各数据提供方传输的用户数据中的字段进行字段融合,因此对于各个数据提供方共享的用户数据而言,可以实现用户数据中的字段互补,从而最大程度的进行数据融合。
下面通过具体实施例并结合具体的应用场景进行详细描述。
请参考图1,图1是本说明书一实施例提供的一种基于共享数据的建模方法,应用于建模方服务端,执行以下步骤:
步骤102,接收多个数据提供方传输的用户数据;
步骤104,基于各个数据提供方的信任等级对应的模糊化处理程度对接收到的用户数据中的关键字段的字段取值分别进行模糊化处理;
步骤106,对模糊化处理完成的各个数据提供方传输的用户数据中的字段进行字段融合;其中,字段融合后的用户数据用于训练机器学习模型。
上述建模方,具体可以包括具有“共享”多个数据提供方维护的用户数据,来训练机器学习模型的业务需求的一方;而上述数据提供方,具体可以包括与上述建模方具有合作关系的一方。
在实际应用中,上述数据提供方和基于共享数据的建模方可以分别对应不同的运营方;例如,上述建模方可以是Alipay的数据运营平台,而上述数据提供方可以是与Alipay的数据运营平台对接的诸如电商平台、第三方银行、快递公司、其它金融机构、电信运营商等服务平台。
上述机器学习模型,具体可以包括基于任意类型的机器学习算法训练出的机器学习模型;
例如,在示出的一种实施方式中,以信贷发放的场景为例,上述机器学习模型具体可以是基于诸如逻辑回归等有监督的机器学习算法,训练出的一个可以用于决策用户是否为风险用户的用户风险评估模型。
上述用户数据,可以包括由若干个数据字段组成的,可以从中提取出用于训练机器学习模型的建模特征的用户数据;其中,在本说明书中,上述用户数据的具体形态和数据类型,不进行特别限定;
例如,在实际应用中,如果希望创建出一个用于对用户发起的贷款申请,进行风险评估的机器学习模型,上述用户数据则可以包括诸如用户的交易数据、购物记录、还款记录、消费记录、理财产品购买记录、银行流水记录、电信运营商的通话记录,等等用户数据。
上述关键字段,具体可以包括上述用户数据中记录了对机器学习模型的训练贡献较大的关键信息的数据字段(即原始的用户数据一些对模型训练而言比较有价值的字段);在实际应用中,上述关键字段,具体可以基于实际的建模需求来进行指定;例如,以训练一个用于对用户发起的贷款申请进行风险评估的机器学习模型为例,假设原始的用户数据中包含记录了用户的信用评分的信用评分字段,由于信用评分对于用户风险评估而言价值价值较大,那么此时该字段可以被指定为关键字段。
上述模糊化处理,具体可以包括任意类型到的对用户数据中各字段对应的字段取值进行加密,对用户数据中记录的信息进行隐私保护的处理方式;比如,通过一些特定的加密算法,对用户数据中的各字段的字段取值进行加密计算得到一个新的字段取值,然后将原始的字段取值替换为加密计算得到的新的字段取值。
在本说明书中,为了在兼顾数据隐私性保护的前提下,最大程度的保证各数据提供方共享的用户数据的数据可用性,可以基于各个数据提供方的信任等级,对各个数据提供方需要传输给建模方的用户数据中的关键字段进行有选择性的模糊化处理。
其中,各数据提供方,可以分别对应一个信任等级。上述信任等级,具体用于确定在对用户数据中的关键字段进行模糊化处理时的模糊化处理程度,可以与模糊化处理程度保持负相关的关系;即对于一个数据提供方而言,信任等级越高,则对该数据提供方传输的用户数据中的关键字段进行模糊化时的模糊化程度越低。
其中,与各个信任等级所对应的模糊化程度,可以由建模方基于实际的需求来进行控制,在本说明书中不进行特别限定;
例如,在一种实现方式中,可以将信任等级划分为高、中、低三个等级,对于信任等级为“高”的数据提供方,可以不对用户数据中的关键字段的字段取值进行模糊化处理;对于信任等级为“中”的数据提供方,可以用户数据中的关键字段的字段取值采用轻度的模糊化处理;而对于信任等级为“低”的数据提供方,可以采用重度的模糊化处理;或者直接将所有用户数据丢弃。
在本说明书中,与各数据提供方对应的信任等级,具体可以是各数据提供方与建模方协商出的一个初始化的信任等级,也可以是建模方基于各数据提供方传输的用户数据对训练出的机器学习模型的历史贡献度,为各数据提供方设置的一个信任等级。
或者,在实际应用中,各数据提供方可以采用协商出的信任等级作为初始化的信任等级,而建模方可以采用基于上述历史贡献度为各数据提供方设置的信任等级作为初始化的信任等级。
例如,在示出的一种实施方式中,对于数据提供方而言,可以通过与建模方进行协商的方式,协商出一个初始的信任等级。
而对于建模方而言,则可以基于各个数据提供方对最终训练出的机器学习模型的历史贡献度,为各个数据提供方设置一个信任等级;比如,建模方的服务端在设备冷启动后,可以读取之前的机器学习模型的训练结果,基于已经训练出的各字段的权重值为各个数据提供方生成一个对应于已经训练出的机器学习模型的权重值,作为各个数据提供方对上述机器学习模型的历史贡献度。其中,设置的信任等级与上述历史贡献度可以保持正相关的关系。即历史贡献度越高,对应的信任等级也越高。
当然,在实际应用中,如果是首次进行机器模型训练,无法取得各个数据提供方对机器学习模型的历史贡献度,建模方也可以直接将与各数据提供方协商出的信任等级设置为各数据提供方的信任等级。
在本说明书,各个数据提供方的服务端和建模方的服务端,可以均具有基于各数据提供方的信任等级,对各数据提供方传输的用户数据中的关键字段的字段取值进行模糊化处理的功能。
各个数据提供方在将原始的用户数据传输给建模方时,可以预先基于与建模方协商出的信任等级,对原始的用户数据中的关键字段的字段取值进行模糊化处理,然后将模糊化处理完成的用户传输给上述建模方,也可以直接将原始的用户数据传输给建模方,由建模方来完成以上示出的模糊化处理过程。
当上述建模方在收到各数据提供方传输的用户数据后,首先可以确定接收到的用户数据中的关键字段的字段取值,是否已经进行了模糊化处理;比如,可以由各数据提供方主动告知建模方,传输的用户数据中的关键字段的字段取值是否已经进行了上述模糊化处理以及对应的模糊化处理程度;或者,也可以通过解析各数据提供方传输的用户数据中关键字段的字段取值,来确定该字段取值是否已经进行了上述模糊化处理以及对应的模糊化处理程度。
一方面,如果建模方接收到的用户数据中的关键字段的字段取值,并没有进行模糊化处理,则可以基于为各数据提供方设置的信任等级,进一步对接收到的用户数据中的关键字段的字段取值进行模糊化处理。
另一方面,如果建模方接收到的用户数据中的关键字段的字段取值,已经进行了模糊化处理,则可以进一步确定各数据提供方传输的用户数据的模糊化处理程度,是否高于与建模方为各数据提供方设置的信任等级对应的模糊化处理程度;
如果任一数据提供方传输的用户数据的模糊化处理程度高于与建模方为该数据提供方设置的信任等级对应的模糊化处理程度,由于模糊化处理通常是不可逆的,因此在这种情况下,可以不对该数据提供方传输的用户数据中的关键字段的字段取值进行模糊化处理;
如果任一数据提供方传输的用户数据的模糊化处理程度低于与建模方为该数据提供方设置的信任等级对应的模糊化处理程度,在这种情况下,可以直接基于为该数据提供方设置的信任等级,对该数据提供方传输的用户数据中的关键字段的字段取值进行模糊化处理即可。
在本说明书中,当建模方对各数据提供方传输的用户数据中的关键字段的字段取值进行模糊化处理后,可以进一步对模糊化处理完成后的由各数据提供方传输的用户数据中的字段进行字段融合。
在本说明书中,字段融合具体可以是指对各数据提供方传输的用户数据中的字段中记录的信息进行整合的过程。
在示出的一种实施方式中,建模方在对各数据提供方传输的用户数据中相对应的字段进行字段融合时,具体可以采用以下两种方式中的任一,或者同时采用以下两种方式来完成:
在一种方式中,可以对模糊化处理完成的各个数据提供方传输的用户数据中相对应的字段(比如完全相同的字段)的字段取值进行求和,来完成字段融合;
例如,假设上述多个数据提供方为与上述建模方具有合作关系的多家银行,这些银行传输给建模方的用户数据中均包含“存款金额”字段,那么在这种情况下,建模方在进行字段融合时,可以将各银行传输的用户数据中的“存款金额”字段的字段取值进行相加,完成“存款金额”字段的融合。
在另一种实现方式中,可以将模糊化处理完成的各个数据提供方传输的用户数据中的字段添加到指定的字段区间,来完成字段融合;在这种情况下,可以初始化创建一个融合后的用户数据的标准数据结构,并在该数据结构中规划出若干个字段区间,然后将各个数据提供方传输的用户数据中的字段,分别放置在指定的字段区间中;
例如,假设各数据提供方传输的用户数据中,均包括“公积金字段”和“学历字段”,那么可以将融合后的用户数据的字段1-字段100字段规划为用于存放公积金信息的字段区间,将字段101-字段200规划为用于存放学历信息的字段区间。其中,需要补充说明的是,各数据提供方传输的用户数据中,分别采用以上示出的第一种方式和第二种方式进行字段融合的字段类型,在本说明书中不进行特别限定,在实际应用中,本领域技术人员可以基于实际的需求来确定;
例如,对于诸如“存款金额”字段,可以采用以上第一种方式对字段取值进行相加;对于诸如“公积金字段”以及“学历字段”,可以采用以上第二种方式分别添加到相同的字段区间。
在本说明书中,当建模方对各数据提供方传输的用户数据进行字段融合后,此时字段融合后得到的用户数据,可以用于训练机器学习模型。
由于在完成字段融合后,各数据提供方传输的用户数据中的字段中记录的信息已经进行了整合,因此基于字段融合后得到的用户数据来训练机器学习模型,将不会出现由于同一类信息在用户数据中的记录位置较离散而导致的训练出的模型不够精准的问题,有助于提升模型的建模精度。
在本说明书中,建模方在基于字段融合后的用户数据训练机器学习模型时,首先可以基于字段融合后的用户数据构建出若干训练样本;比如,在一种实现方式中,建模方可以从上述用户数据中,分别提取出若干个维度的数字字段(比如关键字段)作为建模特征,并基于提取出的这些维度的数据特征对应的字段取值生成一个数据特征向量作为训练样本;比如,可以从N条数据样本中分别提取出M个维度的数据特征为例,上述目标矩阵则可以是一个N*M维的矩阵。或者,在另一种实现方式中,建模方也可以默认将字段融合后的用户数据中,所有的字段均作为建模特征,来生成构建训练样本(即直接将字段融合后得到的用户数据作为训练样本)。
然后,可以基于构建出的训练样本生成一个样本集合,此时该样本集合即为最终参与模型训练的训练样本集,上述建模方可以基于该预设的训练样本集对机器学习模型进行训练,得到训练样本中各字段的最优权重值(即待训练的模型参数)。当各字段的最优权重值训练完毕,此时上述机器学习模型训练完成,该最优权重值可以用于表征各字段对机器学习模型的贡献度。
其中,需要说明的是,建模方在训练机器学习模型时所采用的机器学习算法,在本说明书中不进行特别限定。
例如,上述机器学习模型具体可以是LR(Logistic Regression,逻辑回归)模型。上述训练样本集中的每一条数据样本,可以分别携带一个预先标定的样本标签。其中,该样本标签的具体形态,通常也取决于具体的业务场景以及建模需求,在本说明书中也不进行特别限定;比如,如果希望创建出一个用于对用户发起的贷款申请进行风险评估的机器学习模型,那么上述样本标签则具体可以是一个用于指示该用户是否为风险用户的用户标签。
在这种情况下,建模方的服务端在基于LR算法训练机器学习模型时,通常可以采用损失函数(Loss Function)来评估训练样本和对应的样本标签之间的拟合误差。
在实现时,可以将训练样本和对应的样本标签作为输入值输入至损失函数中,并采用梯度下降法进行反复迭代计算,直至算法收敛,进而可以反向求解出训练样本和对应的样本标签之间的拟合误差最小时的模型参数(即训练样本中各个字段的最优权重值)的取值,然后将求解出的该模型参数的取值作为最优参数,来构建上述机器学习模型。
在实际应用中,由于用户数据中各个字段对最终训练出的机器学习模型的贡献度,通常用各字段对应于机器学习模型的权重值(即最终训练出的模型参数)来表征;因此,当上述机器学习模型训练完成后,建模方还可以基于基于各个数据提供方传输的用户数据中所包含的各字段的权重值,为各数据提供方生成一个对应于上述机器学习模型的权重值,用于表征各数据提供方对上述机器学习模型的历史贡献度。
其中,需要说明的是,由于在训练上述机器学习模型时采用的训练样本中的字段,可能是通过对字段取值进行求和的方式得到的融合字段,因此最终训练出的与训练样本中与这类融合字段对应的最优权重值,并不能等同于各个数据提供方传输的用户数据中所包含的对应字段的权重值。
在这种情况下,建模方通过模型训练得到与训练样本中的各字段对应的最优权重值后,可以对该最优权重值进行进一步的转换,得到各数据提供方传输的原始用户数据中的对应字段的权重值。
在示出的一种实施方式中,建模方可以确定与训练样本中的各字段对应的字段融合数量;其中,该字段融合数量与以上示出的字段融合的第一种实现方式相对应,具体是指通过对字段取值进行求和,得到训练样本中的融合字段的原始字段的数量。比如,当训练样本中的某一个字段,是由原始用户数据中的N个字段的字段取值进行求和得到的融合字段,那么上述字段融合数量为N。
然后,可以基于该字段融合数量对训练样本中的各字段对应的权重值求平均值,并将该平均值设置为各个数据提供方传输的用户数据中所包含的对应字段的权重值。即利用训练样本中的各字段对应的权重值相对于字段融合数量的平均值,来表征各个数据提供方传输的原始用户数据中所包含的各字段对机器学习模型的贡献度。
例如,假设训练样本中的某一字段,是由各个数据提供方传输的用户数据中的N个相同的字段的字段取值进行求和得到的融合字段,那么可以将该字段的权重值按照该N值取平均数,然后将平均数设置为原始用户数据中该N个字段的权重值。
除了以上示出的通过取平均值将训练样本中的字段对应的权重值,转换为各数据提供方传输的原始用户数据中的对应字段的权重值的转换方式以外,在实际应用中,也可以通过其它的转换方式来进行实现。
在示出的另一种实现方式中,还可以对原始用户数据中的字段不进行字段融合来分别训练机器学习模型,得到对应的第一权重值;然后再进一步对原始用户数据中的字段之间进行两两融合训练机器学习模型,得到对应的第二权重值;最后,可以通过比对第一权重值和第二权重值来确定各个数据提供方传输的原始用户数据中所包含的对应字段的权重值。
例如,假设上述多个数据提供方为与上述建模方具有合作关系的多家银行,这些银行传输给建模方的用户数据中均包含“存款金额”字段,分别记为字段A、字段B和字段C;在这种场景下,首先可以将这三家银行传输的用户数据作为训练样本分别训练机器学习模型,得到与字段A、字段B和字段C分别对应的权重值;然后,再将这三家银行传输的用户数据进行两两融合后构建训练样本训练机器学习模型,得到字段A和字段B、字段A和字段C以及字段B和字段C融合后的融合字段对应的权重值;最后,可以通过计算字段A和字段B融合后的融合字段对应的权重值,和字段A的权重值的差值,作为字段B的权重值;通过计算字段A和字段C融合后的融合字段对应的权重值,和字段A的权重值的差值,作为字段C的权重值;以及,通过计算字段B和字段C融合后的融合字段对应的权重值,和字段C的权重值的差值,作为字段B的权重值,等等。比如,假设字段A单独训练模型得到的权重值是0.5,将字段A和字段B融合后得到的权重是0.6,将字段B融合进去权重值上升了0.1,那么可以将字段B的权重值设置为0.1。
当然,对于训练样本中的并不是采用对字段取值进行求和的方式得到的融合字段,最终训练出的与这类融合字段对应的最优权重值,能够等同于各个数据提供方传输的用户数据中所包含的对应字段的权重值;因此,在这种情况下,可以直接将训练出的训练样本的这类融合字段对应的最优权重值,设置为各个数据提供方传输的用户数据中所包含的对应字段的权重值即可。
在本说明书中,当建模方通过以上示出的建模过程,得到了各个数据提供方传输的用户数据中所包含的各字段的权重值后,可以基于各个数据提供方传输的用户数据中所包含的各字段的权重值,为各数据提供方生成对应于上述机器学习模型的权重值,用于表征各数据提供方对上述机器学习模型的贡献度。
在示出的一种实施方式中,可以采用以下示出的任意一种方式,来为各数据提供方生成对应于最终训练出的机器学习模型的权重值:
在一种方式中,可以对各个数据提供方传输的用户数据中所包含的各字段的权重值进行加权计算,并将加权计算结果设置为各数据提供方对应于上述机器学习模型的权重值;
在另一种方式中,可以将各个数据提供方传输的用户数据中所包含的关键字段的权重值,设置为各数据提供方对应于所述机器学习模型的权重值;
在第三种方式中,可以对各个数据提供方传输的用户数据中所包含的各关键字段的权重值进行加权计算,并将加权计算结果设置为各数据提供方对应于上述机器学习模型的权重值。
当为各数据提供方设置了对应于上述机器学习模型的权重值后,可以基于该权重值为各数据提供方设置一个对应的信任等级;
例如,可以将权重值与预设的多个信任等级对应的阈值进行比较,来确定对应的信任等级;比如,信任等级可以划分为“高”、“中”和“低”三个等级,阈值的两个阈值为第一阈值,和小于第一阈值的第二阈值;在这种情况下,如果任一数据提供方对应于上述机器学习模型的权重值,大于第一阈值,可以将信任等级确定为“高”;如果如果任一数据提供方对应于上述机器学习模型的权重值,位于第一阈值和第二阈值之间,可以将信任等级确定为“中”;如果如果任一数据提供方对应于上述机器学习模型的权重值,小于第二阈值,可以将信任等级确定为“低”。
请参见图2,图2为本说明书示出的一种基于多个数据提供方传输的用户数据训练机器学习模型的示意图。
其中,图2中,将以建模方的服务端具有基于各数据提供方的信任等级,对各数据提供方传输的用户数据中的关键字段的字段取值进行模糊化处理的功能为例进行示意。
如图2所示,在初始状态下,上述多个数据提供方可以分别对应一个信任等级。
各数据提供方在将本地的用户数据传输给建模方的服务端时,可以直接将原始的用户数据以明文的形式,或者将用户数据中的关键字段以明文的形式的传输给建模方,由建模方来完成以上示出的模糊化处理过程。
请继续参见图2,建模方在收到各数据提供方传输的用户数据后,可以基于各数据提供方的信任等级,分别对各数据提供方传输的用户数据中的关键字段的字段取值进行模糊化处理;其中,模糊化处理程度与信任等级负相关;比如,对于信任等级低的数据提供方,可以对其传输的用户数据中的关键字段的字段取值进行重度的模糊化处理;而对于信任等级高的数据提供方,可以对用户数据中的关键字段的字段取值进行轻度的模糊化处理或者不进行模糊化处理。
请继续参见图2,当模糊化处理完成后,可以对各数据提供方传输的用户数据中相对应的字段进行字段融合;例如,可以对模糊化处理完成的各个数据提供方传输的用户数据中相对应的字段的字段取值进行求和;和/或,将模糊化处理完成的各个数据提供方传输的用户数据中字段添加到指定的字段区间。
请继续参见图2,当完成以上示出的字段融合过程,上述建模方的服务端,可以基于字段融合后的用户数据来训练预设的机器学习模型;例如,可以基于字段融合后的用户数据来构建训练样本,并基于所述训练样本对预设的机器学习模型进行训练,得到所述训练样本中各字段的最优权重值,来完成机器学习模型的训练。
在本说明书中,除了以上描述的建模方的服务端也可以具有基于各数据提供方的信任等级,对各数据提供方传输的用户数据中的关键字段的字段取值进行模糊化处理的功能以外,在实际应用中,上述建模方的服务端也可以不具有基于各数据提供方的信任等级,对各数据提供方传输的用户数据中的关键字段的字段取值进行模糊化处理的功能,而仅具有以上描述的对各数据提供方传输的用户数据中相对应的字段进行字段融合的功能。
请参见图3,图3是本说明书一实施例提供的另一种基于共享数据的建模方法,应用于建模方服务端,执行以下步骤:
步骤302,接收多个数据提供方传输的用户数据;其中,所述多个数据提供方传输的用户数据中的关键字段的字段取值,基于各数据提供方的信任等级对应的模糊化处理程度预先进行了模糊化处理;
步骤304,对模糊化处理完成的各个数据提供方传输的用户数据中的字段进行字段融合;其中,字段融合后的用户数据用于训练机器学习模型。
在本实施例中,在初始状态下,各数据提供方可以使用与建模方协商出的信任等级,对需要传输给建模方的用户数据中的关键字段的字段取值进行模糊化处理,并将模糊化处理完成的用户数据分别传输给建模方。
其中,具体的模糊化处理过程,在本实施例中不再赘述,可以参见本说明书之前的描述。
而建模方则可以对各数据提供方传输的用户数据中相对应的字段进行字段融合,基于字段融合后的用户数据来构建训练样本,训练机器学习模型,并基于训练出的各字段对应于训练完成的机器学习模型的权重值,为各数据提供方生成一个对应于训练完成的机器学习模型的权重值,用以表征各数据提供方对各机器学习模型的历史贡献度,然后基于该历史贡献度为各数据提供方设置信任等级,并将设置的信任等级发送至各数据提供方,对各数据提供方维护的初始的信任等级进行更新。后续,各数据提供方可以使用更新后的基于历史贡献度设置的信任等级所表征的模糊化程度,对需要传输的用户数据中的关键字段的字段取值进行模糊化处理。
其中,以上描述的字段融合、机器学习模型的训练、基于历史贡献度为各数据提供方设置信任等级的具体过程,在本实施例中不再赘述,可以参见本说明书之前的描述。
请参见图4,图4为本说明书示出的另一种基于多个数据提供方传输的用户数据训练机器学习模型的示意图。
其中,图4中,将以建模方的服务端不具有基于各数据提供方的信任等级,对各数据提供方传输的用户数据中的关键字段的字段取值进行模糊化处理的功能为例进行示意。
如图4所示,在初始状态下,上述多个数据提供方可以分别对应一个信任等级。各数据提供方在将本地的用户数据传输给建模方的服务端时,可以预先基于与建模方协商出的信任等级,对原始的用户数据中的关键字段的字段取值进行模糊化处理,然后将模糊化处理完成的用户传输给上述建模方。
请继续参见图4,建模方在收到各数据提供方传输的用户数据后,可以对各数据提供方传输的用户数据中相对应的字段进行字段融合,然后基于字段融合后的用户数据来训练预设的机器学习模型,得到各字段对应于机器学习模型的权重值(贡献度)。
进一步的,当机器学习模型训练完毕,建模方可以基于训练得到的各字段对应于上述机器学习模型的权重值,为各数据提供方生成一个对应于上述机器学习模型的权重值,来表征各数据提供方对应于上述机器学习模型的贡献度,然后基于该贡献度为各数据提供方重新设置一个信任等级,并将设置的信任等级分别回传给各数据提供方,后续各数据提供方可以使用更新后的基于历史贡献度设置的信任等级所表征的模糊化程度,对需要传输的用户数据中的关键字段的字段取值进行模糊化处理。
通过以上各实施例可知,一方面,由于可以基于各个数据提供方的信任等级对应的模糊化处理程度,对多个数据提供方传输的用户数据中的关键字段的字段取值,来进行模糊化处理,因此对于一些信任等级较高的数据提供方而言,可以对用户数据中的一些关键字段采用轻度模糊化处理或者不进行模糊化处理,从而可以在兼顾数据隐私性保护的前提下,最大程度的保证各数据提供方共享的用户数据的数据可用性;
另一方面,由于在接收到多个数据方提供方传输的用户数据后,可以对各数据提供方传输的用户数据中的字段进行字段融合,因此对于各个数据提供方共享的用户数据而言,可以实现用户数据中的字段互补,从而最大程度的进行数据融合。
与上述图1示出的方法实施例相对应,本说明书还提供了一种基于共享数据的建模装置的实施例。
本说明书的上述基于共享数据的建模装置的实施例可以应用在电子设备上。装置实施例可以通过软件实现,也可以通过硬件或者软硬件结合的方式实现。以软件实现为例,作为一个逻辑意义上的装置,是通过其所在电子设备的处理器将非易失性存储器中对应的计算机程序指令读取到内存中运行形成的。从硬件层面而言,如图5所示,为本说明书的基于共享数据的建模装置所在电子设备的一种硬件结构图,除了图5所示的处理器、内存、网络接口、以及非易失性存储器之外,实施例中装置所在的电子设备通常根据该电子设备的实际功能,还可以包括其他硬件,对此不再赘述。
图6是本说明书一示例性实施例示出的一种基于共享数据的建模装置的框图。
请参考图6,所述基于共享数据的建模装置60可以应用在前述图5所示的电子设备中,包括有:第一接收单元601、处理单元602、第一融合单元603。
其中,第一接收单元601,接收多个数据提供方传输的用户数据;
处理单元602,基于各个数据提供方的信任等级对应的模糊化处理程度对接收到的用户数据中的关键字段的字段取值分别进行模糊化处理;
第一融合单元603,对模糊化处理完成的各个数据提供方传输的用户数据中的字段进行字段融合;其中,字段融合后的用户数据用于训练机器学习模型。
在本实施例中,所述第一融合单元603进一步:
对模糊化处理完成的各个数据提供方传输的用户数据中相对应的字段的字段取值进行求和;和/或,
将模糊化处理完成的各个数据提供方传输的用户数据中的字段添加到指定的字段区间。
在本实施例中,所述装置60还包括:
设置单元604(图6中未示出),基于各个数据提供方对训练出的机器学习模型的历史贡献度,为各个数据提供方设置所述信任等级。
在本实施例中,还包括:
构建单元605(图6中未示出),基于字段融合后的用户数据构建训练样本;
训练单元606(图6中未示出),基于所述训练样本对预设的机器学习模型进行训练,得到所述训练样本中各字段的权重值;其中,所述权重值表征各字段对所述机器学习模型的贡献度;
生成单元607(图6中未示出),基于各个数据提供方传输的用户数据中所包含的各字段的权重值,为各数据提供方生成对应于所述机器学习模型的权重值;其中,对应于所述机器学习模型的权重值表征各字段对所述机器学习模型的贡献度。
在本实施例中,所述生成单元607进一步:
在基于各个数据提供方传输的用户数据中所包含的各字段的权重值,为各数据提供方生成对应于所述机器学习模型的权重值之前,确定与所述训练样本中的各字段对应的字段融合数量;基于所述字段融合数量对所述训练样本中的各字段对应的权重值求平均值;将所述平均值设置为各个数据提供方传输的用户数据中所包含的对应字段的权重值。
在本实施例中,所述生成单元607进一步执行以下方式中的任一:
对各个数据提供方传输的用户数据中所包含的各字段的权重值进行加权计算,并将加权计算结果设置为各数据提供方对应于所述机器学习模型的权重值;
将各个数据提供方传输的用户数据中所包含的关键字段的权重值,设置为各数据提供方对应于所述机器学习模型的权重值;
对各个数据提供方传输的用户数据中所包含的各关键字段的权重值进行加权计算,并将加权计算结果设置为各数据提供方对应于所述机器学习模型的权重值。
以上示出的装置中各个单元的功能和作用的实现过程具体详见上述方法中对应步骤的实现过程,在此不再赘述。
与上述图3示出的方法实施例相对应,本说明书还提供了另一种基于共享数据的建模装置的实施例。
图7是本说明书一示例性实施例示出的一种基于共享数据的建模装置的框图。
请参考图7,所述基于共享数据的建模装置70可以应用在前述图5所示的电子设备中,包括有:第二接收单元701和第二融合单元702。
其中,第二接收单元701,接收多个数据提供方传输的用户数据;其中,所述多个数据提供方传输的用户数据中的关键字段的字段取值,由所述多个数据提供方基于协商出的信任等级预先进行了模糊化处理;所述字段取值的模糊化处理程度与协商出的信任等级成反比;
第二融合单元702,对模糊化处理完成的各个数据提供方传输的用户数据中相对应的字段分别进行字段融合;其中,字段融合后的用户数据用于训练机器学习模型。
在本实施例中,第二融合单元702进一步:
对模糊化处理完成的各个数据提供方传输的用户数据中相对应的字段的字段取值进行求和;和/或,
将模糊化处理完成的各个数据提供方传输的用户数据中相对应的字段添加到相同的字段区间。
以上示出的装置中各个单元的功能和作用的实现过程具体详见上述方法中对应步骤的实现过程,在此不再赘述。
对于装置实施例而言,由于其基本对应于方法实施例,所以相关之处参见方法实施例的部分说明即可。以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本说明书方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
上述实施例阐明的系统、装置、模块或单元,具体可以由计算机芯片或实体实现,或者由具有某种功能的产品来实现。一种典型的实现设备为计算机,计算机的具体形式可以是个人计算机、膝上型计算机、蜂窝电话、相机电话、智能电话、个人数字助理、媒体播放器、导航设备、电子邮件收发设备、游戏控制台、平板计算机、可穿戴设备或者这些设备中的任意几种设备的组合。
与上述图3示出的方法实施例相对应,本说明书还提供一种基于共享数据的建模系统的实施例。
该基于共享数据的建模系统,可以包括多个数据提供方服务端和建模服务端。
其中,上述多个数据提供方服务端,向建模方服务端传输用户数据;其中,所述多个数据提供方传输的用户数据中的关键字段的字段取值,由所述数据提供方或者建模方基于各数据提供方的信任等级对应的模糊化处理程度进行了模糊化处理;
建模方服务端,对模糊化处理完成的各个数据提供方传输的用户数据中的字段进行字段融合;其中,字段融合后的用户数据用于训练机器学习模型。
以上示出的系统中各个服务端的功能和作用的实现过程具体详见上述方法中对应步骤的实现过程,在此不再赘述。
与上述图1示出的方法实施例相对应,本说明书还提供了一种电子设备的实施例。该电子设备包括:处理器以及用于存储机器可执行指令的存储器;其中,处理器和存储器通常通过内部总线相互连接。在其他可能的实现方式中,所述设备还可能包括外部接口,以能够与其他设备或者部件进行通信。
在本实施例中,通过读取并执行所述存储器存储的与图1示出的上述基于共享数据的建模控制逻辑对应的机器可执行指令,所述处理器被促使:
接收多个数据提供方传输的用户数据;
基于各个数据提供方的信任等级对应的模糊化处理程度对接收到的用户数据中的关键字段的字段取值分别进行模糊化处理;
对模糊化处理完成的各个数据提供方传输的用户数据中的字段进行字段融合;其中,字段融合后的用户数据用于训练机器学习模型。
在本实施例中,通过读取并执行所述存储器存储的与图1示出的上述基于共享数据的建模控制逻辑对应的机器可执行指令,所述处理器还被促使:
对模糊化处理完成的各个数据提供方传输的用户数据中相对应的字段的字段取值进行求和;和/或,将模糊化处理完成的各个数据提供方传输的用户数据中的字段添加到指定的字段区间。
在本实施例中,通过读取并执行所述存储器存储的与图1示出的上述基于共享数据的建模控制逻辑对应的机器可执行指令,所述处理器还被促使:
基于各个数据提供方对训练出的机器学习模型的历史贡献度,为各个数据提供方设置所述信任等级。
在本实施例中,通过读取并执行所述存储器存储的与图1示出的上述基于共享数据的建模控制逻辑对应的机器可执行指令,所述处理器还被促使:
基于字段融合后的用户数据构建训练样本;
基于所述训练样本对预设的机器学习模型进行训练,得到所述训练样本中各字段的权重值;其中,所述权重值表征各字段对所述机器学习模型的贡献度;
基于各个数据提供方传输的用户数据中所包含的各字段的权重值,为各数据提供方生成对应于所述机器学习模型的权重值;其中,对应于所述机器学习模型的权重值表征各数据提供方对所述机器学习模型的贡献度。
在本实施例中,通过读取并执行所述存储器存储的与图1示出的上述基于共享数据的建模控制逻辑对应的机器可执行指令,所述处理器还被促使:
确定与所述训练样本中的各字段对应的字段融合数量;
基于所述字段融合数量对所述训练样本中的各字段对应的权重值求平均值;
将所述平均值设置为各个数据提供方传输的用户数据中所包含的对应字段的权重值。
在本实施例中,通过读取并执行所述存储器存储的与图1示出的上述基于共享数据的建模控制逻辑对应的机器可执行指令,所述处理器还被促使执行以下指令中的任一:
对各个数据提供方传输的用户数据中所包含的各字段的权重值进行加权计算,并将加权计算结果设置为各数据提供方对应于所述机器学习模型的权重值;
将各个数据提供方传输的用户数据中所包含的关键字段的权重值,设置为各数据提供方对应于所述机器学习模型的权重值;
对各个数据提供方传输的用户数据中所包含的各关键字段的权重值进行加权计算,并将加权计算结果设置为各数据提供方对应于所述机器学习模型的权重值。
在本实施例中,所述多个数据提供方传输的用户数据中的关键字段的字段取值,由所述多个数据提供方基于协商出的信任等级预先进行了模糊化处理;其中,所述字段取值的模糊化处理程度与协商出的信任等级成反比;
与上述图3示出的方法实施例相对应,本说明书还提供了一种电子设备的实施例。该电子设备包括:处理器以及用于存储机器可执行指令的存储器;其中,处理器和存储器通常通过内部总线相互连接。在其他可能的实现方式中,所述设备还可能包括外部接口,以能够与其他设备或者部件进行通信。
在本实施例中,通过读取并执行所述存储器存储的与图3示出的上述基于共享数据的建模控制逻辑对应的机器可执行指令,所述处理器被促使:
接收多个数据提供方传输的用户数据;其中,所述多个数据提供方传输的用户数据中的关键字段的字段取值,基于各数据提供方的信任等级对应的模糊化处理程度预先进行了模糊化处理;
对模糊化处理完成的各个数据提供方传输的用户数据中的字段进行字段融合;其中,字段融合后的用户数据用于训练机器学习模型。
在本实施例中,通过读取并执行所述存储器存储的与图3示出的上述基于共享数据的建模控制逻辑对应的机器可执行指令,所述处理器还被促使:
对模糊化处理完成的各个数据提供方传输的用户数据中相对应的字段的字段取值进行求和;和/或,
将模糊化处理完成的各个数据提供方传输的用户数据中的字段添加到指定的字段区间。
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本说明书的其它实施方案。本说明书旨在涵盖本说明书的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本说明书的一般性原理并包括本说明书未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本说明书的真正范围和精神由下面的权利要求指出。
应当理解的是,本说明书并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本说明书的范围仅由所附的权利要求来限制。
上述对本说明书特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
以上所述仅为本申请的较佳实施例而已,并不用以限制本申请,凡在本申请的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本申请保护的范围之内。