CN111461178B - 数据处理方法、系统及装置 - Google Patents
数据处理方法、系统及装置 Download PDFInfo
- Publication number
- CN111461178B CN111461178B CN202010164475.XA CN202010164475A CN111461178B CN 111461178 B CN111461178 B CN 111461178B CN 202010164475 A CN202010164475 A CN 202010164475A CN 111461178 B CN111461178 B CN 111461178B
- Authority
- CN
- China
- Prior art keywords
- data terminal
- data
- matrix
- clustering
- user
- 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
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/23—Clustering techniques
Landscapes
- Engineering & Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Theoretical Computer Science (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Artificial Intelligence (AREA)
- Evolutionary Biology (AREA)
- Evolutionary Computation (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请适用于数据处理技术领域,提供了数据处理方法,数据处理方法应用于第一数据终端,数据处理方法包括:基于第一数据终端的聚类指示矩阵、第一数据终端的用户数据集以及指定公式进行计算,得到第一数据终端对应的计算结果;将第一数据终端对应的计算结果发送至指定服务器,根据相加结果更新第一数据终端的聚类指示矩阵,以及将更新后的使得指定多视图聚类模型对应的目标函数收敛的聚类指示矩阵确定为数据终端的用户数据集对应的聚类结果;根据数据终端的用户数据集对应的聚类结果预测对应的用户在指定行为的参与结果。通过上述方法,能够在保护数据隐私的前提下,提高所预测出的用户在指定行为的参与结果的准确性。
Description
技术领域
本申请属于数据处理技术领域,尤其涉及数据处理方法、系统及装置。
背景技术
如今,人们对数据信息化的要求越来越高。许多企业在进行活动策划的时候,需要预测用户参与结果。在预测用户参与结果的过程中,通常需要对大量的数据进行聚类。
然而,由于单个数据终端上的数据的数量和特征往往比较少,因此,若只利用单个数据终端上的数据进行聚类,则聚类结果的准确性比较低,导致所预测出的用户参与结果的准确性比较低,若将多个数据终端上的数据集中在一起,再对集中后的数据进行聚类,则可能会破坏数据隐私,即保护数据隐私和获取较为准确的用户参与结果,此两者不可兼得。
发明内容
本申请实施例提供了数据处理方法及装置,可以解决目前保护数据隐私和获取较为准确的用户参与结果,此两者不可兼得的问题。
第一方面,本申请实施例提供了一种数据处理方法,所述数据处理方法应用于第一数据终端,所述数据处理方法,包括:
基于所述第一数据终端的聚类指示矩阵、所述第一数据终端的用户数据集以及指定公式进行计算,得到所述第一数据终端对应的计算结果,所述聚类指示矩阵用于指示用户数据集对应的用户所属的用户类别;
将所述第一数据终端对应的计算结果发送至指定服务器,所述指定服务器用于:将所述第一数据终端对应的计算结果和第二数据终端对应的计算结果进行相加以得到相加结果,以及将所述相加结果发送至所述第一数据终端,所述第二数据终端的数量大于或者等于一,所述第二数据终端对应的计算结果是第二数据终端基于所述第二数据终端的聚类指示矩阵、所述第二数据终端的用户数据集以及所述指定公式计算得到;
根据所述相加结果更新所述第一数据终端的聚类指示矩阵,以及将更新后的使得指定多视图聚类模型对应的目标函数收敛的聚类指示矩阵确定为数据终端的用户数据集对应的聚类结果,所述数据终端包括所述第一数据终端和所述第二数据终端,单个所述数据终端的用户数据集为所述指定多视图模型中一个视图对应的视图数据;
根据所述数据终端的用户数据集对应的聚类结果预测对应的用户在指定行为的参与结果。
第二方面,本申请实施例提供了一种数据处理系统,包括:至少两个指定数据终端和一个指定服务器,其中:
每个所述指定数据终端用于:基于所述指定数据终端的聚类指示矩阵、所述指定数据终端的用户数据集以及指定公式进行计算,得到所述指定数据终端对应的计算结果,将所述指定数据终端对应的计算结果发送至指定服务器,所述聚类指示矩阵用于指示用户数据集对应的用户所属的用户类别,单个所述指定数据终端的用户数据集为指定多视图模型中一个视图对应的视图数据;
所述指定服务器用于:将所有所述指定数据终端对应的计算结果进行相加以得到相加结果,以及将所述相加结果分别发送至每个所述指定数据终端;
每个所述指定数据终端还用于:根据所述相加结果更新所述指定数据终端的聚类指示矩阵,以及将更新后的使得所述指定多视图聚类模型对应的目标函数收敛的聚类指示矩阵确定为所有所述指定数据终端的用户数据集对应的聚类结果,根据所有所述指定数据终端的用户数据集对应的聚类结果预测对应的用户在指定行为的参与结果。
第三方面,本申请实施例提供了一种数据处理装置,所述数据处理装置应用于第一数据终端,所述数据处理装置包括:
计算单元,用于基于所述第一数据终端的聚类指示矩阵、所述第一数据终端的用户数据集以及指定公式进行计算,得到所述第一数据终端对应的计算结果,所述聚类指示矩阵用于指示用户数据集对应的用户所属的用户类别;
第一发送单元,用于将所述第一数据终端对应的计算结果发送至指定服务器,所述指定服务器用于:将所述第一数据终端对应的计算结果和第二数据终端对应的计算结果进行相加以得到相加结果,以及将所述相加结果发送至所述第一数据终端,所述第二数据终端的数量大于或者等于一,所述第二数据终端对应的计算结果是第二数据终端基于所述第二数据终端的聚类指示矩阵、所述第二数据终端的用户数据集以及所述指定公式计算得到;
聚类结果确定单元,用于根据所述相加结果更新所述第一数据终端的聚类指示矩阵,以及将更新后的使得指定多视图聚类模型对应的目标函数收敛的聚类指示矩阵确定为数据终端的用户数据集对应的聚类结果,所述数据终端包括所述第一数据终端和所述第二数据终端,单个所述数据终端的用户数据集为所述指定多视图模型中一个视图对应的视图数据;
预测单元,用于根据所述数据终端的用户数据集对应的聚类结果预测对应的用户在指定行为的参与结果。
第四方面,本申请实施例提供了一种终端设备,包括:存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如所述数据处理方法的步骤。
第五方面,本申请实施例提供了一种计算机可读存储介质,包括:所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现如所述数据处理方法的步骤。
第六方面,本申请实施例提供了一种计算机程序产品,当计算机程序产品在终端设备上运行时,使得终端设备执行所述数据处理方法的步骤。
可以理解的是,上述第三方面至第六方面的有益效果可以参见上述第一方面中的相关描述,在此不再赘述。
本申请实施例与现有技术相比存在的有益效果是:由于能够基于所述第一数据终端的聚类指示矩阵、所述第一数据终端的用户数据集以及指定公式进行计算,得到所述第一数据终端对应的计算结果,所述聚类指示矩阵用于指示用户数据集对应的用户所属的用户类别,然后将所述第一数据终端对应的计算结果发送至指定服务器,所述指定服务器用于:将所述第一数据终端对应的计算结果和第二数据终端对应的计算结果进行相加以得到相加结果,以及将所述相加结果发送至所述第一数据终端,所述第二数据终端的数量大于或者等于一,所述第二数据终端对应的计算结果是第二数据终端基于所述第二数据终端的聚类指示矩阵、所述第二数据终端的用户数据集以及所述指定公式计算得到,然后根据所述相加结果更新所述第一数据终端的聚类指示矩阵,以及将更新后的使得指定多视图聚类模型对应的目标函数收敛的聚类指示矩阵确定为数据终端的用户数据集对应的聚类结果,所述数据终端包括所述第一数据终端和所述第二数据终端,再根据所述第一数据终端的用户数据集对应的聚类结果预测对应的用户在指定行为的参与结果,其中,所述数据终端的数量大于或者等于二,且单个所述数据终端上的用户数据集为指定多视图模型中一个视图对应的视图数据,即意味着聚类结果是基于至少两个视图对应的视图数据所确定出来的,多视图数据有利于从不同的角度体现数据,因此,能够有效地提高聚类结果的准确性,进而提高所预测出的对应的用户在指定行为的参与结果的准确性;另外,由于所有数据终端上的用户数据集不需要移动,即不需要集中在一起,因此,能够有效地保护数据隐私。综上,所述数据处理方法能够在保护数据隐私的前提下,提高所预测出的用户在指定行为的参与结果的准确性。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请一实施例提供的数据处理方法的流程示意图;
图2是本申请一实施例提供的数据处理系统的示意图;
图3是本申请实施例提供的一种数据处理装置的结构示意图;
图4是本申请实施例提供的终端设备的结构示意图。
具体实施方式
以下描述中,为了说明而不是为了限定,提出了诸如特定系统结构、技术之类的具体细节,以便透彻理解本申请实施例。然而,本领域的技术人员应当清楚,在没有这些具体细节的其它实施例中也可以实现本申请。在其它情况中,省略对众所周知的系统、装置、电路以及方法的详细说明,以免不必要的细节妨碍本申请的描述。
应当理解,当在本申请说明书和所附权利要求书中使用时,术语“包括”指示所描述特征、整体、步骤、操作、元素和/或组件的存在,但并不排除一个或多个其它特征、整体、步骤、操作、元素、组件和/或其集合的存在或添加。
还应当理解,在本申请说明书和所附权利要求书中使用的术语“和/或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。
如在本申请说明书和所附权利要求书中所使用的那样,术语“如果”可以依据上下文被解释为“当...时”或“一旦”或“响应于确定”或“响应于检测到”。类似地,短语“如果确定”或“如果检测到[所描述条件或事件]”可以依据上下文被解释为意指“一旦确定”或“响应于确定”或“一旦检测到[所描述条件或事件]”或“响应于检测到[所描述条件或事件]”。
另外,在本申请说明书和所附权利要求书的描述中,术语“第一”、“第二”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
在本申请说明书中描述的参考“一个实施例”或“一些实施例”等意味着在本申请的一个或多个实施例中包括结合该实施例描述的特定特征、结构或特点。由此,在本说明书中的不同之处出现的语句“在一个实施例中”、“在一些实施例中”、“在其他一些实施例中”、“在另外一些实施例中”等不是必然都参考相同的实施例,而是意味着“一个或多个但不是所有的实施例”,除非是以其他方式另外特别强调。术语“包括”、“包含”、“具有”及它们的变形都意味着“包括但不限于”,除非是以其他方式另外特别强调。
实施例一:
图1示出了本申请实施例提供的一种数据处理方法的流程示意图,所述数据处理方法应用于第一数据终端,详述如下:
步骤S101,基于所述第一数据终端的聚类指示矩阵、所述第一数据终端的用户数据集以及指定公式进行计算,得到所述第一数据终端对应的计算结果,所述聚类指示矩阵用于指示用户数据集对应的用户所属的用户类别。
具体地,若所述第一数据终端的用户数据集的表示形式为矩阵,则基于所述第一数据终端的聚类指示矩阵、所述第一数据终端的用户数据集以及指定公式进行计算,得到所述第一数据终端对应的计算结果;若所述第一数据终端的用户数据集的表示形式不为矩阵,则将所述第一数据终端的用户数据集的表示形式更换为矩阵,基于所述第一数据终端的聚类指示矩阵、表示形式为矩阵的所述第一数据终端的用户数据集以及指定公式进行计算,得到所述第一数据终端对应的计算结果,所述第一数据终端的用户数据集对应的用户特征的数量大于或者等于一。
作为示例而非限定的是,所述第一数据终端的用户数据集对应的用户可为所述第一数据终端所属组织(机构)的客户,对应地,所述第一数据终端的用户数据集可为所述第一数据终端所属组织(机构)的客户的客户数据集,所述第一数据终端的用户数据集对应的用户特征可包括所述第一数据终端所属组织的客户的年龄以及存款金额。
可选地,所述步骤S101包括:基于所述第一数据终端的聚类指示矩阵和所述第一数据终端的用户数据集确定所述第一数据终端的聚类中心矩阵;根据所述第一数据终端的聚类指示矩阵、所述第一数据终端的用户数据集以及所述第一数据终端的聚类中心矩阵确定所述第一数据终端对应的权重;根据所述第一数据终端的用户数据集、所述第一数据终端对应的权重、所述第一数据终端的聚类中心矩阵以及指定公式进行计算,得到所述第一数据终端对应的计算结果。虽然不同的数据终端的用户数据集对应的用户相同,但不同的数据终端的用户数据集对应的用户特征不同,不同的数据终端的用户数据集对于后续步骤所确定出的聚类结果的重要程度也不相同,由于第一数据终端对应的权重能体现出重要程度,所述第一数据终端能够确定出所述指定数据终端对应的权重,进而得到所述第一数据终端对应的计算结果,因此,能够提高后续步骤所确定出的聚类结果的准确性。
其中,所述基于所述第一数据终端的聚类指示矩阵和所述第一数据终端的用户数据集确定所述第一数据终端的聚类中心矩阵包括:将所述第一数据终端的聚类指示矩阵的转置矩阵与所述第一数据终端的聚类指示矩阵相乘,以获取第一乘积结果,计算所述第一乘积结果的逆矩阵,再将所述第一数据终端的聚类指示矩阵乘以所述第一乘积结果的逆矩阵,以获取第二乘积结果,将所述第一数据终端的用户数据集乘以所述第二乘积结果,以确定出所述第一数据终端的聚类中心矩阵。在本实施例中,X(v)可表示单个数据终端的用户数据集,W表示单个数据终端的聚类指示矩阵,WT表示W的转置矩阵,H(v)表示单个数据终端的聚类中心矩阵,所述第一数据终端的聚类指示矩阵、所述第一数据终端的用户数据集以及所述第一数据终端的聚类中心矩阵之间的关系可表示为:H(v)=X(v)W(WTW)-1。
所述根据所述第一数据终端的聚类指示矩阵、所述第一数据终端的用户数据集以及所述第一数据终端的聚类中心矩阵确定所述第一数据终端对应的权重,包括:将所述第一数据终端的聚类中心矩阵乘以所述第一数据终端的聚类指示矩阵的转置矩阵,以获取第三乘积结果,将所述第一数据终端的用户数据集减去所述第三乘积结果,以获取第一减法结果,将所述第一减法结果的弗罗贝尼乌斯范数乘以2,以获得第四乘积结果,计算所述第四乘积结果的倒数,所述第四乘积结果的倒数即为所述第一数据终端对应的权重,单个数据终端对应的权重可表示为β(v),所述第一数据终端的聚类指示矩阵、所述第一数据终端的用户数据集、所述第一数据终端的聚类中心矩阵以及所述第一数据终端对应的权重之间的关系可表示为
对应地,所述根据所述第一数据终端的用户数据集、所述第一数据终端对应的权重、所述第一数据终端的聚类中心矩阵以及指定公式进行计算,得到所述第一数据终端对应的计算结果,包括:将所述第一数据终端的用户数据集的转置矩阵与所述第一数据终端的聚类中心矩阵相乘,以获取第五乘积结果,将所述第一数据终端的聚类中心矩阵进行点乘运算,以获取第六乘积结果,将第六乘积结果乘以矩阵元素全为1/2的n×n的矩阵,以获取第七乘积结果,n等于所述第六乘积结果的矩阵列数,将所述第五乘积结果减去所述第七乘积结果,以获取第二减法结果,将所述第一数据终端对应的权重乘以所述第二减法结果,所述第一数据终端对应的权重与所述第二减法结果的乘积即为所述第一数据终端对应的计算结果。
步骤S102,将所述第一数据终端对应的计算结果发送至指定服务器,所述指定服务器用于:将所述第一数据终端对应的计算结果和第二数据终端对应的计算结果进行相加以得到相加结果,以及将所述相加结果发送至所述第一数据终端,所述第二数据终端的数量大于或者等于一,所述第二数据终端对应的计算结果是第二数据终端基于所述第二数据终端的聚类指示矩阵、所述第二数据终端的用户数据集以及所述指定公式计算得到。
作为示例而非限定的是,假设所述第一数据终端对应的计算结果为所述第二数据终端的数量等于一,所述第二数据终端对应的计算结果为/>将/>发送至指定服务器,所述指定服务器用于:将/>和/>进行相加以得到相加结果/>以及将/>发送至所述第一数据终端。
在一些实施例中,所述指定服务器还用于:在所述第一数据终端执行所述步骤S101之前,随机初始化聚类指示矩阵,以及将初始化后的聚类指示矩阵发送至所述第一数据终端。
可选地,由于在所述第一数据终端对应的计算结果的传输过程中,可能会产生数据泄露的情况,因此,为了提高数据隐私的安全性,在所述步骤S102之前,包括:对所述第一数据终端对应的计算结果进行加密;对应地,所述步骤S102包括:将加密后的所述第一数据终端对应的计算结果发送至指定服务器。
具体地,所述对所述第一数据终端对应的计算结果进行加密,包括:根据所述第一数据终端所生成的密钥对所述第一数据终端对应的计算结果进行加密。
作为示例而非限定的是,所述第一数据终端所生成的密钥包括:公钥和私钥,所述第一数据终端所生成的密钥对应的生成过程为:从预设的质数数值范围内随机选择两个质数,为了方便描述,可将所选择出的两个质数分别表示为p和q,计算p和q的乘积N,以及计算p-1和q-1的最小公倍数λ,所述λ为私钥,随机确定一个整数g,所述整数g满足以下条件:gcd(L(gλmodN2),N=1,其中,/>为/>中与N2互质的整数的集合,/>为小于N3的整数的集合,其中,函数L(u)=(u-1)/N,u为函数L(u)的自变量,gcd(L(gλmodN2),N=1用于表示L(gλmodN2)和N的最大公约数为1,生成公钥为(N,g)。对应地,所述根据所述第一数据终端所生成的密钥对所述第一数据终端对应的计算结果进行加密,包括:从/>中随机选取一个整数r,对于所述第一数据终端对应的计算结果中的任意一个明文m,m∈ZN,利用公钥(N,g)加密后得到所述第一数据终端对应的计算结果对应的密文c,公钥与密文c之间的关系可表示为:c=E[m,r]=gm·rNmod N2,其中,/>为/>中与N互质的整数的集合,ZN为小于N的整数的集合,/>为小于N2的整数的集合。
可选地,所述数据处理方法还包括:将所述第一数据终端所生成的密钥发送至第二数据终端,从而使得所述第二数据终端能够根据所述第一数据终端所生成的密钥对所述第二数据终端对应的计算结果进行加密。
对应地,所述指定服务器具体用于:将加密后的所述第一数据终端对应的计算结果和加密后的第二数据终端对应的计算结果进行相加以得到相加结果,将所述相加结果发送至所述第一数据终端,所述数据处理方法还包括:根据所述私钥对所述相加结果进行解密。
步骤S103,根据所述相加结果更新所述第一数据终端的聚类指示矩阵,以及将更新后的使得指定多视图聚类模型对应的目标函数收敛的聚类指示矩阵确定为数据终端的用户数据集对应的聚类结果,所述数据终端包括所述第一数据终端和所述第二数据终端,单个所述数据终端的用户数据集为所述指定多视图模型中一个视图对应的视图数据。
其中,所述指定多视图聚类模型对应的目标函数为:
γ表示正则化系数,j表示所述指定多视图模型对应的视图数量,即j表示所述第一数据终端和所述第二数据终端的总个数,n表示单个数据终端的用户数据集对应的用户的数量,c为数据簇的个数,Ψn×c表示行数为n且列数为c的矩阵,W∈Ψn×c表示单个数据终端的聚类指示矩阵W属于行数为n且列数为c的矩阵,d(v)表示单个数据终端的用户数据集对应的用户特征的数量,Rd(v)×c表示行数为d(v)且列数为c的矩阵,H(v)∈Rd(v)×c表示单个数据终端的聚类中心矩阵H(v)属于行数为d(v)且列数为c的矩阵,||W||b表示W对应的指数为b的弗罗贝尼乌斯范数,所述指定多视图聚类模型对应的目标函数中的v表示单个数据终端的编号,v为大于一的正整数。
在一些实施例中,所述指定服务器还用于:在所述第一数据终端执行所述步骤S103之前,初始化正则化系数,以及将初始化后的正则化系数发送至所述第一数据终端。
可选地,由于在确定数据终端的用户数据集对应的聚类结果的过程中,可能会产生过拟合,因此,为了避免过拟合,引入正则化系数,所述根据所述相加结果更新所述第一数据终端的聚类指示矩阵包括:根据所述相加结果、正则化系数以及所述第一数据终端的用户数据集对应的用户的数量更新所述第一数据终端的聚类指示矩阵。
作为示例而非限定的是,假设所述相加结果为正则化系数为2,所述第一数据终端的用户数据集对应的用户的数量为2,根据为/>的相加结果、为2的正则化系数以及为2的第一数据终端的用户数据集对应的用户的数量,更新所述第一数据终端的聚类指示矩阵。
可选地,所述根据所述相加结果、正则化系数、所述第一数据终端的聚类指示矩阵以及所述第一数据终端的用户数据集对应的用户的数量更新所述第一数据终端的聚类指示矩阵,包括:根据所述相加结果、正则化系数、所述第一数据终端的聚类指示矩阵以及所述第一数据终端的用户数据集对应的用户的数量迭代更新所述第一数据终端的聚类指示矩阵,直至更新累积次数等于预存的次数;对应地,所述更新后的使得指定多视图聚类模型对应的目标函数收敛的聚类指示矩阵为所述第一数据终端最后一次更新后的聚类指示矩阵,此时,所述将更新后的使得指定多视图聚类模型对应的目标函数收敛的聚类指示矩阵确定为数据终端的用户数据集对应的聚类结果,包括:将所述第一数据终端最后一次更新后的聚类指示矩阵确定为数据终端的用户数据集对应的聚类结果,预存的次数是用户训练所述指定多视图聚类模型时,使得指定多视图聚类模型对应的目标函数收敛所对应的更新累积次数经验值,由于引入了预存的次数,因此,能够提高数据终端的用户数据集对应的聚类结果的确定效率。
具体地,所述预存的次数大于或者等于2,所述根据所述相加结果、正则化系数、所述第一数据终端的聚类指示矩阵以及所述第一数据终端的用户数据集对应的用户的数量迭代更新所述第一数据终端的聚类指示矩阵,直至更新累积次数等于预存的次数,包括:步骤A1、根据所述相加结果、正则化系数、所述第一数据终端的聚类指示矩阵以及所述第一数据终端的用户数据集对应的用户的数量计算矩阵G,所述矩阵G等于 表示矩阵元素全为1的n×n的矩阵,将所述矩阵G与所述相加结果进行相加以得到矩阵Q,根据矩阵Q更新所述第一数据终端的聚类指示矩阵。
步骤A2、重复执行步骤A1,直至所述第一数据终端的更新后的聚类指示矩阵与所述第一数据终端上一次更新对应的更新后的聚类指示矩阵相同。
步骤A3、执行所述步骤S101、所述步骤S102以及所述步骤A1和所述步骤A2。
若所述预存的次数等于2,则停止更新所述第一数据终端的聚类指示矩阵;
若所述预存的次数大于2,则重复执行所述步骤A3,直至更新累积次数等于预存的次数。
作为示例而非限定的是,所述更新累积次数等于所述步骤S101对应的执行累积次数或者等于所述步骤S102对应的执行累积次数。
其中,所述矩阵Q的行数与所述第一数据终端的聚类指示矩阵的行数相等,所述矩阵Q的列数与所述第一数据终端的聚类指示矩阵的列数相等,所述根据矩阵Q更新所述第一数据终端的聚类指示矩阵包括:确定所述矩阵Q每一行中最大的数字在矩阵Q中所处的位置E,将所述第一数据终端的聚类指示矩阵中与位置E对应的元素设置为1,将所述第一数据终端的聚类指示矩阵中不与位置E对应的元素设置为0。
作为示例而非限定的是,假设所述矩阵Q为所述聚类指示矩阵为/>所述矩阵Q每一行中最大的数字在矩阵Q中所处的位置E分别为第一行第一列、第二行第二列,即所述第一数据终端的聚类指示矩阵中与位置E对应的元素为所述第一数据终端的聚类指示矩阵第一行第一列上的元素和所述第一数据终端的聚类指示矩阵第二行第二列上的元素,将所述第一数据终端的聚类指示矩阵第一行第一列上的元素和所述第一数据终端的聚类指示矩阵第二行第二列上的元素都设置为1,将所述第一数据终端的聚类指示矩阵第一行第二列上的元素和所述第一数据终端的聚类指示矩阵第二行第一列上的元素都设置为0,则根据矩阵Q所更新后的所述第一数据终端的聚类指示矩阵为/>
步骤S104,根据所述数据终端的用户数据集对应的聚类结果预测对应的用户在指定行为的参与结果。
具体地,根据所述数据终端的用户数据集对应的聚类结果确定对应的用户的行为偏好数据,根据所述行为偏好数据预测对应的用户在指定行为的参与结果。
作为示例而非限定的是,所述指定行为可为定期存储1万元,所述行为偏好数据可为定期存储5万元的偏好值,所述用户在指定行为的参与结果可为用户参与所述指定行为的概率。
可选地,在所述步骤S104之前,包括:确定指定行为对应的特征;对应地,所述步骤S104,包括:根据所述数据终端的用户数据集对应的聚类结果和所述指定行为对应的特征预测对应的用户在指定行为的参与结果,所述用户为所述第一数据终端的用户数据集对应的用户和所述第二数据终端的用户数据集对应的用户,由于指定行为对应的特征能够更有针对性地体现出指定行为的特点(性质),因此,能够提高所预测出的用户在指定行为的参与结果的准确性。
其中,所述根据所述数据终端的用户数据集对应的聚类结果和所述指定行为对应的特征预测对应的用户在指定行为的参与结果,包括:根据所述数据终端的用户数据集对应的聚类结果对应的特征和所述指定行为对应的特征进行匹配,根据所述匹配结果预测对应的用户在指定行为的参与结果。
作为示例而非限定的是,所述指定行为对应的特征可为所述指定行为对应的时间特征或/和所述指定行为对应的空间特征。
本申请实施例中,由于能够基于所述第一数据终端的聚类指示矩阵、所述第一数据终端的用户数据集以及指定公式进行计算,得到所述第一数据终端对应的计算结果,所述聚类指示矩阵用于指示用户数据集对应的用户所属的用户类别,然后将所述第一数据终端对应的计算结果发送至指定服务器,所述指定服务器用于:将所述第一数据终端对应的计算结果和第二数据终端对应的计算结果进行相加以得到相加结果,以及将所述相加结果发送至所述第一数据终端,所述第二数据终端的数量大于或者等于一,所述第二数据终端对应的计算结果是第二数据终端基于所述第二数据终端的聚类指示矩阵、所述第二数据终端的用户数据集以及所述指定公式计算得到,然后根据所述相加结果更新所述第一数据终端的聚类指示矩阵,以及将更新后的使得指定多视图聚类模型对应的目标函数收敛的聚类指示矩阵确定为数据终端的用户数据集对应的聚类结果,所述数据终端包括所述第一数据终端和所述第二数据终端,再根据所述第一数据终端的用户数据集对应的聚类结果预测对应的用户在指定行为的参与结果,其中,所述数据终端的数量大于或者等于二,且单个所述数据终端上的用户数据集为指定多视图模型中一个视图对应的视图数据,即意味着聚类结果是基于至少两个视图对应的视图数据所确定出来的,多视图数据有利于从不同的角度体现数据,因此,能够有效地提高聚类结果的准确性,进而提高所预测出的对应的用户在指定行为的参与结果的准确性;另外,由于所有数据终端上的用户数据集不需要移动,即不需要集中在一起,因此,能够有效地保护数据隐私。综上,所述数据处理方法能够在保护数据隐私的前提下,提高所预测出的用户在指定行为的参与结果的准确性。
实施例二:
图2示出了本申请实施例提供的一种数据处理系统的示意图,详述如下:
所述数据处理系统2,包括:至少两个指定数据终端201和一个指定服务器202,其中:
每个所述指定数据终端201用于:基于所述指定数据终端201的聚类指示矩阵、所述指定数据终端201的用户数据集以及指定公式进行计算,得到所述指定数据终端201对应的计算结果,将所述指定数据终端201对应的计算结果发送至指定服务器202,所述聚类指示矩阵用于指示用户数据集对应的用户所属的用户类别,单个所述指定数据终端201的用户数据集为指定多视图模型中一个视图对应的视图数据,单个所述指定数据终端201的用户数据集对应的用户特征的数量大于或者等于一。
每个所述指定数据终端201具体用于:若所述指定数据终端201的用户数据集的表示形式为矩阵,则基于所述指定数据终端201的聚类指示矩阵、所述指定数据终端201的用户数据集以及指定公式进行计算,得到所述指定数据终端201对应的计算结果,将所述指定数据终端201对应的计算结果发送至指定服务器202;若所述指定数据终端201的用户数据集的表示形式不为矩阵,则将所述指定数据终端201的用户数据集的表示形式更换为矩阵,基于所述指定数据终端201的聚类指示矩阵、表示形式为矩阵的所述指定数据终端201的用户数据集以及指定公式进行计算,得到所述指定数据终端201对应的计算结果,将所述指定数据终端201对应的计算结果发送至指定服务器202。
可选地,每个所述指定数据终端201在执行所述基于所述指定数据终端201的聚类指示矩阵、所述指定数据终端201的用户数据集以及指定公式进行计算,得到所述指定数据终端201对应的计算结果时,具体用于:基于所述指定数据终端201的聚类指示矩阵和所述指定数据终端201的用户数据集确定所述指定数据终端201的聚类中心矩阵;根据所述指定数据终端201的聚类指示矩阵、所述指定数据终端201的用户数据集以及所述指定数据终端201的聚类中心矩阵确定所述指定数据终端201对应的权重;根据所述指定数据终端201的用户数据集、所述指定数据终端201对应的权重、所述指定数据终端201的聚类中心矩阵以及指定公式进行计算,得到所述指定数据终端201对应的计算结果,虽然不同的数据终端的用户数据集对应的用户相同,但不同的数据终端的用户数据集对应的用户特征不同,不同的指定数据终端的用户数据集对于后续步骤所确定出的聚类结果的重要程度也不相同,由于指定数据终端对应的权重能体现出重要程度,每个所述指定数据终端能够确定出所述指定数据终端对应的权重,进而得到所述指定数据终端对应的计算结果,因此,能够提高后续步骤所确定出的聚类结果的准确性。
其中,每个所述指定数据终端在执行所述基于所述指定数据终端201的聚类指示矩阵和所述指定数据终端201的用户数据集确定所述指定数据终端201的聚类中心矩阵时,具体用于:将所述指定数据终端201的聚类指示矩阵的转置矩阵与所述指定数据终端201的聚类指示矩阵相乘,以获取第一乘积结果,计算所述第一乘积结果的逆矩阵,再将所述指定数据终端201的聚类指示矩阵乘以所述第一乘积结果的逆矩阵,以获取第二乘积结果,将所述指定数据终端201的用户数据集乘以所述第二乘积结果,以确定出所述指定数据终端201的聚类中心矩阵。在本实施例中,X(v)可表示单个指定数据终端201的用户数据集,W表示单个指定数据终端201的聚类指示矩阵,WT表示W的转置矩阵,H(v)表示单个指定数据终端201的聚类中心矩阵,单个指定数据终端201的聚类指示矩阵、单个指定数据终端201的用户数据集以及单个指定数据终端201的聚类中心矩阵之间的关系可表示为:H(v)=X(v)W(WTW)-1。
每个所述指定数据终端201在执行所述根据所述指定数据终端201的聚类指示矩阵、所述指定数据终端201的用户数据集以及所述指定数据终端201的聚类中心矩阵确定所述指定数据终端201对应的权重时,具体用于:将所述指定数据终端201的聚类中心矩阵乘以所述指定数据终端201的聚类指示矩阵的转置矩阵,以获取第三乘积结果,将所述指定数据终端201的用户数据集减去所述第三乘积结果,以获取第一减法结果,将所述第一减法结果的弗罗贝尼乌斯范数乘以2,以获得第四乘积结果,计算所述第四乘积结果的倒数,所述第四乘积结果的倒数即为所述指定数据终端201对应的权重,单个指定数据终端201对应的权重可表示为β(v),单个指定数据终端201的聚类指示矩阵、单个指定数据终端201的用户数据集、单个指定数据终端201的聚类中心矩阵以及单个指定数据终端201对应的权重之间的关系可表示为
对应地,每个所述指定数据终端201在执行所述根据所述指定数据终端201的用户数据集、所述指定数据终端201对应的权重、所述指定数据终端201的聚类中心矩阵以及指定公式进行计算,得到所述指定数据终端201对应的计算结果时,具体用于:将所述指定数据终端201的用户数据集的转置矩阵与所述指定数据终端201的聚类中心矩阵相乘,以获取第五乘积结果,将所述指定数据终端201的聚类中心矩阵进行点乘运算,以获取第六乘积结果,将第六乘积结果乘以矩阵元素全为1/2的n×n的矩阵,以获取第七乘积结果,n等于所述第六乘积结果的矩阵列数,将所述第五乘积结果减去所述第七乘积结果,以获取第二减法结果,将所述指定数据终端201对应的权重乘以所述第二减法结果,所述指定数据终端201对应的权重与所述第二减法结果的乘积即为所述指定数据终端201对应的计算结果。
所述指定服务器202用于:将所有所述指定数据终端201对应的计算结果进行相加以得到相加结果,以及将所述相加结果分别发送至每个所述指定数据终端201。
作为示例而非限定的是,指定数据终端201的数量为2,包括:指定数据终端甲和指定数据终端乙,假设指定数据终端甲对应的计算结果为指定数据终端乙对应的计算结果为/>将/>和/>进行相加以得到相加结果/>以及将/>分别发送至指定数据终端甲和指定数据终端乙。
在一些实施例中,所述指定服务器202还用于:在每个所述指定数据终端201执行所述基于所述指定数据终端201的聚类指示矩阵、所述指定数据终端201的用户数据集以及指定公式进行计算,得到所述指定数据终端201对应的计算结果之前,随机初始化聚类指示矩阵,以及将初始化后的聚类指示矩阵分别发送至每个所述指定数据终端201。
可选地,由于在所述指定数据终端对应的计算结果的传输过程中,可能会产生数据泄露的情况,因此,为了提高数据隐私的安全性,每个所述指定数据终端201还用于:在执行所述将所述指定数据终端201对应的计算结果发送至指定服务器202之前,对所述指定数据终端201对应的计算结果进行加密;对应地,每个所述指定数据在执行将所述指定数据终端201对应的计算结果发送至指定服务器202时,具体用于:将加密后的所述指定数据终端201对应的计算结果发送至指定服务器202。
具体地,每个所述指定数据终端201在执行所述对所述指定数据终端201对应的计算结果进行加密时,具体用于:根据任一所述指定数据终端201所生成的密钥对所述指定数据终端201对应的计算结果进行加密。
作为示例而非限定的是,所述指定数据终端201所生成的密钥包括:公钥和私钥,任一所述指定数据终端201所生成的密钥对应的生成过程为:从预设的质数数值范围内随机选择两个质数,为了方便描述,可将所选择出的两个质数分别表示为p和q,计算p和q的乘积N,以及计算p-1和q-1的最小公倍数λ,所述λ为私钥,随机确定一个整数g,所述整数g满足以下条件:gcd(L(gλmodN2),N=1,其中,/>为/>中与N2互质的整数的集合,/>为小于N3的整数的集合,其中,函数L(u)=(u-1)/N,u为函数L(u)的自变量,gcd(L(gλmodN2),N=1用于表示L(gλmodN2)和N的最大公约数为1,生成公钥为(N,g)。对应地,每个所述指定数据终端201在执行所述根据任一所述指定数据终端201所生成的密钥对所述指定数据终端201对应的计算结果进行加密时,具体用于:从/>中随机选取一个整数r,对于所述指定数据终端201对应的计算结果中的任意一个明文m,m∈ZN,利用公钥(N,g)加密后得到所述指定数据终端201对应的计算结果对应的密文c,公钥与密文c之间的关系可表示为:c=E[m,r]=gm·rNmod N2,其中,/>为/>中与N互质的整数的集合,ZN为小于N的整数的集合,/>为小于N2的整数的集合。
可选地,生成密钥的指定数据终端201还用于:将所生成的密钥发送至所述数据处理系统2中除生成密钥的指定数据终端201之外的指定数据终端201,从而使得所述数据处理系统中除生成密钥的指定数据终端之外的指定数据终端,能够根据密钥对指定数据终端对应的计算结果进行加密。对应地,每个所述指定数据终端还用于:根据所述私钥对所述相加结果进行解密。
作为示例而非限定的是,所述每个所述指定数据终端201在执行所述根据所述私钥对所述相加结果进行解密时,具体用于:利用私钥λ对所述相加结果解密,得到所述相加结果对应的明文e,私钥λ与明文e之间的关系可表示为:
每个所述指定数据终端201还用于:根据所述相加结果更新所述指定数据终端201的聚类指示矩阵,以及将更新后的使得所述指定多视图聚类模型对应的目标函数收敛的聚类指示矩阵确定为所有所述指定数据终端201的用户数据集对应的聚类结果,根据所有所述指定数据终端201的用户数据集对应的聚类结果预测对应的用户在指定行为的参与结果。
其中,所述指定多视图聚类模型对应的目标函数为:
γ表示正则化系数,j表示所述指定多视图模型对应的视图数量,即j表示所述指定数据终端201的总个数,n表示单个指定数据终端201的用户数据集对应的用户的数量,c为数据簇的个数,Ψn×c表示行数为n且列数为c的矩阵,W∈Ψn×c表示单个指定数据终端201的聚类指示矩阵W属于行数为n且列数为c的矩阵,d(v)表示单个指定数据终端201的用户数据集对应的用户特征的数量,Rd(v)×c表示行数为d(v)且列数为c的矩阵,H(v)∈Rd(v)×c表示单个指定数据终端201的聚类中心矩阵H(v)属于行数为d(v)且列数为c的矩阵,||W||b表示W对应的指数为b的弗罗贝尼乌斯范数,所述指定多视图聚类模型对应的目标函数中的v表示单个指定数据终端201的编号,v为大于一的正整数。
作为示例而非限定的是,每个所述指定数据终端201用于:根据所述相加结果更新所述指定数据终端201的聚类指示矩阵,假设所述更新后的使得指定多视图聚类模型对应的目标函数收敛的聚类指示矩阵为将/>确定为所有所述指定数据终端201的用户数据集对应的聚类结果。
在一些实施例中,所述指定服务器202还用于:在每个所述指定数据终端201执行所述根据所述相加结果更新所述指定数据终端201的聚类指示矩阵,以及将更新后的使得所述指定多视图聚类模型对应的目标函数收敛的聚类指示矩阵确定为所有所述指定数据终端201的用户数据集对应的聚类结果之前,初始化正则化系数,以及将初始化后的正则化系数分别发送至每个所述指定数据终端201。
可选地,由于在确定所有所述指定数据终端的用户数据集对应的聚类结果的过程中,可能会产生过拟合,因此,为了避免过拟合,引入正则化系数,每个所述指定数据终端201在执行所述根据所述相加结果更新所述指定数据终端201的聚类指示矩阵时,具体用于:根据所述相加结果、正则化系数以及所述指定数据终端201的用户数据集对应的用户的数量更新所述指定数据终端201的聚类指示矩阵。
可选地,每个所述指定数据终端201在执行所述根据所述相加结果、正则化系数、所述指定数据终端201的聚类指示矩阵以及所述指定数据终端201的用户数据集对应的用户的数量更新所述指定数据终端201的聚类指示矩阵时,具体用于:根据所述相加结果、正则化系数、所述指定数据终端201的聚类指示矩阵以及所述指定数据终端201的用户数据集对应的用户的数量迭代更新所述指定数据终端201的聚类指示矩阵,直至更新累积次数等于预存的次数;对应地,所述更新后的使得指定多视图聚类模型对应的目标函数收敛的聚类指示矩阵为所述指定数据终端201最后一次更新后的聚类指示矩阵,此时,每个所述指定数据终端201在执行所述将更新后的使得指定多视图聚类模型对应的目标函数收敛的聚类指示矩阵确定所有所述指定数据终端201的用户数据集对应的聚类结果时,具体用于:将所述指定数据终端201最后一次更新后的聚类指示矩阵确定所有所述指定数据终端201的用户数据集对应的聚类结果,预存的次数是用户训练所述指定多视图聚类模型时,使得指定多视图聚类模型对应的目标函数收敛所对应的更新累积次数经验值,由于引入了预存的次数,因此,能够提高所有所述指定数据终端的用户数据集对应的聚类结果的确定效率。
其中,所述预存的次数大于或者等于2,每个所述指定数据终端201在执行所述据所述相加结果、正则化系数、所述指定数据终端201的聚类指示矩阵以及所述指定数据终端201的用户数据集对应的用户的数量迭代更新所述指定数据终端201的聚类指示矩阵,直至更新累积次数等于预存的次数,具体用于执行:
步骤A1、根据所述相加结果、正则化系数、所述指定数据终端201的聚类指示矩阵以及所述指定数据终端201的用户数据集对应的用户的数量计算矩阵G,所述矩阵G等于 表示矩阵元素全为1的n×n的矩阵,将所述矩阵G与所述相加结果进行相加以得到矩阵Q,根据矩阵Q更新所述指定数据终端201的聚类指示矩阵。
步骤A2、重复执行步骤A1,直至所述指定数据终端201的更新后的聚类指示矩阵与所述指定数据终端201上一次更新对应的更新后的聚类指示矩阵相同。
步骤A3、执行所述基于所述指定数据终端201的聚类指示矩阵、所述指定数据终端201的用户数据集以及指定公式进行计算,得到所述指定数据终端201对应的计算结果将所述指定数据终端201对应的计算结果发送至指定服务器202,在所述指定服务器202将所有所述指定数据终端201对应的计算结果进行相加以得到相加结果,以及将所述相加结果分别发送至每个所述指定数据终端201之后,执行所述步骤A1和所述步骤A2。
若所述预存的次数等于2,则停止更新所述第一数据终端的聚类指示矩阵;
若所述预存的次数大于2,则重复执行所述步骤A3,直至更新累积次数等于预存的次数。
作为示例而非限定的是,所述更新累积次数等于所述步骤S101对应的执行累积次数或者等于所述步骤S102对应的执行累积次数。
其中,所述矩阵Q的行数与所述指定数据终端201的聚类指示矩阵的行数相等,所述矩阵Q的列数与所述指定数据终端201的聚类指示矩阵的列数相等,每个所述指定数据终端201在执行所述根据矩阵Q更新所述指定数据终端201的聚类指示矩阵时,具体用于:确定所述矩阵Q每一行中最大的数字在矩阵Q中所处的位置E,将所述指定数据终端201的聚类指示矩阵中与位置E对应的元素设置为1,将所述指定数据终端201的聚类指示矩阵中不与位置E对应的元素设置为0。
作为示例而非限定的是,假设所述矩阵Q为所述聚类指示矩阵为/>所述矩阵Q每一行中最大的数字在矩阵Q中所处的位置E分别为指定行第一列、第二行第二列,即所述指定数据终端201的聚类指示矩阵中与位置E对应的元素为所述指定数据终端201的聚类指示矩阵第一行第一列上的元素和所述指定数据终端201的聚类指示矩阵第二行第二列上的元素,将所述指定数据终端201的聚类指示矩阵第一行第一列上的元素和所述指定数据终端201的聚类指示矩阵第二行第二列上的元素都设置为1,将所述指定数据终端201的聚类指示矩阵第一行第二列上的元素和所述指定数据终端201的聚类指示矩阵第二行第一列上的元素都设置为0,则根据矩阵Q所更新后的所述指定数据终端201的聚类指示矩阵为/>
每个所述指定数据终端201在执行所述根据所有所述指定数据终端201的用户数据集对应的聚类结果预测对应的用户在指定行为的参与结果时,具体用于:根据所有所述指定数据终端201的用户数据集对应的聚类结果确定对应的用户的行为偏好数据,根据所述行为偏好数据预测对应的用户在指定行为的参与结果,所述用户包括所有所述指定数据终端201的用户数据集对应的用户。
可选地,每个所述指定数据终端201在执行所述根据所有所述指定数据终端201的用户数据集对应的聚类结果预测对应的用户在指定行为的参与结果之前,还用于:确定指定行为对应的特征;对应地,每个所述指定数据终端201在执行所述根据所有所述指定数据终端201的用户数据集对应的聚类结果预测对应的用户在指定行为的参与结果时,具体用于:根据所有所述指定数据终端201的用户数据集对应的聚类结果和所述指定行为对应的特征预测对应的用户在指定行为的参与结果,由于指定行为对应的特征能够更有针对性地体现出指定行为的特点(性质),因此,能够提高所预测出的用户在指定行为的参与结果的准确性。
其中,每个所述指定数据终端201在执行所述根据所有所述指定数据终端201的用户数据集对应的聚类结果和所述指定行为对应的特征预测对应的用户在指定行为的参与结果时,具体用于:根据所有所述指定数据终端201的用户数据集对应的聚类结果对应的特征和所述指定行为对应的特征进行匹配,根据所述匹配结果预测对应的用户在指定行为的参与结果。
作为示例而非限定的是,所述指定行为对应的特征可为所述指定行为对应的时间特征或/和所述指定行为对应的空间特征。
本申请实施例中,由于所述指定数据终端的数量大于或者等于二,且单个所述数据终端上的用户数据集为指定多视图模型中一个视图对应的视图数据,即意味着聚类结果是基于至少两个视图对应的视图数据所确定出来的,多视图数据有利于从不同的角度体现数据,因此,能够有效地提高聚类结果的准确性,进而提高所预测出的对应的用户在指定行为的参与结果的准确性;另外,由于所有指定数据终端上的用户数据集不需要移动,即不需要集中在一起,因此,能够有效地保护数据隐私。综上,所述数据处理系统能够在保护数据隐私的前提下,提高所预测出的用户在指定行为的参与结果的准确性。
实施例三:
与上述实施例一对应,图3示出了本申请实施例提供的一种数据处理装置的结构示意图,所述数据处理装置应用于第一数据终端,为了便于说明,仅示出了与本申请实施例相关的部分。
该数据处理装置包括:计算单元301、第一发送单元302、聚类结果确定单元303以及预测单元304。
计算单元301,用于基于所述第一数据终端的聚类指示矩阵、所述第一数据终端的用户数据集以及指定公式进行计算,得到所述第一数据终端对应的计算结果,所述聚类指示矩阵用于指示用户数据集对应的用户所属的用户类别。
第一发送单元302,用于将所述第一数据终端对应的计算结果发送至指定服务器,所述指定服务器用于:将所述第一数据终端对应的计算结果和第二数据终端对应的计算结果进行相加以得到相加结果,以及将所述相加结果发送至所述第一数据终端,所述第二数据终端的数量大于或者等于一,所述第二数据终端对应的计算结果是第二数据终端基于所述第二数据终端的聚类指示矩阵、所述第二数据终端的用户数据集以及所述指定公式计算得到。
可选地,该数据处理装置还包括加密单元,所述加密单元用于:在所述第一发送单元执行所述将所述第一数据终端对应的计算结果发送至指定服务器之前,对所述第一数据终端对应的计算结果进行加密;对应地,所述第一发送单元302在执行所述将所述第一数据终端对应的计算结果发送至指定服务器时,具体用于:将加密后的所述第一数据终端对应的计算结果发送至指定服务器。
可选地,该数据处理装置还包括第二发送单元,所述第二发送单元用于:将所述第一数据终端所生成的密钥发送至第二数据终端。
可选地,该数据处理装置还包括解密单元,所述解密单元用于:根据私钥对所述相加结果进行解密。
聚类结果确定单元303,用于根据所述相加结果更新所述第一数据终端的聚类指示矩阵,以及将更新后的使得指定多视图聚类模型对应的目标函数收敛的聚类指示矩阵确定为数据终端的用户数据集对应的聚类结果,所述数据终端包括所述第一数据终端和所述第二数据终端,单个所述数据终端的用户数据集为所述指定多视图模型中一个视图对应的视图数据。
预测单元304,用于根据所述数据终端的用户数据集对应的聚类结果预测对应的用户在指定行为的参与结果。
可选地,该数据处理装置还包括特征确定单元,所述特征确定单元用于:确定指定行为对应的特征,对应地,所述预测单元304在执行所述根据所述数据终端的用户数据集对应的聚类结果预测对应的用户在指定行为的参与结果时,具体用于:根据所述数据终端的用户数据集对应的聚类结果和所述指定行为对应的特征预测对应的用户在指定行为的参与结果。
本申请实施例中,由于所述数据终端的数量大于或者等于二,且单个所述数据终端上的用户数据集为指定多视图模型中一个视图对应的视图数据,即意味着聚类结果是基于至少两个视图对应的视图数据所确定出来的,多视图数据有利于从不同的角度体现数据,因此,能够有效地提高聚类结果的准确性,进而提高所预测出的对应的用户在指定行为的参与结果的准确性;另外,由于所有数据终端上的用户数据集不需要移动,即不需要集中在一起,因此,能够有效地保护数据隐私。综上,所述数据处理方法能够在保护数据隐私的前提下,提高所预测出的用户在指定行为的参与结果的准确性。
实施例四:
图4为本申请一实施例提供的终端设备的结构示意图。如图4所示,该实施例的终端设备4包括:至少一个处理器40(图4中仅示出一个)处理器、存储器41以及存储在所述存储器41中并可在所述至少一个处理器40上运行的计算机程序42,所述处理器40执行所述计算机程序42时实现上述任意各个数据处理方法实施例中的步骤。
该终端设备可包括,但不仅限于,处理器40、存储器41。本领域技术人员可以理解,图4仅仅是终端设备4的举例,并不构成对终端设备4的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件,例如还可以包括输入输出设备、网络接入设备等。
所称处理器40可以是中央处理单元(Central Processing Unit,CPU),该处理器40还可以是其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
所述存储器41在一些实施例中可以是所述终端设备4的内部存储单元,例如终端设备4的硬盘或内存。所述存储器41在另一些实施例中也可以是所述终端设备4的外部存储设备,例如所述终端设备4上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)等。进一步地,所述存储器41还可以既包括所述终端设备4的内部存储单元也包括外部存储设备。所述存储器41用于存储操作系统、应用程序、引导装载程序(BootLoader)、数据以及其他程序等,例如所述计算机程序的程序代码等。所述存储器41还可以用于暂时地存储已经输出或者将要输出的数据。
需要说明的是,上述单元之间的信息交互、执行过程等内容,由于与本申请方法实施例基于同一构思,其具体功能及带来的技术效果,具体可参见方法实施例部分,此处不再赘述。
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,仅以上述各功能单元、模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能单元、模块完成,即将所述装置的内部结构划分成不同的功能单元或模块,以完成以上描述的全部或者部分功能。实施例中的各功能单元、模块可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中,上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。另外,各功能单元、模块的具体名称也只是为了便于相互区分,并不用于限制本申请的保护范围。上述系统中单元、模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
本申请实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现可实现上述各个方法实施例中的步骤。
本申请实施例提供了一种计算机程序产品,当计算机程序产品在终端设备上运行时,使得终端设备执行时实现可实现上述各个方法实施例中的步骤。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请实现上述实施例方法中的全部或部分流程,可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一计算机可读存储介质中,该计算机程序在被处理器执行时,可实现上述各个方法实施例的步骤。其中,所述计算机程序包括计算机程序代码,所述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。所述计算机可读介质至少可以包括:能够将计算机程序代码携带到终端设备的任何实体或装置、记录介质、计算机存储器、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、电载波信号、电信信号以及软件分发介质。例如U盘、移动硬盘、磁碟或者光盘等。在某些司法管辖区,根据立法和专利实践,计算机可读介质不可以是电载波信号和电信信号。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述或记载的部分,可以参见其它实施例的相关描述。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
在本申请所提供的实施例中,应该理解到,所揭露的网络设备和方法,可以通过其它的方式实现。例如,以上所描述的网络设备实施例仅仅是示意性的,例如,所述模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通讯连接可以是通过一些接口,装置或单元的间接耦合或通讯连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
以上所述实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围,均应包含在本申请的保护范围之内。
Claims (9)
1.一种数据处理方法,其特征在于,所述数据处理方法应用于第一数据终端,所述数据处理方法,包括:
基于所述第一数据终端的聚类指示矩阵、所述第一数据终端的用户数据集以及指定公式进行计算,得到所述第一数据终端对应的计算结果,所述聚类指示矩阵用于指示用户数据集对应的用户所属的用户类别;
将所述第一数据终端对应的计算结果发送至指定服务器,所述指定服务器用于:将所述第一数据终端对应的计算结果和第二数据终端对应的计算结果进行相加以得到相加结果,以及将所述相加结果发送至所述第一数据终端,所述第二数据终端的数量大于或者等于一,所述第二数据终端对应的计算结果是第二数据终端基于所述第二数据终端的聚类指示矩阵、所述第二数据终端的用户数据集以及指定公式计算得到;
根据所述相加结果更新所述第一数据终端的聚类指示矩阵,以及将更新后的使得指定多视图聚类模型对应的目标函数收敛的聚类指示矩阵确定为数据终端的用户数据集对应的聚类结果,所述数据终端包括所述第一数据终端和所述第二数据终端,单个所述数据终端的用户数据集为指定多视图模型中一个视图对应的视图数据;
根据所述数据终端的用户数据集对应的聚类结果预测对应的用户在指定行为的参与结果;
所述基于所述第一数据终端的聚类指示矩阵、所述第一数据终端的用户数据集以及指定公式进行计算,得到所述第一数据终端对应的计算结果,包括:
基于所述第一数据终端的聚类指示矩阵和所述第一数据终端的用户数据集确定所述第一数据终端的聚类中心矩阵;
根据所述第一数据终端的聚类指示矩阵、所述第一数据终端的用户数据集以及所述第一数据终端的聚类中心矩阵确定所述第一数据终端对应的权重;
根据所述第一数据终端的用户数据集、所述第一数据终端对应的权重、所述第一数据终端的聚类中心矩阵以及指定公式进行计算,得到所述第一数据终端对应的计算结果;
所述根据所述第一数据终端的聚类指示矩阵、所述第一数据终端的用户数据集以及所述第一数据终端的聚类中心矩阵确定所述第一数据终端对应的权重,包括:将所述第一数据终端的聚类中心矩阵乘以所述第一数据终端的聚类指示矩阵的转置矩阵,以获取第三乘积结果,将所述第一数据终端的用户数据集减去所述第三乘积结果,以获取第一减法结果,将所述第一减法结果的弗罗贝尼乌斯范数乘以2,以获得第四乘积结果,计算所述第四乘积结果的倒数,所述第四乘积结果的倒数为所述第一数据终端对应的权重,单个数据终端对应的权重为β(v),所述第一数据终端的聚类指示矩阵、所述第一数据终端的用户数据集、所述第一数据终端的聚类中心矩阵以及所述第一数据终端对应的权重之间的关系为
其中,X(v)表示单个数据终端的用户数据集,W表示单个数据终端的聚类指示矩阵,WT表示W的转置矩阵,H(v)表示单个数据终端的聚类中心矩阵;
2.如权利要求1所述的数据处理方法,其特征在于,在所述根据所述数据终端的用户数据集对应的聚类结果预测对应的用户在指定行为的参与结果之前,包括:
确定指定行为对应的特征;
对应地,所述根据所述数据终端的用户数据集对应的聚类结果预测对应的用户在指定行为的参与结果,包括:
根据所述数据终端的用户数据集对应的聚类结果和所述指定行为对应的特征预测对应的用户在指定行为的参与结果,所述用户为所述第一数据终端的用户数据集对应的用户和所述第二数据终端的用户数据集对应的用户。
3.如权利要求1所述的数据处理方法,其特征在于,在所述将所述第一数据终端对应的计算结果发送至指定服务器之前,包括:
对所述第一数据终端对应的计算结果进行加密;
对应地,所述将所述第一数据终端对应的计算结果发送至指定服务器包括:
将加密后的所述第一数据终端对应的计算结果发送至指定服务器。
4.如权利要求1所述的数据处理方法,其特征在于,所述根据所述相加结果更新所述第一数据终端的聚类指示矩阵,包括:
根据所述相加结果、正则化系数以及所述第一数据终端的用户数据集对应的用户的数量更新所述第一数据终端的聚类指示矩阵。
5.如权利要求4所述的数据处理方法,其特征在于,所述根据所述相加结果、正则化系数、所述第一数据终端的聚类指示矩阵以及所述第一数据终端的用户数据集对应的用户的数量更新所述第一数据终端的聚类指示矩阵,包括:
根据所述相加结果、正则化系数、所述第一数据终端的聚类指示矩阵以及所述第一数据终端的用户数据集对应的用户的数量迭代更新所述第一数据终端的聚类指示矩阵,直至更新累积次数等于预存的次数;
对应地,所述更新后的使得指定多视图聚类模型对应的目标函数收敛的聚类指示矩阵为所述第一数据终端最后一次更新后的聚类指示矩阵,此时,所述将更新后的使得指定多视图聚类模型对应的目标函数收敛的聚类指示矩阵确定为数据终端的用户数据集对应的聚类结果,包括:
将所述第一数据终端最后一次更新后的聚类指示矩阵确定为数据终端的用户数据集对应的聚类结果。
6.一种数据处理系统,其特征在于,包括:至少两个指定数据终端和一个指定服务器,其中:
每个所述指定数据终端用于:基于所述指定数据终端的聚类指示矩阵、所述指定数据终端的用户数据集以及指定公式进行计算,得到所述指定数据终端对应的计算结果,将所述指定数据终端对应的计算结果发送至指定服务器,所述聚类指示矩阵用于指示用户数据集对应的用户所属的用户类别,单个所述指定数据终端的用户数据集为指定多视图模型中一个视图对应的视图数据;
所述指定服务器用于:将所有所述指定数据终端对应的计算结果进行相加以得到相加结果,以及将所述相加结果分别发送至每个所述指定数据终端;
每个所述指定数据终端还用于:根据所述相加结果更新所述指定数据终端的聚类指示矩阵,以及将更新后的使得指定多视图聚类模型对应的目标函数收敛的聚类指示矩阵确定为所有所述指定数据终端的用户数据集对应的聚类结果,根据所有所述指定数据终端的用户数据集对应的聚类结果预测对应的用户在指定行为的参与结果;
所述基于第一数据终端的聚类指示矩阵、所述第一数据终端的用户数据集以及指定公式进行计算,得到所述第一数据终端对应的计算结果,包括:
基于所述第一数据终端的聚类指示矩阵和所述第一数据终端的用户数据集确定所述第一数据终端的聚类中心矩阵;
根据所述第一数据终端的聚类指示矩阵、所述第一数据终端的用户数据集以及所述第一数据终端的聚类中心矩阵确定所述第一数据终端对应的权重;
根据所述第一数据终端的用户数据集、所述第一数据终端对应的权重、所述第一数据终端的聚类中心矩阵以及指定公式进行计算,得到所述第一数据终端对应的计算结果;
所述根据所述第一数据终端的聚类指示矩阵、所述第一数据终端的用户数据集以及所述第一数据终端的聚类中心矩阵确定所述第一数据终端对应的权重,包括:将所述第一数据终端的聚类中心矩阵乘以所述第一数据终端的聚类指示矩阵的转置矩阵,以获取第三乘积结果,将所述第一数据终端的用户数据集减去所述第三乘积结果,以获取第一减法结果,将所述第一减法结果的弗罗贝尼乌斯范数乘以2,以获得第四乘积结果,计算所述第四乘积结果的倒数,所述第四乘积结果的倒数为所述第一数据终端对应的权重,单个数据终端对应的权重为β(v),所述第一数据终端的聚类指示矩阵、所述第一数据终端的用户数据集、所述第一数据终端的聚类中心矩阵以及所述第一数据终端对应的权重之间的关系为
其中,X(v)表示单个数据终端的用户数据集,W表示单个数据终端的聚类指示矩阵,WT表示W的转置矩阵,H(v)表示单个数据终端的聚类中心矩阵;
7.一种数据处理装置,其特征在于,所述数据处理装置应用于第一数据终端,所述数据处理装置包括:
计算单元,用于基于所述第一数据终端的聚类指示矩阵、所述第一数据终端的用户数据集以及指定公式进行计算,得到所述第一数据终端对应的计算结果,所述聚类指示矩阵用于指示用户数据集对应的用户所属的用户类别;
第一发送单元,用于将所述第一数据终端对应的计算结果发送至指定服务器,所述指定服务器用于:将所述第一数据终端对应的计算结果和第二数据终端对应的计算结果进行相加以得到相加结果,以及将所述相加结果发送至所述第一数据终端,所述第二数据终端的数量大于或者等于一,所述第二数据终端对应的计算结果是第二数据终端基于所述第二数据终端的聚类指示矩阵、所述第二数据终端的用户数据集以及所述指定公式计算得到;
聚类结果确定单元,用于根据所述相加结果更新所述第一数据终端的聚类指示矩阵,以及将更新后的使得指定多视图聚类模型对应的目标函数收敛的聚类指示矩阵确定数据终端的用户数据集对应的聚类结果,所述数据终端包括所述第一数据终端和所述第二数据终端,单个所述数据终端的用户数据集为指定多视图模型中一个视图对应的视图数据;
预测单元,用于根据所述数据终端的用户数据集对应的聚类结果预测对应的用户在指定行为的参与结果;
所述计算单元具体用于:
基于所述第一数据终端的聚类指示矩阵和所述第一数据终端的用户数据集确定所述第一数据终端的聚类中心矩阵;
根据所述第一数据终端的聚类指示矩阵、所述第一数据终端的用户数据集以及所述第一数据终端的聚类中心矩阵确定所述第一数据终端对应的权重;
根据所述第一数据终端的用户数据集、所述第一数据终端对应的权重、所述第一数据终端的聚类中心矩阵以及指定公式进行计算,得到所述第一数据终端对应的计算结果;
所述根据所述第一数据终端的聚类指示矩阵、所述第一数据终端的用户数据集以及所述第一数据终端的聚类中心矩阵确定所述第一数据终端对应的权重,包括:将所述第一数据终端的聚类中心矩阵乘以所述第一数据终端的聚类指示矩阵的转置矩阵,以获取第三乘积结果,将所述第一数据终端的用户数据集减去所述第三乘积结果,以获取第一减法结果,将所述第一减法结果的弗罗贝尼乌斯范数乘以2,以获得第四乘积结果,计算所述第四乘积结果的倒数,所述第四乘积结果的倒数为所述第一数据终端对应的权重,单个数据终端对应的权重为β(v),所述第一数据终端的聚类指示矩阵、所述第一数据终端的用户数据集、所述第一数据终端的聚类中心矩阵以及所述第一数据终端对应的权重之间的关系为
其中,X(v)表示单个数据终端的用户数据集,W表示单个数据终端的聚类指示矩阵,WT表示W的转置矩阵,H(v)表示单个数据终端的聚类中心矩阵;
8.一种终端设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1至5任一项所述方法的步骤。
9.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至5任一项所述方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010164475.XA CN111461178B (zh) | 2020-03-11 | 2020-03-11 | 数据处理方法、系统及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010164475.XA CN111461178B (zh) | 2020-03-11 | 2020-03-11 | 数据处理方法、系统及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111461178A CN111461178A (zh) | 2020-07-28 |
CN111461178B true CN111461178B (zh) | 2023-03-28 |
Family
ID=71682786
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010164475.XA Active CN111461178B (zh) | 2020-03-11 | 2020-03-11 | 数据处理方法、系统及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111461178B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113159213A (zh) * | 2021-04-30 | 2021-07-23 | 中国工商银行股份有限公司 | 一种业务分配方法、装置及设备 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109002854A (zh) * | 2018-07-20 | 2018-12-14 | 西安电子科技大学 | 基于隐表示和自适应的多视图子空间聚类方法 |
CN109327304A (zh) * | 2018-12-18 | 2019-02-12 | 武汉大学 | 一种云计算中实现隐私保护的轻量级同态加密方法 |
CN110705648A (zh) * | 2019-10-12 | 2020-01-17 | 中国民航大学 | 大规模多视图数据自降维K-means算法及系统 |
-
2020
- 2020-03-11 CN CN202010164475.XA patent/CN111461178B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109002854A (zh) * | 2018-07-20 | 2018-12-14 | 西安电子科技大学 | 基于隐表示和自适应的多视图子空间聚类方法 |
CN109327304A (zh) * | 2018-12-18 | 2019-02-12 | 武汉大学 | 一种云计算中实现隐私保护的轻量级同态加密方法 |
CN110705648A (zh) * | 2019-10-12 | 2020-01-17 | 中国民航大学 | 大规模多视图数据自降维K-means算法及系统 |
Non-Patent Citations (1)
Title |
---|
Privacy-Preserving Global Structural Balance Computation in Signed Networks;Lijia Ma et al.;《IEEE Transactions on Computational Social Systems》;20191024;第7卷(第1期);第1-2页 * |
Also Published As
Publication number | Publication date |
---|---|
CN111461178A (zh) | 2020-07-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11451370B2 (en) | Secure probabilistic analytics using an encrypted analytics matrix | |
US10333696B2 (en) | Systems and methods for implementing an efficient, scalable homomorphic transformation of encrypted data with minimal data expansion and improved processing efficiency | |
US20190386814A1 (en) | Systems and Methods for Implementing an Efficient, Scalable Homomorphic Transformation of Encrypted Data with Minimal Data Expansion and Improved Processing Efficiency | |
CN113557512A (zh) | 安全的多方到达率和频率估算 | |
CN111832050B (zh) | 用于联邦学习的基于FPGA芯片实现的Paillier加密方案 | |
US9536114B1 (en) | Secure mobile proactive multiparty computation protocol | |
CN112148437B (zh) | 用于联邦学习的计算任务加速处理方法、装置及设备 | |
EP2947814B1 (en) | Tampering detection device, tampering detection method, and program | |
JP5762232B2 (ja) | プライバシを保護したまま暗号化された要素の順序を選択するための方法およびシステム | |
EP4000216B1 (en) | Cryptographic pseudonym mapping method, computer system, computer program and computer-readable medium | |
US11902432B2 (en) | System and method to optimize generation of coprime numbers in cryptographic applications | |
US11741242B2 (en) | Cryptographic pseudonym mapping method, computer system computer program and computer-readable medium | |
CN114881247B (zh) | 基于隐私计算的纵向联邦特征衍生方法、装置、介质 | |
Merkepci et al. | On Some Novel Results about Split‐Complex Numbers, the Diagonalization Problem, and Applications to Public Key Asymmetric Cryptography | |
CN111461178B (zh) | 数据处理方法、系统及装置 | |
Nita et al. | Homomorphic encryption | |
Yang et al. | New dynamic and verifiable multi‐secret sharing schemes based on LFSR public key cryptosystem | |
US20230085239A1 (en) | Querying fully homomorphic encryption encrypted databases using client-side preprocessing or post-processing | |
CN113064899B (zh) | 资产类证券型通证交易凭证的存储方法、装置和电子设备 | |
US20230027423A1 (en) | Accelerated cryptographic-related processing with fractional scaling | |
Oder | Efficient and side-channel resistant implementation of lattice-based cryptography | |
Ruzai et al. | New simultaneous Diophantine attacks on generalized RSA key equations | |
CN114422105A (zh) | 联合建模方法、装置、电子设备及存储介质 | |
EP3675088B1 (en) | Share generating device, share converting device, secure computation system, share generation method, share conversion method, program, and recording medium | |
CN115918028A (zh) | 对同态密文执行统计操作的装置及其方法 |
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 |