CN113886868A - 一种多源垂直分布数据的逻辑回归安全训练方法及系统 - Google Patents

一种多源垂直分布数据的逻辑回归安全训练方法及系统 Download PDF

Info

Publication number
CN113886868A
CN113886868A CN202111006040.3A CN202111006040A CN113886868A CN 113886868 A CN113886868 A CN 113886868A CN 202111006040 A CN202111006040 A CN 202111006040A CN 113886868 A CN113886868 A CN 113886868A
Authority
CN
China
Prior art keywords
data
training
ciphertext
aggregation
logistic regression
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.)
Pending
Application number
CN202111006040.3A
Other languages
English (en)
Inventor
朱辉
李临风
沈洁
赵家奇
王枫为
魏立力
王二梅
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Xidian University
China Mobile Suzhou Software Technology Co Ltd
Original Assignee
Xidian University
China Mobile Suzhou Software Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Xidian University, China Mobile Suzhou Software Technology Co Ltd filed Critical Xidian University
Priority to CN202111006040.3A priority Critical patent/CN113886868A/zh
Publication of CN113886868A publication Critical patent/CN113886868A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/602Providing cryptographic facilities or services
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Bioethics (AREA)
  • Health & Medical Sciences (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • General Health & Medical Sciences (AREA)
  • Data Mining & Analysis (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Databases & Information Systems (AREA)
  • Mathematical Physics (AREA)
  • Artificial Intelligence (AREA)
  • Medical Informatics (AREA)
  • Evolutionary Computation (AREA)
  • Computing Systems (AREA)
  • Complex Calculations (AREA)

Abstract

本发明属于信息安全技术领域,公开了一种多源垂直分布数据的逻辑回归安全训练方法及系统,所述逻辑回归安全训练方法在保证用户本地数据隐私的前提下,采用了非交互式联邦学习逻辑回归训练方法,用户不必保证每轮训练过程实时在线也不必耗费本地计算资源进行大量模型更新计算,用户只需要在训练开始时对本地训练数据进行预处理计算与加密计算,然后将密文数据交由云服务提供商,由云服务提供商完成数据聚合计算,并将密文全局逻辑回归训练数据交由模型训练发起者,由模型训练发起者对密文全局逻辑回归训练数据进行解密计算,并利用全局训练数据进行逻辑回归训练,最终得到了高效逻辑回归模型。

Description

一种多源垂直分布数据的逻辑回归安全训练方法及系统
技术领域
本发明属于信息安全技术领域,尤其涉及一种多源垂直分布数据的逻辑回归安全训练方法及系统。
背景技术
随着大数据时代的到来,大规模的数据收集提高了机器学习算法的性能,也不断推动着人工智能技术的进步。然而,在大量的人工智能产品背后,用户个人敏感数据的隐私保护也面临着更大的风险与挑战。为了更好的保护用户个人隐私数据的安全,联邦学习的训练模式应运而生,和传统集中训练模式的机器学习方式相比,联邦学习实现了将各方原始数据保留在本地的同时进行机器学习训练,能够有效帮助多个机构在满足数据安全的前提下,搭建共享的高性能模型,而且最大化地利用了云系统终端设备的高计算能力。联邦学习的出现有效解决了数据孤岛的问题,帮助多参与方在不共享原始数据的基础上实现协作建模。
传统的联邦学习训练通常采用的方式是用户利用本地数据进行模型训练,然后将模型梯度发送至云端并进行全局模型的聚合并更新模型参数,最后由云将聚合的结果发送给参与方更新各自的模型。采用传统联邦学习模式要求用户在训练过程中一直保持在线,且需要消耗大量计算资源进行模型训练。同时,这种模式并没有对模型的梯度参数进行加密,也在一定程度上存在隐私数据泄露的风险。
具体来说,如深圳前海微众银行股份有限公司的专利“提升安全性的纵向联邦学习方法、设备、系统及存储介质”(申请号CN201911128849.6申请公布号CN110704860A),公开了一种安全联邦学习逻辑回归算法,在联合第三方进行纵向联邦逻辑回归建模的方案中,避免第三方联合其中一方窃取数据的可能性,在一定程度上提高了逻辑回归模型的安全性。但是,该方法的不足之处在于训练过程需要参与用户一直保持在现,且每轮迭代都需要进行数据拥有者和云服务器之间的通信,增加了通信开销。
通过上述分析,现有技术存在的问题及缺陷为:
(1)传统的联邦学习训练方法,在训练过程中每次迭代都要参与方上传本地模型的梯度参数,而又并未对本地训练模型的梯度参数进行加密保护,在一定程度上存在隐私数据泄露的问题。
(2)传统的联邦学习训练方法一般针对于交互式计算场景,在整个训练过程中需要保持所有训练参与方实时在线,且需要消耗大量的计算资源进行模型的训练。
(3)传统联邦学习训练方法,训练模型的每次迭代都需要在参与方和云服务器之间进行大量密文的通信,通信开销较大。
解决以上问题及缺陷的难度为:
(1)为了防止训练过程中梯度参数泄露用户隐私的问题,需要对梯度参数利用密码学方法进行加密保护,多用户与云服务器多轮通信中,计算开销和密文尺寸增大所带来的通信开销降低了模型的可用性和效率。
(2)在联邦学习训练的非交互式场景下,现有的同态加密算法难以得到有效运用,不能为多源用户提供有效的隐私保护。
(3)传统联邦学习的迭代训练过程中,利用密码学原语对用户上传的模型参数进行加密保护会带来了极大的通信开销,存在安全性与可用性相互制约的问题。
解决以上问题及缺陷的意义为:针对分布式场景下,设计一种非交互式联邦学习逻辑回归问题的解决方案,能够有效解决多源数据协同训练过程中个人用户隐私信息泄露的问题,确保多数据源用户协同训练过程中敏感信息的安全性,推动联邦学习及大数据安全相关技术的发展。
发明内容
针对现有技术存在的问题,本发明提供了一种多源垂直分布数据的逻辑回归安全训练方法及系统。
本发明是这样实现的,一种逻辑回归安全训练方法,所述逻辑回归安全训练方法包括:
系统初始化与数据归一化,数据拥有者之一作为模型训练发起者根据系统安全需求选择系统参数并生成对称同态加密密钥;利用同态加密密钥对常数0和1加密,为各数据拥有者生成加密参数,为后续数据的安全发送及安全聚合所需的同态运算提供密钥支持;同时,数据拥有者在本地完成数据归一化处理,为后续的逻辑回归模型训练提供数据支持;通过该步骤,选择了逻辑回归训练方法的可信系统参数,保证了训练过程中数据的安全性和隐私性,通过对预处理数据执行归一化操作提高了模型的训练精度,加快梯度下降算法求解最优解的速度;
数据预处理与本地数据加密,模型训练发起者使用同态加密密钥对归一化的本地训练数据进行加密计算,其他数据拥有者使用加密参数对归一化的本地训练数据进行加密计算,得到密文本地训练数据,并将密文本地训练数据发送给云服务器,为云服务器进行密文训练数据的聚合提供了数据支持;通过该步骤,将归一化后的明文数据进行了加密处理,保证了后续处理过程中数据的安全性和隐私性;
密文训练数据聚合,云服务器接收所有来自数据拥有者的密文训练数据,利用同态加密性质进行对任意两个数据拥有者的数据进行安全聚合,并将聚合矩阵发送给数据拥有者之一作为模型训练发起者进行密文解密运算;通过该步骤,对密文状态下的训练数据进行聚合计算,为后续逻辑回归训练提供数据支持。
密文训练数据解密,模型训练发起者接收到来自云服务器的全局聚合密文训练数据;然后使用对称同态加密密钥进行解密运算,得到全局聚合训练数据矩阵;负责解密运算的模型训练发起者能够利用密钥对聚合后的密文数据进行解密;通过该步骤,利用对称同态加密密钥对聚合后的全局逻辑回归训练矩阵进行解密计算,获得了全局逻辑回归训练矩阵,为后续的逻辑回归训练提供了数据支持。
逻辑回归训练与测试,模型训练发起者利用解密得到的全局逻辑回归训练数据进行训练,得到最终训练好的高效模型,并对得到的模型进行精度测试。通过该步骤,利用逻辑回归梯度下降算法对全局逻辑回归训练矩阵进行非交互式的逻辑回归训练,获得了高效的逻辑回归训练模型。
进一步,所述系统初始化具体包括:
(1)模型训练发起者PK选择系统参数并生成对称同态加密参数分发给各参与方Pk(k≠K);
a)PK选择系统安全参数(k0,k1,k2),并执行函数KeyGen(k0,k1,k2)生成公共参数PP以及对称同态加密密钥SK;
b)PK利用对称同态加密密钥SK通过加密常数0和1为所有参与者Pk(k≠K)生成加密参数对γk={Enc(1),Enc(0)},并将γk分发给相应的参与者Pk(k≠K);
(2)PK初始化全局模型参数
Figure BDA0003237085910000041
其中D表示所有参与方数据特征维度;PK选择逻辑回归模型训练超参数集,其中包括学习率α,批数据量β,循环参数π,缩放倍数κ。
进一步,所述数据预处理与本地数据加密具体包括:
(1)各参数方Pk首先对本地数据进行数据对齐和数据归一化处理操作得到预处理后的本地数据矩阵D(k)
a)各参与方Pk删除数据集中不相关的条目,并对剩余数据条目进行相应的排列,得到本地训练数据集D(k)=[X(k1),X(k2),...,X(kN)]T,其中X(kn)(n=1,2,...,N)为一个Dk/(Dk+1)维向量表示为:
Figure BDA0003237085910000051
Dk表示用户Pk的数据特征维度且满足
Figure BDA0003237085910000052
得到的完整训练数据集为D=[D(1)|D(2)|...|D(K)],每行表示一条训练数据;
b)各参与方Pk在本地统计所采集数据拥有属性的最大值和最小值,并生成本地向量:
Figure BDA0003237085910000053
Figure BDA0003237085910000054
之后各参与方Pk通过计算
Figure BDA0003237085910000055
对本地数据进行归一化处理,得到归一化后的本地训练数据Dk;另外,标签列[y1,y2,...,yN]T不需要进行归一化处理;
(2)各参与方Pk根据预处理后的数据矩阵D(k),各参与方Pk计算聚合子向量V(k)和聚合子矩阵M(k),再利用加密参数γk或私钥SK对训练数据D(k)、聚合子向量V(k)及聚合子矩阵M(k)进行加密计算得到密文训练数据
Figure BDA0003237085910000056
密文聚合子向量
Figure BDA0003237085910000057
及密文聚合子矩阵
Figure BDA0003237085910000058
并将得到的密文数据发送给云服务提供商CSP;
a)各参与方通过计算
Figure BDA0003237085910000059
将本地训练数据扩展为整数,并计算聚合子矩阵M(k),聚合子向量V(k)
其中,对PK,V(K)是一个(DK+1)维向量,M(K)是一个(DK+1)维对称矩阵,分别表示为:
Figure BDA00032370859100000510
Figure BDA0003237085910000061
对其他数据拥有者Pk(k≠K),V(k)是一个DK维向量,M(k)是一个DK维对称矩阵,表示为:
Figure BDA0003237085910000062
b)各参与方利用加密参数γk计算
Figure BDA0003237085910000063
对本地训练数据进行加密计算,其中n=1,2,...,N,d=1,2,...,Dk;最后,各参与方Pk
Figure BDA0003237085910000064
Figure BDA0003237085910000065
Figure BDA0003237085910000066
发送给云服务提供商CSP。
进一步,所述密文数据安全聚合具体包括:
(1)云服务提供商CSP首先基于各参与方密文本地训练数据
Figure BDA0003237085910000067
计算密文聚合子矩阵
Figure BDA0003237085910000068
然后,基于
Figure BDA0003237085910000069
Figure BDA00032370859100000610
构造全局密文聚合矩阵,并发送给PK进行模型迭代训练;
a)在收到所有参与方提供的密文训练数据后,CSP基于方密文本地训练数据,对任意两个参与方u和v的本地数据进行聚合计算,得到密文聚合子矩阵
Figure BDA00032370859100000611
其中,当1≤u<v≤K-1时,
Figure BDA00032370859100000612
是一个Du×Dv维矩阵,矩阵每个元素
Figure BDA00032370859100000613
表示为
Figure BDA00032370859100000614
当1≤u<v,v=K时,
Figure BDA00032370859100000615
是一个Du×(DK+1)维矩阵,矩阵每个元素
Figure BDA00032370859100000616
表示为:
Figure BDA00032370859100000617
b)CSP将
Figure BDA0003237085910000071
Figure BDA0003237085910000072
矩阵进行拼接,构造全局密文聚合矩阵
Figure BDA0003237085910000073
是一个(D+2)维对称矩阵:
Figure BDA0003237085910000074
最后,CSP将
Figure BDA0003237085910000075
发送给PK
进一步,所述密文数据解密具体包括:
(1)PK接收全局密文聚合矩阵
Figure BDA0003237085910000076
并利用对称同态密钥进行解密计算得到逻辑回归训练矩阵,并从中获取矩阵A和向量
Figure BDA0003237085910000077
用于后续对模型参数进行迭代更新计算。
a)PK接收全局密文聚合矩阵
Figure BDA0003237085910000078
后,首先删除
Figure BDA0003237085910000079
矩阵的最后一行,然后PK通过计算
Figure BDA00032370859100000710
对全局密文矩阵
Figure BDA00032370859100000711
的每个元素进行解密计算,并对首行首列元素使用N进行填充,最终得到的结果矩阵
Figure BDA00032370859100000712
其中
Figure BDA00032370859100000713
Figure BDA00032370859100000714
进一步,所述逻辑回归训练与测试具体包括:
(1)PK通过利用解密得到的矩阵A和向量
Figure BDA00032370859100000716
用于对模型参数进行迭代更新计算,当模型参数θ被判定为收敛或达到最大迭代次数时,停止迭代更新计算,此时PK得到训练完毕逻辑回归模型。
a)PK通过迭代执行计算
Figure BDA00032370859100000715
对模型参数进行更新。当一定次数的迭代完成后,PK利用矩阵A和向量
Figure BDA00032370859100000717
对损失函数进行计算:
Figure BDA0003237085910000081
其中
Figure BDA0003237085910000082
LB=θB。
Figure BDA0003237085910000083
运算表示两个矩阵的Hadamard积,而SUM()表示矩阵中所有元素的和。当模型参数被判定为收敛或者达到最大训练次数时,逻辑归回训练停止,PK获得最终的逻辑回归模型。
本发明的另一目的在于提供一种计算机设备,所述计算机设备包括存储器和处理器,所述存储器存储有计算机程序,所述计算机程序被所述处理器执行时,使得所述处理器执行所述逻辑回归安全训练方法的如下步骤:
系统初始化与数据归一化,数据拥有者之一作为模型训练发起者根据系统安全需求选择系统参数并生成对称同态加密密钥;利用同态加密密钥对常数0和1加密,为各数据拥有者生成加密参数,为后续数据的安全发送及安全聚合所需的同态运算提供密钥支持;同时,数据拥有者在本地完成数据归一化处理,为后续的逻辑回归模型训练提供数据支持;
数据预处理与本地数据加密,模型训练发起者使用同态加密密钥对归一化的本地训练数据进行加密计算,其他数据拥有者使用加密参数对归一化的本地训练数据进行加密计算,得到密文本地训练数据,并将密文本地训练数据发送给云服务器,为云服务器进行密文训练数据的聚合提供了数据支持;
密文训练数据聚合,云服务器接收所有来自数据拥有者的密文训练数据,利用同态加密性质进行对任意两个数据拥有者的数据进行安全聚合,并将聚合矩阵发送给数据拥有者之一作为模型训练发起者进行密文解密运算;
密文训练数据解密,模型训练发起者接收到来自云服务器的全局聚合密文训练数据;然后使用对称同态加密密钥进行解密运算,得到全局聚合训练数据矩阵;负责解密运算的模型训练发起者能够利用密钥对聚合后的密文数据进行解密;
逻辑回归训练与测试,模型训练发起者利用解密得到的全局逻辑回归训练数据进行训练,得到最终训练好的高效模型,并对得到的模型进行精度测试。
本发明的另一目的在于提供一种信息数据处理终端,所述信息数据处理终端用于实现所述的逻辑回归安全训练方法。
本发明的另一目的在于提供一种实施所述逻辑回归安全训练方法的逻辑回归安全训练系统,所述逻辑回归安全训练系统包括:
数据拥有者,对本地训练数据进行归一化处理,使用模型训练发起者提供的加密参数对归一化后的本地训练数据进行加密计算,得到密文训练数据,并将密文训练数据发送给云服务提供商;
模型训练发起者,对逻辑回归安全训练系统进行初始化,选择合适的安全参数并生成加密参数分发给其他数据拥有者;同时,作为数据拥有者之一,也需要在对本地训练数据进行归一化处理,生成密文本地训练数据并发送给云服务提供商;最后,从云服务提供商接收全局密文聚合矩阵,利用对称同态密钥进行解密计算得到训练矩阵,并对逻辑回归模型进行迭代更新训练获得最终的逻辑归回模型;
云服务提供商,接收所有数据拥有者提供的密文本地训练数据,将所接收到的数据进行聚合计算,并将所有参与方的局部密文聚合矩阵进行拼接,生成全局密文训练数据;将全局密文训练数据发送给模型训练发起者。
进一步,所述模型训练发起者包括:
系统初始化模块,包括可信系统参数选取子模块、同态加密密钥生成子模块和同态加密参数生成子模块;
可信系统参数选取子模块,用于根据系统安全需要,选择所需安全参数,包括模型训练超参数和对称同态加密系统参数;
同态加密密钥生成子模块,用于根据所选择的系统安全参数生成对称同态加密密钥;
同态加密参数生成子模块,用于根据所生成的对称同态加密密钥为各数据参与者生成同态加密参数,并将对称同态加密参数分发给各数据拥有者;
数据预处理模块,包括样本对齐子模块、归一化处理子模块、聚合子矩阵/向量生成子模块和数据加密子模块;样本对齐子模块,用于找出各参与方的共有训练样本,并对训练样本执行对齐机制;归一化处理子模块,用于统计本地训练数据各属性的最大值和最小值,然后对本地训练数据进行归一化处理;聚合子矩阵/向量生成子模块,用于对归一化后的数据进行本地数据聚合计算,生成聚合子向量和聚合子矩阵;数据加密子模块,用于对生成的聚合子向量、聚合子矩阵和本地训练数据进行加密计算,生成密文聚合子向量、密文聚合子矩阵和密文本地训练数据;
逻辑回归训练矩阵解密模块,用于对从云服务提供商接收到的密文逻辑回归训练数据进行解密计算,得到全局逻辑回归训练数据;
非交互式逻辑回归训练模块,用于利用得到的全局逻辑回归训练数据进行迭代训练得到最终的逻辑回归训练模型,并对得到的模型进行精确度测试;
所述数据拥有者包括:数据预处理模块,包括样本对齐子模块、归一化处理子模块、聚合子矩阵/向量生成子模块和数据加密子模块;其中,样本对齐子模块,用于找出各参与方的共有训练样本,并对训练样本执行对齐机制;归一化处理子模块,用于统计本地训练数据各属性的最大值和最小值,然后对本地训练数据进行归一化处理;聚合子矩阵/向量生成子模块,用于对归一化后的数据进行本地数据聚合计算,生成聚合子向量和聚合子矩阵;数据加密子模块,用于对生成的聚合子向量、聚合子矩阵和本地训练数据进行加密计算,生成密文聚合子向量、密文聚合子矩阵和密文本地训练数据;
所述云服务提供商包括:密文数据处理模块,其中包括密文聚合子矩阵计算子模块和逻辑回归训练矩阵拼接子模块;
密文聚合子矩阵计算子模块,使用从各数据拥有者接收到的密文训练数据,在任意两个数据拥有者之间,利用密文数据进行同态数据聚合操作,得到密文聚合子矩阵;密文数据拼接子模块,用于对从各参与方接收到的密文聚合子矩阵和密文数据聚合模型计算得到的密文聚合子矩阵进行拼接形成全局逻辑回归训练数据。
本发明的另一目的在于提供一种人工智能数据处理终端,所述人工智能数据处理终端实施所述的逻辑回归安全训练方法。
结合上述的所有技术方案,本发明所具备的优点及积极效果为:本发明的目的在于针对现有联邦学习技术的不足,提出了一种非交互式多源垂直分布数据的隐私保护逻辑回归联邦训练方法。本发明旨在保证用户本地数据隐私的前提下,采用非交互式的隐私保护逻辑回归联邦训练方法,即用户不必保证每轮训练过程实时在线也不必耗费本地计算资源进行大量模型更新计算,用户只需要在训练开始时对本地训练数据进行预处理计算和加密计算;然后将密文数据交由云服务提供商,由云服务提供商完成密文数据聚合计算,并将密文全局逻辑回归训练数据交由模型训练发起者,由模型训练发起者对密文全局逻辑回归训练数据进行解密计算得到全局训练数据矩阵,并利用全局训练数据矩阵进行逻辑回归训练,得到最终的高效逻辑回归模型。
本发明与现有技术相比有如下优点:
(1)实现多数据参与方数据的隐私保护,本发明采用的方式是各数据参与方首先在本地对训练数据进行归一化及数据集的预处理操作,然后利用对称同态加密算法对本地数据进行加密,并将加密后的密文数据发送到云服务器,服务器在接收到所有数据拥有者发送的密文数据后,利用同态加密的性质,将各数据参与方的密文数据两两之间进行矩阵乘法运算实现密文数据的聚合计算,然后对接收到的局部聚合矩阵及计算得到的局部聚合矩阵进行拼接,得到全局密文聚合矩阵。但由于云服务没有对称同态加密密钥,所以不能对训练数据进行解密,从而无法利用获得的密文数据推断本地数据,保证了用户数据的隐私性和安全性。
(2)实现非交互式的联邦学习逻辑回归问题的训练机制,本发明所采用的方式是用户将加密的本地训练数据上传给云服务器,由云服务器利用同态加密的特性对密文数据进行聚合,并对数据矩阵进行拼接,最后获得全局聚合矩阵。然后,云服务器将聚合矩阵发送给模型训练发起者,由发起者对密文数据解密后进行后续的迭代训练。因此,不要求用户在整个训练过程中保持在线,也不需要用户利用本地计算资源进行模型的训练,实现了非交互式的联邦学习逻辑回归问题的训练,极大地减少了联邦学习的通信开销与计算开销。
(3)提高模型训练效率,本发明中由云服务器来完成大量的密文数据聚合运算与逻辑回归模型训练,而云服务器具有强大的计算能力,能够快速完成数据的处理,提高模型训练的效率和可用性。
附图说明
图1是本发明实施例提供的逻辑回归安全训练方法流程图。
图2是本发明实施例提供的多源垂直分布数据非交互式隐私保护逻辑回归联邦训练系统流程图。
图3是本发明实施例提供的多源垂直分布数据非交互式隐私保护逻辑回归联邦训练系统架构图。
图4是本发明实施例提供的数据处理与逻辑回归模型生成子流程图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
针对现有技术存在的问题,本发明提供了一种多源垂直分布数据的逻辑回归安全训练方法及系统,下面结合附图对本发明作详细的描述。
实施例1
如图1所示,本发明提供的逻辑回归安全训练方法包括以下步骤:
S101:系统初始化与数据归一化,数据拥有者之一作为模型训练发起者根据系统安全需求选择系统参数并生成对称同态加密密钥,然后利用同态加密密钥对常数0和1加密,为各数据拥有者生成加密参数,为后续数据的安全发送及安全聚合所需的同态运算提供密钥支持。同时,数据拥有者在本地完成数据归一化处理,为后续的逻辑回归模型训练提供数据支持。
S102:数据预处理与本地数据加密,模型训练发起者使用同态加密密钥对归一化的本地训练数据进行加密计算,其他数据拥有者使用加密参数对归一化的本地训练数据进行加密计算,得到密文本地训练数据,并将密文本地训练数据发送给云服务器,为云服务器进行密文训练数据的聚合提供了数据支持。
S103:密文训练数据聚合,云服务器接收所有来自数据拥有者的密文训练数据,利用同态加密性质进行对任意两个数据拥有者的数据进行安全聚合,并将聚合矩阵发送给数据拥有者之一作为模型训练发起者进行密文解密运算。云服务器只能在密文训练数据之间进行同态运算实现数据聚合操作,由于缺少解密密钥而不能对密文进行解密计算,这就保障了用户数据的安全性和隐私性。
S104:密文训练数据解密,模型训练发起者接收到来自云服务器的全局聚合密文训练数据,然后使用对称同态加密密钥进行解密运算,得到全局聚合训练数据矩阵,负责解密运算的模型训练发起者能够利用密钥对聚合后的密文数据进行解密,但是该数据拥有者,并不拥有聚合后的训练数据对应的明文训练数据的任何信息,所以不能获得其他数据拥有者的本地训练数据。
S105:逻辑回归训练与测试,模型训练发起者利用解密得到的全局逻辑回归训练数据进行训练,就可以得到最终训练好的高效模型,并对得到的模型进行精度测试。
在本发明的步骤S101中,系统初始化具体包括:
(1)模型训练发起者PK选择系统参数并生成对称同态加密参数分发给各参与方Pk(k≠K)。
a)PK选择系统安全参数(k0,k1,k2),并执行函数KeyGen(k0,k1,k2)生成公共参数PP以及对称同态加密密钥SK。
b)PK利用对称同态加密密钥SK通过加密常数0和1为所有参与者Pk(k≠K)生成加密参数对γk={Enc(1),Enc(0)},并将γk分发给相应的参与者Pk(k≠K)。
(2)PK初始化全局模型参数
Figure BDA0003237085910000141
其中D表示所有参与方数据特征维度。然后PK选择逻辑回归模型训练超参数集,其中包括学习率α,批数据量β,循环参数π,缩放倍数κ。
在本发明的步骤S102中,数据预处理与本地数据加密具体包括:
(1)各参数方Pk首先对本地数据进行数据对齐和数据归一化处理操作得到预处理后的本地数据矩阵D(k)
a)各参与方Pk删除数据集中不相关的条目,并对剩余数据条目进行相应的排列,得到本地训练数据集D(k)=[X(k1),X(k2),...,X(kN)]T,其中X(kn)(n=1,2,...,N)为一个Dk/(Dk+1)维向量表示为
Figure BDA0003237085910000142
Dk表示用户Pk的数据特征维度且满足
Figure BDA0003237085910000143
最终得到的完整训练数据集为D=[D(1)|D(2)|...|D(K)],每行表示一条训练数据。
b)各参与方Pk在本地统计所采集数据拥有属性的最大值和最小值,并生成本地向量
Figure BDA0003237085910000144
Figure BDA0003237085910000145
之后各参与方Pk通过计算
Figure BDA0003237085910000146
对本地数据进行归一化处理,得到归一化后的本地训练数据Dk。另外,标签列[y1,y2,...,yN]T不需要进行归一化处理。
(2)各参与方Pk根据预处理后的数据矩阵D(k),各参与方Pk计算聚合子向量V(k)和聚合子矩阵M(k),再利用加密参数γk或私钥SK对训练数据D(k)、聚合子向量V(k)及聚合子矩阵M(k)进行加密计算得到密文训练数据
Figure BDA0003237085910000147
密文聚合子向量
Figure BDA0003237085910000151
及密文聚合子矩阵
Figure BDA0003237085910000152
并将得到的密文数据发送给云服务提供商CSP。
a)各参与方通过计算
Figure BDA0003237085910000153
将本地训练数据扩展为整数,并计算聚合子矩阵M(k),聚合子向量V(k)
其中,对PK,V(K)是一个(DK+1)维向量,M(K)是一个(DK+1)维对称矩阵,分别表示为:
Figure BDA0003237085910000154
Figure BDA0003237085910000155
对其他数据拥有者Pk(k≠K),V(k)是一个DK维向量,M(k)是一个DK维对称矩阵,表示为:
Figure BDA0003237085910000156
b)各参与方利用加密参数γk计算
Figure BDA0003237085910000157
对本地训练数据进行加密计算,其中n=1,2,...,N,d=1,2,...,Dk。最后,各参与方Pk
Figure BDA0003237085910000158
Figure BDA0003237085910000159
Figure BDA00032370859100001510
发送给云服务提供商CSP。
在本发明的步骤S103中,所述密文数据安全聚合具体包括:
(1)云服务提供商CSP首先基于各参与方密文本地训练数据
Figure BDA00032370859100001511
计算密文聚合子矩阵
Figure BDA00032370859100001512
然后,基于
Figure BDA00032370859100001513
Figure BDA00032370859100001514
构造全局密文聚合矩阵,并发送给PK进行模型迭代训练。
a)在收到所有参与方提供的密文训练数据后,CSP基于方密文本地训练数据,对任意两个参与方u和v的本地数据进行聚合计算,得到密文聚合子矩阵
Figure BDA0003237085910000161
其中,当1≤u<v≤K-1时,
Figure BDA0003237085910000162
是一个Du×Dv维矩阵,矩阵每个元素
Figure BDA0003237085910000163
表示为
Figure BDA0003237085910000164
当1≤u<v,v=K时,
Figure BDA0003237085910000165
是一个Du×(DK+1)维矩阵,矩阵每个元素
Figure BDA0003237085910000166
表示为:
Figure BDA0003237085910000167
b)CSP将
Figure BDA0003237085910000168
Figure BDA0003237085910000169
矩阵进行拼接,构造全局密文聚合矩阵
Figure BDA00032370859100001610
是一个(D+2)维对称矩阵:
Figure BDA00032370859100001611
最后,CSP将
Figure BDA00032370859100001612
发送给PK
在本发明的步骤S104中,密文训练数据解密具体包括:
(1)PK接收全局密文聚合矩阵
Figure BDA00032370859100001613
并利用对称同态密钥进行解密计算得到逻辑回归训练矩阵,并从中获取矩阵A和向量
Figure BDA00032370859100001614
用于后续对模型参数进行迭代更新计算。
a)PK接收全局密文聚合矩阵
Figure BDA00032370859100001615
后,首先删除
Figure BDA00032370859100001616
矩阵的最后一行,然后PK通过计算
Figure BDA00032370859100001617
对全局密文矩阵
Figure BDA00032370859100001618
的每个元素进行解密计算,并对首行首列元素使用N进行填充,最终得到的结果矩阵
Figure BDA00032370859100001619
其中
Figure BDA0003237085910000171
Figure BDA0003237085910000172
在本发明的步骤S105中,逻辑回归训练与测试具体包括:
(1)PK通过利用解密得到的矩阵A和向量
Figure BDA0003237085910000173
用于对模型参数进行迭代更新计算,当模型参数θ被判定为收敛或达到最大迭代次数时,停止迭代更新计算,此时PK得到训练完毕逻辑回归模型。
a)PK通过迭代执行计算
Figure BDA0003237085910000174
对模型参数进行更新。当一定次数的迭代完成后,PK利用矩阵A和向量
Figure BDA0003237085910000175
对损失函数进行计算:
Figure BDA0003237085910000176
其中
Figure BDA0003237085910000178
LB=θB。
Figure BDA0003237085910000177
运算表示两个矩阵的Hadamard积,而SUM()表示矩阵中所有元素的和。当模型参数被判定为收敛或者达到最大训练次数时,逻辑归回训练停止,PK获得最终的逻辑回归模型。
本发明提供的逻辑回归安全训练方法业内的普通技术人员还可以采用其他的步骤实施,图1的本发明提供的逻辑回归安全训练方法仅仅是一个具体实施例而已。
下面结合附图对本发明的技术方案作进一步的描述。
如图3所示,本发明提供的多源垂直分布数据的逻辑回归安全训练系统由模型训练发起者、数据拥有者、云服务提供商3个子系统构成;
模型训练发起者,用于完成系统初始化,设置系统所需的参数,生成同态计算过程中所需要的对称同态密钥,并向所有的数据参与方分发同态加密密钥加密常数值0和1得到的同态加密参数;从云服务提供商接收密文逻辑回归训练数据,利用密钥进行解密得到全局聚合训练数据,并进行高效的逻辑回归训练,得到最终的逻辑回归模型;
数据拥有者,在本地对全局训练数据进行归一化处理,使用模型训练发起者提供的同态加密参数对归一化后的本地训练数据进行加密计算,得到密文本地训练数据,并将本地训练数据发送给云服务提供商;
云服务提供商,接收所有数据拥有者提供的密文本地训练数据,将所接收到的数据进行聚合计算,生成密文全局训练数据作为逻辑回归训练数据,并发送给模型训练发起者。
在本发明中模型训练发起者包括:
系统初始化模块,包括可信系统参数选取子模块、同态加密密钥生成子模块和同态加密参数生成子模块。其中,可信系统参数选取子模块,用于根据系统安全需要,选择所需安全参数,包括模型训练超参数和对称同态加密系统参数。同态加密密钥生成子模块,用于根据所选择的系统安全参数生成对称同态加密密钥。同态加密参数生成子模块,用于根据所生成的对称同态加密密钥为各数据参与者生成同态加密参数,并将对称同态加密参数分发给各数据拥有者。
数据预处理模块,包括样本对齐子模块、归一化处理子模块、聚合子矩阵/向量生成子模块和数据加密子模块。其中,样本对齐子模块,用于找出各参与方的共有训练样本,并对训练样本执行对齐机制;归一化处理子模块,用于统计本地训练数据各属性的最大值和最小值,然后对本地训练数据进行归一化处理。聚合子矩阵/向量生成子模块,用于对归一化后的数据进行本地数据聚合计算,生成聚合子向量和聚合子矩阵。数据加密子模块,用于对生成的聚合子向量、聚合子矩阵和本地训练数据进行加密计算,生成密文聚合子向量、密文聚合子矩阵和密文本地训练数据。
逻辑回归训练矩阵解密模块,用于对从云服务提供商接收到的密文逻辑回归训练数据进行解密计算,得到全局逻辑回归训练数据。
非交互式逻辑回归训练模块,用于利用得到的全局逻辑回归训练数据进行迭代训练得到最终的逻辑回归训练模型,并对得到的模型进行精确度测试。
在本发明中数据拥有者包括:数据预处理模块,包括样本对齐子模块、归一化处理子模块、聚合子矩阵/向量生成子模块和数据加密子模块。其中,样本对齐子模块,用于找出各参与方的共有训练样本,并对训练样本执行对齐机制;归一化处理子模块,用于统计本地训练数据各属性的最大值和最小值,然后对本地训练数据进行归一化处理。聚合子矩阵/向量生成子模块,用于对归一化后的数据进行本地数据聚合计算,生成聚合子向量和聚合子矩阵。数据加密子模块,用于对生成的聚合子向量、聚合子矩阵和本地训练数据进行加密计算,生成密文聚合子向量、密文聚合子矩阵和密文本地训练数据。
在本发明中云服务提供商包括:密文数据处理模块,其中包括密文聚合子矩阵计算子模块和逻辑回归训练矩阵拼接子模块。其中,密文聚合子矩阵计算子模块,使用从各数据拥有者接收到的密文训练数据,在任意两个数据拥有者之间,利用密文数据进行同态数据聚合操作,得到密文聚合子矩阵;密文数据拼接子模块,用于对从各参与方接收到的密文聚合子矩阵和密文数据聚合模型计算得到的密文聚合子矩阵进行拼接形成全局逻辑回归训练数据。
实施例2
如图3所示,本发明提供的多源垂直分布数据的逻辑回归安全训练系统,包括如下步骤:
步骤一,系统初始化与数据归一化,在这一步骤中,模型训练发起者为逻辑回归安全训练系统选择合适的安全参数,根据所选择的安全参数生成对称同态加密密钥,利用同态加密密钥为各数据拥有者生成同态加密参数,并将加密参数分发给参与逻辑回归训练的各数据拥有者,为后续数据的安全发送及安全聚合所需的同态运算提供密钥支持,保障了在非交互式场景下的用户数据的安全性和隐私性。同时,数据拥有者对本地训练数据进行统计处理,得到训练属性的最大值和最小值信息,然后本地完成数据归一化处理,为后续的逻辑回归模型训练提供数据支持。
步骤二,数据预处理与本地数据加密,在这一步骤中,数据拥有者使用对称同态加密参数对归一化的本地训练数据进行加密计算,得到密文本地训练数据,并将密文本地训练数据发送给云服务器,为云服务器进行密文训练数据的聚合提供了数据支持,在这一过程中通过同态加密技术保障了用户数据的安全性和隐私性。
步骤三,密文训练数据聚合,在这一步骤中,云服务器接收所有来自数据拥有者的密文训练数据,利用同态加密性质对数据拥有者的密文数据进行安全聚合和拼接操作,得到密文全局逻辑回归训练数据,并发送给模型训练发起者。
步骤四,密文训练数据解密,在这一步骤中,模型训练发起者接收到来自云服务器的全局聚合密文训练数据,然后使用对称同态加密密钥进行解密运算,得到全局聚合训练数据矩阵,负责解密运算的模型训练发起者能够利用密钥对聚合后的密文数据进行解密。
步骤五,逻辑回归训练与测试,在这一步骤中,模型训练发起者利用解密得到的全局逻辑回归训练数据进行训练,得到最终训练好的高效模型,并对得到的模型进行精度测试。
下面结合测试对本发明的技术效果作详细的描述。
表1
Figure BDA0003237085910000201
如表1所示,为本发明在不同数据集下的测试结果,在Diabetes Dataset数据集中,数据集维度为9,数据集大小为768,迭代次数为2*104,最终得到的准确率为0.7712,运行时间这里只包含模型训练发起者进行模型迭代训练的计算时间和云服务提供商聚合密文矩阵的计算时间为326ms;在Breast Cancer Wisconsin Dataset数据集中,数据集维度为9,数据集大小为699,迭代次数为2*104,最终得到的准确率为0.9928,运行时间这里只包含模型训练发起者进行模型迭代训练的计算时间和云服务提供商聚合密文矩阵的计算时间为420ms;在Bank Marketing Dataset数据集中,数据集维度为14,数据集大小为3999,迭代次数为2*104,最终得到的准确率为0.8831,运行时间这里只包含模型训练发起者进行模型迭代训练的计算时间和云服务提供商聚合密文矩阵的计算时间为1665ms。
应当注意,本发明的实施方式可以通过硬件、软件或者软件和硬件的结合来实现。硬件部分可以利用专用逻辑来实现;软件部分可以存储在存储器中,由适当的指令执行系统,例如微处理器或者专用设计硬件来执行。本领域的普通技术人员可以理解上述的设备和方法可以使用计算机可执行指令和/或包含在处理器控制代码中来实现,例如在诸如磁盘、CD或DVD-ROM的载体介质、诸如只读存储器(固件)的可编程的存储器或者诸如光学或电子信号载体的数据载体上提供了这样的代码。本发明的设备及其模块可以由诸如超大规模集成电路或门阵列、诸如逻辑芯片、晶体管等的半导体、或者诸如现场可编程门阵列、可编程逻辑设备等的可编程硬件设备的硬件电路实现,也可以用由各种类型的处理器执行的软件实现,也可以由上述硬件电路和软件的结合例如固件来实现。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,都应涵盖在本发明的保护范围之内。

Claims (10)

1.一种逻辑回归安全训练方法,其特征在于,所述逻辑回归安全训练方法包括:
系统初始化与数据归一化,数据拥有者之一作为模型训练发起者根据系统安全需求选择系统参数并生成对称同态加密密钥;利用同态加密密钥对常数0和1加密,为各数据拥有者生成加密参数,为后续数据的安全发送及安全聚合所需的同态运算提供密钥支持;同时,数据拥有者在本地完成数据归一化处理,为后续的逻辑回归模型训练提供数据支持;
数据预处理与本地数据加密,模型训练发起者使用同态加密密钥对归一化的本地训练数据进行加密计算,其他数据拥有者使用加密参数对归一化的本地训练数据进行加密计算,得到密文本地训练数据,并将密文本地训练数据发送给云服务器,为云服务器进行密文训练数据的聚合提供了数据支持;
密文训练数据聚合,云服务器接收所有来自数据拥有者的密文训练数据,利用同态加密性质进行对任意两个数据拥有者的数据进行安全聚合,并将聚合矩阵发送给数据拥有者之一作为模型训练发起者进行密文解密运算;
密文训练数据解密,模型训练发起者接收到来自云服务器的全局聚合密文训练数据;然后使用对称同态加密密钥进行解密运算,得到全局聚合训练数据矩阵;负责解密运算的模型训练发起者能够利用密钥对聚合后的密文数据进行解密;
逻辑回归训练与测试,模型训练发起者利用解密得到的全局逻辑回归训练数据进行训练,得到最终训练好的高效模型,并对得到的模型进行精度测试。
2.如权利要求1所述的逻辑回归安全训练方法,其特征在于,所述系统初始化具体包括:
(1)模型训练发起者PK选择系统参数并生成对称同态加密参数分发给各参与方Pk(k≠K);
a)PK选择系统安全参数(k0,k1,k2),并执行函数KeyGen(k0,k1,k2)生成公共参数PP以及对称同态加密密钥SK;
b)PK利用对称同态加密密钥SK通过加密常数0和1为所有参与者Pk(k≠K)生成加密参数对γk={Enc(1),Enc(0)},并将γk分发给相应的参与者Pk(k≠K);
(2)PK初始化全局模型参数
Figure FDA0003237085900000021
其中D表示所有参与方数据特征维度;PK选择逻辑回归模型训练超参数集,其中包括学习率α,批数据量β,循环参数π,缩放倍数κ。
3.如权利要求1所述的逻辑回归安全训练方法,其特征在于,所述数据预处理与本地数据加密具体包括:
(1)各参数方Pk首先对本地数据进行数据对齐和数据归一化处理操作得到预处理后的本地数据矩阵D(k)
a)各参与方Pk删除数据集中不相关的条目,并对剩余数据条目进行相应的排列,得到本地训练数据集D(k)=[X(k1),X(k2),...,X(kN)]T,其中X(kn)(n=1,2,...,N)为一个Dk/(Dk+1)维向量表示为:
Figure FDA0003237085900000022
Dk表示用户Pk的数据特征维度且满足
Figure FDA0003237085900000023
得到的完整训练数据集为D=[D(1)|D(2)|...|D(K)],每行表示一条训练数据;
b)各参与方Pk在本地统计所采集数据拥有属性的最大值和最小值,并生成本地向量:
Figure FDA0003237085900000024
Figure FDA0003237085900000025
之后各参与方Pk通过计算
Figure FDA0003237085900000026
对本地数据进行归一化处理,得到归一化后的本地训练数据Dk;另外,标签列[y1,y2,...,yN]T不需要进行归一化处理;
(2)各参与方Pk根据预处理后的数据矩阵D(k),各参与方Pk计算聚合子向量V(k)和聚合子矩阵M(k),再利用加密参数γk或私钥SK对训练数据D(k)、聚合子向量V(k)及聚合子矩阵M(k)进行加密计算得到密文训练数据
Figure FDA0003237085900000031
密文聚合子向量
Figure FDA0003237085900000032
及密文聚合子矩阵
Figure FDA0003237085900000033
并将得到的密文数据发送给云服务提供商CSP;
a)各参与方通过计算
Figure FDA0003237085900000034
将本地训练数据扩展为整数,并计算聚合子矩阵M(k),聚合子向量V(k)
其中,对PK,V(K)是一个(DK+1)维向量,M(K)是一个(DK+1)维对称矩阵,分别表示为:
Figure FDA0003237085900000035
Figure FDA0003237085900000036
对其他数据拥有者Pk(k≠K),V(k)是一个DK维向量,M(k)是一个DK维对称矩阵,表示为:
Figure FDA0003237085900000037
b)各参与方利用加密参数γk计算
Figure FDA0003237085900000038
对本地训练数据进行加密计算,其中n=1,2,...,N,d=1,2,...,Dk;最后,各参与方Pk
Figure FDA0003237085900000039
Figure FDA00032370859000000310
Figure FDA00032370859000000311
发送给云服务提供商CSP。
4.如权利要求1所述的逻辑回归安全训练方法,其特征在于,所述密文数据安全聚合具体包括:
(1)云服务提供商CSP首先基于各参与方密文本地训练数据
Figure FDA00032370859000000312
计算密文聚合子矩阵
Figure FDA0003237085900000041
基于
Figure FDA0003237085900000042
Figure FDA0003237085900000043
构造全局密文聚合矩阵,并发送给PK进行模型迭代训练;
a)在收到所有参与方提供的密文训练数据后,CSP基于方密文本地训练数据,对任意两个参与方u和v的本地数据进行聚合计算,得到密文聚合子矩阵
Figure FDA0003237085900000044
其中,当1≤u<v≤K-1时,
Figure FDA0003237085900000045
是一个Du×Dv维矩阵,矩阵每个元素
Figure FDA0003237085900000046
表示为
Figure FDA0003237085900000047
当1≤u<v,v=K时,
Figure FDA0003237085900000048
是一个Du×(DK+1)维矩阵,矩阵每个元素
Figure FDA0003237085900000049
表示为:
Figure FDA00032370859000000410
b)CSP将
Figure FDA00032370859000000411
Figure FDA00032370859000000412
矩阵进行拼接,构造全局密文聚合矩阵
Figure FDA00032370859000000413
是一个(D+2)维对称矩阵:
Figure FDA00032370859000000414
最后,CSP将
Figure FDA00032370859000000415
发送给PK
5.如权利要求1所述的逻辑回归安全训练方法,其特征在于,所述逻辑回归训练与测试具体包括:
(1)PK接收全局密文聚合矩阵
Figure FDA00032370859000000416
并进行解密计算得到全局聚合矩阵,并从中获取矩阵A和向量
Figure FDA00032370859000000417
用于对模型参数进行迭代更新计算,当模型参数θ被判定为收敛或达到最大迭代次数时,停止迭代更新计算,此时PK得到训练完毕逻辑回归模型;
a)PK接收全局密文聚合矩阵
Figure FDA0003237085900000051
后,首先删除
Figure FDA0003237085900000052
矩阵的最后一行,然后PK通过计算
Figure FDA0003237085900000053
对全局密文矩阵
Figure FDA0003237085900000054
的每个元素进行解密计算,并对首行首列元素使用N进行填充,最终得到的结果矩阵
Figure FDA0003237085900000055
其中:
Figure FDA0003237085900000056
Figure FDA0003237085900000057
b)PK通过执行计算
Figure FDA0003237085900000058
对模型参数进行更新;当一定次数的迭代完成后,PK利用矩阵A和向量
Figure FDA0003237085900000059
对损失函数进行计算:
Figure FDA00032370859000000510
其中
Figure FDA00032370859000000511
LB=θB,
Figure FDA00032370859000000512
运算表示两个矩阵的Hadamard积,而SUM()表示矩阵中所有元素的和;当模型参数被判定为收敛或者达到最大训练次数时,逻辑归回训练停止,PK获得最终的逻辑回归模型。
6.一种计算机设备,其特征在于,所述计算机设备包括存储器和处理器,所述存储器存储有计算机程序,所述计算机程序被所述处理器执行时,使得所述处理器执行权利要求1所述逻辑回归安全训练方法的如下步骤:
系统初始化与数据归一化,数据拥有者之一作为模型训练发起者根据系统安全需求选择系统参数并生成对称同态加密密钥;利用同态加密密钥对常数0和1加密,为各数据拥有者生成加密参数,为后续数据的安全发送及安全聚合所需的同态运算提供密钥支持;同时,数据拥有者在本地完成数据归一化处理,为后续的逻辑回归模型训练提供数据支持;
数据预处理与本地数据加密,模型训练发起者使用同态加密密钥对归一化的本地训练数据进行加密计算,其他数据拥有者使用加密参数对归一化的本地训练数据进行加密计算,得到密文本地训练数据,并将密文本地训练数据发送给云服务器,为云服务器进行密文训练数据的聚合提供了数据支持;
密文训练数据聚合,云服务器接收所有来自数据拥有者的密文训练数据,利用同态加密性质进行对任意两个数据拥有者的数据进行安全聚合,并将聚合矩阵发送给数据拥有者之一作为模型训练发起者进行密文解密运算;
密文训练数据解密,模型训练发起者接收到来自云服务器的全局聚合密文训练数据;然后使用对称同态加密密钥进行解密运算,得到全局聚合训练数据矩阵;负责解密运算的模型训练发起者能够利用密钥对聚合后的密文数据进行解密;
逻辑回归训练与测试,模型训练发起者利用解密得到的全局逻辑回归训练数据进行训练,得到最终训练好的高效模型,并对得到的模型进行精度测试。
7.一种信息数据处理终端,其特征在于,所述信息数据处理终端用于实现权利要求1~5任意一项所述的逻辑回归安全训练方法。
8.一种实施权利要求1~5任意一项所述逻辑回归安全训练方法的逻辑回归安全训练系统,其特征在于,所述逻辑回归安全训练系统包括:
数据拥有者,对本地训练数据进行归一化处理,使用模型训练发起者提供的加密参数对归一化后的本地训练数据进行加密计算,得到密文训练数据,并将密文训练数据发送给云服务提供商;
模型训练发起者,对逻辑回归安全训练系统进行初始化,选择合适的安全参数并生成加密参数分发给其他数据拥有者;同时,作为数据拥有者之一,也需要在对本地训练数据进行归一化处理,生成密文本地训练数据并发送给云服务提供商;最后,从云服务提供商接收全局密文聚合矩阵,利用对称同态密钥进行解密计算得到训练矩阵,并对逻辑回归模型进行迭代更新训练获得最终的逻辑归回模型;
云服务提供商,接收所有数据拥有者提供的密文本地训练数据,将所接收到的数据进行聚合计算,并将所有参与方的局部密文聚合矩阵进行拼接,生成全局密文训练数据;将全局密文训练数据发送给模型训练发起者。
9.如权利要求8所述的逻辑回归安全训练系统,其特征在于,所述模型训练发起者包括:
系统初始化模块,包括可信系统参数选取子模块、同态加密密钥生成子模块和同态加密参数生成子模块;
可信系统参数选取子模块,用于根据系统安全需要,选择所需安全参数,包括模型训练超参数和对称同态加密系统参数;
同态加密密钥生成子模块,用于根据所选择的系统安全参数生成对称同态加密密钥;
同态加密参数生成子模块,用于根据所生成的对称同态加密密钥为各数据参与者生成同态加密参数,并将对称同态加密参数分发给各数据拥有者;
数据预处理模块,包括样本对齐子模块、归一化处理子模块、聚合子矩阵/向量生成子模块和数据加密子模块;样本对齐子模块,用于找出各参与方的共有训练样本,并对训练样本执行对齐机制;归一化处理子模块,用于统计本地训练数据各属性的最大值和最小值,然后对本地训练数据进行归一化处理;聚合子矩阵/向量生成子模块,用于对归一化后的数据进行本地数据聚合计算,生成聚合子向量和聚合子矩阵;数据加密子模块,用于对生成的聚合子向量、聚合子矩阵和本地训练数据进行加密计算,生成密文聚合子向量、密文聚合子矩阵和密文本地训练数据;
逻辑回归训练矩阵解密模块,用于对从云服务提供商接收到的密文逻辑回归训练数据进行解密计算,得到全局逻辑回归训练数据;
非交互式逻辑回归训练模块,用于利用得到的全局逻辑回归训练数据进行迭代训练得到最终的逻辑回归训练模型,并对得到的模型进行精确度测试;
所述数据拥有者包括:数据预处理模块,包括样本对齐子模块、归一化处理子模块、聚合子矩阵/向量生成子模块和数据加密子模块;其中,样本对齐子模块,用于找出各参与方的共有训练样本,并对训练样本执行对齐机制;归一化处理子模块,用于统计本地训练数据各属性的最大值和最小值,然后对本地训练数据进行归一化处理;聚合子矩阵/向量生成子模块,用于对归一化后的数据进行本地数据聚合计算,生成聚合子向量和聚合子矩阵;数据加密子模块,用于对生成的聚合子向量、聚合子矩阵和本地训练数据进行加密计算,生成密文聚合子向量、密文聚合子矩阵和密文本地训练数据;
所述云服务提供商包括:密文数据处理模块,其中包括密文聚合子矩阵计算子模块和逻辑回归训练矩阵拼接子模块;
密文聚合子矩阵计算子模块,使用从各数据拥有者接收到的密文训练数据,在任意两个数据拥有者之间,利用密文数据进行同态数据聚合操作,得到密文聚合子矩阵;密文数据拼接子模块,用于对从各参与方接收到的密文聚合子矩阵和密文数据聚合模型计算得到的密文聚合子矩阵进行拼接形成全局逻辑回归训练数据。
10.一种人工智能数据处理终端,其特征在于,所述人工智能数据处理终端实施权利要求1~5任意一项所述的逻辑回归安全训练方法。
CN202111006040.3A 2021-08-30 2021-08-30 一种多源垂直分布数据的逻辑回归安全训练方法及系统 Pending CN113886868A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202111006040.3A CN113886868A (zh) 2021-08-30 2021-08-30 一种多源垂直分布数据的逻辑回归安全训练方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202111006040.3A CN113886868A (zh) 2021-08-30 2021-08-30 一种多源垂直分布数据的逻辑回归安全训练方法及系统

Publications (1)

Publication Number Publication Date
CN113886868A true CN113886868A (zh) 2022-01-04

Family

ID=79011765

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111006040.3A Pending CN113886868A (zh) 2021-08-30 2021-08-30 一种多源垂直分布数据的逻辑回归安全训练方法及系统

Country Status (1)

Country Link
CN (1) CN113886868A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115018087A (zh) * 2022-07-26 2022-09-06 北京融数联智科技有限公司 一种多方纵向逻辑回归算法模型的训练方法及系统

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115018087A (zh) * 2022-07-26 2022-09-06 北京融数联智科技有限公司 一种多方纵向逻辑回归算法模型的训练方法及系统
CN115018087B (zh) * 2022-07-26 2023-05-09 北京融数联智科技有限公司 一种多方纵向逻辑回归算法模型的训练方法及系统

Similar Documents

Publication Publication Date Title
CN110399742B (zh) 一种联邦迁移学习模型的训练、预测方法及装置
US10855455B2 (en) Distributed multi-party security model training framework for privacy protection
US10600006B1 (en) Logistic regression modeling scheme using secrete sharing
CN110288094B (zh) 基于联邦学习的模型参数训练方法及装置
CN108712260B (zh) 云环境下保护隐私的多方深度学习计算代理方法
CN113239404B (zh) 一种基于差分隐私和混沌加密的联邦学习方法
CN112989368B (zh) 多方联合进行隐私数据处理的方法及装置
CN113424185A (zh) 快速不经意传输
CN113435592B (zh) 一种隐私保护的神经网络多方协作无损训练方法及系统
CN110086626A (zh) 基于非对称密钥池对的量子保密通信联盟链交易方法和系统
CN111428887A (zh) 一种基于多个计算节点的模型训练控制方法、装置及系统
CN113239391B (zh) 一种无第三方的逻辑回归联邦学习模型训练系统及方法
CN111970106B (zh) 一种格上支持全同态的短密文属性基加密方法及系统
CN110324321A (zh) 数据处理方法及装置
CN115455476A (zh) 基于多密钥同态加密的纵向联邦学习隐私保护方法及系统
CN115913537A (zh) 基于隐私保护的数据求交方法、系统及相关设备
Ibarrondo et al. Banners: Binarized neural networks with replicated secret sharing
CN113886868A (zh) 一种多源垂直分布数据的逻辑回归安全训练方法及系统
CN115130121A (zh) 一种去第三方的隐私计算下纵向逻辑回归模型训练方法
TWI782701B (zh) 區塊鏈錢包的非互動式批核系統及其方法
CN114282652B (zh) 一种隐私保护的纵向深度神经网络模型构建方法、计算机及存储介质
CN115941351A (zh) 一种基于云服务和加密技术的可信隐私计算系统
CN112995189B (zh) 一种基于隐私保护的公开验证矩阵乘法正确性的方法
TWI783804B (zh) 基於線性整數秘密共享的共享單元生成系統及其方法
CN112073172B (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