CN112085206A - 联合逻辑回归建模方法、装置以及终端 - Google Patents
联合逻辑回归建模方法、装置以及终端 Download PDFInfo
- Publication number
- CN112085206A CN112085206A CN201910515047.4A CN201910515047A CN112085206A CN 112085206 A CN112085206 A CN 112085206A CN 201910515047 A CN201910515047 A CN 201910515047A CN 112085206 A CN112085206 A CN 112085206A
- Authority
- CN
- China
- Prior art keywords
- gradient
- value
- residual
- data
- model parameter
- 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.)
- Granted
Links
- 238000007477 logistic regression Methods 0.000 title claims abstract description 63
- 238000000034 method Methods 0.000 title claims abstract description 45
- 238000004364 calculation method Methods 0.000 claims description 24
- 230000006870 function Effects 0.000 claims description 23
- 239000013598 vector Substances 0.000 claims description 22
- 230000004913 activation Effects 0.000 claims description 12
- 238000004590 computer program Methods 0.000 claims description 5
- 230000008569 process Effects 0.000 abstract description 9
- 238000004891 communication Methods 0.000 description 9
- 238000010586 diagram Methods 0.000 description 7
- 238000012549 training Methods 0.000 description 5
- 238000000586 desensitisation Methods 0.000 description 3
- 238000010801 machine learning Methods 0.000 description 3
- 239000000463 material Substances 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 238000000513 principal component analysis Methods 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 238000007476 Maximum Likelihood Methods 0.000 description 1
- 230000002776 aggregation Effects 0.000 description 1
- 238000004220 aggregation Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000004422 calculation algorithm Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- Medical Informatics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Physics & Mathematics (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Artificial Intelligence (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明实施例提出一种联合逻辑回归建模方法、装置以及终端,方法包括:对具有标签值的第一样本数据集和第二样本数据集按照标识进行求交运算,得到具有标签值的第一数据交集和第二数据交集;根据第一数据交集、第一初始化模型参数、第二数据交集、第二初始化模型参数,计算残差;根据残差和第一数据交集,计算第一梯度值;根据加密残差和第二数据交集计算密文梯度和,对密文梯度和解密,得到第二梯度值;根据第一梯度值和第二梯度值建立联合逻辑回归模型。在联合来自两方数据进行联合建模过程中,双方不会泄露各自隐私数据。不仅促进了数据流通,打破数据孤岛,充分发挥数据价值,还可以对数据生态系统进行有效的隐私保护。
Description
技术领域
本发明涉及机器学习技术领域,尤其涉及一种联合逻辑回归建模方法、装 置以及终端。
背景技术
机器学习最通俗的解释就是让机器学会决策。分类和回归是机器学习可以 解决两大主要问题,从预测值的类型上看,连续变量预测的定量输出称为回归。 例如:预测明天多少度,是一个回归任务。离散变量预测的定性输出称为分类。 例如:预测明天阴、晴、雨,就是一个分类任务。逻辑回归由于存在易于实现、 解释性好以及容易扩展等优点,被广泛应用于点击率预估(CTR)、计算广告 (CA)以及推荐系统(RS)等任务中。逻辑回归虽然名字叫做回归,但实际 上却是一种分类学习方法。不是去拟合每个数据点,而是把不同类别的样本区 分开来。
目前,在建逻辑回归模型,会利用多方的企业、私人或医疗信息等敏感数 据,其中会将一方的数据进行主成分分析和脱敏,将敏感数据做一定的处理, 然后交给另一方进行建模计算。脱敏和主成分分析仅能够在一定程度上保护用 户的隐私数据安全,通过一些频度攻击方法可以反推出脱敏前的数据。所以, 缺乏不泄漏双方隐私数据的逻辑回归建模。
发明内容
本发明实施例提供一种联合逻辑回归建模方法、装置以及终端,以解决现 有技术中的一个或多个技术问题。
第一方面,本发明实施例提供了一种联合逻辑回归建模方法,包括:
对具有标签值的第一样本数据集和第二样本数据集按照标识进行求交运 算,得到具有标签值的第一数据交集和第二数据交集;
根据所述第一数据交集、第一初始化模型参数、所述第二数据交集、第二 初始化模型参数,计算残差;
根据所述残差和所述第一数据交集,计算第一梯度值;
根据加密残差和所述第二数据交集计算密文梯度和,对所述密文梯度和解 密,得到第二梯度值;
根据所述第一梯度值和所述第二梯度值建立联合逻辑回归模型。
在一种实施方式中,根据所述第一数据交集、第一初始化模型参数、所述 第二数据交集以及第二初始化模型参数,计算残差,包括:
第一端根据所述第一数据交集中的第一特征值向量和所述第一初始化模型 参数的乘积,得到第一残差中间值;
所述第一端接收来自第二端的第二残差中间值,所述第二残差中间值为所 述第二端根据所述第二数据交集中的第二特征值向量和所述第二初始化模型参 数的乘积计算得到的;
所述第一端根据所述第一残差中间值和所述第二残差中间值之和,生成残 差中间值,并将所述残差中间值输入激活函数得到预测值,计算所述预测值与 所述标签值的差值,得到所述残差。
在一种实施方式中,根据加密残差和所述第二数据交集计算密文梯度和, 对所述密文梯度和解密,得到第二梯度值,包括:
所述第一端生成公钥和私钥,利用所述公钥对所述残差加密得到加密残差, 将所述加密残差发送至所述第二端;
接收来自所述第二端的被保护的密文梯度,所述被保护的密文梯度为所述 第二端根据所述加密残差和所述第二数据交集计算密文梯度和后,将所述公钥 加密的随机值与所述密文梯度和相加得到的;
所述第一端利用所述私钥将所述被保护的密文梯度进行解密,并将解密结 果发送至所述第二端,由所述第二端利用所述解密结果减去所述随机值得到所 述第二梯度值。
在一种实施方式中,根据所述第一梯度值和所述第二梯度值建立联合逻辑 回归模型,包括:
根据所述第一梯度值和学习率更新所述第一初始化模型参数,得到第一更 新模型参数;
根据所述第二梯度值和所述学习率更新所述第二初始化模型参数,得到第 二更新模型参数;
根据所述第一更新模型参数和所述第二更新模型参数,建立所述联合逻辑 回归模型。
第二方面,本发明实施例提供了一种联合逻辑回归建模装置,包括:
数据集求交模块,用于对具有标签值的第一样本数据集和第二样本数据集 进行按照标识求交运算,得到具有标签值的第一数据交集和第二数据交集;
残差计算模块,用于根据所述第一数据交集、第一初始化模型参数、所述 第二数据交集、第二初始化模型参数,计算残差;
第一梯度值计算模块,用于根据所述残差和所述第一数据交集,计算第一 梯度值;
第二梯度值计算模块,用于根据加密残差和所述第二数据交集计算密文梯 度和,对所述密文梯度和解密,得到第二梯度值;
联合逻辑回归模型建立模块,用于根据所述第一梯度值和所述第二梯度值 建立联合逻辑回归模型。
在一种实施方式中,所述残差计算模块包括:
第一残差中间值计算单元,用于第一端根据所述第一数据交集中的第一特 征值向量和所述第一初始化模型参数的乘积,得到第一残差中间值;
第二残差中间值接收单元,用于所述第一端接收来自第二端的第二残差中 间值,所述第二残差中间值为所述第二端根据所述第二数据交集中的第二特征 值向量和所述第二初始化模型参数的乘积计算得到的;
残差计算单元,用于所述第一端根据所述第一残差中间值和所述第二残差 中间值之和,生成残差中间值,并将所述残差中间值输入激活函数得到预测值, 计算所述预测值与所述标签值的差值,得到所述残差。
在一种实施方式中,所述第二梯度值计算模块包括:
残差加密单元,用于所述第一端生成公钥和私钥,利用所述公钥对所述残 差加密得到加密残差,将所述加密残差发送至所述第二端;
被保护的密文梯度接收单元,用于接收来自所述第二端的被保护的密文梯 度,所述被保护的密文梯度为所述第二端根据所述加密残差和所述第二数据交 集计算密文梯度和后,将所述公钥加密的随机值与所述密文梯度和相加得到的;
被保护的密文梯度解密单元,用于所述第一端利用所述私钥将所述被保护 的密文梯度进行解密,并将解密结果发送至所述第二端,由所述第二端利用所 述解密结果减去所述随机值得到所述第二梯度值。
在一种实施方式中,所述联合逻辑回归模型建立模块,包括:
第一更新模型参数计算单元,用于根据所述第一梯度值和学习率更新所述 第一初始化模型参数,得到第一更新模型参数;
第二更新模型参数计算单元,用于根据所述第二梯度值和所述学习率更新 所述第二初始化模型参数,得到第二更新模型参数;
联合逻辑回归模型建立单元,用于根据所述第一更新模型参数和所述第二 更新模型参数,建立所述联合逻辑回归模型。
第三方面,本发明实施例提供了一种联合逻辑回归建模终端,所述联合逻 辑回归建模终端的功能可以通过硬件实现,也可以通过硬件执行相应的软件实 现。所述硬件或软件包括一个或多个与上述功能相对应的模块。
在一个可能的设计中,所述联合逻辑回归建模终端的结构中包括处理器和 存储器,所述存储器用于存储支持所述联合逻辑回归建模终端执行上述联合逻 辑回归建模方法的程序,所述处理器被配置为用于执行所述存储器中存储的程 序。所述联合逻辑回归建模终端还可以包括通信接口,用于与其他设备或通信 网络通信。
第四方面,本发明实施例提供了一种计算机可读存储介质,用于存储联合 逻辑回归建模终端所用的计算机软件指令,其包括用于执行上述联合逻辑回归 建模方法所涉及的程序。
上述技术方案中的一个技术方案具有如下优点或有益效果:本实施方式提 供的联合逻辑回归建模方法,在联合来自两方数据进行联合建模过程中,双方 不会泄露各自隐私数据。不仅促进了数据流通,打破数据孤岛,充分发挥数据 价值,还可以对数据生态系统进行有效的隐私保护。
上述概述仅仅是为了说明书的目的,并不意图以任何方式进行限制。除上 述描述的示意性的方面、实施方式和特征之外,通过参考附图和以下的详细描 述,本发明进一步的方面、实施方式和特征将会是容易明白的。
附图说明
在附图中,除非另外规定,否则贯穿多个附图相同的附图标记表示相同或 相似的部件或元素。这些附图不一定是按照比例绘制的。应该理解,这些附图 仅描绘了根据本发明公开的一些实施方式,而不应将其视为是对本发明范围的 限制。
图1示出根据本发明实施例的一种联合逻辑回归建模方法的流程图。
图2示出根据本发明实施例的另一种联合逻辑回归建模方法的流程图。
图3示出根据本发明实施例的两方联合逻辑回归建模的过程图。
图4示出根据本发明实施例的一种联合逻辑回归建模装置的结构框图。
图5示出根据本发明实施例的另一种联合逻辑回归建模装置的结构框图。
图6示出根据本发明实施例的一种联合逻辑回归建模终端的结构示意图。
具体实施方式
在下文中,仅简单地描述了某些示例性实施例。正如本领域技术人员可认 识到的那样,在不脱离本发明的精神或范围的情况下,可通过各种不同方式修 改所描述的实施例。因此,附图和描述被认为本质上是示例性的而非限制性的。
实施例一
在一种具体实施方式中,提供了一种联合逻辑回归建模方法,如图1所示, 包括:
步骤S10:对具有标签值的第一样本数据集和第二样本数据集按照标识进 行求交运算,得到具有标签值的第一数据交集和第二数据交集。
在一种示例中,可以获取第一样本数据集和第二样本数据集。第一样本数 据集包括形成一列的多个第一标识、形成行的第一标签名称和多个第一特征名 称。例如,第一标识可以包括张三、李四、王五、赵六等人物,第一标签名称 可以包括是否购买保险等。第一特征名称可以包括体重、收入、身高等。第一 样本数据集还包括第一标签值和多个第一特征值。例如,第一标签值可以包括 1和0,1表示购买了保险,0表示没有购买保险。第一特征值可以包括张三的 身高是数值179cm,李四的收入是8000元等。第二样本数据集和第一样本数据 集的构成相似,但是没有标签名称和标签值,其它的元素在此不再赘述。对第 一样本数据集和第二样本数据集求交,得到具有相同标识的第一数据交集和第 二数据交集。
步骤S20:根据第一数据交集、第一初始化模型参数、第二数据交集、第 二初始化模型参数,计算残差。
在一种示例中,将第一数据交集、第二数据交集各自载入两端的模型训练 的程序中。之后两个程序在运行过程中,会交互部分加密的信息,共同建立一 个新的模型,就是联合逻辑回归模型。在输入第一数据交集和第二数据交集的 同时,随机初始化两端的模型参数,得到第一初始化模型参数和第二初始化模 型参数,并保存。残差是标签值与预测值的差,模型参数和特征值向量的乘积 即残差中间值,将残差中间值输入激活函数得到预测值。
步骤S30:根据残差和第一数据交集,计算第一梯度值。
在一种示例中,由于逻辑回归假设数据服从伯努利分布,通过极大似然函 数的方法,运用梯度下降来求解参数,来达到将数据二分类的目的。所以要在 第一数据交集的一端,根据残差和第一数据交集,计算第一梯度值。
步骤S40:根据加密残差和第二数据交集计算密文梯度和,对密文梯度和 解密,得到第二梯度值。
在一种示例中,第一数据交集所在的第一端对计算出来的残差进行加密, 得到加密残差。将加密残差同步于第二数据交集所在的第二端。第二端通过生 成随机值,对加密残差进行保护。
步骤S50:根据第一梯度值和第二梯度值建立联合逻辑回归模型。
在一种示例中,第一梯度值和学习率,以及第二梯度值和学习率更新模型 参数,得到联合逻辑回归模型。
本实施方式提供的联合逻辑回归建模方法,在联合来自两方数据进行联合 建模过程中,会交互部分加密的信息,双方不会泄露各自隐私数据。不仅促进 了数据流通,打破数据孤岛,充分发挥数据价值,还可以对数据生态系统进行 有效的隐私保护。
在一种实施方式中,如图2所示,步骤S20,包括:
步骤S201:第一端根据第一数据交集中的第一特征值向量和第一初始化模 型参数的乘积,得到第一残差中间值;
步骤S202:第一端接收来自第二端的第二残差中间值,第二残差中间值为 第二端根据第二数据交集中的第二特征值向量和第二初始化模型参数的乘积计 算得到的;
步骤S203:第一端根据第一残差中间值和第二残差中间值之和,生成残差 中间值,并将残差中间值输入激活函数得到预测值,计算预测值与标签值的差 值,得到残差。
在一种示例中,由于第二数据交集中的第二特征值向量是第二端的隐私数 据,将第二特征值向量和第二初始化模型参数的乘积形成的第二残差中间值的 方式,并不会泄露第二端的任何信息。即使第二端将第二残差中间值发送给第 一端,第一端也无法通过结果值直接推算出第二端的第二初始化模型参数和第 二特征值向量。有效避免了第二端泄露特征值的风险。
通常,本实施方式中的激活函数不能选择取值范围在-1和1之间的激活函 数,比如不能选择sigmod函数。原因是:残差是标签值和预测值的差,由于第 一端中标签值取值只有-1和1两个值(逻辑回归是二分类),预测值又是残差中 间值输入激活函数得到,若选用逻辑回归常用的激活函数sigmoid函数,其取 值范围为0到1,只要知道残差的正负,很容易推测出标签值的正负。所以, 避免使用sigmod函数。避免了第二端根据残差的取值,间接获取第一端中标签 值。
在一种实施方式中,如图2所示,步骤S40,包括:
步骤S401:第一端生成公钥和私钥,利用公钥对残差加密得到加密残差, 将加密残差发送至第二端;
步骤S402:接收来自第二端的被保护的密文梯度,被保护的密文梯度为第 二端根据加密残差和第二数据交集计算密文梯度和后,将公钥加密的随机值与 密文梯度和相加得到的;
步骤S403:第一端利用私钥将被保护的密文梯度进行解密,并将解密结果 发送至第二端,由第二端利用解密结果减去随机值得到第二梯度值。
在一种示例中,第一端,利用公钥度残差加密,得到加密残差,并将加密 残差发送给第二端。在第二端根据加密残差和第二数据交集计算密文梯度和。 为了避免第一端通过构造特定残差来获取第二端的第二数据交集中的第二特征 值向量,在第二端生成了随机值,第二端将密文梯度和发送回第一端方前,在 第二端生成了一个随机值,并将密文梯度和和加密的随机值相加,生成被保护 的密文梯度。那么,当第一端通过私钥解密被保护的密文梯度时,只能得到的 第二端的密文梯度和与随机值的和,因为第一端方无法获取这个随机值,所以 第一端就无法直接获取第二端的密文梯度和了。
整个计算过程中,第一端可能会获取第二端的第二数据交集中的特征的数 量。例如,第一端有体重、收入、身高的特征,特征数量为3。第一端无法获 得特征的含义,所以,即使第一端知道此信息,也不会对第二端构成泄露风险。 第二端都没有直接或间接的获取到第一端中第一数据交集,不存在第一端将数 据泄露的风险。
在一种实施方式中,如图2所示,步骤S50:包括:
步骤S501:根据第一梯度值和学习率更新第一初始化模型参数,得到第一 更新模型参数;
步骤S502:根据第二梯度值和学习率更新第二初始化模型参数,得到第二 更新模型参数;
步骤S503:根据第一更新模型参数和第二更新模型参数,建立联合逻辑回 归模型。
在一种示例中,学习率表示了每一轮训练完成后,更新模型的快慢程度。 是训练开始时输入的相关训练参数中的一个。例如,要更新模型参数w1,现在 有一个上一轮训练得到的模型参数w1_a,要计算新一轮的模型参数w1_b,那 么w1_b=w1_a+梯度*学习率。
实施例二
以A机器和B机器两方为例进行具体说明。A、B两方分别有第一样本数 据集合Qa和第二样本数据集合Qb。Qa包括形成行的列的多个第一标识、形成 行的标签名称和多个第一特征名称,以及与多个第一标识对应的多个第一标签 值和多个第一特征值;Qb包括形成一列的多个第二标识、形成行的多个第二特 征名称,以及与多个第二标识对应的多个第二特征值。
具体的,可参见表1和表2。每行对应一个唯一标识,例如,Qa集合中的 多个第一标识,包括张三、李四、王五,Qb集合中的多个第二标识,包括张三、 李四以及赵六。Qa集合还包括了签名名称Y,含义是,是否买保险。标签值为 1表示买保险,标签值为0表示没买保险,当然,标签名称的含义还可以是其 它含义。Qa集合中的多个第一特征名称包括身高x1、体重x2以及收入x3, 对应的第一特征值如表1所示。Qb集合中的多个第二特征名称包括理财金额 x4和存款金额x5。对应的第二特征值如表2所示。
为了便于联合训练,将Qa,Qb两个数据集的标识列进行安全求交运算。 其中,求交过程可以采用安全快速求交的棣弗-赫尔曼(diffe-hellman)算法, 此算法是一种确保共享钥匙安全穿越不安全网络的方法。两方求交之后,生成 第一数据交集Xa和第二数据交集Xb。其中,Xa、Xb中的同一行数据具有相 同标识。如图表3和表4所示,Xa和Xb有共同的标识张三、李四。Xa包括张 三、李四分别对应的标签名称以及标签值,张三、李四对应身高、体重、收入 的特征名称以及特征值。Xb包括张三、李四分别对应的理财金额、存款金额的 特征名称以及特征值。
表1:A方的Qa集合
表2:B方的Qb集合
表3:A方的Xa集合
表4:B方的Xb集合
A方对应的模型参数是向量(w1,w2,w3),B方对应的模型参数是向量 (w4,w5)。Y=w1*x1+w2*x 2+w3*x 3+w4*x 4+w5*x 5,每一方只对应一 个模型参数,只是具体的值在不断的变化。对A、B双方中的程序进行初始化, 初始化就是最开始随机把A方对应的模型参数赋初值,B方对应的模型参数赋 初值,并保存。
如图3所示,A、B双方载入各自的数据。A方载入第一数据交集,例如 xa={x1、x2、x3、y},B方载入第二数据交集,例如xb={x4、x5}。A方生成 密钥,密钥包括公钥(pub_key)和私钥(pri_key),并将公钥(pub_key)发送 到B方,B方将收到公钥,并将其存储。A、B双方各自计算生成第一残差中 间值F1i和第二残差中间值F2i,F1i=∑Wa[j]*xa[i][j],F2i=∑Wb[j]*xb[i][j]。 Wa[j]为第一模型参数,Wb[j]为为第二模型参数,均为向量。xa[i][j]为第一特征 值向量,xb[i][j]为第二特征值向量,i为行,j为列。B方将第二残差中间值F2i发送到A方。A方计算F1i和F2i的和,得到残差中间值Fi。然后,A方将残 差中间值Fi代入激活函数中,得到预测值,预测值和第一数据交集中的标签值 yi的差值,得到残差ti。随后,将残差ti使用公钥(pub_key)加密得到密文残 差enc_ti,发送到B方。A方根据残差ti和xa,计算A方的梯度即第一梯度值, 第一梯度值gradAj=∑ti*xa[i][j]/line_num,line_num为xa[i][j]的列数。B方根 据收到加密残差enc_ti和xb,计算B方的密文梯度和enc_sum_gradBj=∑enc_ti* xb[i][j]。B方生成一个随机值rand(),并存储。同时使用A方的公钥(pub_key) 加密生成加密随机值enc_rand()。加密随机值enc_rand()和密文梯度和密文梯度 和enc_sum_gradBj相加,得到被保护的密文梯度,并将其发送到A方。A方使 用私钥(pri_key)解密B方发送过来的被保护的密文梯度,并将解密结果 sum_gradBj+rand()发回B方。B方拿到解密结果,使用解密结果减去存储的随 机值rand(),计算B方的梯度即第二梯度值,第二梯度值gradBj=(sum_gradBj+ rand()-rand())/line_num。A、B双方根据各自的梯度值和学习率,更新模型参 数,得到新一轮的模型。A方更新模型参数Waj=gradAj*alpha+Waj,B方更新 模型参数Wbj=gradAj*alpha+Wbj,alpha为学习率。需要指出的是,上述两个 更新模型参数的式子中,在程序语言中,变量是可以基于自身进行操作的。
实施例三
在另一种具体实施方式中,如图4所示,提供了一种联合逻辑回归建模装 置,包括:
数据集求交模块10,用于对具有标签值的第一样本数据集和第二样本数据 集进行求交运算,得到具有标签值的第一数据交集和第二数据交集;
残差计算模块20,用于根据所述第一数据交集、第一初始化模型参数、所 述第二数据交集、第二初始化模型参数,计算残差;
第一梯度值计算模块30,用于根据所述残差和所述第一数据交集,计算第 一梯度值;
第二梯度值计算模块40,用于根据加密残差和所述第二数据交集计算密文 梯度和,对所述密文梯度和解密,得到第二梯度值;
联合逻辑回归模型建立模块50,用于根据所述第一梯度值和所述第二梯度 值建立联合逻辑回归模型。
在一种实施方式中,如图5所示,所述残差计算模块20包括:
第一残差中间值计算单元201,用于第一端根据所述第一数据交集中的第 一特征值向量和所述第一初始化模型参数的乘积,得到第一残差中间值;
第二残差中间值接收单元202,用于所述第一端接收来自第二端的第二残 差中间值,所述第二残差中间值为所述第二端根据所述第二数据交集中的第二 特征值向量和所述第二初始化模型参数的乘积计算得到的;
残差计算单元203,用于所述第一端根据所述第一残差中间值和所述第二 残差中间值之和,生成残差中间值,并将所述残差中间值输入激活函数得到预 测值,计算所述预测值与所述标签值的差值,得到所述残差。
在一种实施方式中,如图5所示,所述第二梯度值计算模块40包括:
残差加密单元401,用于所述第一端生成公钥和私钥,利用所述公钥对所 述残差加密得到加密残差,将所述加密残差发送至所述第二端;
被保护的密文梯度接收单元402,用于接收来自所述第二端的被保护的密 文梯度,所述被保护的密文梯度为所述第二端根据所述加密残差和所述第二数 据交集计算密文梯度和后,将所述公钥加密的随机值与所述密文梯度和相加得 到的;
被保护的密文梯度解密单元403,用于所述第一端利用所述私钥将所述被 保护的密文梯度进行解密,并将解密结果发送至所述第二端,由所述第二端利 用所述解密结果减去所述随机值得到所述第二梯度值。
在一种实施方式中,如图5所示,所述联合逻辑回归模型建立模块50,包 括:
第一更新模型参数计算单元501,用于根据所述第一梯度值和学习率更新 所述第一初始化模型参数,得到第一更新模型参数;
第二更新模型参数计算单元502,用于根据所述第二梯度值和学习率更新 所述第二初始化模型参数,得到第二更新模型参数;
联合逻辑回归模型建立单元503,用于根据所述第一更新模型参数和所述 第二更新模型参数,建立所述联合逻辑回归模型。
本发明实施例各装置中的各模块的功能可以参见上述方法中的对应描述, 在此不再赘述。
实施例四
图6示出根据本发明实施例的联合逻辑回归建模终端的结构框图。如图6 所示,该终端包括:存储器910和处理器920,存储器910内存储有可在处理 器920上运行的计算机程序。所述处理器920执行所述计算机程序时实现上述 实施例中的联合逻辑回归建模方法。所述存储器910和处理器920的数量可以 为一个或多个。
该终端还包括:
通信接口930,用于与外界设备进行通信,进行数据交互传输。
存储器910可能包含高速RAM存储器,也可能还包括非易失性存储器 (non-volatile memory),例如至少一个磁盘存储器。
如果存储器910、处理器920和通信接口930独立实现,则存储器910、处 理器920和通信接口930可以通过总线相互连接并完成相互间的通信。所述总 线可以是工业标准体系结构(ISA,Industry Standard Architecture)总线、外部 设备互连(PCI,PeripheralComponent Interconnect)总线或扩展工业标准体系 结构(EISA,Extended IndustryStandard Architecture)总线等。所述总线可以分 为地址总线、数据总线、控制总线等。为便于表示,图6中仅用一条粗线表示, 但并不表示仅有一根总线或一种类型的总线。
可选的,在具体实现上,如果存储器910、处理器920及通信接口930集 成在一块芯片上,则存储器910、处理器920及通信接口930可以通过内部接 口完成相互间的通信。
本发明实施例提供了一种计算机可读存储介质,其存储有计算机程序,该 程序被处理器执行时实现上述实施例中任一所述方法。
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具 体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结 构、材料或者特点包含于本发明的至少一个实施例或示例中。而且,描述的具 体特征、结构、材料或者特点可以在任一个或多个实施例或示例中以合适的方 式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中 描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。
此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相 对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二” 的特征可以明示或隐含地包括至少一个该特征。在本发明的描述中,“多个”的 含义是两个或两个以上,除非另有明确具体的限定。
流程图中或在此以其他方式描述的任何过程或方法描述可以被理解为,表 示包括一个或更多个用于实现特定逻辑功能或过程的步骤的可执行指令的代码 的模块、片段或部分,并且本发明的优选实施方式的范围包括另外的实现,其 中可以不按所示出或讨论的顺序,包括根据所涉及的功能按基本同时的方式或 按相反的顺序,来执行功能,这应被本发明的实施例所属技术领域的技术人员 所理解。
在流程图中表示或在此以其他方式描述的逻辑和/或步骤,例如,可以被认 为是用于实现逻辑功能的可执行指令的定序列表,可以具体实现在任何计算机 可读介质中,以供指令执行系统、装置或设备(如基于计算机的系统、包括处 理器的系统或其他可以从指令执行系统、装置或设备取指令并执行指令的系统) 使用,或结合这些指令执行系统、装置或设备而使用。就本说明书而言,“计算 机可读介质”可以是任何可以包含、存储、通信、传播或传输程序以供指令执行 系统、装置或设备或结合这些指令执行系统、装置或设备而使用装置。计算机 可读介质的更具体的示例(非穷尽性列表)包括以下:具有一个或多个布线的 电连接部(电子装置),便携式计算机盘盒(磁装置),随机存取存储器(RAM), 只读存储器(ROM),可擦除可编辑只读存储器(EPROM或闪速存储器),光 纤装置,以及便携式只读存储器(CDROM)。另外,计算机可读介质甚至可以 是可在其上打印所述程序的纸或其他合适的介质,因为可以例如通过对纸或其 他介质进行光学扫描,接着进行编辑、解译或必要时以其他合适方式进行处理 来以电子方式获得所述程序,然后将其存储在计算机存储器中。
应当理解,本发明的各部分可以用硬件、软件、固件或它们的组合来实现。 在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执 行系统执行的软件或固件来实现。例如,如果用硬件来实现,和在另一实施方 式中一样,可用本领域公知的下列技术中的任一项或他们的组合来实现:具有 用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合 逻辑门电路的专用集成电路,可编程门阵列(PGA),现场可编程门阵列(FPGA) 等。
本技术领域的普通技术人员可以理解实现上述实施例方法携带的全部或部 分步骤是可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计 算机可读存储介质中,该程序在执行时,包括方法实施例的步骤之一或其组合。
此外,在本发明各个实施例中的各功能单元可以集成在一个处理模块中, 也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个模块 中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的 形式实现。所述集成的模块如果以软件功能模块的形式实现并作为独立的产品 销售或使用时,也可以存储在一个计算机可读存储介质中。所述存储介质可以 是只读存储器,磁盘或光盘等。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于 此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到 其各种变化或替换,这些都应涵盖在本发明的保护范围之内。因此,本发明的 保护范围应以所述权利要求的保护范围为准。
Claims (10)
1.一种联合逻辑回归建模方法,其特征在于,包括:
对具有标签值的第一样本数据集和第二样本数据集按照标识进行求交运算,得到具有标签值的第一数据交集和第二数据交集;
根据所述第一数据交集、第一初始化模型参数、所述第二数据交集、第二初始化模型参数,计算残差;
根据所述残差和所述第一数据交集,计算第一梯度值;
根据加密残差和所述第二数据交集计算密文梯度和,对所述密文梯度和解密,得到第二梯度值;
根据所述第一梯度值和所述第二梯度值建立联合逻辑回归模型。
2.根据权利要求1所述的方法,其特征在于,根据所述第一数据交集、第一初始化模型参数、所述第二数据交集以及第二初始化模型参数,计算残差,包括:
第一端根据所述第一数据交集中的第一特征值向量和所述第一初始化模型参数的乘积,得到第一残差中间值;
所述第一端接收来自第二端的第二残差中间值,所述第二残差中间值为所述第二端根据所述第二数据交集中的第二特征值向量和所述第二初始化模型参数的乘积计算得到的;
所述第一端根据所述第一残差中间值和所述第二残差中间值之和,生成残差中间值,并将所述残差中间值输入激活函数得到预测值,计算所述预测值与所述标签值的差值,得到所述残差。
3.根据权利要求2所述的方法,其特征在于,根据加密残差和所述第二数据交集计算密文梯度和,对所述密文梯度和解密,得到第二梯度值,包括:
所述第一端生成公钥和私钥,利用所述公钥对所述残差加密得到加密残差,将所述加密残差发送至所述第二端;
接收来自所述第二端的被保护的密文梯度,所述被保护的密文梯度为所述第二端根据所述加密残差和所述第二数据交集计算密文梯度和后,将所述公钥加密的随机值与所述密文梯度和相加得到的;
所述第一端利用所述私钥将所述被保护的密文梯度进行解密,并将解密结果发送至所述第二端,由所述第二端利用所述解密结果减去所述随机值得到所述第二梯度值。
4.根据权利要求1所述的方法,其特征在于,根据所述第一梯度值和所述第二梯度值建立联合逻辑回归模型,包括:
根据所述第一梯度值和学习率更新所述第一初始化模型参数,得到第一更新模型参数;
根据所述第二梯度值和所述学习率更新所述第二初始化模型参数,得到第二更新模型参数;
根据所述第一更新模型参数和所述第二更新模型参数,建立所述联合逻辑回归模型。
5.一种联合逻辑回归建模装置,其特征在于,包括:
数据集求交模块,用于对具有标签值的第一样本数据集和第二样本数据集按照标识进行求交运算,得到具有标签值的第一数据交集和第二数据交集;
残差计算模块,用于根据所述第一数据交集、第一初始化模型参数、所述第二数据交集、第二初始化模型参数,计算残差;
第一梯度值计算模块,用于根据所述残差和所述第一数据交集,计算第一梯度值;
第二梯度值计算模块,用于根据加密残差和所述第二数据交集计算密文梯度和,对所述密文梯度和解密,得到第二梯度值;
联合逻辑回归模型建立模块,用于根据所述第一梯度值和所述第二梯度值建立联合逻辑回归模型。
6.根据权利要求5所述的装置,其特征在于,所述残差计算模块包括:
第一残差中间值计算单元,用于第一端根据所述第一数据交集中的第一特征值向量和所述第一初始化模型参数的乘积,得到第一残差中间值;
第二残差中间值接收单元,用于所述第一端接收来自第二端的第二残差中间值,所述第二残差中间值为所述第二端根据所述第二数据交集中的第二特征值向量和所述第二初始化模型参数的乘积计算得到的;
残差计算单元,用于所述第一端根据所述第一残差中间值和所述第二残差中间值之和,生成残差中间值,并将所述残差中间值输入激活函数得到预测值,计算所述预测值与所述标签值的差值,得到所述残差。
7.根据权利要求6所述的装置,其特征在于,所述第二梯度值计算模块包括:
残差加密单元,用于所述第一端生成公钥和私钥,利用所述公钥对所述残差加密得到加密残差,将所述加密残差发送至所述第二端;
被保护的密文梯度接收单元,用于接收来自所述第二端的被保护的密文梯度,所述被保护的密文梯度为所述第二端根据所述加密残差和所述第二数据交集计算密文梯度和后,将所述公钥加密的随机值与所述密文梯度和相加得到的;
被保护的密文梯度解密单元,用于所述第一端利用所述私钥将所述被保护的密文梯度进行解密,并将解密结果发送至所述第二端,由所述第二端利用所述解密结果减去所述随机值得到所述第二梯度值。
8.根据权利要求7所述的装置,其特征在于,所述联合逻辑回归模型建立模块,包括:
第一更新模型参数计算单元,用于根据所述第一梯度值和学习率更新所述第一初始化模型参数,得到第一更新模型参数;
第二更新模型参数计算单元,用于根据所述第二梯度值和所述学习率更新所述第二初始化模型参数,得到第二更新模型参数;
联合逻辑回归模型建立单元,用于根据所述第一更新模型参数和所述第二更新模型参数,建立所述联合逻辑回归模型。
9.一种联合逻辑回归建模终端,其特征在于,包括:
一个或多个处理器;
存储装置,用于存储一个或多个程序;
当所述一个或多个程序被所述一个或多个处理器执行时,使得所述一个或多个处理器实现如权利要求1至4中任一项所述方法。
10.一种计算机可读存储介质,其存储有计算机程序,其特征在于,该程序被处理器执行时实现如权利要求1至4中任一项所述方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910515047.4A CN112085206B (zh) | 2019-06-13 | 2019-06-13 | 联合逻辑回归建模方法、装置以及终端 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910515047.4A CN112085206B (zh) | 2019-06-13 | 2019-06-13 | 联合逻辑回归建模方法、装置以及终端 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112085206A true CN112085206A (zh) | 2020-12-15 |
CN112085206B CN112085206B (zh) | 2024-04-09 |
Family
ID=73733841
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910515047.4A Active CN112085206B (zh) | 2019-06-13 | 2019-06-13 | 联合逻辑回归建模方法、装置以及终端 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112085206B (zh) |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107967359A (zh) * | 2017-12-21 | 2018-04-27 | 百度在线网络技术(北京)有限公司 | 数据可视分析方法、系统、终端和计算机可读存储介质 |
WO2018174873A1 (en) * | 2017-03-22 | 2018-09-27 | Visa International Service Association | Privacy-preserving machine learning |
CN109165515A (zh) * | 2018-08-10 | 2019-01-08 | 深圳前海微众银行股份有限公司 | 基于联邦学习的模型参数获取方法、系统及可读存储介质 |
CN109284313A (zh) * | 2018-08-10 | 2019-01-29 | 深圳前海微众银行股份有限公司 | 基于半监督学习的联邦建模方法、设备及可读存储介质 |
CN109325584A (zh) * | 2018-08-10 | 2019-02-12 | 深圳前海微众银行股份有限公司 | 基于神经网络的联邦建模方法、设备及可读存储介质 |
CN109492420A (zh) * | 2018-12-28 | 2019-03-19 | 深圳前海微众银行股份有限公司 | 基于联邦学习的模型参数训练方法、终端、系统及介质 |
-
2019
- 2019-06-13 CN CN201910515047.4A patent/CN112085206B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2018174873A1 (en) * | 2017-03-22 | 2018-09-27 | Visa International Service Association | Privacy-preserving machine learning |
CN107967359A (zh) * | 2017-12-21 | 2018-04-27 | 百度在线网络技术(北京)有限公司 | 数据可视分析方法、系统、终端和计算机可读存储介质 |
CN109165515A (zh) * | 2018-08-10 | 2019-01-08 | 深圳前海微众银行股份有限公司 | 基于联邦学习的模型参数获取方法、系统及可读存储介质 |
CN109284313A (zh) * | 2018-08-10 | 2019-01-29 | 深圳前海微众银行股份有限公司 | 基于半监督学习的联邦建模方法、设备及可读存储介质 |
CN109325584A (zh) * | 2018-08-10 | 2019-02-12 | 深圳前海微众银行股份有限公司 | 基于神经网络的联邦建模方法、设备及可读存储介质 |
CN109492420A (zh) * | 2018-12-28 | 2019-03-19 | 深圳前海微众银行股份有限公司 | 基于联邦学习的模型参数训练方法、终端、系统及介质 |
Non-Patent Citations (1)
Title |
---|
唐春明;魏伟明;: "基于安全两方计算的具有隐私性的回归算法", 信息网络安全, no. 10, 10 October 2018 (2018-10-10) * |
Also Published As
Publication number | Publication date |
---|---|
CN112085206B (zh) | 2024-04-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109165725B (zh) | 基于迁移学习的神经网络联邦建模方法、设备及存储介质 | |
WO2020177392A1 (zh) | 基于联邦学习的模型参数训练方法、装置、设备及介质 | |
CN109255444B (zh) | 基于迁移学习的联邦建模方法、设备及可读存储介质 | |
WO2021000561A1 (zh) | 数据处理方法、装置和电子设备 | |
WO2021027258A1 (zh) | 模型参数确定方法、装置和电子设备 | |
CN110555525B (zh) | 模型参数确定方法、装置和电子设备 | |
WO2021000571A1 (zh) | 数据处理方法、装置和电子设备 | |
CN110580409B (zh) | 模型参数确定方法、装置和电子设备 | |
CN112052954B (zh) | 梯度提升树建模方法、装置以及终端 | |
CN112070222B (zh) | 用于联邦学习的处理装置、加速器及方法 | |
CN110427969B (zh) | 数据处理方法、装置和电子设备 | |
CN109446828B (zh) | 一种安全多方计算方法及装置 | |
CN114417364A (zh) | 一种数据加密方法、联邦建模方法、装置及计算机设备 | |
CN114282256B (zh) | 一种基于秘密分享的排序打乱方法和恢复方法 | |
CN111079153B (zh) | 安全建模方法、装置、电子设备及存储介质 | |
CN113014373A (zh) | 一种同态计算中的数据加密方法、装置、设备及介质 | |
CN113704805B (zh) | 一种风控规则匹配方法、装置及电子设备 | |
CN110851472A (zh) | 样本匹配方法、设备及可读存储介质 | |
US11194824B2 (en) | Providing oblivious data transfer between computing devices | |
EP3843319A1 (en) | Apparatus and method for set intersection operation | |
CN112507323A (zh) | 基于单向网络的模型训练方法、装置和计算设备 | |
US12113890B2 (en) | Homomorphic encryption using smart contracts | |
CN112085206A (zh) | 联合逻辑回归建模方法、装置以及终端 | |
CN109547203A (zh) | 一种私钥的备份方法、备份装置及终端设备 | |
CN114547684A (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 |