CN113965313B - 基于同态加密的模型训练方法、装置、设备以及存储介质 - Google Patents

基于同态加密的模型训练方法、装置、设备以及存储介质 Download PDF

Info

Publication number
CN113965313B
CN113965313B CN202111528236.9A CN202111528236A CN113965313B CN 113965313 B CN113965313 B CN 113965313B CN 202111528236 A CN202111528236 A CN 202111528236A CN 113965313 B CN113965313 B CN 113965313B
Authority
CN
China
Prior art keywords
model
hyper
model training
parameter
function
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
Application number
CN202111528236.9A
Other languages
English (en)
Other versions
CN113965313A (zh
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.)
Beijing Baidu Netcom Science and Technology Co Ltd
Original Assignee
Beijing Baidu Netcom Science and 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 Beijing Baidu Netcom Science and Technology Co Ltd filed Critical Beijing Baidu Netcom Science and Technology Co Ltd
Priority to CN202111528236.9A priority Critical patent/CN113965313B/zh
Publication of CN113965313A publication Critical patent/CN113965313A/zh
Application granted granted Critical
Publication of CN113965313B publication Critical patent/CN113965313B/zh
Priority to US18/080,416 priority patent/US20230188321A1/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/008Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols involving homomorphic encryption
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/21Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
    • G06F18/214Generating training patterns; Bootstrap methods, e.g. bagging or boosting
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/42Anonymization, e.g. involving pseudonyms

Abstract

本公开提供了一种基于同态加密的模型训练方法、装置、设备以及存储介质,涉及计算机计算和加密技术领域,尤其涉及人工智能和深度学习技术。具体实现方案为:在模型训练的过程中,获取同态加密数据;根据模型训练过程中出现的状态数据,确定模型逼近函数的超参数;其中,所述模型逼近函数用于替换所述模型训练过程中涉及的模型原函数;将所述同态加密数据输入所述模型逼近函数进行计算,并根据计算结果执行模型训练。根据本公开的技术,实现了模型训练过程中数据隐私保护的同时,提高了函数运用的灵活性。

Description

基于同态加密的模型训练方法、装置、设备以及存储介质
技术领域
本公开涉及计算机计算和加密技术领域,尤其涉及人工智能和深度学习技术。
背景技术
随着人工智能技术的发展,机器学习在各个场景中得到了越来越广泛的运用。
随着分布式机器学习的普及,又引出了多方联合模型训练过程中的隐私保护问题。多方联合模型训练的过程中,会提出对交互数据、训练过程进行同态加密的需求,由此进行数据的隐私保护。
但是,同态加密技术在保护数据隐私的同时,也会对机器学习所采用的函数进行限制,无法全部支持模型中可能用到的各种各样函数的计算过程。
发明内容
本公开提供了一种基于同态加密的模型训练方法、装置、设备以及存储介质,以兼顾模型训练过程的隐私保护和函数运用灵活性。
根据本公开的一方面,提供了一种基于同态加密的模型训练方法,包括:
在模型训练的过程中,获取同态加密数据;
根据模型训练过程中出现的状态数据,确定模型逼近函数的超参数;其中,所述模型逼近函数用于替换所述模型训练过程中涉及的模型原函数;
将所述同态加密数据输入所述模型逼近函数进行计算,并根据计算结果执行模型训练。
根据本公开的另一方面,还提供了一种基于同态加密的模型训练装置,包括:
数据获取模块,用于在模型训练的过程中,获取同态加密数据;
超参数确定模块,用于根据模型训练过程中出现的状态数据,确定模型逼近函数的超参数;其中,所述模型逼近函数用于替换所述模型训练过程中涉及的模型原函数;
模型训练模块,用于将所述同态加密数据输入所述模型逼近函数进行计算,并根据计算结果执行模型训练。
根据本公开的另一方面,还提供了一种电子设备,包括:
至少一个处理器;以及
与至少一个处理器通信连接的存储器;其中,
存储器存储有可被至少一个处理器执行的指令,指令被至少一个处理器执行,以使至少一个处理器能够执行本公开实施例所提供的任意一种基于同态加密的模型训练方法。
根据本公开的另一方面,还提供了一种存储有计算机指令的非瞬时计算机可读存储介质,其中,计算机指令用于使计算机执行本公开实施例所提供的任意一种基于同态加密的模型训练方法。
根据本公开的另一方面,还提供了一种计算机程序产品,包括计算机程序,计算机程序在被处理器执行时实现本公开实施例所提供的任意一种基于同态加密的模型训练方法。
根据本公开的技术,实现了模型训练过程中数据隐私保护的同时,提高了函数运用的灵活性。
应当理解,本部分所描述的内容并非旨在标识本公开的实施例的关键或重要特征,也不用于限制本公开的范围。本公开的其它特征将通过以下的说明书而变得容易理解。
附图说明
附图用于更好地理解本方案,不构成对本公开的限定。其中:
图1是根据本公开实施例的一种基于同态加密的模型训练方法的示意图;
图2是根据本公开实施例的一种基于同态加密的模型训练方法的示意图;
图3是根据本公开实施例的一种基于同态加密的模型训练装置的示意图;
图4是用来实现本公开实施例的基于同态加密的模型训练方法的电子设备的框图。
具体实施方式
以下结合附图对本公开的示范性实施例做出说明,其中包括本公开实施例的各种细节以助于理解,应当将它们认为仅仅是示范性的。因此,本领域普通技术人员应当认识到,可以对这里描述的实施例做出各种改变和修改,而不会背离本公开的范围和精神。同样,为了清楚和简明,以下的描述中省略了对公知功能和结构的描述。
以下结合附图,对本公开实施例提供的该方案进行详细说明。
图1是根据本公开实施例提供的一种基于同态加密的模型训练方法的示意图,本公开实施例所提供的各基于同态加密的模型训练方法和基于同态加密的模型训练装置,适用于采用同态加密技术进行模型隐私训练的应用场景。本公开实施例所提供的各基于同态加密的模型训练方法,可以由基于同态加密的模型训练装置执行,该基于同态加密的模型训练装置可以采用软件和/或硬件实现,并具体配置于电子设备中。该电子设备可以是属于多方联合训练场景下的任一参与方的设备,还可以是能够进行模型训练的可信第三方的设备。
参考图1所示的一种基于同态加密的模型训练方法,该方法具体包括如下:
S110、在模型训练的过程中,获取同态加密数据。
同态加密数据可以是采用同态公钥对模型训练的中间参数进行加密的数据。其中,同态公钥可以是多方联合训练场景下的任一参与方的公钥,还可以是基于可信第三方的联合训练场景下,可信第三方的公钥,具体可以根据不同的模型训练场景进行确定。其中,模型训练的中间参数可以是至少两个模型训练的参与方,基于各自的样本数据对各自的模型进行训练后产生的中间参数,例如,可以是计算损失值和/或梯度值所需要的参数。
示例性的,在多方联合训练场景下的模型训练过程中,可以由其中任一参与模型训练的参与方,获取同态加密数据。具体的,参与模型训练的其中任一参与方作为第一参与方,除第一参与方的其他参与方作为第二参与方;第一参与方将自身模型训练得到的第一中间参数采用第一同态公钥进行加密,得到第一同态加密数据。第二参与方将自身模型训练得到的第二中间参数同样采用第一同态公钥进行加密,得到第二同态加密数据;其中,第一同态公钥由第一参与方预先分配给第二参与方。第二参与方将第二同态加密数据发送至第一参与方,以供第一参与方得到同态加密数据。其中,同态加密数据包括第一同态加密数据和第二同态加密数据。
S120、根据模型训练过程中出现的状态数据,确定模型逼近函数的超参数;其中,模型逼近函数用于替换模型训练过程中涉及的模型原函数。
其中,进行训练的模型可以是线性模型或神经网络模型。线性模型可以是逻辑回归模型、线性回归模型、方差分析模型或协方差分析模型等。神经网络模型中正向传播时的激活函数、反向传播时的梯度计算函数,可以采用逼近方法来进行计算。
模型原函数可以是模型训练过程中计算模型关键参数所需使用的函数。其中,模型关键参数可以包括模型训练条件判断参数、迭代更新参数以及神经元激活参数等。例如,模型训练条件判断参数可以是计算损失值、迭代更新参数可以是计算梯度值,以及神经元激活参数可以是计算神经元激活值等。相应的,模型原函数可以包括损失函数、梯度计算函数和神经网络的神经元激活函数等中的至少一种。
需要说明的是,在进行基于同态加密的模型训练过程中,模型原函数中存在不支持同态加密数据计算的函数,例如,Log函数、幂函数、三角函数以及分段函数等,不同同态加密技术对应不支持计算的函数类别不同。然而,训练模型所使用的多数模型原函数中包括至少一种不支持同态加密数据计算的函数。例如,模型训练过程中可以采用交叉熵(Cross Entropy)作为模型的损失函数,交叉熵损失函数中包括Log函数和幂函数,而Log函数和幂函数均不支持同态加密数据计算。
状态数据可以是在模型训练过程中,计算模型关键参数时模型的计算状态,例如,状态数据可以包括模型训练关键参数的计算结果、模型计算时长和迭代次数等数据。
模型逼近函数可以是支持同态加密数据计算的函数,用于替换模型训练过程中涉及的模型原函数,例如,替换模型原函数中不支持同态加密数据计算的函数。其中,模型逼近函数可以包括多项式。
超参数可以是与模型逼近函数相关联的能够控制模型训练行为的参数。其中,模型逼近函数的超参数可以包括多项式的展开次数、变量系数、多项式组合中的多项式个数等中的至少一种。
示例性的,线性模型训练过程中,采用模型逼近函数替换模型原函数,其中,模型原函数包括损失函数和梯度计算函数,例如,模型逼近函数可以是多项式,可以采用多项式替换损失函数和梯度计算函数中无法进行同态计算的函数,如Log函数和幂函数等。基于替换后的损失函数和梯度函数,得到模型训练过程中状态数据,如得到损失值和梯度值,判断模型训练过程中的损失值和梯度值是否与预期的损失值和梯度值相符;根据判断结果更新模型逼近函数的超参数,例如,超参数可以包括多项式的展开次数和变量系数等。其中,预期的损失值和梯度值可以根据实际经验进行确定,并在模型训练之前预设在模型中。若判断结果为模型训练得到的损失值和梯度值与预期的不符,则可以调整模型训练的当前超参数,例如,可以调整多项式展开次数和/或变量系数。
S130、将同态加密数据输入模型逼近函数进行计算,并根据计算结果执行模型训练。
可以将参与模型训练的各参与方的同态加密数据,输入至模型逼近函数中进行计算,得到的计算结果可以是模型训练过程中得到的损失值、梯度值或模型训练过程中产生的其他相关参数,例如,神经元激活值等。根据得到的计算结果,执行模型训练。具体的,可以根据计算结果判断训练模型是否收敛,若是,则模型训练完成;若否,则继续执行模型训练。
本公开实施例通过在模型训练的过程中,获取同态加密数据;根据模型训练过程中出现的状态数据,确定模型逼近函数的超参数;其中,模型逼近函数用于替换模型训练过程中涉及的模型原函数;将同态加密数据输入模型逼近函数进行计算,并根据计算结果执行模型训练。上述方案通过在多方联合训练的过程中采用同态加密技术保护数据的隐私,提高了各方模型训练过程中数据的安全性。通过采用模型逼近函数替换模型训练过程中涉及的模型原函数,解决了同态加密技术对模型训练过程所采用的函数的限制性,实现了在模型训练过程中支持模型所使用的各类函数,兼顾了模型训练过程的隐私保护和函数运用的灵活性。
在上述各技术方案的基础上,本公开还提供了一个可选实施例。在该可选实施例中,对基于同态加密的模型训练方法进行了追加。在本实施例未详述部分,可参见前述实施例的表述,在此不再赘述。
参见图2的一种基于同态加密的模型训练方法,包括:
S210、在模型训练的过程中,获取同态加密数据。
需要说明的是,超参数需要在模型训练之前,通过测试验证的方式预先确定,并且,在模型实际训练过程中,同样需要预先确定超参数进行动态变化的约束条件,即,需要预先确定超参数与函数计算结果之间匹配关系。
在一个可选实施例中,在模型训练过程之前,还包括超参数与函数计算结果之间匹配关系的确定过程,确定过程包括:采用至少两组同态加密数据测试样本,分别输入模型进行测试训练;每组测试训练所采用的模型逼近函数的超参数不同;根据各组测试训练结果,选择符合训练要求的模型逼近函数的超参数。
可以采用至少两组同态加密数据作为测试样本对模型进行测试训练,其中,每组同态加密数据中均包含有来自不同参与方的加密数据。分别将各组同态加密数据输入模型进行测试训练,且每组测试训练所采用的模型逼近函数的超参数可以不同。例如,可以是多项式的展开次数不同、变量系数不同或多项式组合中的多项式个数不同。
示例性的,每组测试训练模型中的模型原函数可以选择使用不同超参数的多项式逼近。例如,模型训练组A1和模型训练组A2均采用多项式b逼近模型原函数B,但模型训练组A1采用的多项式b对应的超参数可以为c1,模型训练组A2采用的多项式b对应的超参数可以为c2。
示例性的,每组测试训练模型可以选择使用多个多项式组合逼近模型原函数,且多个多项式对应的超参数可以相同,也可以不同。例如,模型原函数为二分段函数时,二分段函数中的每段函数可以分别采用相同超参数的多项式进行逼近,也可以分别采用不同超参数的多项式进行逼近。例如,模型训练组B1和模型训练组B2均采用多个多项式b组合逼近模型原函数,但模型训练组B1和模型训练组B2对应的多个多项式b的个数可以相同,也可以不同,并且,模型训练组B1对应的多个多项式b的超参数和模型训练组B2对应的多个多项式的超参数可以相同,也可以不同。
根据各组测试训练结果,选择符合训练要求的模型逼近函数的超参数。其中,各组测试训练结果可以包括测试训练得到的损失值和梯度值等。示例性的,可以根据各组训练得到的损失值和梯度值,确定损失值与梯度值对应的数值网格,即,对应的不同取值范围;将各组模型逼近函数的超参数,与损失值和梯度值对应的数值网格建立关联关系,从而在模型训练之前,预先确定超参数与计算结果之间的匹配关系,即,在后续模型训练过程中,当函数计算结果位于不同数值网格时,可以切换至预先确定的该网格所关联的超参数。其中,数值网格可以是一维网格,也可以是多维网格,具体可以根据模型训练参数数量确定。
在一个具体的例子中,采用三组同态加密数据作为测试样本对模型进行测试训练,分别将三组同态加密数据输入模型,记为测试训练组A、测试训练组B和测试训练组C。其中,测试训练组A、测试训练组B和测试训练组C对应的超参数分别不同,采用测试训练组A计算得到的损失值在数值网格1中,则将测试训练组A的超参数与数值网格1相关联;采用测试训练组B计算得到的损失值在数值网格2中,则将测试训练组B的超参数与数值网格2相关联;采用测试训练组C计算得到的损失值在数值网格3中,则将测试训练组C的超参数与数值网格3相关联。可以将测试训练得到的超参数与训练结果之间的关联关系,在模型训练之前,预先存入训练模型中,以供后续模型训练过程中,能够直接根据预先存入的超参数与训练结果之间的关联关系,动态改变模型训练中的超参数,从而达到模型训练结果最优。
本可选实施例通过采用至少两组同态加密数据测试样本,分别输入模型进行测试训练;每组测试训练所采用的模型逼近函数的超参数不同;根据各组测试训练结果,选择符合训练要求的模型逼近函数的超参数。上述方案通过在模型训练之前,预先确定超参数与函数计算结果之间的匹配关系,实现了后续模型训练过程中,能够根据该匹配关系动态改变超参数,从而使得在模型训练达到最优效果。
S220、将同态加密数据输入采用当前超参数的模型逼近函数进行计算。
模型逼近函数的当前超参数可以是在模型训练开始之前预先设定的初始超参数,其中,初始超参数的多项式展开次数可以是1次、变量系数可以是1以及多项式组合中的多项式个数可以是1个。其中,模型逼近函数的初始超参数的确定方式可以是由相关技术人员根据实际经验值进行确定,还可以是在模型训练开始之前,通过大量测试验证的实验值进行确定的。在模型训练开始前,需要将确定的初始超参数预先存入训练模型中,以供模型训练开始时首先采用预设的初始超参数作为模型逼近函数的当前超参数对输入的同态加密数据进行计算。
在模型训练过程中,可以始终采用当前超参数的模型逼近函数计算同态加密数据;为确保模型训练的准确性,提高模型训练效率,可以在模型训练的过程中,动态的变化当前超参数,从而在模型训练过程中每次迭代训练都采用更加精确的超参数。
S230、根据计算结果,基于超参数与函数计算结果的匹配关系,重新确定当前超参数。
其中,计算结果可以包括计算得到的损失值和梯度值等。超参数与函数计算结果的匹配关系可以根据实际经验预先确定,例如,根据实际经验预先确定不同超参数与损失值和梯度值对应的取值范围的匹配关系,如,基于超参数a1训练得到的损失值对应的取值范围为(0,100];基于超参数a2训练得到的损失值对应的取值范围为(100,500]。不同超参数与梯度值对应的取值范围的匹配关系同理,本实施例不再赘述。
示例性的,为提高模型训练的准确性和效率,还可以采用上述测试验证的方式,预先确定超参数与函数计算结果的匹配关系。
在一个可选实施例中,根据计算结果,基于超参数与函数计算结果的匹配关系,重新确定当前超参数包括:根据计算结果落入的取值范围,获取与取值范围对应的超参数,确定为当前超参数。
示例性的,可以根据模型训练过程中,每一次迭代训练得到的损失值和梯度值落入的取值范围,获取与取值范围对应的超参数,并将该超参数作为当前超参数继续训练模型,直到损失值和梯度值符合模型训练终止条件,其中,模型训练终止条件可以是模型误差率小于设定的误差阈值,例如,误差阈值可以是±5%。
示例性的,模型训练开始时,采用预设的初始超参数作为模型训练开始时的当前超参数进行模型训练;模型迭代训练后得到基于初始超参数进行训练的计算结果,例如,得到损失值与梯度值,并确定计算结果落入的取值范围;根据预先确定的超参数与计算结果的匹配关系,重新确定当前超参数,并根据重新确定的当前超参数,继续进行模型训练,直到符合模型训练终止条件时结果训练。
本可选实施例通过根据计算结果落入的取值范围,获取与取值范围对应的超参数,确定为当前超参数,实现了在模型训练过程中对超参数的动态确定,从而根据动态确定结果不断的优化模型,进而提高了模型训练的准确度。
S240、将同态加密数据输入模型逼近函数进行计算,并根据计算结果执行模型训练。
需要说明的是,超参数在模型训练过程中的确定方式,除上述根据计算结果落入的取值范围确定之外,还可以基于其他条件进行确定,例如,可以根据模型训练过程中每轮计算时长、迭代次数等条件,动态的变化超参数。
在一个可选实施例中,状态数据还可以包括当前轮计算的计算时长;相应的,根据模型训练过程中出现的状态数据,确定模型逼近函数的超参数包括:如果模型训练过程中当前轮计算的计算时长满足时长条件,则确定精度优先级低于当前超参数的候选超参数代替当前超参数。
时长条件可以由相关技术人员根据模型计算量、训练数据规模以及所选择的处理器运行速度进行预先设定。例如,时长条件可以是当前轮计算的计算时长大于时长阈值,其中,时长阈值可以是5小时。超参数精度优先级可以在模型训练前预先确定。例如,可以将多项式的展开次数较低的超参数设置较低的优先级,将多项式的展开次数较高的超参数设置较高的精度优先级。可以将超参数与精度优先级之间的关联关系预先存入模型中,以供模型训练过程中,可以根据计算时长和优先级关系,动态确定模型训练过程的超参数。
示例性的,若模型训练过程中,当前轮计算的计算时长超过预设的时长阈值,例如,5小时,则可以认为当前超参数的精度较高,导致模型始终无法完成计算;可以根据预先设定的超参数与精度优先级的关联关系,确定精度优先级低于当前超参数的候选超参数,并采用候选超参数替代当前超参数继续进行模型训练。
本可选实施例通过判断模型训练过程中当前轮计算的计算时长是否满足时长条件,若是,则确定精度优先级低于当前超参数的候选超参数代替当前超参数。上述方案实现了在模型训练过程中,模型计算时长较长时,能够根据精度优先级动态确定超参数,从而达到了动态的应对模型训练过程中发生的一系列状态变化的目的,例如计算时长较长;提高了模型训练过程的灵活性。
在一个可选实施例中,所述状态数据还可以包括当前轮计算迭代次数;相应的,根据模型训练过程中出现的状态数据,确定模型逼近函数的超参数包括:如果模型训练过程中的计算迭代次数满足次数条件,则确定精度优先级高于当前超参数的候选超参数代替当前超参数。
次数条件可以由相关技术人员根据模型计算量和训练数据规模等进行预先设定。例如,次数条件可以是模型训练过程中的计算迭代次数大于迭代次数阈值,其中,迭代次数阈值可以是50次。
示例性的,若模型训练过程中,计算迭代次数满足次数条件,例如,已完成50次模型迭代训练,则可以认为进行50次模型迭代训练后,模型还未收敛,或计算得到的损失值和梯度值未达到预期标准,则可以认为当前训练模型的当前超参数的精度较低,导致模型训练始终无法达到预期效果;因此,可以采用精度较高的超参数进行模型训练。具体的,可以根据预设的超参数与精度优先级的关联关系,确定精度优先级高于当前超参数的候选超参数,并采用候选超参数替代当前超参数继续进行模型训练。例如,可以选择更高精度的多项式进行计算。
本可选实施例方案通过判断模型训练过程中的计算迭代次数是否满足次数条件,若是,则确定精度优先级高于当前超参数的候选超参数代替当前超参数。上述方案实现了在模型训练过程中,模型迭代次数较多时,能够根据精度优先级动态确定超参数,提高了模型训练效率,以及模型训练过程的灵活性。
本公开实施例通过将同态加密数据输入采用当前超参数的模型逼近函数进行计算;根据计算结果,基于超参数与函数计算结果的匹配关系,重新确定当前超参数。上述方案在模型训练过程中,根据超参数与函数计算结果的匹配关系,实现了模型训练过程中超参数的动态变化。根据动态变化的超参数,不断在模型训练过程中优化训练模型,从而使得模型训练结果达到最优,兼顾了模型训练效率和模型训练的准确性。
在上述各技术方案的基础上,本公开实施例还提供的一种基于同态加密的模型训练方法的优选实施例,其中,训练模型为分布式模型,同态加密数据为模型训练过程中多个模型参与方之间交互的同态加密中间参数,本实施例以两个参与方为例进行说明。
假设参与模型训练的参与方有两个,分别为参与方A(样本数据无标签)和参与方B(样本数据有标签)。参与方A和参与方B的模型中的模型原函数包括损失函数和梯度函数。
其中,损失函数采用交叉熵损失函数,交叉熵计算公式可表示为:
Figure 90931DEST_PATH_IMAGE001
其中,
Figure 309905DEST_PATH_IMAGE002
为损失求和函数,可以采用以下方式确定:
Figure 408311DEST_PATH_IMAGE003
其中,m为模型训练样本的总样本数量,j为模型训练样本的样本序号;y(j)为j样本的标签值,且y(j)的值为0或1;x(j)为j样本的特征序列,
Figure 175409DEST_PATH_IMAGE004
为x(j)的逻辑回归函数。
Figure 296949DEST_PATH_IMAGE005
表示模型训练的特征参数,n为模型中需要训练的特征参数的数量。
由上述损失函数的计算公式可知,损失函数包括了Log函数和幂函数,而这两类函数均无法得到同态加密计算的支持。因此,需要预先采用模型逼近函数对Log函数和幂函数进行替换,例如,采用多项式作为模型逼近函数进行替换,从而得到同态加密计算的支持。
可选的,可以利用泰勒展开逼近光滑函数的特性,实现多项式逼近。其中,光滑函数可以包括Log函数、幂函数和三角函数等。多项式展开项的次数越高,模型训练精度越高。经由大量模型训练测试结果可知,展开到二次项、三次项或四次项均可以满足常用的训练精度要求,同时模型计算量也不会太高,下面以将多项式展开为二次项为例进行说明。
Figure 197909DEST_PATH_IMAGE006
的多元变量x(j)考虑作为1个
Figure 9876DEST_PATH_IMAGE007
,则可以用Sigmoid函数表示:
Figure 338089DEST_PATH_IMAGE008
对损失函数中的
Figure 353450DEST_PATH_IMAGE009
求导:
Figure 58101DEST_PATH_IMAGE010
Figure 724574DEST_PATH_IMAGE009
作为f(x),对f(x)进行一阶求导:
Figure 426951DEST_PATH_IMAGE011
Figure 54241DEST_PATH_IMAGE012
对f(x)进行二阶求导:
Figure 437949DEST_PATH_IMAGE013
Figure 37558DEST_PATH_IMAGE014
因此,损失函数中的
Figure 973153DEST_PATH_IMAGE015
进行泰勒展开的二次多项式为:
Figure 212373DEST_PATH_IMAGE016
对损失函数中的
Figure 196510DEST_PATH_IMAGE017
求导:
Figure 978521DEST_PATH_IMAGE018
Figure 22700DEST_PATH_IMAGE019
作为g(x),对g(x)进行一阶求导:
Figure 765529DEST_PATH_IMAGE020
对f(x)进行二阶求导:
Figure 553356DEST_PATH_IMAGE021
Figure 189874DEST_PATH_IMAGE022
因此,损失函数中的
Figure 404954DEST_PATH_IMAGE017
进行泰勒展开的二次多项式为:
Figure 356117DEST_PATH_IMAGE023
采用上述二次多项式替换损失函数中的Log函数之后的损失函数为:
Figure 9953DEST_PATH_IMAGE024
其中,将各参与方模型训练的参数线性累加,以两个参与方为例,记第一参与方A的模型训练的特征参数的线性累加值为preValA,且
Figure 438660DEST_PATH_IMAGE025
,其中,
Figure 762325DEST_PATH_IMAGE026
为第一参与方的模型训练的特征参数。记第二参与方B的模型训练参数的线性累加值为preValB,且
Figure 338800DEST_PATH_IMAGE027
,其中,
Figure 468430DEST_PATH_IMAGE028
为第二参与方的模型训练的特征参数。
将preValA和preValB带入损失函数Cost中得到Cost计算公式如下:
Figure 938594DEST_PATH_IMAGE029
Figure 761057DEST_PATH_IMAGE030
其中,参与方A的第一中间参数包括:(y-0.5)、(y-0.5)* preValA、
Figure 824828DEST_PATH_IMAGE031
Figure 430253DEST_PATH_IMAGE032
;参与方B的第二中间参数包括:(y-0.5)、(y-0.5)*preValB、
Figure 567973DEST_PATH_IMAGE033
Figure 623654DEST_PATH_IMAGE034
参与方A通过损失函数评估损失的方式如下:
参与方B采用自身的同态公钥加密数据得到第二同态加密数据,其中,第二同态加密数据包括:encByB(y-0.5)、encByB((y-0.5)* preValB)、
Figure 112404DEST_PATH_IMAGE035
Figure 770787DEST_PATH_IMAGE036
参与方B将第二同态加密数据发送至参与方A,参与方A使用预先得到的参与方B的同态公钥执行同态运算,运算结果如下:
Figure 825331DEST_PATH_IMAGE037
其中,ranNumA为第一随机数;参与方A将CostA的运算结果发送至参与方B。
参与方B使用自身的同态公钥对CostA的运算结果进行解密,并将解密后的结果作为第二关键参数发送给参与方A。参与方A接收到参与方B对CostA解密后的结果,即第二关键参数,从第二关键参数中去除第一随机数ranNumA,得到最终的计算结果,作为参与方A的最终损失值计算结果,并采用最终得到的损失值,更新参与方A的梯度值。
参与方B通过损失函数评估损失的方式如下:
参与方A采用自身的同态公钥加密数据得到第一同态加密数据,其中,第一同态加密数据包括:encByA(y-0.5)、encByA((y-0.5)* preValB)、
Figure 989596DEST_PATH_IMAGE038
Figure 637746DEST_PATH_IMAGE039
参与方A将第一同态加密数据发送至参与方B,参与方B使用预先得到的参与方A的同态公钥执行同态运算,运算结果如下:
Figure 709607DEST_PATH_IMAGE040
其中,ranNumB为第二随机数;参与方B将CostB的运算结果发送至参与方A。
参与方A使用自身的同态公钥对的CostB运算结果进行解密,并将解密后的结果作为第一关键参数发送给参与方B。参与方B接收到参与方A对CostB解密后的结果,即第一关键参数,从第一关键参数中去除第二随机数ranNumB,得到最终的计算结果,作为参与方B的最终损失值计算结果,并采用最终得到的损失值,更新参与方B的梯度值。
通过上述方式,参与方A和参与方B判断最近两次损失函数差值评估震荡幅度是否符合目标要求,根据损失函数差值评估结果,确定是否进行梯度下降的收敛运算。
梯度函数的计算过程如下:
Figure 8870DEST_PATH_IMAGE041
第i个特征的Grad(i)为:
Figure 78457DEST_PATH_IMAGE042
Figure 604117DEST_PATH_IMAGE043
Figure 417352DEST_PATH_IMAGE044
Figure 587433DEST_PATH_IMAGE045
同样的,predictValue(j)的计算,需要多方合作完成。a是alpha的缩写,代表学习率,是一个数值。
如果要完成去中心化计算梯度,核心是通过同态加密完成
Figure 827922DEST_PATH_IMAGE006
的计算,但同样,以e为底数的指数函数同样不支持同态计算。因此,需要把核心函数
Figure 575298DEST_PATH_IMAGE006
进行泰勒展开,以泰勒展开到二次项为例。
Figure 399683DEST_PATH_IMAGE006
的多元变量x(j)考虑作为1个
Figure 486587DEST_PATH_IMAGE007
,则可以用Sigmoid函数表示:
Figure 225873DEST_PATH_IMAGE008
Figure 398228DEST_PATH_IMAGE046
作为h(x),对h(x)进行一阶求导:
Figure 490949DEST_PATH_IMAGE047
Figure 494677DEST_PATH_IMAGE048
对f(x)进行二阶求导:
Figure 998340DEST_PATH_IMAGE049
Figure 657991DEST_PATH_IMAGE050
因此,
Figure 679037DEST_PATH_IMAGE046
进行泰勒展开到二次项的结果为:
Figure 740534DEST_PATH_IMAGE051
梯度函数的计算如下:
Figure 696989DEST_PATH_IMAGE052
参与方A的本地特征的梯度计算过程如下:
参与方B采用自身的同态加密数据得到第三同态加密数据,其中,第三同态加密数据包括:
Figure 640674DEST_PATH_IMAGE053
。参与方B将第三同态加密数据发送至参与方A,参与方A使用预先得到的参与方B的同态公钥执行同态运算,运算结果如下:
Figure 137514DEST_PATH_IMAGE054
其中,ranNumA为第一随机数;参与方A将GradA(i)的运算结果发送至参与方B。
参与方B使用自身的同态公钥对GradA(i)的运算结果进行解密,并将解密后的结果作为第三关键参数发送给参与方A。参与方A接收到参与方B对GradA(i)解密后的结果,即第三关键参数,从第三关键参数中去除第一随机数ranNumA,得到最终的计算结果,作为参与方A的更新梯度值。
参与方B的本地特征的梯度计算过程如下:
参与方A采用自身的同态加密数据得到第四同态加密数据,其中,第四同态加密数据包括:
Figure 240468DEST_PATH_IMAGE055
。参与方A将第四同态加密数据发送至参与方B,参与方B使用预先的得到的参与方A的同态公钥执行同态运算,运算结果如下:
Figure 430141DEST_PATH_IMAGE056
其中,ranNumB为第二随机数;参与方B将GradB(i)的运算结果发送至参与方A。
参与方A使用自身的同态公钥对GradB(i)的运算结果进行解密,并将解密后的结果作为第四关键参数发送给参与方B。参与方B接收到参与方A对GradB(i)解密后的结果,即第四关键参数,从第四关键参数中去除第二随机数ranNumB,得到最终的计算结果,作为参与方B的更新梯度值。
通过上述方案完成多方参与训练的分布式模型训练。需要说明的是,上述方案仅示例了两个参与方参与模型训练的过程,实际上,可以由多个参与方合作进行分布式模型训练,例如,可以有三个以上的参与方参与。
在另一个可选实施例中,还可以由可行第三方获取各参与方的样本数据进行模型训练;由各参与方将自身的同态加密数据发送至可信第三方,可信第三方可以采用上述实施例所提供的方法执行模型训练,本可选实施例对此不再进行赘述。
作为上述各基于同态加密的模型训练方法的实现,本公开还提供了一种实施各基于同态加密的模型训练方法的执行装置的可选实施例。该执行装置可以采用软件和/或硬件实现,并具体配置于电子设备中。
进一步参见图3,该基于同态加密的模型训练装置300,包括:数据获取模块301、超参数确定模块302和模型训练模块303。其中,
数据获取模块301,用于在模型训练的过程中,获取同态加密数据;
超参数确定模块302,用于根据模型训练过程中出现的状态数据,确定模型逼近函数的超参数;其中,所述模型逼近函数用于替换所述模型训练过程中涉及的模型原函数;
模型训练模块303,用于将所述同态加密数据输入所述模型逼近函数进行计算,并根据计算结果执行模型训练。
本公开实施例通过在模型训练的过程中,获取同态加密数据;根据模型训练过程中出现的状态数据,确定模型逼近函数的超参数;其中,模型逼近函数用于替换模型训练过程中涉及的模型原函数;将同态加密数据输入模型逼近函数进行计算,并根据计算结果执行模型训练。上述方案通过在多方联合训练的过程中采用同态加密技术保护数据的隐私,提高了各方模型训练过程中数据的安全性。通过采用模型逼近函数替换模型训练过程中涉及的模型原函数,解决了同态加密技术对模型训练过程所采用的函数的限制性,实现了在模型训练过程中支持模型所使用的各类函数,兼顾了模型训练过程的隐私保护和函数运用的灵活性。
在一个可选实施例中,模型原函数包括下述至少一种:损失函数、梯度计算函数、以及神经网络的神经元激活函数。
在一个可选实施例中,模型原函数包括下述至少一种:Log函数、幂函数、三角函数以及分段函数。
在一个可选实施例中,模型逼近函数包括多项式。
在一个可选实施例中,模型逼近函数的超参数包括下述至少一种:多项式的展开次数、变量系数、多项式组合中的多项式个数。
在一个可选实施例中,模型为线性模型或神经网络模型。
在一个可选实施例中,超参数确定模块302,包括:
数据计算单元,用于将所述同态加密数据输入采用当前超参数的模型逼近函数进行计算;
超参数确定单元,用于根据计算结果,基于超参数与函数计算结果的匹配关系,重新确定当前超参数。
在一个可选实施例中,超参数确定单元,包括:
超参数确定子单元,用于根据计算结果落入的取值范围,获取与所述取值范围对应的超参数,确定为当前超参数。
在一个可选实施例中,该装置还包括:
匹配关系确定模块,用于确定超参数与函数计算结果之间匹配关系的过程;
匹配关系确定模块,包括:
测试训练单元,用于采用至少两组同态加密数据测试样本,分别输入模型进行测试训练;每组测试训练所采用的模型逼近函数的超参数不同;
超参数选择单元,用于根据各组测试训练结果,选择符合训练要求的模型逼近函数的超参数。
在一个可选实施例中,状态数据包括当前轮计算的计算时长、和/或计算迭代次数。
在一个可选实施例中,超参数确定模块302,包括:
第一当前超参数确定单元,用于如果模型训练过程中当前轮计算的计算时长满足时长条件,则确定精度优先级低于当前超参数的候选超参数代替当前超参数。
在一个可选实施例中,超参数确定模块302,包括:
第二当前超参数确定单元,用于如果模型训练过程中的计算迭代次数满足次数条件,则确定精度优先级高于当前超参数的候选超参数代替当前超参数。
在一个可选实施例中,模型为分布式模型,所述同态加密数据为模型训练过程中多个模型参与方之间交互的同态加密中间参数。
上述基于同态加密的模型训练装置可执行本公开任意实施例所提供的基于同态加密的模型训练方法,具备执行各基于同态加密的模型训练方法相应的功能模块和有益效果。
本公开的技术方案中,所涉及的同态加密数据的获取、存储和应用等,均符合相关法律法规的规定,且不违背公序良俗。
根据本公开的实施例,本公开还提供了一种电子设备、一种可读存储介质和一种计算机程序产品。
图4示出了可以用来实施本公开的实施例的示例电子设备400的示意性框图。电子设备旨在表示各种形式的数字计算机,诸如,膝上型计算机、台式计算机、工作台、个人数字助理、服务器、刀片式服务器、大型计算机、和其它适合的计算机。电子设备还可以表示各种形式的移动装置,诸如,个人数字处理、蜂窝电话、智能电话、可穿戴设备和其它类似的计算装置。本文所示的部件、它们的连接和关系、以及它们的功能仅仅作为示例,并且不意在限制本文中描述的和/或者要求的本公开的实现。
如图4所示,设备400包括计算单元401,其可以根据存储在只读存储器(ROM)402中的计算机程序或者从存储单元408加载到随机访问存储器(RAM)403中的计算机程序,来执行各种适当的动作和处理。在RAM 403中,还可存储设备400操作所需的各种程序和数据。计算单元401、ROM 402以及RAM 403通过总线404彼此相连。输入/输出(I/O)接口405也连接至总线404。
设备400中的多个部件连接至I/O接口405,包括:输入单元406,例如键盘、鼠标等;输出单元407,例如各种类型的显示器、扬声器等;存储单元408,例如磁盘、光盘等;以及通信单元409,例如网卡、调制解调器、无线通信收发机等。通信单元409允许设备400通过诸如因特网的计算机网络和/或各种电信网络与其他设备交换信息/数据。
计算单元401可以是各种具有处理和计算能力的通用和/或专用处理组件。计算单元401的一些示例包括但不限于中央处理单元(CPU)、图形处理单元(GPU)、各种专用的人工智能(AI)计算芯片、各种运行机器学习模型算法的计算单元、数字信号处理器(DSP)、以及任何适当的处理器、控制器、微控制器等。计算单元401执行上文所描述的各个方法和处理,例如基于同态加密的模型训练方法。例如,在一些实施例中,基于同态加密的模型训练方法可被实现为计算机软件程序,其被有形地包含于机器可读介质,例如存储单元408。在一些实施例中,计算机程序的部分或者全部可以经由ROM 402和/或通信单元409而被载入和/或安装到设备400上。当计算机程序加载到RAM 403并由计算单元401执行时,可以执行上文描述的基于同态加密的模型训练方法的一个或多个步骤。备选地,在其他实施例中,计算单元401可以通过其他任何适当的方式(例如,借助于固件)而被配置为执行基于同态加密的模型训练方法。
本文中以上描述的系统和技术的各种实施方式可以在数字电子电路系统、集成电路系统、场可编程门阵列(FPGA)、专用集成电路(ASIC)、专用标准产品(ASSP)、芯片上系统的系统(SOC)、负载可编程逻辑设备(CPLD)、计算机硬件、固件、软件、和/或它们的组合中实现。这些各种实施方式可以包括:实施在一个或者多个计算机程序中,该一个或者多个计算机程序可在包括至少一个可编程处理器的可编程系统上执行和/或解释,该可编程处理器可以是专用或者通用可编程处理器,可以从存储系统、至少一个输入装置、和至少一个输出装置接收数据和指令,并且将数据和指令传输至该存储系统、该至少一个输入装置、和该至少一个输出装置。
用于实施本公开的方法的程序代码可以采用一个或多个编程语言的任何组合来编写。这些程序代码可以提供给通用计算机、专用计算机或其他可编程数据处理装置的处理器或控制器,使得程序代码当由处理器或控制器执行时使流程图和/或框图中所规定的功能/操作被实施。程序代码可以完全在机器上执行、部分地在机器上执行,作为独立软件包部分地在机器上执行且部分地在远程机器上执行或完全在远程机器或服务器上执行。
在本公开的上下文中,机器可读介质可以是有形的介质,其可以包含或存储以供指令执行系统、装置或设备使用或与指令执行系统、装置或设备结合地使用的程序。机器可读介质可以是机器可读信号介质或机器可读储存介质。机器可读介质可以包括但不限于电子的、磁性的、光学的、电磁的、红外的、或半导体系统、装置或设备,或者上述内容的任何合适组合。机器可读存储介质的更具体示例会包括基于一个或多个线的电气连接、便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM或快闪存储器)、光纤、便捷式紧凑盘只读存储器(CD-ROM)、光学储存设备、磁储存设备、或上述内容的任何合适组合。
为了提供与用户的交互,可以在计算机上实施此处描述的系统和技术,该计算机具有:用于向用户显示信息的显示装置(例如,CRT(阴极射线管)或者LCD(液晶显示器)监视器);以及键盘和指向装置(例如,鼠标或者轨迹球),用户可以通过该键盘和该指向装置来将输入提供给计算机。其它种类的装置还可以用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的传感反馈(例如,视觉反馈、听觉反馈、或者触觉反馈);并且可以用任何形式(包括声输入、语音输入或者、触觉输入)来接收来自用户的输入。
可以将此处描述的系统和技术实施在包括后台部件的计算系统(例如,作为数据服务器)、或者包括中间件部件的计算系统(例如,应用服务器)、或者包括前端部件的计算系统(例如,具有图形用户界面或者网络浏览器的用户计算机,用户可以通过该图形用户界面或者该网络浏览器来与此处描述的系统和技术的实施方式交互)、或者包括这种后台部件、中间件部件、或者前端部件的任何组合的计算系统中。可以通过任何形式或者介质的数字数据通信(例如,通信网络)来将系统的部件相互连接。通信网络的示例包括:局域网(LAN)、广域网(WAN)、区块链网络和互联网。
计算机系统可以包括客户端和服务器。客户端和服务器一般远离彼此并且通常通过通信网络进行交互。通过在相应的计算机上运行并且彼此具有客户端-服务器关系的计算机程序来产生客户端和服务器的关系。服务器可以是云服务器,又称为云计算服务器或云主机,是云计算服务体系中的一项主机产品,以解决了传统物理主机与VPS服务中,存在的管理难度大,业务扩展性弱的缺陷。服务器也可以为分布式系统的服务器,或者是结合了区块链的服务器。
人工智能是研究使计算机来模拟人的某些思维过程和智能行为(如学习、推理、思考、规划等)的学科,既有硬件层面的技术也有软件层面的技术。人工智能硬件技术一般包括如传感器、专用人工智能芯片、云计算、分布式存储、大数据处理等技术;人工智能软件技术主要包括计算机视觉技术、语音识别技术、自然语言处理技术及机器学习/深度学习技术、大数据处理技术、知识图谱技术等几大方向。
云计算(cloud computing),指的是通过网络接入弹性可扩展的共享物理或虚拟资源池,资源可以包括服务器、操作系统、网络、软件、应用和存储设备等,并可以按需、自服务的方式对资源进行部署和管理的技术体系。通过云计算技术,可以为人工智能、区块链等技术应用、模型训练提供高效强大的数据处理能力。
应该理解,可以使用上面所示的各种形式的流程,重新排序、增加或删除步骤。例如,本发公开中记载的各步骤可以并行地执行也可以顺序地执行也可以不同的次序执行,只要能够实现本公开公开的技术方案所期望的结果,本文在此不进行限制。
上述具体实施方式,并不构成对本公开保护范围的限制。本领域技术人员应该明白的是,根据设计要求和其他因素,可以进行各种修改、组合、子组合和替代。任何在本公开的精神和原则之内所作的修改、等同替换和改进等,均应包含在本公开保护范围之内。

Claims (14)

1.一种基于同态加密的模型训练方法,包括:
在模型训练的过程中,获取同态加密数据;
根据模型训练过程中出现的状态数据,确定模型逼近函数的超参数;其中,所述模型逼近函数用于替换所述模型训练过程中涉及的模型原函数;所述超参数是与模型逼近函数相关联的能够控制模型训练行为的参数;
将所述同态加密数据输入所述模型逼近函数进行计算,并根据计算结果执行模型训练;
其中,根据模型训练过程中出现的状态数据,确定模型逼近函数的超参数包括:
将所述同态加密数据输入采用当前超参数的模型逼近函数进行计算;
根据计算结果落入的取值范围,获取与所述取值范围对应的超参数,确定为当前超参数。
2.根据权利要求1所述的方法,其中,所述模型原函数包括下述至少一种:损失函数、梯度计算函数、以及神经网络的神经元激活函数。
3.根据权利要求1所述的方法,其中,所述模型原函数包括下述至少一种:Log函数、幂函数、三角函数以及分段函数。
4.根据权利要求1所述的方法,其中,所述模型逼近函数包括多项式。
5.根据权利要求4所述的方法,其中,所述模型逼近函数的超参数包括下述至少一种:多项式的展开次数、变量系数、多项式组合中的多项式个数。
6.根据权利要求1-5任一所述的方法,其中,所述模型为线性模型或神经网络模型。
7.根据权利要求1所述的方法,在模型训练过程之前,还包括超参数与函数计算结果之间匹配关系的确定过程,所述确定过程包括:
采用至少两组同态加密数据测试样本,分别输入模型进行测试训练;每组测试训练所采用的模型逼近函数的超参数不同;
根据各组测试训练结果,选择符合训练要求的模型逼近函数的超参数。
8.根据权利要求1所述的方法,其中,所述状态数据包括当前轮计算的计算时长、和/或计算迭代次数。
9.根据权利要求8所述的方法,其中,根据模型训练过程中出现的状态数据,确定模型逼近函数的超参数包括:
如果模型训练过程中当前轮计算的计算时长满足时长条件,则确定精度优先级低于当前超参数的候选超参数代替当前超参数。
10.根据权利要求8所述的方法,其中,根据模型训练过程中出现的状态数据,确定模型逼近函数的超参数包括:
如果模型训练过程中的计算迭代次数满足次数条件,则确定精度优先级高于当前超参数的候选超参数代替当前超参数。
11.根据权利要求1所述的方法,其中,所述模型为分布式模型,所述同态加密数据为模型训练过程中多个模型参与方之间交互的同态加密中间参数。
12.一种基于同态加密的模型训练装置,包括:
数据获取模块,用于在模型训练的过程中,获取同态加密数据;
超参数确定模块,用于根据模型训练过程中出现的状态数据,确定模型逼近函数的超参数;其中,所述模型逼近函数用于替换所述模型训练过程中涉及的模型原函数;所述超参数是与模型逼近函数相关联的能够控制模型训练行为的参数;
模型训练模块,用于将所述同态加密数据输入所述模型逼近函数进行计算,并根据计算结果执行模型训练;
其中,所述超参数确定模块,包括:
数据计算单元,用于将所述同态加密数据输入采用当前超参数的模型逼近函数进行计算;
超参数确定单元,用于根据计算结果落入的取值范围,获取与所述取值范围对应的超参数,确定为当前超参数。
13.一种电子设备,包括:
至少一个处理器;以及
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行权利要求1-11中任一项所述的基于同态加密的模型训练方法。
14.一种存储有计算机指令的非瞬时计算机可读存储介质,其中,所述计算机指令用于使计算机执行根据权利要求1-11中任一项所述的基于同态加密的模型训练方法。
CN202111528236.9A 2021-12-15 2021-12-15 基于同态加密的模型训练方法、装置、设备以及存储介质 Active CN113965313B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN202111528236.9A CN113965313B (zh) 2021-12-15 2021-12-15 基于同态加密的模型训练方法、装置、设备以及存储介质
US18/080,416 US20230188321A1 (en) 2021-12-15 2022-12-13 Method for training model based on homomorphic encryption, device, and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202111528236.9A CN113965313B (zh) 2021-12-15 2021-12-15 基于同态加密的模型训练方法、装置、设备以及存储介质

Publications (2)

Publication Number Publication Date
CN113965313A CN113965313A (zh) 2022-01-21
CN113965313B true CN113965313B (zh) 2022-04-05

Family

ID=79473286

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111528236.9A Active CN113965313B (zh) 2021-12-15 2021-12-15 基于同态加密的模型训练方法、装置、设备以及存储介质

Country Status (2)

Country Link
US (1) US20230188321A1 (zh)
CN (1) CN113965313B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114626511B (zh) * 2022-05-16 2023-03-24 北京鹰瞳科技发展股份有限公司 神经网络的训练方法、推理方法及相关产品

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11562230B2 (en) * 2017-03-22 2023-01-24 Visa International Service Association Privacy-preserving machine learning
US11544494B2 (en) * 2017-09-28 2023-01-03 Oracle International Corporation Algorithm-specific neural network architectures for automatic machine learning model selection
US11087223B2 (en) * 2018-07-11 2021-08-10 International Business Machines Corporation Learning and inferring insights from encrypted data
CN109684855B (zh) * 2018-12-17 2020-07-10 电子科技大学 一种基于隐私保护技术的联合深度学习训练方法
EP3959839A1 (en) * 2019-04-23 2022-03-02 OneSpan NV Methods and systems for privacy preserving evaluation of machine learning models
CN110363286A (zh) * 2019-06-27 2019-10-22 腾讯科技(深圳)有限公司 神经网络模型的生成方法及装置
KR20210083974A (ko) * 2019-12-27 2021-07-07 삼성에스디에스 주식회사 근사 함수를 이용한 연산 장치 및 방법
CN111415013B (zh) * 2020-03-20 2024-03-22 矩阵元技术(深圳)有限公司 隐私机器学习模型生成、训练方法、装置及电子设备
US11546134B2 (en) * 2020-04-16 2023-01-03 Samsung Electronics Co., Ltd. Method and apparatus for processing ciphertext based on homomorphic encryption
GB2594453A (en) * 2020-04-24 2021-11-03 Thales Holdings Uk Plc Methods and systems for training a machine learning model
KR20210135075A (ko) * 2020-05-04 2021-11-12 삼성전자주식회사 동형 암복호화 장치, 상기 장치를 포함하는 시스템, 및 동형 암복호화의 수행 방법
US11481659B1 (en) * 2020-06-30 2022-10-25 Amazon Technologies, Inc. Hyperparameter optimization using fairness constraints
CN113055153B (zh) * 2021-03-10 2022-12-23 中国人民大学 一种基于全同态加密算法的数据加密方法、系统和介质
CN113537516B (zh) * 2021-09-15 2021-12-14 北京百度网讯科技有限公司 分布式机器学习模型的训练方法、装置、设备和介质
CN113553610B (zh) * 2021-09-22 2021-12-31 哈尔滨工业大学(深圳)(哈尔滨工业大学深圳科技创新研究院) 基于同态加密和可信硬件的多方隐私保护机器学习方法

Also Published As

Publication number Publication date
US20230188321A1 (en) 2023-06-15
CN113965313A (zh) 2022-01-21

Similar Documents

Publication Publication Date Title
WO2019111118A1 (en) Robust gradient weight compression schemes for deep learning applications
CN110795569B (zh) 知识图谱的向量表示生成方法、装置及设备
CN113963110B (zh) 纹理图生成方法、装置、电子设备及存储介质
CN113407850B (zh) 一种虚拟形象的确定和获取方法、装置以及电子设备
CN114330125A (zh) 基于知识蒸馏的联合学习训练方法、装置、设备及介质
CN111966361A (zh) 用于确定待部署模型的方法、装置、设备及其存储介质
CN113965313B (zh) 基于同态加密的模型训练方法、装置、设备以及存储介质
CN114186256B (zh) 神经网络模型的训练方法、装置、设备和存储介质
CN113627361B (zh) 人脸识别模型的训练方法、装置及计算机程序产品
CN108509179B (zh) 用于检测人脸的方法、用于生成模型的装置
CN113641829B (zh) 图神经网络的训练与知识图谱的补全方法、装置
CN114818913A (zh) 决策生成方法和装置
CN113052962B (zh) 模型训练、信息输出方法,装置,设备以及存储介质
CN115292467B (zh) 信息处理与模型训练方法、装置、设备、介质及程序产品
CN111957053A (zh) 游戏玩家匹配方法、装置、存储介质与电子设备
CN114792097B (zh) 预训练模型提示向量的确定方法、装置及电子设备
CN115906987A (zh) 深度学习模型的训练方法、虚拟形象驱动方法和装置
CN113313261B (zh) 函数处理方法、装置及电子设备
CN113657466B (zh) 预训练模型的生成方法、装置、电子设备和存储介质
CN113657468A (zh) 预训练模型的生成方法、装置、电子设备和存储介质
CN115840867A (zh) 数学解题模型的生成方法、装置、电子设备和存储介质
CN113344200A (zh) 用于训练可分离卷积网络的方法、路侧设备及云控平台
CN113344213A (zh) 知识蒸馏方法、装置、电子设备及计算机可读存储介质
CN114494818B (zh) 图像处理方法、模型训练方法、相关装置及电子设备
CN117495571B (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