使用可信执行环境来进行神经网络模型训练的方法和装置制造方法及图纸

技术编号:24459039 阅读:35 留言:0更新日期:2020-06-10 16:26
本说明书实施例提供使用可信执行环境的神经网络模型训练方法及装置。在该方法中,神经网络模型被依序分割为位于第一设备的可信执行环境中的第一部分神经网络模型和位于第二设备的非可信执行环境中的第二部分神经网络模型。在每轮模型训练时,当前第一部分神经网络模型在可信执行环境中对训练样本数据进行处理以得到中间结果,当前第二部分神经网络模型在非可信执行环境中对中间结果进行处理以得到当前预测值,并确定出预测差值。在不满足循环结束条件时,根据当前预测差值,调整当前第一部分神经网络模型和当前第二部分神经网络模型的各层模型参数。利用该方法,能够在确保隐私数据安全的情况下实现神经网络模型训练。

Method and device of neural network model training using trusted execution environment

【技术实现步骤摘要】
使用可信执行环境来进行神经网络模型训练的方法和装置
本说明书的实施例通常涉及计算机领域,更具体地,涉及使用可信执行环境(TEE,TrustedExecutionEnvironment)来进行神经网络模型训练的方法及装置。
技术介绍
对于公司或企业而言,数据是非常重要的资产,比如,用户数据和业务数据。用户数据例如可以包括用户身份数据等。业务数据例如可以包括在公司提供的业务应用上发生的业务数据,比如淘宝上的商品交易数据等。保护数据安全是公司或企业广泛关注的技术问题。在公司或企业进行业务运营时,通常会需要使用机器学习模型来进行模型预测,以确定业务运营风险或者进行业务运营决策。神经网络模型是机器学习领域广泛使用的机器学习模型。神经网络模型可以由模型服务提供方来提供。神经网络模型训练时会使用数据拥有方的私有数据。如何在进行神经网络模型训练时保护数据提供方的数据隐私安全,成为亟待解决的问题。
技术实现思路
鉴于上述问题,本说明书的实施例提供一种使用可信执行环境来进行神经网络模型训练的方法及装置,其能够在保护数据提供方的数据隐私安本文档来自技高网...

【技术保护点】
1.一种用于使用可信执行环境来进行神经网络模型训练的方法,所述神经网络模型被依序分割为第一部分神经网络模型和第二部分神经网络模型,所述第一部分神经网络模型位于第一设备的可信执行环境中,以及所述第二部分神经网络模型位于第二设备的非可信执行环境中,所述方法包括:/n执行下述循环过程,直到满足循环结束条件:/n将数据提供方的训练样本数据提供给所述可信执行环境中的当前第一部分神经网络模型,得到中间结果;/n将所述中间结果提供给所述非可信执行环境中的当前第二部分神经网络模型,得到当前预测值;/n基于所述当前预测值和所述训练样本数据的标签值,确定当前预测差值;以及/n在不满足所述循环结束条件时,根据所述当...

【技术特征摘要】
1.一种用于使用可信执行环境来进行神经网络模型训练的方法,所述神经网络模型被依序分割为第一部分神经网络模型和第二部分神经网络模型,所述第一部分神经网络模型位于第一设备的可信执行环境中,以及所述第二部分神经网络模型位于第二设备的非可信执行环境中,所述方法包括:
执行下述循环过程,直到满足循环结束条件:
将数据提供方的训练样本数据提供给所述可信执行环境中的当前第一部分神经网络模型,得到中间结果;
将所述中间结果提供给所述非可信执行环境中的当前第二部分神经网络模型,得到当前预测值;
基于所述当前预测值和所述训练样本数据的标签值,确定当前预测差值;以及
在不满足所述循环结束条件时,根据所述当前预测差值,调整所述当前第一部分神经网络模型和所述当前第二部分神经网络模型的各层模型参数,所述调整后的第一部分神经网络模型和第二部分神经网络模型用作下一循环过程的当前第一部分神经网络模型和当前第二部分神经网络模型。


2.如权利要求1所述的方法,其中,所述神经网络模型的依序分割取决于下述参数中的至少一种:
所述神经网络模型的分层结构组成;
各个分层结构的复杂度;
所述可信执行环境的存储能力;
所述可信执行环境的算力;和
每轮模型训练时使用的训练样本数目。


3.如权利要求1所述的方法,其中,所述数据提供方包括多个数据提供方,各个数据提供方所提供的训练样本数据是经过加密后的训练样本数据,所述第一设备设置在所述多个数据提供方之外的第三方,以及所述可信执行环境中还设置有数据融合单元,
将数据提供方的训练样本数据提供给所述可信执行环境中的当前第一部分神经网络模型,得到中间结果包括:
将各个数据提供方的经过加密后的训练样本数据提供给所述可信执行环境中的数据融合单元;
在所述数据融合单元处,对所接收的训练样本数据进行解密和数据融合;以及
将经过数据融合后的训练样本数据提供给所述可信执行环境中的当前第一部分神经网络模型,得到中间结果。


4.如权利要求1所述的方法,其中,所述数据提供方包括多个数据提供方,所述第一设备设置在所述多个数据提供方中的第一数据提供方中,除了所述第一数据提供方之外的其它数据提供方所提供的训练样本数据是经过加密后的训练样本数据,以及所述可信执行环境中还设置有数据融合单元,
将数据提供方的训练样本数据提供给所述可信执行环境中的当前第一部分神经网络模型,得到中间结果包括:
将各个其它数据提供方的经过加密后的训练样本数据提供给所述可信执行环境中的数据融合单元;
在所述数据融合单元处,对所接收的训练样本数据进行解密,并且对所述第一数据提供方处的训练样本数据以及各个其它数据提供方的经过解密后的训练样本数据进行数据融合;以及
将经过数据融合后的训练样本数据提供给所述可信执行环境中的当前第一部分神经网络模型,得到中间结果。


5.如权利要求1到4中任一所述的方法,其中,所述第一设备和所述第二设备是相同的设备或者不同的设备。


6.如权利要求1所述的方法,其中,所述第一部分神经网络模型和所述第二部分神经网络模型使用不同的模型架构实现,所述方法还包括:
在所述第一设备处,对所述中间结果进行适配处理;以及
在所述第二设备处,对所述当前第二部分神经网络模型输出的梯度信息进行适配处理。


7.如权利要求1所述的方法,其中,所述可信执行环境包括基于SGX的可信执行环境或基于TrustZone的可信执行环境。


8.如权利要求1到7中任一所述的方法,其中,所述循环结束条件包括:
循环次数达到预定次数;或者
当前预测差值在预定差值范围内。


9.如权利...

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

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

1