基于隐私保护的业务预测模型训练方法和装置制造方法及图纸

技术编号:24517913 阅读:22 留言:0更新日期:2020-06-17 06:54
本说明书实施例提供一种基于隐私保护的业务预测模型训练方法和装置。该方法可以通过训练系统中的可信计算单元和非可信计算单元执行。可信计算单元将初始模型参数、多个业务样本的样本特征和对应的标签值分别进行同态加密,并将其发送至非可信计算单元,执行多轮模型迭代,其中任意一轮模型迭代包括,可信计算单元与非可信计算单元进行交互,使得非可信计算单元至少基于对同态加密后的特征数据和模型参数进行同态运算,确定本轮更新后的第二加密模型参数,可信计算单元根据第二加密模型参数和第一加密模型参数的差异,确定模型训练过程是否满足收敛条件,在不满足时进行下一轮模型迭代。

Training method and device of business prediction model based on privacy protection

【技术实现步骤摘要】
基于隐私保护的业务预测模型训练方法和装置
本说明书一个或多个实施例涉及机器学习
,尤其涉及基于隐私保护的业务预测模型训练方法和装置。
技术介绍
随着计算机技术的发展,数据处理需求越来越大。在机器学习领域,利用模型对业务数据进行预测,基于预测结果进行安全维护、使用推荐等,已经成为非常常见的数据处理方法。为了保证业务数据的安全性和隐私性,与数据相关的计算常常置于可信计算单元中进行。可信计算单元具有的可信执行环境(TrustedExecutionEnvironment,TEE)能够确保数据计算过程的安全性和隐私性。同时,业务训练预测模型所需要的数据往往会涉及多个平台、多个领域。例如,在基于业务预测模型的商户分类分析场景中,电子支付平台拥有商户的交易流水数据,电子商务平台存储有商户的销售数据,银行机构拥有商户的借贷数据。在进行模型训练时,会联合多方的数据进行。这导致特征数据的数据量越来越大,对模型训练过程的处理要求也越来越高。因此,希望能有改进的方案,使得在数据量较大时,提高训练业务预测模型的处理效率,同时保证隐私数据的安全性和隐私性。
技术实现思路
本说明书一个或多个实施例描述了基于隐私保护的业务预测模型训练方法和装置,以在数据量较大时,提高训练业务预测模型的处理效率,同时保证隐私数据的安全性和隐私性。具体的技术方案如下。第一方面,实施例提供了一种基于隐私保护的训练业务预测模型的方法,通过训练系统中处于可信执行环境下的可信计算单元执行,所述训练系统还包括非可信计算单元;所述方法包括:获取用于训练所述业务预测模型的训练集和所述业务预测模型的初始模型参数,其中所述训练集包括多个业务样本的样本特征和对应的标签值;使用加密密钥,将所述初始模型参数同态加密为初始加密模型参数,将所述多个业务样本的样本特征和对应的标签值分别同态加密为多个加密样本和加密标签值;将所述初始加密模型参数、所述多个加密样本和加密标签值发送至所述非可信计算单元;执行多轮模型迭代,其中任意一轮模型迭代包括,与所述非可信计算单元进行交互,从所述非可信计算单元中获取本轮更新后的第二加密模型参数,所述第二加密模型参数,至少基于对所述多个加密样本、多个加密标签值和本轮更新前的第一加密模型参数的同态运算确定;根据所述第二加密模型参数和所述第一加密模型参数的差异,确定模型训练过程是否满足收敛条件,在不满足时进行下一轮模型迭代。在一种实施方式中,所述业务预测模型属于逻辑回归模型;所述与所述非可信计算单元进行交互,从所述非可信计算单元中获取本轮更新后的第二加密模型参数的步骤,包括:接收所述非可信计算单元发送的与每个业务样本对应的加密中间结果;其中,所述加密中间结果根据所述第一加密模型参数分别与每个加密样本的样本特征同态相乘得到;采用与所述加密密钥对应的解密密钥,对所述多个加密中间结果进行解密,得到多个中间结果,将所述多个中间结果分别代入激活函数,计算得到针对每个业务样本的预测值;使用所述加密密钥将每个业务样本的预测值同态加密为多个加密预测值,并将其发送至所述非可信计算单元,以使得所述非可信计算单元根据每个业务样本的加密预测值与对应的加密标签值之间的同态差值确定加密损失值,基于所述加密损失值将所述第一加密模型参数更新为所述第二加密模型参数;接收所述非可信计算单元发送的所述第二加密模型参数。在一种实施方式中,所述业务预测模型属于线性回归模型;所述与所述非可信计算单元进行交互,从所述非可信计算单元中获取本轮更新后的第二加密模型参数的步骤,包括:接收所述非可信计算单元发送的所述第二加密模型参数;其中,所述第二加密模型参数是所述非可信计算单元基于加密损失值对所述第一加密模型参数进行更新得到,所述加密损失值为基于每个业务样本的加密预测值与对应的加密标签值之间的同态差值得到,所述每个业务样本的加密预测值基于将所述第一加密模型参数分别与每个加密样本的样本特征同态相乘得到。在一种实施方式中,所述任意一轮模型迭代还包括:使用解密密钥将所述第二加密模型参数解密为第二模型参数,将其作为用于下一轮模型迭代的更新后的第一模型参数,解密密钥与所述加密密钥对应;使用所述加密密钥,将更新后的第一模型参数同态加密为更新后的第一加密模型参数;将更新后的所述第一加密模型参数发送给所述非可信计算单元。在一种实施方式中,所述根据所述第二加密模型参数和所述第一加密模型参数的差异,确定模型训练过程是否满足收敛条件的步骤,包括:获取由所述非可信计算单元同态计算的所述第二加密模型参数和所述第一加密模型参数的加密差值平方和;采用与所述加密密钥对应的解密密钥,对所述加密差值平方和进行解密,得到对应的差值平方和,根据所述差值平方和,确定模型训练过程是否满足收敛条件。在一种实施方式中,所述根据所述第二加密模型参数和所述第一加密模型参数的差异,确定模型训练过程是否满足收敛条件的步骤,包括:采用与所述加密密钥对应的解密密钥,对所述第二加密模型参数进行解密,得到第二模型参数;计算所述第二模型参数与第一模型参数的差值平方和,其中所述第一模型参数为所述第一加密模型参数对应的解密值;根据所述差值平方和,确定模型训练过程是否满足收敛条件。在一种实施方式中,所述根据所述第二加密模型参数和所述第一加密模型参数的差异,确定模型训练过程是否满足收敛条件的步骤,包括:同态计算所述第二加密模型参数和所述第一加密模型参数的加密差值平方和;采用与所述加密密钥对应的解密密钥,对所述加密差值平方和进行解密,得到对应的差值平方和;根据所述差值平方和,确定模型训练过程是否满足收敛条件。在一种实施方式中,所述可信计算单元和所述非可信计算单元位于具有可信执行环境的同一计算设备中。在一种实施方式中,所述可信计算单元位于具有可信执行环境的第一计算设备中,所述非可信计算单元位于第二计算设备中。在一种实施方式中,所述业务样本为以下业务对象之一:用户、商户、商品、事件;所述业务预测模型用于对业务对象进行分类或回归。在一种实施方式中,所述任意一轮模型迭代为第一轮模型迭代,所述第一加密模型参数为所述初始加密模型参数。第二方面,实施例提供了一种基于隐私保护的训练业务预测模型的方法,通过训练系统中的非可信计算单元执行,所述训练系统还包括处于可信执行环境下的可信计算单元执行;所述方法包括:接收所述可信计算单元发送的初始加密模型参数、所述多个加密样本和对应加密标签值,所述初始加密模型参数、所述多个加密样本和对应的加密标签值,分别基于对所述业务预测模型的初始模型参数、训练集中的多个业务样本的样本特征和对应的标签值进行同态加密得到;执行多轮模型迭代,其中任意一轮模型迭代包括,与所述可信计算单元进行交互,至少基于对所述多个加密样本、多个加密标签值和本轮更新前的第一加密模型参数的同态运算,确定本轮更新后的第二本文档来自技高网...

【技术保护点】
1.一种基于隐私保护的业务预测模型训练方法,通过训练系统中处于可信执行环境下的可信计算单元执行,所述训练系统还包括非可信计算单元;所述方法包括:/n获取用于训练所述业务预测模型的训练集和所述业务预测模型的初始模型参数,其中所述训练集包括多个业务样本的样本特征和对应的标签值;/n使用加密密钥,将所述初始模型参数同态加密为初始加密模型参数,将所述多个业务样本的样本特征和对应的标签值分别同态加密为多个加密样本和加密标签值;/n将所述初始加密模型参数、所述多个加密样本和加密标签值发送至所述非可信计算单元;/n执行多轮模型迭代,其中任意一轮模型迭代包括,与所述非可信计算单元进行交互,从所述非可信计算单元中获取本轮更新后的第二加密模型参数,所述第二加密模型参数,至少基于对所述多个加密样本、多个加密标签值和本轮更新前的第一加密模型参数的同态运算确定;/n根据所述第二加密模型参数和所述第一加密模型参数的差异,确定模型训练过程是否满足收敛条件,在不满足时进行下一轮模型迭代。/n

【技术特征摘要】
1.一种基于隐私保护的业务预测模型训练方法,通过训练系统中处于可信执行环境下的可信计算单元执行,所述训练系统还包括非可信计算单元;所述方法包括:
获取用于训练所述业务预测模型的训练集和所述业务预测模型的初始模型参数,其中所述训练集包括多个业务样本的样本特征和对应的标签值;
使用加密密钥,将所述初始模型参数同态加密为初始加密模型参数,将所述多个业务样本的样本特征和对应的标签值分别同态加密为多个加密样本和加密标签值;
将所述初始加密模型参数、所述多个加密样本和加密标签值发送至所述非可信计算单元;
执行多轮模型迭代,其中任意一轮模型迭代包括,与所述非可信计算单元进行交互,从所述非可信计算单元中获取本轮更新后的第二加密模型参数,所述第二加密模型参数,至少基于对所述多个加密样本、多个加密标签值和本轮更新前的第一加密模型参数的同态运算确定;
根据所述第二加密模型参数和所述第一加密模型参数的差异,确定模型训练过程是否满足收敛条件,在不满足时进行下一轮模型迭代。


2.根据权利要求1所述的方法,所述业务预测模型属于逻辑回归模型;
所述与所述非可信计算单元进行交互,从所述非可信计算单元中获取本轮更新后的第二加密模型参数的步骤,包括:
接收所述非可信计算单元发送的与每个业务样本对应的加密中间结果;其中,所述加密中间结果根据所述第一加密模型参数分别与每个加密样本的样本特征同态相乘得到;
采用与所述加密密钥对应的解密密钥,对所述多个加密中间结果进行解密,得到多个中间结果,将所述多个中间结果分别代入激活函数,计算得到针对每个业务样本的预测值;
使用所述加密密钥将每个业务样本的预测值同态加密为多个加密预测值,并将其发送至所述非可信计算单元,以使得所述非可信计算单元根据每个业务样本的加密预测值与对应的加密标签值之间的同态差值确定加密损失值,基于所述加密损失值将所述第一加密模型参数更新为所述第二加密模型参数;
接收所述非可信计算单元发送的所述第二加密模型参数。


3.根据权利要求1所述的方法,所述业务预测模型属于线性回归模型;
所述与所述非可信计算单元进行交互,从所述非可信计算单元中获取本轮更新后的第二加密模型参数的步骤,包括:
接收所述非可信计算单元发送的所述第二加密模型参数;其中,所述第二加密模型参数是所述非可信计算单元基于加密损失值对所述第一加密模型参数进行更新得到,所述加密损失值为基于每个业务样本的加密预测值与对应的加密标签值之间的同态差值得到,所述每个业务样本的加密预测值基于将所述第一加密模型参数分别与每个加密样本的样本特征同态相乘得到。


4.根据权利要求1所述的方法,所述任意一轮模型迭代还包括:
使用解密密钥将所述第二加密模型参数解密为第二模型参数,将其作为用于下一轮模型迭代的更新后的第一模型参数,所述解密密钥与所述加密密钥对应;
使用所述加密密钥,将更新后的第一模型参数同态加密为更新后的第一加密模型参数;
将更新后的所述第一加密模型参数发送给所述非可信计算单元。


5.根据权利要求1所述的方法,所述根据所述第二加密模型参数和所述第一加密模型参数的差异,确定模型训练过程是否满足收敛条件的步骤,包括:
获取由所述非可信计算单元同态计算的所述第二加密模型参数和所述第一加密模型参数的加密差值平方和;
采用与所述加密密钥对应的解密密钥,对所述加密差值平方和进行解密,得到对应的差值平方和,根据所述差值平方和,确定模型训练过程是否满足收敛条件。


6.根据权利要求1所述的方法,所述根据所述第二加密模型参数和所述第一加密模型参数的差异,确定模型训练过程是否满足收敛条件的步骤,包括:
采用与所述加密密钥对应的解密密钥,对所述第二加密模型参数进行解密,得到第二模型参数;
计算所述第二模型参数与第一模型参数的差值平方和,其中所述第一模型参数为所述第一加密模型参数对应的解密值;
根据所述差值平方和,确定模型训练过程是否满足收敛条件。


7.根据权利要求1所述的方法,所述根据所述第二加密模型参数和所述第一加密模型参数的差异,确定模型训练过程是否满足收敛条件的步骤,包括:
同态计算所述第二加密模型参数和所述第一加密模型参数的加密差值平方和;
采用与所述加密密钥对应的解密密钥,对所述加密差值平方和进行解密,得到对应的差值平方和;
根据所述差值平方和,确定模型训练过程是否满足收敛条件。


8.根据权利要求1所述的方法,所述可信计算单元和所述非可信计算单元位于具有可信执行环境的同一计算设备中。


9.根据权利要求1所述的方法,所述可信计算单元位于具有可信执行环境的第一计算设备中,所述非可信计算单元位于第二计算设备中。


10.根据权利要求1所述的方法,所述业务样本为以下业务对象之一:用户、商户、商品、事件;所述业务预测模型用于对业务对象进行分类或回归。


11.根据权利要求1所述的方法,其中,所述任意...

【专利技术属性】
技术研发人员:张宁王磊
申请(专利权)人:支付宝杭州信息技术有限公司
类型:发明
国别省市:浙江;33

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1