CN114781000B - 针对大规模数据的对象特征之间相关性的确定方法及装置 - Google Patents
针对大规模数据的对象特征之间相关性的确定方法及装置 Download PDFInfo
- Publication number
- CN114781000B CN114781000B CN202210702081.4A CN202210702081A CN114781000B CN 114781000 B CN114781000 B CN 114781000B CN 202210702081 A CN202210702081 A CN 202210702081A CN 114781000 B CN114781000 B CN 114781000B
- Authority
- CN
- China
- Prior art keywords
- participant
- matrix
- party
- sampling
- feature
- 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.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/62—Protecting access to data via a platform, e.g. using keys or access control rules
- G06F21/6218—Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
- G06F21/6245—Protecting personal data, e.g. for financial or medical purposes
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F17/00—Digital computing or data processing equipment or methods, specially adapted for specific functions
- G06F17/10—Complex mathematical operations
- G06F17/16—Matrix or vector computation, e.g. matrix-matrix or matrix-vector multiplication, matrix factorization
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F17/00—Digital computing or data processing equipment or methods, specially adapted for specific functions
- G06F17/10—Complex mathematical operations
- G06F17/18—Complex mathematical operations for evaluating statistical data, e.g. average values, frequency distributions, probability functions, regression analysis
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Mathematical Physics (AREA)
- Data Mining & Analysis (AREA)
- Mathematical Optimization (AREA)
- Mathematical Analysis (AREA)
- Pure & Applied Mathematics (AREA)
- Computational Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Software Systems (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Algebra (AREA)
- Bioethics (AREA)
- Computer Security & Cryptography (AREA)
- Medical Informatics (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- Life Sciences & Earth Sciences (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Evolutionary Biology (AREA)
- Operations Research (AREA)
- Probability & Statistics with Applications (AREA)
- Complex Calculations (AREA)
Abstract
本说明书实施例提供了一种针对大规模数据的对象特征之间相关性的确定方法及装置。多方联合利用多方安全计算检测样本特征是否符合正态分布,当符合时,各方联合对样本进行安全标准化,之后进行随机采样,并对大规模数据进行选取,进而得到特征采样分片,然后各方利用多方安全计算相关技术,基于各方的采样分片确定特征之间的皮尔逊积矩相关系数。当检测出样本特征不符合正态分布时,参与方对特征矩阵中的特征值进行排序,并采用序号值分片代替特征值分片,接着进行随机采样,进一步得到排序数据的采样分片。然后,各方利用多方安全计算相关技术,基于各方的采样分片确定特征之间的斯皮尔曼等级相关系数。整个处理过程对隐私数据进行了保护。
Description
技术领域
本说明书一个或多个实施例涉及数据处理技术领域,尤其涉及一种针对大规模数据的对象特征之间相关性的确定方法及装置。
背景技术
随着社会的发展和技术的进步,有越来越多的服务平台为人们提供各种服务。用户会使用不同服务平台的服务,从而在不同的服务平台中产生不同的业务数据。不同服务平台的业务数据可以联合起来,用于训练模型,以提高模型的效果。对于不同服务平台的业务数据,也就是对象的特征数据,进行相关性的检验,避免使用相关性较强的特征训练模型,从而提高模型的稳定性。但是,不同服务平台中的特征数据属于隐私数据,不能明文向外输出。这就需要在保护数据的隐私性和安全性的前提下,对不同服务平台中的特征数据之间的相关性进行评估。而在大规模业务数据的场景下,不同服务平台之间在确定特征相关性时不仅要考虑隐私保护的问题,还要面临提高数据处理效率的问题。
因此,希望能有改进的方案,在大规模特征数据的场景中,不仅能保护数据的隐私性和安全性,也能提高数据处理效率。
发明内容
本说明书一个或多个实施例描述了一种针对大规模数据的对象特征之间相关性的确定方法及装置,以在大规模特征数据的场景中,既能保护数据的隐私性和安全性,也能提高数据处理效率。具体的技术方案如下。
第一方面,实施例提供了一种针对大规模数据的对象特征之间相关性的确定方法,待确定相关性的特征矩阵包括第一参与方和第二参与方分别持有的特征矩阵,不同的特征矩阵包含相同业务对象的不同特征的特征值;所述方法通过第一参与方执行,包括:
当所述待确定相关性的特征矩阵不符合正态分布时,对所述第一参与方的特征矩阵中的特征值进行排序,并采用序号值代替对应的特征值,得到所述第一参与方的排序分片;
与所述第二参与方联合对所述业务对象进行安全采样,并基于采样结果和所述第一参与方的排序分片确定所述第一参与方的采样分片;
利用基于多方安全计算的矩阵乘法,基于所述第一参与方的采样分片和所述第二参与方的采样分片,确定所述待确定相关性的特征矩阵中特征之间属于所述第一参与方的相关性系数分片,以用于与所述第二参与方的相关性系数分片合成完整的相关性系数。
在一种实施方式中,所述方法还包括:
当所述待确定相关性的特征矩阵符合正态分布时,对自身持有的特征矩阵进行标准化,得到所述第一参与方的标准化分片;
与所述第二参与方联合对所述业务对象进行安全采样,并基于采样结果从所述第一参与方的标准化分片中得到采样分片,返回执行所述确定所述待确定相关性的特征矩阵中特征之间属于所述第一参与方的相关性系数分片的步骤。
在一种实施方式中,该方法还包括采用以下方式确定所述待确定相关性的特征矩阵是否符合正态分布:
当确定所述第一参与方的特征矩阵中存在不符合正态分布的特征时,确定所述待确定相关性的特征矩阵不符合正态分布。
在一种实施方式中,该方法还包括:
当确定所述第一参与方的特征矩阵中的特征都符合正态分布时,获取用于表征所述第二参与方的特征矩阵中是否存在不符合正态分布的特征的结果;
当所述结果表明所述第二参与方的特征矩阵中存在不符合正态分布的特征时,确定所述待确定相关性的特征矩阵不符合正态分布。
在一种实施方式中,其中还包括采用以下方式确定所述第一参与方的特征矩阵中是否存在不符合正态分布的特征:
基于所述第一参与方的特征矩阵中第i特征的多个特征值,确定所述第i特征的偏度值和峰度值;
基于所述偏度值和峰度值,确定所述第i特征是否符合正态分布。
在一种实施方式中,所述确定所述第i特征是否符合正态分布的步骤,包括:
当所述偏度值处于第一预设范围中,且所述峰度值处于第二预设范围中时,确定所述第i特征符合正态分布。
在一种实施方式中,所述确定所述待确定相关性的特征矩阵中特征之间属于所述第一参与方的相关性系数分片的步骤,包括:
利用基于多方安全计算的矩阵乘法,基于所述第一参与方的采样分片和所述第二参与方的采样分片,确定协方差矩阵的协方差分片;其中,所述协方差矩阵基于采样联合矩阵得到;各方的采样分片在假定相拼接的情况下构成所述采样联合矩阵;各方的协方差分片在假定重构的情况下构成所述协方差矩阵;
基于所述第一参与方的协方差分片、采样分片以及所述第二参与方的采样分片,利用基于多方安全计算的矩阵乘法,确定所述第一参与方的相关性系数分片。
第二方面,实施例提供了一种针对大规模数据的对象特征之间相关性的确定方法,待确定相关性的特征矩阵包括第一参与方和第二参与方分别持有的特征矩阵,不同的特征矩阵包含不同业务对象的相同特征的特征值;所述方法通过第一参与方执行,包括:
当所述待确定相关性的特征矩阵不符合正态分布时,利用多方安全计算,不同参与方联合对各方特征矩阵中的特征值进行安全排序,并采用序号值分片代替对应的特征值分片,使得不同参与方分别得到各自的排序分片;
对业务对象进行采样,并基于采样结果和所述第一参与方的排序分片确定所述第一参与方的采样分片;
利用多方安全计算,基于所述第一参与方的采样分片和所述第二参与方的采样分片,确定所述待确定相关性的特征矩阵中特征之间属于所述第一参与方的相关性系数分片,以用于与所述第二参与方的相关性系数分片合成完整的相关性系数。
在一种实施方式中,所述方法还包括:
当所述待确定相关性的特征矩阵符合正态分布时,利用秘密分享加法和乘法,与所述第二参与方联合对特征矩阵进行标准化,得到各参与方的标准化分片;
对业务对象进行采样,并基于采样结果和所述第一参与方的标准化分片确定所述第一参与方的采样分片,返回执行所述确定所述待确定相关性的特征矩阵中特征之间属于所述第一参与方的相关性系数分片的步骤。
在一种实施方式中,其中还包括采用以下方式确定所述待确定相关性的特征矩阵是否符合正态分布:
利用多方安全计算,不同参与方基于各自的特征矩阵,确定特征联合矩阵中是否存在不符合正态分布的特征;各方的特征矩阵在假定相拼接的情况下构成所述特征联合矩阵;
如果存在,则确定所述待确定相关性的特征矩阵不符合正态分布。
在一种实施方式中,所述确定特征联合矩阵中是否存在不符合正态分布的特征的步骤,包括:
基于各参与方的特征矩阵中第i特征的多个特征值,利用秘密分享加法和乘法,各参与方联合确定所述第i特征的偏度值和峰度值;
基于所述偏度值和峰度值,确定所述第i特征是否符合正态分布。
在一种实施方式中,所述确定所述待确定相关性的特征矩阵中特征之间属于所述第一参与方的相关性系数分片的步骤,包括:
基于所述第一参与方的采样分片,确定协方差矩阵的协方差分片;其中,所述协方差矩阵基于采样联合矩阵得到;各方的采样分片在假定相拼接的情况下构成采样联合矩阵;
基于所述第一参与方的协方差分片、采样分片以及所述第二参与方的采样分片,利用基于多方安全计算的矩阵乘法,确定所述第一参与方的相关性系数分片。
第三方面,实施例提供了一种针对大规模数据的对象特征之间相关性的确定装置,待确定相关性的特征矩阵包括第一参与方和第二参与方分别持有的特征矩阵,不同的特征矩阵包含相同业务对象的不同特征的特征值;所述装置部署在所述第一参与方中,包括:
第一替代模块,配置为当所述待确定相关性的特征矩阵不符合正态分布时,对所述第一参与方的特征矩阵中的特征值进行排序,并采用序号值代替对应的特征值,得到所述第一参与方的排序分片;
第一采样模块,配置为与所述第二参与方联合对所述业务对象进行安全采样,并基于采样结果和所述第一参与方的排序分片确定所述第一参与方的采样分片;
第一确定模块,配置为利用基于多方安全计算的矩阵乘法,基于所述第一参与方的采样分片和所述第二参与方的采样分片,确定所述待确定相关性的特征矩阵中特征之间属于所述第一参与方的相关性系数分片,以用于与所述第二参与方的相关性系数分片合成完整的相关性系数。
第四方面,实施例提供了一种针对大规模数据的对象特征之间相关性的确定装置,待确定相关性的特征矩阵包括第一参与方和第二参与方分别持有的特征矩阵,不同的特征矩阵包含不同业务对象的相同特征的特征值;所述装置部署在所述第一参与方中,包括:
第二替代模块,配置为当所述待确定相关性的特征矩阵不符合正态分布时,利用多方安全计算,不同参与方联合对各方特征矩阵中的特征值进行安全排序,并采用序号值分片代替对应的特征值分片,使得不同参与方分别得到各自的排序分片;
第三采样模块,配置为对业务对象进行采样,并基于采样结果和所述第一参与方的排序分片确定所述第一参与方的采样分片;
第三确定模块,配置为利用多方安全计算,基于所述第一参与方的采样分片和所述第二参与方的采样分片,确定所述待确定相关性的特征矩阵中特征之间属于所述第一参与方的相关性系数分片,以用于与所述第二参与方的相关性系数分片合成完整的相关性系数。
第五方面,实施例提供了一种计算机可读存储介质,其上存储有计算机程序,当所述计算机程序在计算机中执行时,令计算机执行第一方面和第二方面中任一项所述的方法。
第六方面,实施例提供了一种计算设备,包括存储器和处理器,所述存储器中存储有可执行代码,所述处理器执行所述可执行代码时,实现第一方面和第二方面中任一项所述的方法。
本说明书实施例提供的方法及装置中,当待确定相关性的特征矩阵不符合正态分布时,对参与方的特征矩阵进行排序,并采用排序的序号值代替特征值,得到各参与方的排序分片,再对业务对象进行采样,并基于采样结果和排序分片确定各参与方的采样分片;接着,利用多方安全计算基于各参与方的采样分片确定特征矩阵中特征之间的相关性系数分片。在整个处理过程中,各参与方使用分片数据进行数据处理,能够很好地保护隐私数据的隐私性和安全性,同时,在特征矩阵不符合正态分布时,采用特征值的排序代替特征值,并进行采样,能够使用采样数据计算特征相关性,在大规模数据的场景下,提高了数据的处理效率。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单的介绍。显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1-1所示为数据纵向分布场景的示意图;
图1-2所示为数据横向分布场景的示意图;
图2为实施例提供的对象特征之间相关性的确定方法的一种流程示意图;
图3所示为利用秘密分享矩阵乘法计算矩阵分片的一种流程示意图;
图4为实施例提供的对象特征之间相关性的确定方法的另一种流程示意图;
图5为实施例提供的对象特征之间相关性的确定装置的一种示意性框图;
图6为实施例提供的对象特征之间相关性的确定装置的另一种示意性框图。
具体实施方式
下面结合附图,对本说明书提供的方案进行描述。
在共享学习场景下,数据集由多个参与方共同提供,每个参与方拥有数据集中的一部分数据,构成该参与方的原始矩阵。该数据集可以是用于训练神经网络模型的训练数据集,也可以是用于测试神经网络模型的测试数据集,或者是待预测的数据集。数据集可以包括业务对象的特征数据,也就是业务对象的业务数据。业务对象可以是用户、商铺、商品、事件等各种业务上有待分析的对象。
这里可以存在至少两种数据分布。一种分布是,各个参与方拥有全部业务对象的不同特征的数据。例如,每个参与方都拥有相同的多个对象的样本,每个样本的特征数据中包含多个特征,这些特征分布在不同参与方中,每个参与方拥有的特征不同。不同参与方拥有的特征种类不同,其数量可以相同,也可以不同。此为数据垂直切分的场景,也是数据纵向分布在不同参与方中的场景,图1-1所示为数据纵向分布场景的示意图,其中以两个参与方A和B为例,共拥有n个样本,横向为不同样本,纵向为不同特征。例如,两个服务平台拥有相同的一批用户,但其用户特征不同。
参与方所拥有的特征数据可以包括很多种特征,特征也叫属性。在一具体例子中,业务对象为商铺。某一个电商平台,拥有n个商铺的部分特征,这些特征包括商铺id、经营时长等。而另一电商平台,拥有上述n个商铺的另一部分特征,这些特征包括商铺类别和累积销量等等。这样,相同商铺的不同特征的特征数据分布于不同的参与方中,属于数据的纵向分布。
另一种分布是,各个参与方拥有不同对象样本的相同特征。例如,对于多个样本,每个样本的特征数据中包含多个特征,这些数据分布在多个参与方中,不同参与方拥有全部多个样本中的一部分样本,每个样本的特征数据中的特征相同。不同参与方存储的样本数量可以相同,也可以不同。此为数据水平切分的场景,也是数据横向分布在不同参与方中的场景。图1-2所示为数据横向分布场景的示意图,其中以两个参与方A和B为例,共拥有n个样本,横向为不同样本,纵向为不同特征。例如,有两个银行,它们都拥有用户的信贷特征,但其服务的用户群体不同。
在一个例子中,业务对象为用户。多个参与方中的某个参与方为一社交平台,拥有n1个用户的用户基本特征,这些特征包括用户标识、就职行业和所在地区等。多个参与方中的另一社交平台,拥有n2个用户的上述用户基本特征。这样,不同用户的相同特征分布于不同的参与方,属于数据的横向分布。
在其他实施例中,业务对象还可以是有待分析的商品、事件等等,其中事件可以包括交易事件、登录事件、购买事件和社交事件等等。
不管是哪种数据分布方式,其业务对象的特征数据都属于隐私数据,可存储为隐私数据矩阵。为了隐私数据的安全,各个参与方需要将其隐私数据留在本地,不输出明文数据,不进行明文聚合。参与方是指参与联合模型训练的各方,也是参与确定特征之间相关性的各方。参与方的数量一般是2个或2个以上,参与方可以通过对应的参与方设备执行多方之间的联合数据处理过程。
为了避免出现用于进行联合模型训练的特征之间存在相关性(即共线性),通常可以利用特征的特征值检验不同特征之间的相关性,从而对存在相关性的特征进行处理。在大规模业务数据的场景下,参与方拥有的样本数量在百万甚至千万级别。不同参与方之间基于多方安全计算进行数据交互时,会出现计算的中间值超出有限域,导致计算结果不可用的情况,并且计算效率也会非常低。
为了在大规模特征数据的场景下提高数据的处理效率,同时兼顾数据的隐私性和安全性,本实施例提供了一种对象特征之间相关性的确定方法,该方法可以通过任意的第一参与方设备执行。针对不同的数据分布场景,基于本发明实施例的发明思路,可以得到不同的实施方案。在数据纵向分布场景中,该方法包括:当待确定相关性的特征矩阵不符合正态分布时,对第一参与方的特征矩阵中的特征值进行排序,并采用序号值代替对应的特征值,得到第一参与方的排序分片;与第二参与方联合对业务对象进行安全采样,并基于采样结果和第一参与方的排序分片确定第一参与方的采样分片;利用基于多方安全计算的矩阵乘法,基于第一参与方的采样分片和第二参与方的采样分片,确定待确定相关性的特征矩阵中特征之间属于第一参与方的相关性系数分片,以用于与第二参与方的相关性系数分片合成完整的相关性系数。
在本实施例中,当待确定相关性的特征矩阵不符合正态分布时,如果直接对各参与方的特征矩阵中的特征值进行采样并计算特征的相关性,该相关性并不能很好地代表特征之间的相关性。本实施例采用特征值的排序代替特征值,并对排序分片进行采样,继而计算相关性,这样计算的相关性能够很好地代表特征之间的相关性;同时,在处理数据的过程中,各参与方均使用分片数据进行交互,因此本实施例能够在提高处理效率的同时,保护数据的隐私性和安全性。
其中,多方安全计算(Secure Multi-party Computation,MPC)可以包括多种实现方式,例如包括同态加密、混淆电路、不经意传输、秘密分享等技术。在具体实施时,可以根据需要选择使用。
下面通过图2所示实施例,结合数据纵向分布场景,对上述内容进行详细说明。
图2为实施例提供的对象特征之间相关性的确定方法的一种流程示意图。特征数据分布在多个参与方中。多个参与方可以包括第一参与方和第二参与方,每个参与方持有各自的特征矩阵。待确定相关性的特征矩阵包括第一参与方和第二参与方分别持有的特征矩阵,不同的特征矩阵包含相同业务对象的不同特征的特征值。为了方便描述,下面以两个参与方A和B为例进行说明,上述的第一参与方可以是参与方A和B中的任意一个。参与方A和B分别存储有相同的多个业务对象的不同特征的特征值。
例如,参与方A可以存储有n个业务对象针对pA个特征的特征值构成的特征矩阵XA,参与方B可以存储有该n个业务对象针对pB个特征的特征值构成的特征矩阵XB。多个参与方中的n个业务对象是相同的,并且多个参与方可以预先基于隐私集合求交(Private SetIntersection,PSI)算法对n个业务对象的特征数据进行了对齐,即n个业务对象的特征数据按照相同的顺序排列,不同参与方存储有该n个业务对象的不同特征的特征值。其中,n、pA、pB均为自然数。特征矩阵XA和特征矩阵XB的行可以表示业务对象,列表示特征;也可以是,特征矩阵XA和特征矩阵XB的列表示业务对象,行表示特征。为了描述简洁,以下均采用前一种方式举例说明。
在具体实施时,不同参与方通过其对应的设备进行本地数据处理,并与其他设备进行数据交互等过程。任意一个参与方的设备可以通过任何具有计算、处理能力的装置、设备、平台、设备集群等实现。该方法包括以下几个步骤。
步骤S210,参与方A和参与方B确定待确定相关性的特征矩阵是否符合正态分布。当确定待确定相关性的特征矩阵符合正态分布时,各参与方执行步骤S220;当确定待确定相关性的特征矩阵不符合正态分布时,各参与方执行步骤S250。
在数据纵向分布场景中,由于不同参与方拥有所有业务对象的不同特征的特征值,在确定特征矩阵中的特征值分布是否符合正态分布时,可以在对应的参与方本地进行。
参与方A可以确定自身的特征矩阵XA中是否存在不符合正态分布的特征,如果存在,则确定待确定相关性的特征矩阵不符合正态分布。为了针对不同参与方的特征矩阵进行相同的操作,参与方A在确定自身的特征矩阵XA中存在不符合正态分布的特征时,可以向参与方B发送第一通知消息,以使得参与方B在接收到第一通知消息时确定待确定相关性的特征矩阵不符合正态分布,并继续执行对应的流程。
当参与方A确定特征矩阵XA中的特征都符合正态分布时,可以获取用于表征参与方B的特征矩阵XB中是否存在不符合正态分布的特征的结果;当该结果表明参与方B的特征矩阵中存在不符合正态分布的特征时,参与方A确定待确定相关性的特征矩阵不符合正态分布。
也可以是,参与方A和参与方B分别确定自身的特征矩阵中是否存在不符合正态分布的特征,并相互发送通知消息。只要各参与方的特征矩阵中存在任意一个不符合正态分布的特征,那么各参与方均可以确定当前满足待确定相关性的特征矩阵不符合正态分布的条件,从而使得各参与方执行本实施例的实施流程。
当参与方A的特征矩阵XA和参与方B的特征矩阵XB中的特征都符合正态分布时,可以确定待确定相关性的特征矩阵符合正态分布。
下面以参与方A为例,说明如何确定特征矩阵中任意的一个特征,例如第i特征是否符合正态分布。在实际应用中,参与方可以按照一定的顺序分别确定各个特征是否符合正态分布,当确定某个特征不符合正态分布时,可以停止确定其他特征是否符合正态分布。具体的,参与方A可以基于参与方A的特征矩阵XA中第i特征的多个特征值,确定第i特征的偏度值和峰度值,基于偏度值和峰度值,确定第i特征是否符合正态分布。
例如,当偏度值处于第一预设范围中,且峰度值处于第二预设范围中时,确定第i特征的特征值分布符合正态分布。在该情况之外,比如偏度值不在第一预设范围中,和/或,峰度值不在第二预设范围中,都认为第i特征不符合正态分布。第一预设范围和第二预设范围可以根据经验设定,其取值可以相同,也可以不同。
偏度能够衡量随机变量概率分布的不对称性,是随机变量相对于平均值不对称程度的度量。对偏度值的测量,能够判定数据分布的不对称程度以及方向。在确定样本特征的偏度值时,可以采用以下的三阶标准中心距公式计算偏度值:
其中,m3为样本特征的三阶中心距,m2为样本特征的二阶中心距;n为样本特征中特征值的数量,也就是样本的数量;xk为第k个特征值,k在1到n之间取值;xμ为样本特征的平均值;SK为偏度值。
在确定第i特征的偏度值时,xk为第i特征的第k个特征值,xμ为第i特征的平均值。在具体应用时,可以对式(1)进行适当的改变(例如改变公式系数的大小),根据改变后的公式计算偏度值,也是可行的。
偏度的衡量是相对于正态分布来说的,正态分布的样本特征的偏度为0,即若数据分布是对称的,则偏度值为零;若偏度值大于0,则特征值的分布图像向右偏,若偏度值小于0,则分布图像向左偏。偏度值的绝对值越大,说明分布图像的偏移程度越严重。第一预设范围可以设定为零值附近的范围,例如[-0.1,0.1]。
峰度是研究数据分布陡峭或者平滑程度的统计量。对峰度值的测量,能够判定数据相对于正态分布而言是更陡峭,还是更平缓。例如,正态分布的峰度为零,数据均匀分布的峰度为-1.2(较平缓),数据指数分布的峰度为6(较陡峭)。峰度,一般定义为四阶中心距m4除以方差δ的平方减3:
其中,各参量可以参见式(1);KU为峰度值。
在确定第i特征的峰度值时,xk为第i特征的第k个特征值,xμ为第i特征的平均值。在具体应用时,可以对式(2)进行适当的改变(例如改变公式系数的大小),根据改变后的公式计算峰度值,也是可行的。
峰度的衡量是相对于正态分布来说的,正态分布的样本特征的峰度为0。如果峰度值大于0,则数据分布的峰态陡峭,分布图像高、尖;如果峰度值小于0,则分布的峰态平缓,分布图像矮、胖。峰度值的绝对值越接近零,说明分布图像越接近于正态分布。第二预设范围可以设定为零值附近的范围,例如[-0.1,0.1]。
步骤S220,当确定待确定相关性的特征矩阵符合正态分布时,参与方A和参与方B可以分别对自身持有的特征矩阵进行标准化,分别得到参与方A的标准化分片,参与方B的标准化分片。
在本实施例中,参与方A在对特征矩阵XA进行标准化处理时,在特征矩阵的列表示特征,行表示样本的情况下,可以分别基于每一列的特征值x计算平均值μ和方差σ,利用(x-μ)/σ对特征值进行标准化处理。参与方B也可以对其特征矩阵XB进行标准化处理。进行标准化处理后的标准化分片可以作为进行后续步骤时的基础。这样可以简化数据,降低计算量。但是在隐私保护方面,对特征矩阵的标准化处理比较简单,容易被破解,因此经过标准化处理后得到的标准化分片仍然被认为是隐私数据。
步骤S230,参与方A和参与方B通过安全交互,联合对所有业务对象进行安全采样,得到采样结果。参与方A基于采样结果从自身的标准化分片中得到参与方A的采样分片,参与方B基于采样结果从自身的标准化分片中得到参与方B的采样分片,继续执行步骤S260。
在大规模数据场景中,样本数量非常多,对应的特征矩阵中包含的特征值数量也会非常多。为了提高处理效率,也避免计算的中间值超出有限域的表示范围,可以对样本进行采样。
在数据纵向分布场景中,不同的参与方拥有所有n个业务对象(即n个样本)的不同特征,因此,在对所有业务对象进行采样时,各参与方所采样得到的业务对象应达到一致。例如,各参与方可以选举其中一个参与方执行对所有n个业务对象进行采样的步骤,并由该参与方将采样结果发送至其他参与方。采样结果可以包括n个业务对象的安全索引,该安全索引不会泄露业务对象的隐私数据。也可以是,由安全的第三方设备执行对所有n个业务对象进行采样的步骤,并由该第三方将采样结果发送至各个参与方。
对业务对象进行采样的过程,可以与对特征矩阵进行标准化处理的过程并行执行,也可以在标准化处理之前执行,本申请对此并不进行限定。在采样时,可以基于采样率进行。例如,采样率可以设置为大于1%(0.01)的值,例如对于千万级别的样本,按照采样率%1进行采样,可以采样10万个样本。对n个业务对象进行采样时,可以基于采样率,对n个业务对象进行随机选取,得到采样结果。采样率可以是根据经验预先设置的比例值;也可以是根据样本的总数量而选择的比例值。
以参与方A为例,对参与方A来说,在基于采样结果从参与方A的标准化分片中确定参与方A的采样分片时,可以根据采样结果,从标准化分片中选择出对应的业务对象的特征数据,得到中间矩阵,基于中间矩阵确定参与方A的采样分片。
在基于中间矩阵确定采样分片时,可以直接将中间矩阵作为采样分片;也可以是,参与方A和参与方B,基于各自的中间矩阵,通过安全的数据交互对中间矩阵进行联合分片后得到。联合分片的具体过程,可以参考下文图3中的第1步和第2步得到,图3所示为利用秘密分享矩阵乘法计算矩阵分片的一种流程示意图。关于图3的具体说明,将在针对下文的步骤S270的说明中给出。
在另一种实施方式中,各参与方可以分别基于采样结果从各自的特征矩阵中选择出对应的业务对象的特征数据,得到中间矩阵,再分别对各自的中间矩阵进行标准化,得到各参与方各自的标准化后的中间矩阵;接着,利用标准化后的中间矩阵确定各参与方的采样分片。在利用标准化后的中间矩阵确定各参与方的采样分片时,具体可以直接将参与方的标准化后的中间矩阵确定为该参与方的采样分片;也可以是,参与方A和B,基于各自的标准化后的中间矩阵,通过安全的数据交互对标准化后的中间矩阵进行联合分片后得到。也就是,标准化处理可以在得到中间矩阵后进行。
步骤S240,参与方A和参与方B,利用基于多方安全计算的矩阵乘法,基于参与方A的采样分片和参与方B的采样分片,利用皮尔逊积矩相关系数公式,分别确定待确定相关性的特征矩阵中特征之间属于参与方A的相关性系数分片和属于参与方B的相关性系数分片。任意一个相关性系数分片,用于与其他参与方的相关性系数分片合成完整的相关性系数。特征的相关性系数分片不属于隐私数据,可以进行明文合成。
如果确定待确定相关性的特征矩阵符合正态分布,也就是采样分片是基于标准化分片得到时,则在执行步骤S240时,可以利用皮尔逊积矩相关系数公式确定特征之间的相关性系数分片,也就是,利用对特征值采样后的数据确定相关性系数。
皮尔逊积矩相关系数(Pearson Product-moment Correlation Coefficient,PPCC)也叫皮尔逊相关系数,可以用于度量两个变量X和Y之间的相关程度(线性相关性)。当皮尔逊积矩相关系数的值介于-1到1之间,当其值的绝对值越大,认为两个变量相关程度越大;反之,相关程度越小。两个变量X和Y之间的皮尔逊积矩相关系数r定义为两个变量的协方差除以它们标准差的乘积:
其中,Cov是两个变量之间的协方差,σX和σY分别是两个变量的标准差。式(3)定义了总体相关性系数,在对样本进行估算时,皮尔逊积矩相关系数r还可以采用以下公式表示:
其中,xk和yk是两个变量中的第k个数值,xμ和yμ分别是两个变量的平均值;求和符号对下标k进行求和,k可以从1取到n。
步骤S250,当参与方A和参与方B确定待确定相关性的特征矩阵不符合正态分布时,参与方A对自身持有的特征矩阵XA中的特征值进行排序,并采用序号值代替对应的特征值,得到参与方A的排序分片。参与方B对自身持有的特征矩阵XB中的特征值进行排序,并采用序号值代替对应的特征值,得到参与方B的排序分片。
在大规模数据场景中,当各参与方确定特征矩阵不符合正态分布时,为了提高处理效率,并且避免计算的中间值不可用,可以针对每个特征,按照特征值的大小,对该特征的多个特征值进行排序,并采用序号值代替对应的特征值。
在对特征值进行排序时,可以按照从小到大的顺序,或者从大到小的顺序对多个特征值进行排列,采用序号值代替对应的特征值。例如,样本1~10的点击次数分别为10、21、9、14、13、2、5、11、22和17;对特征值进行排序,得到10个样本的序号值分别为4、9、3、7、6、1、2、5、10和8,将这些序号值分别代替对应的特征值,得到该特征的排序序列。
参与方A和参与方B分别对自身的特征矩阵中的特征值,按照不同特征,将该特征的特征值替换为对应的序号值,各参与方均对各自特征矩阵中的所有特征独立地进行该替换操作。参与方A在对特征矩阵XA进行序号值替换之后,可以得到矩阵XA1;参与方B在对特征矩阵XB进行序号值替换之后,可以得到矩阵XB1。
在一种实施方式中,矩阵XA1可以作为参与方A的排序分片,矩阵XB1可以作为参与方B的排序分片。
在另一种实施方式中,参与方A和参与方B可以分别基于矩阵XA1和矩阵XB1,通过安全的数据交互,使得各方分别得到排序分片。不管是通过哪种方式得到排序分片,不同参与方的排序分片在假定相拼接时构成排序联合矩阵(XA1,XB1)。
步骤S260,参与方A与参与方B通过安全交互,联合对业务对象进行安全采样。参与方A基于采样结果和参与方A自身的排序分片,确定参与方A的采样分片。参与方B基于采样结果和参与方B的排序分片,确定参与方B的采样分片。
在大规模数据场景中,特征的特征值数量非常多,对应的排序分片中包含的数值也会非常多。为了提高处理效率,也避免计算的中间值超出有限域的表示范围,可以对特征的排序分片进行采样。
在数据纵向分布场景中,不同的参与方拥有所有n个业务对象的不同特征,因此,在对所有业务对象进行采样时,各参与方所采样得到的业务对象应达到一致。例如,各参与方可以选举其中一个参与方执行对所有n个业务对象进行采样的步骤,并由该参与方将采样结果发送至其他参与方。各参与方拥有n个业务对象的安全索引,该安全索引不会泄露业务对象的隐私数据。采样结果中可以包含采样得到的业务对象的安全索引。也可以由安全的第三方设备执行对所有n个业务对象进行采样的步骤,并由该第三方将采样结果发送至各个参与方。
对业务对象进行采样的过程,可以不依赖于排序分片的确定,因此可以在步骤S250之前执行,也可以在步骤S250之后执行。在采样时,可以基于采样率进行。例如,采样率可以设置为大于1%(0.01)的值,例如对于千万级别的样本,按照采样率%1进行采样,可以采样10万个样本。对n个业务对象(也就是n个样本)进行采样时,可以基于采样率,对n个业务对象进行随机选取,得到采样结果。采样率可以是根据经验预先设置的比例值;也可以是根据样本的总数量而选择的比例值。
以参与方A为例,对参与方A来说,在基于采样结果和参与方A的排序分片,确定参与方A的采样分片时,可以根据采样结果,从排序分片中选择出对应的业务对象的特征数据,得到中间矩阵。如果排序分片是各参与方通过安全的数据交互进行联合分片后的结果,那么参与方A可以直接将中间矩阵作为采样分片。
如果排序分片是直接从特征矩阵XA得到,并没有与其他参与方进行过联合分片,那么在本步骤中,参与方A可以基于参与方A得到的中间矩阵,与参与方B得到的中间矩阵,通过安全的数据交互,使得各方分别得到采样分片<X>A和<X>B。通过下文图3中的第1步和第2步,可以分别基于各参与方的矩阵XA和矩阵XB,得到采样联合矩阵的分片<X>A和<X>B。关于图3的具体说明,将在针对下文的步骤S270的说明中给出。
不同参与方的采样分片在假定相拼接的情况下构成采样联合矩阵。将各方的数据采样分片表示,能够更好地保护各方的隐私数据不泄露。
步骤S270,参与方A和参与方B,利用基于多方安全计算的矩阵乘法,基于参与方A的采样分片和参与方B的采样分片,利用斯皮尔曼等级相关系数公式,分别确定待确定相关性的特征矩阵中特征之间属于参与方A的相关性系数分片和属于参与方B的相关性系数分片。任意一个相关性系数分片,用于与其他参与方的相关性系数分片合成完整的相关性系数。特征的相关性系数分片不属于隐私数据,可以进行明文合成。
在本实施例中,当采样分片是基于排序分片得到时,在确定相关性系数时,可以利用斯皮尔曼等级相关系数公式确定特征之间的相关性系数分片,也就是利用对排序分片采样后的数据确定相关性系数。
在统计学中,斯皮尔曼等级相关系数(Spearman's Rank CorrelationCoefficient,SRCC)是衡量两个变量的依赖性的无母数指标。它利用单调方程评价两个统计变量的相关性。斯皮尔曼等级相关系数可以用于分析顺序数据,即数据之间只有顺序关系,但并非等距的情况。若数据中没有重复值,且当两变量完全单调相关时,斯皮尔曼等级相关系数为+1或−1;当量变量完全不相关时,斯皮尔曼等级相关系数为0。
因此,在利用斯皮尔曼等级相关系数确定特征之间的相关性系数时,可以将斯皮尔曼等级相关系数的绝对值与0值或1值进行比较,当其越接近于1时,说明两个特征的相关性越强,当其越接近于0时,说明两个特征的相关性越弱。
两个变量之间的斯皮尔曼等级相关系数ρ可以采用以下公式计算:
其中,xk和yk是两个变量中的第k个数值,xμ和yμ分别是两个变量的平均值;求和符号对下标k进行求和,k可以从1取到n。
式(5)可以用于计算两个变量之间的相关性系数。而在本实施例中,各参与方的采样分片中通常包含很多个特征(也就是变量),针对参与方A的所有特征与参与方B的所有特征,为了确定两两特征之间的相关性系数,可以利用不同采样分片之间的联合计算确定,也就是在矩阵层面上操作。
虽然采样分片是对原始的隐私数据进行处理后的数据,但其仍然属于隐私数据,不能明文向外发送,也不能进行明文聚合。在得到各参与方的采样分片后,可以比较方便地利用基于多方安全计算的矩阵乘法,计算式(5)所示的相关性系数分片,从而保证处理过程不泄露隐私数据。基于多方安全计算的矩阵乘法可以包括秘密分享格拉姆矩阵乘法或其他已有的安全矩阵乘法(例如下文图3中的秘密分享矩阵乘法)等。
上述式(4)和式(5)仅仅是计算相关性性系数时的一种举例。在实际应用中,可以对这些公式进行变换,或者通过自定义公式计算相关性系数,这都是可行的。在下面的描述中,仍旧以上述的式(4)或式(5)为例,说明相关性系数的确定过程。
可以发现,式(4)和(5)在形式上是一致的,所使用的数据的来源不同。在计算式(5)时,利用的是排序后的数据;在计算式(4)时,利用的是特征值的数据(非排序后的数据)。为了能够采用式(4)和(5)确定特征之间的相关性系数,并且保证隐私数据不被泄露,可以将式(4)和(5)的计算过程都转换为利用式(3)所示的形式进行的计算,也就是利用两个变量的协方差除以两个变量的标准差的乘积进行计算。
在一种实施方式中,步骤S240和S270可以包含以下步骤1a和2a:
步骤1a,参与方A和参与方B,利用基于多方安全计算的矩阵乘法,基于参与方A的采样分片<X>A和参与方B的采样分片<X>B,确定协方差矩阵Cov的协方差分片<Cov>A和<Cov>B;
步骤2a,基于参与方A的协方差分片<Cov>A、采样分片<X>A以及参与方B的采样分片<X>B,利用基于多方安全计算的矩阵乘法,确定参与方A的相关性系数分片和参与方B的相关性系数分片。
其中,协方差矩阵Cov基于采样联合矩阵X得到。不同参与方的采样分片在假定相拼接的情况下,构成采样联合矩阵X。由于各个参与方不直接进行隐私数据的明文聚合,该采样联合矩阵仅是一种假设情况下的表示,实际中不会直接将各参与方的采样分片拼接在一起。不同参与方的协方差分片在假定重构的情况下,构成协方差矩阵Cov。多个参与方各自的协方差分片在假定重构的情况下,构成完整的协方差矩阵。具体的重构可以是在相加的基础上加入其它的矩阵变换操作,矩阵变换例如包括乘预设值等。
在后续的各种计算中,多个参与方均以分片的形式进行,这样能很好地保护各参与方的数据隐私不被泄露。在后续的描述中,采用“< >”来表示分片,其右下角的字母代表对应的参与方,例如<Cov>A表示协方差矩阵Cov在参与方A中的分片。以下描述中,均以矩阵中的一行对应一个业务对象,一列对应一个特征来为例进行说明。
将上述公式(3)转换到本实施例的场景,并表示成第i个特征与第j个特征之间的相关性系数的形式,具体为
其中,为第i个特征与第j个特征之间的相关性系数,为第i个特征与第j个特征之间的协方差,为第i个特征的标准差,为第j个特征的标准差。
协方差矩阵Cov具体可以基于采样联合矩阵X及其转置矩阵XT的乘积得到。在数据纵向分布场景中将该乘积展开后可知,其中包含参与方A的采样分片与其转置矩阵的乘积项(该项可在参与方A本地计算);包含参与方B的采样分片与其转置矩阵的乘积项(该项可在参与方B本地计算);还包含参与方A的采样分片的转置矩阵与参与方B的采样分片的乘积项,即混合项。在计算该混合项时,可以基于图3所示的秘密分享矩阵乘法(Secret matrixmultiplication,SMM)进行。在每个参与方计算得到各项之后,将各项组合起来,即得到各参与方的协方差分片。其中,计算混合项的分片是难点,本实施例在图3中给出了基于各参与方的分片,计算联合矩阵的分片的方法。图3所示为利用秘密分享矩阵乘法计算矩阵分片的一种流程示意图。
第1步,参与方A利用多方安全计算,通过与其他持有方之间的交互,获取第一拆分矩阵<U>A和第二拆分矩阵<Z>A,参与方B则获取第一拆分矩阵<U>B和第二拆分矩阵<Z>B。此处的第一拆分矩阵和第二拆分矩阵分别表示两类矩阵,每个参与方均可以获取到这两类矩阵。多个参与方的第一拆分矩阵在假定重构的情况下构成第一全矩阵U,多个参与方的第二拆分矩阵在假定重构的情况下构成第二全矩阵Z,并且Zp*p=UTUn*p。在数据纵向分布场景中p=pA+pB。
第2步,参与方A在本地生成第一随机矩阵<XA>A,并将其与矩阵XA进行求差操作,得到第一隐秘矩阵<XA>B,分别与其他参与方进行隐秘矩阵交换,将得到的其他参与方的隐秘矩阵与第一隐秘矩阵<XA>B,按照预定顺序拼接形成第一合并矩阵<X>A。预定顺序可以是预定的左右位置顺序等。
例如,第一隐秘矩阵<XA>B可以按照<XA>B = XA -<XA>A来计算得到,在数据纵向分布场景中,第一合并矩阵<X>A可以按照<X>A =(<XA>A,<XB>A)方式来拼接。
同样的,参与方B在本地生成第二随机矩阵<XB>B,并将其与矩阵XB进行求差操作,得到第二隐秘矩阵<XB>A。分别与其他参与方进行隐秘矩阵交换,将得到的其他参与方的隐秘矩阵与第二隐秘矩阵<XB>A,按照预定顺序拼接形成第二合并矩阵<X>B。
其中,基于矩阵XA(例如是参与方A中间矩阵)和矩阵XB(例如是参与方B的中间矩阵),通过上述安全的数据交互,可以使得参与方A得到第一合并矩阵<X>A(作为参与方A的采样分片),参与方B得到第二合并矩阵<X>B(作为参与方B的采样分片)。
第3步,参与方A基于第一合并矩阵<X>A与第一拆分矩阵<U>A的差,得到第一分离矩阵<D>A,并分别与其他参与方进行分离矩阵交换,基于得到的其他参与方的分离矩阵与第一分离矩阵<D>A的差,得到第一矩阵D。参与方B可以基于第二合并矩阵<X>B与第一拆分矩阵<U>B的差,得到第二分离矩阵<D>B,并分别与其他参与方进行分离矩阵交换,基于得到的其他参与方的分离矩阵与第二分离矩阵<D>B的差,得到第一矩阵D。
第4步,参与方A可以基于第一拆分矩阵<U>A、第二拆分矩阵<Z>A和第一矩阵D之间的叠加,得到矩阵<Y>A=<Z>A+<U>T AD+DT<U>A+DTD。参与方B可以基于第一拆分矩阵<U>B、第二拆分矩阵<Z>B和第一矩阵D之间的叠加,得到矩阵<Y>B=<Z>B+<U>T BD+DT<U>B。
可以验证<Y>A +<Y>B =(XA,XB)T p*n(XA,XB)p*n。即,利用第1步和第2步可以对矩阵XA和矩阵XB进行的安全的数据乘操作,分别得到各参与方的分片矩阵;通过第3步和第4步,可以基于两个参与方的分片矩阵,得到两个分片矩阵的拼接矩阵与其转置矩阵的乘积的分片。
在具体实施步骤S240或S270时,可以基于SMM中的分块矩阵乘法进行,也可以基于秘密分享转置矩阵乘法进行。具体过程可以参见已有技术,此处不再详述。
以参与方A为例,上述式(6)中的可以表示参与方A的相关性系数分片,分子从协方差分片<Cov>A中取,取第ij个元素的值。分母部分的为本地第i特征的特征值对应的方差,为参与方B的第j特征的特征值对应的方差。已知的是,方差等于标准差的平方。
为了计算式(6)中分母分之一,也就是根号逆这部分,可以采用安全根号逆算法(Secure Number Sqrt Invert,SNSI)与SMM算法结合进行计算。具体的,参与方A可以基于自身的采样分片中第i特征对应的数据计算第一方差,参与方B基于自身的采样分片中第j特征对应的数据计算第二方差,接着,多个参与方利用SMM与安全根号逆算法的结合,并基于第一方差与第二方差的乘操作,确定第一方差的根号逆与第二方差的根号逆的乘积结果,该乘积结果即是第i特征的标准差与第j特征的标准差之间乘积的倒数。更具体的处理过程可以参见已有技术,此处不再赘述。各参与方得到的乘积结果也是分片结果,计算得到的相关性系数也是分片。
在需要确定第i特征与第j特征之间完整的相关性系数时,一个参与方设备可以从其他参与方设备中获取对应的相关性系数分片,并重构完整的相关性系数。在得到完整的相关性系数时,参与方设备可以将该相关性系数与预设阈值进行比较,确定针对第i特征和第j特征的处理操作,该处理操作可以包括删除特征或融合特征等。
以上内容是对数据纵向分布场景的说明。下面结合图3实施例对数据横向分布的场景进行说明。
图4为实施例提供的对象特征之间相关性的确定方法的另一种流程示意图。待确定相关性的特征矩阵包括第一参与方和第二参与方分别持有的特征矩阵,不同的特征矩阵包含不同业务对象的相同特征的特征值。为了方便描述,下面仍然以两个参与方A和B为例进行说明。第一参与方可以是参与方A和B中的任意一个。参与方A和B分别存储有不同业务对象的相同特征的特征值,不同业务对象在相同特征下的特征值是不同的。
例如,参与方A存储有nA个业务对象针对预定的D个特征的特征值构成的特征矩阵XA,参与方B存储有nB个业务对象针对D个特征的特征值构成的特征矩阵XB。其中,nA、nB和D均为自然数。多个参与方共计存储有n个业务对象的D个特征的特征值。在以两个参与方为例进行说明时,n=nA+nB。不同参与方中的特征预先按照相同的顺序进行了排列。特征矩阵XA和特征矩阵XB的行可以表示业务对象,列表示特征;也可以是,列表示业务对象,行表示特征。为了描述简洁,以下均采用前一种方式举例说明。
任意一个参与方可以通过其设备执行数据处理操作,该设备可以通过任何具有计算、处理能力的装置、设备、平台、设备集群等实现。该方法包括以下几个步骤。
步骤S410,参与方A和参与方B利用多方安全计算确定待确定相关性的特征矩阵是否符合正态分布。当确定待确定相关性的特征矩阵符合正态分布时,各参与方执行步骤S420;当确定待确定相关性的特征矩阵不符合正态分布时,各参与方执行步骤S450。
在本实施例的数据横向分布场景中,由于不同参与方拥有某个特征的部分特征值,在确定特征值分布是否符合正态分布时,需要多方联合确定。例如,针对第i特征,参与方A和参与方B分布拥有第i特征的部分特征值,需要各参与方联合确定该第i特征是否符合正态分布。各方的特征矩阵在假定相拼接的情况下构成特征联合矩阵,XAB=(XA,XB)T。特征联合矩阵中包含每个特征的完整特征值。在实际中,为了保护隐私数据,并不会对各方的特征矩阵进行拼接而得到特征联合矩阵。
参与方A和参与方B可以基于各自的特征矩阵,利用多方安全计算,确定特征联合矩阵中是否存在不符合正态分布的特征。当确定特征联合矩阵中存在不符合正态分布的特征时,确定待确定相关性的特征矩阵不符合正态分布。当确定特征联合矩阵中的特征都符合正态分布时,确定待确定相关性的特征矩阵符合正态分布。为了针对特征矩阵中的多个特征进行整体操作,当存在至少一个特征不符合正态分布时,即可以确定当前满足待确定相关性的特征矩阵不符合正态分布的条件,从而各参与方可以执行本实施例的实施流程,对所有的特征矩阵进行排序,并用序号值代替对应的特征值。
下面以第i特征为例,说明各参与方利用多方安全计算,确定第i特征是否符合正态分布。在实际应用中,各参与方可以按照一定的顺序分别确定各个特征是否符合正态分布,当确定某个特征不符合正态分布时,可以停止确定其他特征是否符合正态分布。具体的,各参与方可以基于各参与方的特征矩阵中第i特征的多个特征值,利用秘密分享加法和乘法,各参与方联合确定第i特征的偏度值和峰度值;基于偏度值和峰度值,确定第i特征是否符合正态分布。
例如,当偏度值处于第一预设范围中,且峰度值处于第二预设范围中时,可以确定第i特征的特征值分布符合正态分布。在该情况之外,比如偏度值不在第一预设范围中,和/或,峰度值不在第二预设范围中,都认为第i特征的特征值分布不符合正态分布。第一预设范围和第二预设范围可以根据经验设定,其取值可以相同,也可以不同。
在确定第i特征的偏度值时,参与方A和参与方B可以基于式(1),通过多方安全计算,计算偏度值。具体的,对于式(1)的分子部分和分母部分,可以分别利用秘密分享加法和乘法确定分子部分的分片和分母部分的分片,各个参与方分别基于分子部分的分片和分母部分的分片确定偏度值分片。多个偏度值分片可以汇聚到某个参与方中,并重构出完整的偏度值。
在确定第i特征的峰度值时,参与方A和参与方B可以基于式(2),通过多方安全计算,计算峰度值。具体的,对于式(2)的分子部分和分母部分,可以分别利用秘密分享加法和乘法确定分子部分的分片和分母部分的分片,各个参与方分别基于分子部分的分片和分母部分的分片确定峰度值分片。多个峰度值分片可以汇聚到某个参与方中,并重构出完整的峰度值。
步骤S420,当确定待确定相关性的特征矩阵符合正态分布时,参与方A和参与方B可以利用秘密分享加法和乘法,基于参与方A的特征矩阵和参与方B的特征矩阵,联合对特征矩阵进行标准化,得到参与方A的标准化分片,以及参与方B的标准化分片。
在数据横向分布场景中,对特征矩阵进行标准化处理时,需要各参与方利用多方安全计算联合进行。例如,在特征矩阵的列表示特征,行表示样本的情况下,可以基于秘密分享加法和乘法,以及各个参与方的特征矩阵中的数据,确定每一列的特征值x的平均值μ和方差σ,不同参与方分别利用(x-μ)/σ对特征矩阵中的特征值进行标准化处理。
步骤S430,各参与方可以分别对业务对象进行采样,并基于采样结果和各参与方的标准化分片确定各参与方的采样分片。
参与方A可以对业务对象(例如nA个样本)进行随机采样,基于采样结果和自身的标准化分片XA确定参与方A的采样分片,参与方B可以对业务对象(例如nB个样本)进行随机采样,基于采样结果和自身的标准化分片XB确定参与方B的采样分片。在这种情况中,采样分片中的数据是对标准化后的特征值进行采样得到的。
在本实施例中,在基于采样结果和标准化分片确定采样分片时,具体可以根据采样结果,从标准化分片中选择出对应的业务对象的特征数据,得到中间矩阵,基于中间矩阵确定采样分片。在基于中间矩阵确定采样分片时,可以利用参与方A的中间矩阵和参与方B的中间矩阵,通过安全的数据交互进行联合分片,分别得到参与方A的采样分片和参与方B的采样分片。
在另一种实施方式中,参与方可以分别基于采样结果,从自身的特征矩阵中选择出对应的业务对象的特征数据,得到中间矩阵,接着,各参与方利用秘密分享加法和乘法,基于各自的特征矩阵,联合对中间矩阵进行标准化,得到各参与方的标准化后的中间矩阵。然后,各参与方基于各自的标准化后的中间矩阵,通过安全的数据交互对标准化后的中间矩阵进行联合分片,分别得到参与方A的采样分片和参与方B的采样分片。也就是,标准化处理可以在得到中间矩阵后进行。
步骤S440,参与方A和参与方B,利用多方安全计算,基于参与方A的采样分片和参与方B的采样分片,利用皮尔逊积矩相关系数公式确定待确定相关性的特征矩阵中特征之间属于参与方A的相关性系数分片和属于参与方B的相关性系数分片。任意一个相关性系数分片,用于与其他参与方的相关性系数分片合成完整的相关性系数。
如果确定待确定相关性的特征矩阵符合正态分布,则在执行步骤S440时,可以基于皮尔逊积矩相关系数公式确定特征之间的相关性系数,也就是利用包含特征值数据的采样分片确定相关性系数。
利用式(4)的皮尔逊积矩相关系数公式计算特征之间的相关系性系数,其计算过程可以转换为利用式(3)进行计算,具体的计算过程可以参见步骤S470中的说明。
步骤S450,当参与方A和参与方B确定待确定相关性的特征矩阵不符合正态分布时,参与方A和参与方B利用多方安全计算,联合对各方特征矩阵中的特征值进行安全排序,并采用序号值分片代替对应的特征值分片,使得不同参与方分别得到各自的排序分片。
由于第i特征的多个特征值分布在不同参与方中,在对特征值进行安全排序时,可以利用基于安全排序算法的多方安全计算,通过不同参与方之间的交互,将各参与方拥有的特征值分片替换为对应的序号值分片。还可以是,参与方A和B通过安全的数据交互,基于各自的特征矩阵,分别得到特征矩阵分片(为n*p维),并利用基于安全排序算法的多方安全计算,通过参与方之间的交互,分别得到排序后的序号值分片,并利用序号值分片代替对应的特征值分片。特征值及其排序结果属于隐私数据,采用序号值分片代替对应的特征值分片能够保护隐私数据不被泄露。利用多方安全计算对分布在不同参与方中的多个特征值进行排序的具体实施过程,可以参见已有技术,此处不再赘述。
参与方A在对特征矩阵XA进行序号值分片替换之后,可以得到矩阵XA1;参与方B在对特征矩阵XB进行序号值分片替换之后,可以得到矩阵XB1。
在一种实施方式中,矩阵XA1可以作为参与方A的排序分片,矩阵XB1可以作为参与方B的排序分片。
在另一种实施方式中,参与方A和参与方B可以分别基于矩阵XA1和矩阵XB1,通过安全的数据交互,使得各方分别得到排序分片。不管是通过哪种方式得到排序分片,不同参与方的排序分片在假定相拼接时构成排序联合矩阵(XA1,XB1)T。
步骤S460,参与方A对业务对象进行采样,并基于采样结果和参与方A的排序分片确定参与方A的采样分片。参与方B对业务对象进行采样,并基于采样结果和参与方B的排序分片确定参与方B的采样分片。
如果参与方A的排序分片的维度为nA*p,参与方B的排序分片的维度为nB*p,即排序分片是直接从各参与方的特征矩阵中得到,并没有与其他参与方进行过联合分片,则在对业务对象进行采样时,各参与方可以分别独立地进行采样。即参与方A从其拥有的nA个业务对象中进行采样,参与方B从其拥有的nB个业务对象中进行采样。
如果参与方A和参与方B的排序分片的维度都是n*p,即各参与方进行过联合分片,则在对业务对象进行采样时,多个参与方应联合对所有n个业务对象进行安全采样,得到采样结果。接着,各参与方分别基于该采样结果和各自的排序分片,确定各自的采样分片。
对业务对象进行采样的过程,可以不依赖于排序分片的确定,因此可以在步骤S450之前执行,也可以在步骤S450之后执行。在采样时,可以基于采样率进行。当不同参与方各自独立地进行采样时,可以分别基于本地数据的数量(例如nA或nB)确定采样率。多个参与方联合对所有n个业务对象进行安全采样的具体实施方式和说明,可以参见步骤S260中的说明,此处不再赘述。
以参与方A为例,参与方A基于采样结果和自身的排序分片,确定参与方A的采样分片时,可以根据采样结果,从排序分片中选择出对应的业务对象的特征数据,得到采样分片。
步骤S470,参与方A和参与方B,利用多方安全计算,基于参与方A的采样分片和参与方B的采样分片,利用斯皮尔曼等级相关系数公式确定待确定相关性的特征矩阵中特征之间属于参与方A的相关性系数分片和属于参与方B的相关性系数分片。任意一个相关性系数分片,用于与其他参与方的相关性系数分片合成完整的相关性系数。
在本实施例中,当采样分片是基于排序分片得到时,在本步骤中确定相关性系数分片时,可以基于斯皮尔曼等级相关系数公式确定,也就是利用对排序采样后的数据确定相关性系数。
步骤S470的具体说明可以参见步骤S270,下面仅针对两步骤之间的不同之处进行说明。不管是利用式(5)的斯皮尔曼等级相关系数公式,还是利用式(4)的皮尔逊积矩相关系数公式计算特征之间的相关系性系数,其计算过程都可以转换为利用式(3)进行计算。因此,步骤S440或步骤S470在具体实施时可以包括以下步骤1b和2b:
步骤1b,参与方A基于采样分片<X>A确定协方差矩阵的协方差分片<Cov>A,参与方B基于采样分片XB确定协方差矩阵的协方差分片<Cov>B;
步骤2b,基于参与方A的协方差分片<Cov>A、采样分片<X>A以及参与方B的采样分片<X>B,利用基于多方安全计算的矩阵乘法,确定参与方A的相关性系数分片。同时,基于参与方B的协方差分片<Cov>B、采样分片<X>B以及参与方A的采样分片<X>A,利用基于多方安全计算的矩阵乘法,确定参与方B的相关性系数分片。在实际应用中,以上两个确定操作可以是同时进行的。任意一个相关性系数分片用于与其他参与方确定的相关性系数分片合成完整的相关性系数。
其中,协方差矩阵Cov基于采样联合矩阵X得到。不同参与方各自的采样分片在假定相拼接的情况下,构成采样联合矩阵X。不同参与方的协方差分片在假定重构的情况下,构成协方差矩阵Cov。
在数据横向分布场景中,利用式(3)进行计算,也就是对式(6)进行计算。
在数据横向分布场景中,参与方在计算步骤1b中的协方差矩阵的协方差分片时,仅利用各参与方本地的采样分片即可计算得到。这是因为,协方差矩阵Cov可以基于采样联合矩阵X及其转置矩阵XT的乘积得到,而在数据横向分布场景中将该乘积展开后可知,包含参与方A的采样分片的项与包含参与方B的采样分片的项是相加的关系,因此不同参与方可以在本地计算协方差分片。
在计算式(6)中的分母分之一时,可以采用安全根号逆算法与SMM算法结合进行确定第i特征的标准差与第j特征的标准差之间乘积的倒数。具体的处理过程可以参见已有技术,此处不再赘述。
在执行步骤2b时,参与方A可以从协方差分片<Cov>A中获取与第i特征和第j特征对应的协方差分片项。接着,将该协方差分片项与上述倒数相乘,得到第i特征和第j特征之间属于参与方A的相关性系数分片。参与方B可以执行类似的操作确定其相关性系数分片。
本说明书中,第一参与方、第一预设范围等词语中的“第一”,以及文中相应的“第二”,仅仅是为了区分和描述方便,而不具有任何限定意义。
上述内容对本说明书的特定实施例进行了描述,其他实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行,并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要按照示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的,或者可能是有利的。
图5为实施例提供的对象特征之间相关性的确定装置的一种示意性框图。待确定相关性的特征矩阵包括第一参与方和第二参与方分别持有的特征矩阵,不同的特征矩阵包含相同业务对象的不同特征的特征值。该装置实施例与图2所示方法实施例相对应。该装置500部署在第一参与方中,包括:
第一替代模块510,配置为当所述待确定相关性的特征矩阵不符合正态分布时,对所述第一参与方的特征矩阵中的特征值进行排序,并采用序号值代替对应的特征值,得到所述第一参与方的排序分片;
第一采样模块520,配置为与所述第二参与方联合对所述业务对象进行安全采样,并基于采样结果和所述第一参与方的排序分片确定所述第一参与方的采样分片;
第一确定模块530,配置为利用基于多方安全计算的矩阵乘法,基于所述第一参与方的采样分片和所述第二参与方的采样分片,确定所述待确定相关性的特征矩阵中特征之间属于所述第一参与方的相关性系数分片,以用于与所述第二参与方的相关性系数分片合成完整的相关性系数。
在一种实施方式中,所述装置500还包括:
第一标准化模块540,配置为当所述待确定相关性的特征矩阵符合正态分布时,对自身持有的特征矩阵进行标准化,得到所述第一参与方的标准化分片;
第二采样模块550,配置为与所述第二参与方联合对所述业务对象进行安全采样,并基于采样结果从所述第一参与方的标准化分片中得到采样分片,继续执行所述第一确定模块530。
在一种实施方式中,所述装置500还包括:
第二确定模块(图中未示出),配置为采用以下操作确定待确定相关性的特征矩阵是否符合正态分布:
当确定所述第一参与方的特征矩阵中存在不符合正态分布的特征时,确定所述待确定相关性的特征矩阵不符合正态分布。
在一种实施方式中,第二确定模块还配置为:
当确定所述第一参与方的特征矩阵中的特征都符合正态分布时,获取用于表征所述第二参与方的特征矩阵中是否存在不符合正态分布的特征的结果;
当所述结果表明所述第二参与方的特征矩阵中存在不符合正态分布的特征时,确定所述待确定相关性的特征矩阵不符合正态分布。
在一种实施方式中,第二确定模块,还配置为采用以下操作确定所述第一参与方的特征矩阵中是否存在不符合正态分布的特征:
基于所述第一参与方的特征矩阵中第i特征的多个特征值,确定所述第i特征的偏度值和峰度值;
基于所述偏度值和峰度值,确定所述第i特征是否符合正态分布。
在一种实施方式中,所述第二确定模块,确定第i特征是否符合正态分布时,包括:
当所述偏度值处于第一预设范围中,且所述峰度值处于第二预设范围中时,确定所述第i特征符合正态分布。
在一种实施方式中,所述第一确定模块530包括:
第一确定子模块(图中未示出),配置为利用基于多方安全计算的矩阵乘法,基于所述第一参与方的采样分片和所述第二参与方的采样分片,确定协方差矩阵的协方差分片;其中,所述协方差矩阵基于采样联合矩阵得到;各方的采样分片在假定相拼接的情况下构成所述采样联合矩阵;各方的协方差分片在假定重构的情况下构成所述协方差矩阵;
第二确定子模块(图中未示出),配置为基于所述第一参与方的协方差分片、采样分片以及所述第二参与方的采样分片,利用基于多方安全计算的矩阵乘法,确定所述第一参与方的相关性系数分片。
图6为实施例提供的对象特征之间相关性的确定装置的另一种示意性框图。待确定相关性的特征矩阵包括第一参与方和第二参与方分别持有的特征矩阵,不同的特征矩阵包含不同业务对象的相同特征的特征值。该装置实施例与图4所示方法实施例相对应。装置600部署在第一参与方设备中,包括:
第二替代模块610,配置为当所述待确定相关性的特征矩阵不符合正态分布时,利用多方安全计算,不同参与方联合对各方特征矩阵中的特征值进行安全排序,并采用序号值分片代替对应的特征值分片,使得不同参与方分别得到各自的排序分片;
第三采样模块620,配置为对业务对象进行采样,并基于采样结果和所述第一参与方的排序分片确定所述第一参与方的采样分片;
第三确定模块630,配置为利用多方安全计算,基于所述第一参与方的采样分片和所述第二参与方的采样分片,确定所述待确定相关性的特征矩阵中特征之间属于所述第一参与方的相关性系数分片,以用于与第二参与方的相关性系数分片合成完整的相关性系数。
在一种实施方式中,所述装置600还包括:
第二标准化模块640,配置为当所述待确定相关性的特征矩阵符合正态分布时,利用秘密分享加法和乘法,与所述第二参与方联合对特征矩阵进行标准化,得到各参与方的标准化分片;
第四采样模块650,配置为对业务对象进行采样,并基于采样结果和所述第一参与方的标准化分片确定所述第一参与方的采样分片,返回执行所述第三确定模块630。
在一种实施方式中,所述装置600还包括:
第四确定模块(图中未示出),配置为采用以下操作确定所述待确定相关性的特征矩阵是否符合正态分布:
利用多方安全计算,不同参与方基于各自的特征矩阵,确定特征联合矩阵中是否存在不符合正态分布的特征;各方的特征矩阵在假定相拼接的情况下构成所述特征联合矩阵;
如果存在,则确定所述待确定相关性的特征矩阵不符合正态分布。
在一种实施方式中,所述第四确定模块,确定特征联合矩阵中是否存在不符合正态分布的特征时,包括:
基于各参与方的特征矩阵中第i特征的多个特征值,利用秘密分享加法和乘法,各参与方联合确定所述第i特征的偏度值和峰度值;
基于所述偏度值和峰度值,确定所述第i特征是否符合正态分布。
在一种实施方式中,所述第三确定模块630包括:
第三确定子模块(图中未示出),配置为基于所述第一参与方的采样分片,确定协方差矩阵的协方差分片;其中,所述协方差矩阵基于采样联合矩阵得到;各方的采样分片在假定相拼接的情况下构成所述采样联合矩阵;
第四确定子模块(图中未示出),配置为基于所述第一参与方的协方差分片、采样分片以及所述第二参与方的采样分片,利用基于多方安全计算的矩阵乘法,确定所述第一参与方的相关性系数分片。
上述各个装置实施例与方法实施例相对应,具体说明可以参见方法实施例部分的描述,此处不再赘述。装置实施例是基于对应的方法实施例得到,与对应的方法实施例具有同样的技术效果,具体说明可参见对应的方法实施例。
本说明书实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,当所述计算机程序在计算机中执行时,令计算机执行图1-1、图1-2、图2至图4任一项所述的方法。
本说明书实施例还提供了一种计算设备,包括存储器和处理器,所述存储器中存储有可执行代码,所述处理器执行所述可执行代码时,实现图1-1、图1-2、图2至图4任一项所述的方法。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于存储介质和计算设备实施例而言,由于其基本相似于方法实施例,所以描述得比较简单,相关之处参见方法实施例的部分说明即可。
本领域技术人员应该可以意识到,在上述一个或多个示例中,本发明实施例所描述的功能可以用硬件、软件、固件或它们的任意组合来实现。当使用软件实现时,可以将这些功能存储在计算机可读介质中或者作为计算机可读介质上的一个或多个指令或代码进行传输。
以上所述的具体实施方式,对本发明实施例的目的、技术方案和有益效果进行了进一步的详细说明。所应理解的是,以上所述仅为本发明实施例的具体实施方式而已,并不用于限定本发明的保护范围,凡在本发明的技术方案的基础之上所做的任何修改、等同替换、改进等,均应包括在本发明的保护范围之内。
Claims (16)
1.一种针对大规模数据的对象特征之间相关性的确定方法,待确定相关性的特征矩阵包括第一参与方和第二参与方分别持有的特征矩阵,不同的特征矩阵包含相同业务对象的不同特征的特征值;所述方法通过第一参与方执行,包括:
当所述待确定相关性的特征矩阵不符合正态分布时,对所述第一参与方的特征矩阵中的特征值进行排序,并采用序号值代替对应的特征值,得到所述第一参与方的排序分片;其中,当多个参与方的特征矩阵中至少存在一个不符合正态分布的特征时,确定所述待确定相关性的特征矩阵不符合正态分布;
与所述第二参与方联合对所述业务对象进行安全采样,并基于采样结果和所述第一参与方的排序分片确定所述第一参与方的采样分片;
利用基于多方安全计算的矩阵乘法,基于所述第一参与方的采样分片和所述第二参与方的采样分片,确定所述待确定相关性的特征矩阵中特征之间属于所述第一参与方的相关性系数分片,以用于与所述第二参与方的相关性系数分片合成完整的相关性系数;
其中,所述第二参与方的采样分片基于所述采样结果和所述第二参与方的排序分片确定,所述第二参与方的排序分片通过对所述第二参与方的特征矩阵中的特征值进行排序,并采用序号值代替对应的特征值而得到。
2.根据权利要求1所述的方法,所述方法还包括:
当所述待确定相关性的特征矩阵符合正态分布时,对自身持有的特征矩阵进行标准化,得到所述第一参与方的标准化分片;
与所述第二参与方联合对所述业务对象进行安全采样,并基于采样结果从所述第一参与方的标准化分片中得到采样分片,返回执行所述确定所述待确定相关性的特征矩阵中特征之间属于所述第一参与方的相关性系数分片的步骤。
3.根据权利要求1所述的方法,其中还包括采用以下方式确定所述待确定相关性的特征矩阵是否符合正态分布:
当确定所述第一参与方的特征矩阵中存在不符合正态分布的特征时,确定所述待确定相关性的特征矩阵不符合正态分布。
4.根据权利要求3所述的方法,其中还包括:
当确定所述第一参与方的特征矩阵中的特征都符合正态分布时,获取用于表征所述第二参与方的特征矩阵中是否存在不符合正态分布的特征的结果;
当所述结果表明所述第二参与方的特征矩阵中存在不符合正态分布的特征时,确定所述待确定相关性的特征矩阵不符合正态分布。
5.根据权利要求3所述的方法,其中还包括采用以下方式确定所述第一参与方的特征矩阵中是否存在不符合正态分布的特征:
基于所述第一参与方的特征矩阵中第i特征的多个特征值,确定所述第i特征的偏度值和峰度值;
基于所述偏度值和峰度值,确定所述第i特征是否符合正态分布。
6.根据权利要求5所述的方法,所述确定所述第i特征是否符合正态分布的步骤,包括:
当所述偏度值处于第一预设范围中,且所述峰度值处于第二预设范围中时,确定所述第i特征符合正态分布。
7.根据权利要求1所述的方法,所述确定所述待确定相关性的特征矩阵中特征之间属于所述第一参与方的相关性系数分片的步骤,包括:
利用基于多方安全计算的矩阵乘法,基于所述第一参与方的采样分片和所述第二参与方的采样分片,确定协方差矩阵的协方差分片;其中,所述协方差矩阵基于采样联合矩阵得到;各方的采样分片在假定相拼接的情况下构成所述采样联合矩阵;各方的协方差分片在假定重构的情况下构成所述协方差矩阵;
基于所述第一参与方的协方差分片、采样分片以及所述第二参与方的采样分片,利用基于多方安全计算的矩阵乘法,确定所述第一参与方的相关性系数分片。
8.一种针对大规模数据的对象特征之间相关性的确定方法,待确定相关性的特征矩阵包括第一参与方和第二参与方分别持有的特征矩阵,不同的特征矩阵包含不同业务对象的相同特征的特征值;所述方法通过第一参与方执行,包括:
当所述待确定相关性的特征矩阵不符合正态分布时,利用多方安全计算,不同参与方联合对各方特征矩阵中的特征值进行安全排序,并采用序号值分片代替对应的特征值分片,使得不同参与方分别得到各自的排序分片;其中,当多个参与方的特征矩阵中至少存在一个不符合正态分布的特征时,确定所述待确定相关性的特征矩阵不符合正态分布;
对业务对象进行采样,并基于采样结果和所述第一参与方的排序分片确定所述第一参与方的采样分片;
利用多方安全计算,基于所述第一参与方的采样分片和所述第二参与方的采样分片,确定所述待确定相关性的特征矩阵中特征之间属于所述第一参与方的相关性系数分片,以用于与所述第二参与方的相关性系数分片合成完整的相关性系数;其中,所述第二参与方的采样分片基于采样结果和所述第二参与方的排序分片确定。
9.根据权利要求8所述的方法,所述方法还包括:
当所述待确定相关性的特征矩阵符合正态分布时,利用秘密分享加法和乘法,与所述第二参与方联合对特征矩阵进行标准化,得到各参与方的标准化分片;
对业务对象进行采样,并基于采样结果和所述第一参与方的标准化分片确定所述第一参与方的采样分片,返回执行所述确定所述待确定相关性的特征矩阵中特征之间属于所述第一参与方的相关性系数分片的步骤。
10.根据权利要求8所述的方法,其中还包括采用以下方式确定所述待确定相关性的特征矩阵是否符合正态分布:
利用多方安全计算,不同参与方基于各自的特征矩阵,确定特征联合矩阵中是否存在不符合正态分布的特征;各方的特征矩阵在假定相拼接的情况下构成所述特征联合矩阵;
如果存在,则确定所述待确定相关性的特征矩阵不符合正态分布。
11.根据权利要求10所述的方法,所述确定特征联合矩阵中是否存在不符合正态分布的特征的步骤,包括:
基于各参与方的特征矩阵中第i特征的多个特征值,利用秘密分享加法和乘法,各参与方联合确定所述第i特征的偏度值和峰度值;
基于所述偏度值和峰度值,确定所述第i特征是否符合正态分布。
12.根据权利要求8所述的方法,所述确定所述待确定相关性的特征矩阵中特征之间属于所述第一参与方的相关性系数分片的步骤,包括:
基于所述第一参与方的采样分片,确定协方差矩阵的协方差分片;其中,所述协方差矩阵基于采样联合矩阵得到;各方的采样分片在假定相拼接的情况下构成所述采样联合矩阵;
基于所述第一参与方的协方差分片、采样分片以及所述第二参与方的采样分片,利用基于多方安全计算的矩阵乘法,确定所述第一参与方的相关性系数分片。
13.一种针对大规模数据的对象特征之间相关性的确定装置,待确定相关性的特征矩阵包括第一参与方和第二参与方分别持有的特征矩阵,不同的特征矩阵包含相同业务对象的不同特征的特征值;所述装置部署在所述第一参与方中,包括:
第一替代模块,配置为当所述待确定相关性的特征矩阵不符合正态分布时,对所述第一参与方的特征矩阵中的特征值进行排序,并采用序号值代替对应的特征值,得到所述第一参与方的排序分片;其中,当多个参与方的特征矩阵中至少存在一个不符合正态分布的特征时,确定所述待确定相关性的特征矩阵不符合正态分布;
第一采样模块,配置为与所述第二参与方联合对所述业务对象进行安全采样,并基于采样结果和所述第一参与方的排序分片确定所述第一参与方的采样分片;
第一确定模块,配置为利用基于多方安全计算的矩阵乘法,基于所述第一参与方的采样分片和所述第二参与方的采样分片,确定所述待确定相关性的特征矩阵中特征之间属于所述第一参与方的相关性系数分片,以用于与所述第二参与方的相关性系数分片合成完整的相关性系数;
其中,所述第二参与方的采样分片基于所述采样结果和所述第二参与方的排序分片确定,所述第二参与方的排序分片通过对所述第二参与方的特征矩阵中的特征值进行排序,并采用序号值代替对应的特征值而得到。
14.一种针对大规模数据的对象特征之间相关性的确定装置,待确定相关性的特征矩阵包括第一参与方和第二参与方分别持有的特征矩阵,不同的特征矩阵包含不同业务对象的相同特征的特征值;所述装置部署在所述第一参与方中,包括:
第二替代模块,配置为当所述待确定相关性的特征矩阵不符合正态分布时,利用多方安全计算,不同参与方联合对各方特征矩阵中的特征值进行安全排序,并采用序号值分片代替对应的特征值分片,使得不同参与方分别得到各自的排序分片;其中,当多个参与方的特征矩阵中至少存在一个不符合正态分布的特征时,确定所述待确定相关性的特征矩阵不符合正态分布;
第三采样模块,配置为对业务对象进行采样,并基于采样结果和所述第一参与方的排序分片确定所述第一参与方的采样分片;
第三确定模块,配置为利用多方安全计算,基于所述第一参与方的采样分片和所述第二参与方的采样分片,确定所述待确定相关性的特征矩阵中特征之间属于所述第一参与方的相关性系数分片,以用于与所述第二参与方的相关性系数分片合成完整的相关性系数;其中,所述第二参与方的采样分片基于采样结果和所述第二参与方的排序分片确定。
15.一种计算机可读存储介质,其上存储有计算机程序,当所述计算机程序在计算机中执行时,令计算机执行权利要求1-12中任一项所述的方法。
16.一种计算设备,包括存储器和处理器,所述存储器中存储有可执行代码,所述处理器执行所述可执行代码时,实现权利要求1-12中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210702081.4A CN114781000B (zh) | 2022-06-21 | 2022-06-21 | 针对大规模数据的对象特征之间相关性的确定方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210702081.4A CN114781000B (zh) | 2022-06-21 | 2022-06-21 | 针对大规模数据的对象特征之间相关性的确定方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114781000A CN114781000A (zh) | 2022-07-22 |
CN114781000B true CN114781000B (zh) | 2022-09-20 |
Family
ID=82421675
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210702081.4A Active CN114781000B (zh) | 2022-06-21 | 2022-06-21 | 针对大规模数据的对象特征之间相关性的确定方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114781000B (zh) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112818290A (zh) * | 2021-01-21 | 2021-05-18 | 支付宝(杭州)信息技术有限公司 | 多方联合确定隐私数据中对象特征相关性的方法及装置 |
CN113407988A (zh) * | 2021-05-26 | 2021-09-17 | 支付宝(杭州)信息技术有限公司 | 控制通信量的确定业务数据特征有效值的方法及装置 |
EP3970074A1 (en) * | 2019-05-16 | 2022-03-23 | FRAUNHOFER-GESELLSCHAFT zur Förderung der angewandten Forschung e.V. | Concepts for federated learning, client classification and training data similarity measurement |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11005661B1 (en) * | 2020-08-24 | 2021-05-11 | Kpn Innovations, Llc. | Methods and systems for cryptographically secured outputs from telemedicine sessions |
CN113821827B (zh) * | 2021-02-19 | 2024-04-19 | 支付宝(杭州)信息技术有限公司 | 保护多方数据隐私的联合建模方法及装置 |
CN113407987B (zh) * | 2021-05-24 | 2023-10-20 | 支付宝(杭州)信息技术有限公司 | 保护隐私的确定业务数据特征有效值的方法及装置 |
-
2022
- 2022-06-21 CN CN202210702081.4A patent/CN114781000B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP3970074A1 (en) * | 2019-05-16 | 2022-03-23 | FRAUNHOFER-GESELLSCHAFT zur Förderung der angewandten Forschung e.V. | Concepts for federated learning, client classification and training data similarity measurement |
CN112818290A (zh) * | 2021-01-21 | 2021-05-18 | 支付宝(杭州)信息技术有限公司 | 多方联合确定隐私数据中对象特征相关性的方法及装置 |
CN113407988A (zh) * | 2021-05-26 | 2021-09-17 | 支付宝(杭州)信息技术有限公司 | 控制通信量的确定业务数据特征有效值的方法及装置 |
Non-Patent Citations (4)
Title |
---|
Secure Multi-party Computation of correlation coefficients;Moon etc.;《Journal of KIISE》;20141231;全文 * |
基于联邦学习的大数据风控模型;常悦;《硕士电子期刊》;20220515;全文 * |
安全多方计算的一些研究进展;马敏耀;《中国新通信》;20200920(第18期);全文 * |
本地化差分隐私研究综述;叶青青等;《软件学报》;20171017(第07期);第799-809页 * |
Also Published As
Publication number | Publication date |
---|---|
CN114781000A (zh) | 2022-07-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110032665B (zh) | 确定关系网络图中图节点向量的方法及装置 | |
Hooi et al. | Birdnest: Bayesian inference for ratings-fraud detection | |
Araujo et al. | Com2: fast automatic discovery of temporal (‘comet’) communities | |
CN112818290B (zh) | 多方联合确定隐私数据中对象特征相关性的方法及装置 | |
CN113407987B (zh) | 保护隐私的确定业务数据特征有效值的方法及装置 | |
CN111506922B (zh) | 多方联合对隐私数据进行显著性检验的方法和装置 | |
Bojnordi et al. | A novel collaborative filtering model based on combination of correlation method with matrix completion technique | |
CN113961967B (zh) | 基于隐私保护联合训练自然语言处理模型的方法及装置 | |
CN114492605A (zh) | 联邦学习特征选择方法、装置、系统以及电子设备 | |
CN112487489B (zh) | 保护隐私的联合数据处理方法及装置 | |
CN110912768A (zh) | 多路径传输网络性能的灰色关联与模糊评估方法和系统 | |
CN115269983A (zh) | 基于双方数据隐私保护的目标样本推荐方法 | |
Zhang et al. | A fast and accurate guessing entropy estimation algorithm for full-key recovery | |
CN110443061B (zh) | 一种数据加密方法和装置 | |
CN114781000B (zh) | 针对大规模数据的对象特征之间相关性的确定方法及装置 | |
Girand | Dynamical Green functions and discrete Schrödinger operators with potentials generated by primitive invertible substitution | |
El Sheikh et al. | New aspects on the modified group LASSO using the least angle regression and shrinkage algorithm | |
Hegedűs et al. | Towards building method level maintainability models based on expert evaluations | |
Khan et al. | Testing base load with non-sample prior information on process load | |
Lê et al. | A novel variable ordering heuristic for BDD-based K-terminal reliability | |
Abrevaya | Pairwise-difference rank estimation of the transformation model | |
Song et al. | Full maximum likelihood estimation of polychoric and polyserial correlations with missing data | |
CN113407988A (zh) | 控制通信量的确定业务数据特征有效值的方法及装置 | |
Lima et al. | Bootstrap-based testing inference in beta regressions | |
Khajavi et al. | The goodness of covariance selection problem from AUC bounds |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |