一种基于区块链的隐私保护机器学习训练与推理方法及系统

文档序号:29068073发布日期:2022-03-01 20:08阅读:101来源:国知局
一种基于区块链的隐私保护机器学习训练与推理方法及系统

1.本发明涉及一种基于区块链的隐私保护机器学习训练与推理方法及系统,属于数据管理技术领域。


背景技术:

2.数据与模型是机器学习的基础,在机器学习的训练与推理过程中保障数据与模型的安全与隐私至关重要。机器学习训练数据的泄露可能会导致用户数据的个人身份信息和敏感的隐私信息遭窃,用户安全受到威胁。机器学习模型的泄露,如模型训练算法、模型拓扑结构、模型权重参数、激活函数以及超参数等与机器学习模型有关的信息的泄露,可能会导致攻击者发动模型逆向攻击,即通过对模型进行逆向分析,从而获取恢复出模型的训练数据。隐私保护的机器学习的研究旨在通过密码学等手段保护机器学习训练与推理过程中的隐私问题。但隐私保护的机器学习不可避免地提高了计算开销,而外包计算为设备资源受限但又有隐私需求的模型所有者提供了训练途径。然而在外包计算的场景下,机器学习面临的安全与信任问题更加严峻,模型所有者需要保证在外包计算过程中不泄露任何有关模型和数据的隐私信息,同时需要确保计算承包者诚实且正确地进行了计算。区块链技术的去中心化和不可篡改等特性为解决机器学习的安全和可信问题提供了可行道路,故亟待提出一种基于区块链的机器学习训练与推理方法,以实现安全、可信且隐私得到保护的机器学习模型训练以及推理服务。


技术实现要素:

3.本发明提供一种基于区块链的隐私保护机器学习训练与推理方法及系统,便于实现安全、可行且隐私保护的机器学习。
4.为解决上述技术问题,本发明所采用的技术方案如下:
5.一种基于区块链的隐私保护机器学习训练方法,应用于区块链网络,区块链网络包括机器学习模型所有者节点、计算承包者节点、可信仲裁节点和推理服务客户端节点;其中,机器学习模型所有者节点、计算承包者节点和可信仲裁节点形成模型通道,机器学习模型所有者节点、推理服务客户端节点和可信仲裁节点形成推理通道;
6.基于区块链的隐私保护机器学习训练方法,包括如下步骤:
7.1)机器学习模型所有者节点与计算承包者节点经过身份认证与准入后加入模型通道;
8.2)机器学习模型所有者节点通过交易的形式向模型通道区块链网络发出提案;
9.3)执行计算外包任务的其他机器学习模型所有者节点和计算承包者节点完成计算任务;
10.4)区块链网络将计算外包任务的相关信息打包入区块并上链。
11.上述方法,在模型训练阶段,模型所有者节点根据自身资源设备情况决定是否独立完成模型训练过程,当其设备资源受限无法独立完成隐私保护的机器学习模型训练时,
通过交易的形式向由其他模型所有者和计算承包者组成的区块链网络发出提案,具有强大计算能力的其他模型所有者和计算承包者选择对计算外包任务进行承包;完成外包计算任务后,发起计算外包提案的模型所有者收到计算结果,同时本次计算外包任务的相关信息被打包入区块并上链。
12.为了进一步提高安全性,上述基于区块链的隐私保护机器学习训练方法,还包括:5)模型所有者节点完成模型训练或模型得到更新,将模型相关信息的摘要上传至区块链网络以打包入区块并上链。
13.上述基于区块链的隐私保护机器学习训练方法的步骤5)中,独立完成模型训练或更新的机器学习模型所有者节点,在提供推理服务前将模型版本及模型相关信息进行哈希后记录在区块链上;机器学习模型所有者节点在一段时候后由于收集到新的训练数据等原因,对模型进行再训练,再训练为重复上述步骤,得到的模型更新同样地将模型版本及模型相关信息进行哈希后记录在区块链上;机器学习模型所有者节点每进行一次服务更新,都通过区块链交易的形式进行,所有服务更新都记录在区块链上。
14.上述基于区块链的隐私保护机器学习训练方法的步骤3)中,执行计算外包任务的其他模型所有者或者计算承包者完成任务后,同时将计算结果发送到区块链网络和发起计算外包提案的模型所有者节点。
15.上述基于区块链的隐私保护机器学习训练方法的步骤4)中,在区块链网络中设有可信仲裁节点,发起计算外包提案的机器学习模型所有者节点收到计算结果后对计算结果进行正确性验证,若计算结果正确,将本次计算外包任务的相关信息提交给区块链网络以使其被打包入区块并记录上链;若计算结果有误,可向可信仲裁节点提出仲裁申请,可信仲裁节点根据仲裁申请执行外包计算过程,并将得到的结果与收到的计算结果对比,据此对仲裁结果做出判决。
16.所述过程中被打包入区块并上链的计算外包任务的相关信息根据实际需求进行加密或者哈希计算;出于安全与隐私考虑,且区块链起到验证、追溯以及形成不可篡改的记录的作用,作为优选,所述相关信息经过哈希之后上链。
17.一种基于区块链的隐私保护机器学习推理方法,其特征在于:应用于区块链网络,区块链网络包括机器学习模型所有者节点、计算承包者节点、可信仲裁节点和推理服务客户端节点;其中,机器学习模型所有者节点、计算承包者节点和可信仲裁节点形成模型通道,机器学习模型所有者节点、推理服务客户端节点和可信仲裁节点形成推理通道;
18.基于区块链的隐私保护机器学习推理方法,包括如下步骤:
19.1)机器学习模型所有者节点与推理服务客户端节点经过身份认证与准入后加入推理通道;
20.2)推理服务客户端节点通过交易的形式向推理通道区块链网络发出提案;
21.3)机器学习模型所有者节点完成模型推理,将推理结果发送给推理服务客户端节点;
22.4)区块链网络将模型推理的相关信息打包入区块并上链。
23.上述基于区块链的隐私保护机器学习推理方法的步骤2)中,在模型推理阶段,模型所有者为推理服务客户端(以下简称客户端)提供模型推理服务,客户端通过交易的形式向有模型所有者和其他具有相同推理服务需求的客户端组成的区块链网络发出提案,所述
提案包括推理服务类型和用于推理的数据;
24.上述基于区块链的隐私保护机器学习推理方法的步骤3)中,机器学习模型所有者节点根据推理服务客户端节点提供的数据进行推理,完成后将结果返回给推理服务客户端节点,同时机器学习模型所有者节点作为该记账者,所有推理服务的相关信息,如输入和推理结果,都记录在区块链上。
25.上述基于区块链的隐私保护机器学习推理方法的步骤4)中,机器学习模型所有者节点训练采用支持密文计算的机器学习模型,支持密文计算的机器学习模型使推理服务客户端节点发送用于推理的数据的密文,即可得到对应明文的推理结果。
26.所述过程中被记录上链的推理服务的相关信息,如输入和推理结果,根据实际需求进行加密或者哈希计算;出于安全与隐私考虑,且区块链起到验证、追溯以及形成不可篡改的记录的作用,作为优选,所述相关信息经过哈希之后上链。
27.在机器学习模型所有者节点对模型进行更新前后,对于同一个推理服务若发生输入同一个用于推理的数据但推理服务结果输出不同,推理服务客户端节点怀疑该服务提供者先前是否诚实提供了推理服务,此时推理服务客户端节点向可信仲裁节点提出仲裁申请,可信仲裁节点通过模型通道查询模型所有者模型更新记录,实现对之前的输出结果的验证。
28.一种基于区块链的隐私保护机器学习训练与推理系统,应用于区块链网络,区块链网络包括机器学习模型所有者节点、计算承包者节点、可信仲裁节点和推理服务客户端节点;其中,机器学习模型所有者节点、计算承包者节点和可信仲裁节点形成模型通道,机器学习模型所有者节点、推理服务客户端节点和可信仲裁节点形成推理通道;
29.基于区块链的隐私保护机器学习训练与推理系统包括:机器学习模型训练模块、机器学习模型推理服务模块、以及与机器学习模型训练模块和推机器学习模型推理服务模块连接并相互通信的区块链服务模块;
30.机器学习模型训练模块,用于机器学习模型所有者节点独立或外包地完成用于推理任务的模型训练,以及根据新数据对模型进行更新;
31.机器学习模型推理服务模块,用于机器学习模型所有者节点根据推理服务客户端节点发起的推理服务申请以及其提供的待推理的数据,进行相应模型推理并输出推理结果;
32.区块链服务模块,用于模块接受区块链网络的消息并将相关模型训练或模型推理的待处理数据传递给模型训练模块或模型推理服务模块,并且将模型训练模块或模型推理服务模块传递来的相关数据以交易提案等形式发送到区块链网络。
33.模型通道和推理通道分别由相应的节点组成,并被其中的节点所私有和管理,从而对通道内的信息进行隔离,使得通道外的实体无法接触到通道内进行流通和管理的信息;
34.模型通道,构成模型通道的机器学习模型所有者节点和外包承包者节点在通道中组成区块链网络,上述训练方法在通道中进行模型训练与模型更新过程;推理通道,构成推理通道的模型所有者节点和外包承包者节点在通道中组成区块链网络,根据上述推理方法在通道中进行模型推理的申请与服务过程,系统中每个推理服务形成一个推理通道,每个通道中包括提供该模型推理服务的模型所有者和有该模型推理服务需求的各模型推理服
务客户端,各推理通道间形成信息隔离。
35.上述模型通道,在其中加入可信仲裁节点,可以对模型训练与更新过程中的仲裁申请进行处理和判决;同时对模型推理服务过程中的仲裁申请进行处理和判决。
36.上述在模型通道中加入可信仲裁节点,可由一个可信的第三方担任,由其接入模型通道和各推理通道,并由其公正诚实地执行各方提出的仲裁申请。
37.上述区块链服务模块,还用于当模型通道和推理通道中的节点提出仲裁申请时,调用相应通道区块链网络中部署的智能合约查找相关交易记录,以确定违规者并予以处理。
38.本发明未提及的技术均参照现有技术。
39.本发明提供的基于区块链的隐私保护机器学习训练与推理方法及系统,通过模型通道与推理通道的设计,使得模型训练与推理之间分开,各推理服务之间分开,且各通道之间信息的隔离为模型训练与推理、推理与推理之间形成了良好的隐私保护,另外通道可于物理上实现,从而实现各通道之间的物理隔离,实现更强的安全性与隐私保护;训练通道中,通过共识机制决定记账权,使得互为竞争者的各模型所有者互相监督、互相制约,同时也互相激励,不断维护、更新模型,从而提高推理服务质量;推理通道中,模型所有者担任记账者,推理服务客户端仅需向模型所有者提供数据,模型始终掌握在模型所有者手中,保证了模型的安全与隐私,保护了模型所有者的权益,若采用支持密文推理的机器学习模型也能够同时保证推理服务客户端手中待推理数据的安全与隐私;系统中的区块链网络分别为模型训练过程和模型推理过程提供了监管,智能合约的嵌入使得训练和推理过程的执行具有执行的自动性和强制性,从而保证了模型训练与推理过程的安全与可信;基于区块链网络构建的系统具有了对用户违规等异常情况进行处理的能力,因此系统还可应用于涉及支付的场景,同时系统为仲裁节点的接入提供了可能性与空间,其可通过接入不同的通道从而提供多样化的仲裁服务,在不破坏通道的设计目的与完整性的前提下,提高了系统的整体性,提高了系统的异常处理能力和可靠性;系统包括了从模型训练过程到提供推理服务过程的设计,同时区块链的结合,提高了最终提供给推理服务客户端也就是用户的服务的可溯源性。
附图说明
40.图1为本发明基于区块链的隐私保护机器学习训练方法的流程图;
41.图2为本发明实施例中基于区块链的隐私保护机器学习训练与推理系统的结构示意图;
42.图3为本发明实施例中基于区块链的隐私保护机器学习训练方法的一个具体示例的流程图;
43.图4为本发明实施例中基于区块链的机器学习推理方法的一个具体示例的流程图;
44.图5为本发明实施例中基于区块链的隐私保护机器学习训练与推理装置的一个具体示例的原理框图;
具体实施方式
45.为了更好地理解本发明,下面结合实施例进一步阐明本发明的内容,但本发明的内容不仅仅局限于下面的实施例。
46.本实施例提供一种基于区块链的隐私保护机器学习训练方法,应用于基于区块链构建的网络,所述区块链网络包括模型通道和各推理通道,所述模型通道包括机器学习模型所有者节点、计算承包者节点和可信仲裁节点,所述推理通道包括机器学习模型所有者节点、推理服务客户端节点和可信仲裁节点,本技术通过模型所有者设备资源受限场景下的具体实施例,并结合附图,对本实施例记载的方案进行说明,该方法包括如下步骤:
47.步骤201,模型所有者节点与计算承包者节点经过身份认证与准入后加入模型通道(mc,modelchannel)。
48.步骤202,模型所有者节点通过交易的形式向由其他模型所有者和计算承包者组成的模型通道区块链网络发出提案。
49.示例性地,模型所有者节点由于设备资源受限难以独立地完成隐私保护的机器学习模型训练任务,需要通过安全计算外包的方式将计算开销较大的运算步骤外包给具有足够设备资源、计算能力强大的其他模型所有者节点或者计算承包者节点完成。模型所有者节点通过调用部署在区块链网络中的智能合约实现计算外包任务的发布,所述计算外包任务的发布以交易提案的形式进行,其中包括计算外包任务类型、加密后的待计算数据及数据摘要和计算任务完成期限等,此时计算外包任务被发布至区块链网络,具有强大计算能力的其他模型所有者节点或者计算外包者节点对发布的计算外包任务进行承包。计算承包者节点进行机器学习加密训练,在训练过程中,除训练必要的加密数据和信息外,计算承包者无法得到任何有关模型所有者节点的隐私信息。表1提供了在明文训练,基于同态加密的加密训练,基于混淆电路的加密训练这三种训练模式下的对于不同大小数据集模型训练时间对比。表2提供了上述三种训练模式的模型准确度。数据表明,利用加密方案为机器学习模型训练提供隐私保护对模型的准确度影响很小,虽然加密训练相比于明文形式的数据训练在一定程度上增加了训练时间开销,但安全外包训练解决了资源受限的设备在训练模型时面临的挑战,同时保护了数据所有方的隐私。在实际使用中,也可以利用离线/在线协议使得训练更加高效。
50.表1:训练时间(s)对比
[0051][0052][0053]
表2:模型准确度(%)对比
[0054]
训练集大小明文训练基于同态加密的加密训练基于混淆电路的加密训练
4.6mb92.3590.3591.8923mb93.5693.0392.5246mb95.2394.6794.8592mb97.5696.6297.20460mb98.2397.5697.94
[0055]
本实施例模型所有者节点向承包该计算任务的节点传送带计算数据的方式方法或通信协议过程不作限定,本领域技术人员可以根据实际需要确定,示例性地,模型所有者可不将数据上传至区块链网络,仅上传待计算数据的摘要,可在承包者身份确定后直接向其发送数据,承包者收到数据后计算数据摘要并与发布至区块链网络中的计算任务中的数据摘要比对,确认一致后进行计算,否则即可要求模型拥有者重新发送。本实施例对模型所有者节点所进行的隐私保护机器学习的方式和计算外包的内容不作限定,本领域技术人员可以根据实际需要确定。
[0056]
步骤203,承包外包计算任务的其他模型所有者节点或计算承包者节点完成计算任务。
[0057]
示例性地,承包外包计算任务的其他模型所有者节点或计算承包者节点根据计算外包的交易提案中规定的计算任务类型和规定完成时间进行计算,完成后通过部署在区块链网络中的智能合约将计算结果及其摘要,以及计算完成时间等相关信息发送给区块链网络,发起计算外包提案的模型所有者收到计算结果。本实施例承包外包计算任务的节点向发起计算外包提案的模型所有者传送计算结果的方式方法或通信协议过程不作限定,本领域技术人员可以根据实际需要确定。本实施例承包外包计算任务的节点通过智能合约上传至区块链的信息内容不作限定,本领域技术人员可以根据实际需要确定,示例性地承包外包计算任务的节点仅上传计算结果的消息摘要,不上传完整的计算结果,发起计算外包提案的模型所有者收到计算结果后计算其消息摘要,并与承包外包计算任务的节点上传至区块链网络的消息摘要比对,并确认一致与否。
[0058]
步骤204,区块链网络将计算外包任务的相关信息打包入区块并上链。
[0059]
本实施例对区块链网络中区块大小、出块时间以及共识机制不作限定,本领域技术人员可以根据实际需要确定。
[0060]
步骤205,模型所有者节点完成模型训练或模型得到更新,将模型相关信息的摘要上传至区块链网络以打包入区块并上链。
[0061]
本发明实施例公开了一种基于区块链的隐私保护机器学习推理方法,应用于基于区块链构建的网络,所述区块链网络包括模型通道和各推理通道,所述模型通道包括机器学习模型所有者节点、计算承包者节点和可信仲裁节点,所述推理通道包括机器学习模型所有者节点、推理服务客户端节点和可信仲裁节点,本技术通过模型所有者设备资源受限场景下的具体实施例,并结合附图,对本实施例记载的方案进行说明,该方法包括如下步骤:
[0062]
步骤301,模型所有者节点与推理服务客户端节点经过身份认证与准入后加入推理通道(ic,inferencechannel)。
[0063]
步骤302,推理服务客户端节点通过交易的形式向由模型所有者节点与其他推理服务客户端节点组成的推理通道区块链网络发出提案。
[0064]
示例性地,推理服务客户端节点通过调用部署在区块链网络上的智能合约实现推理服务申请的发布,所述推理服务申请的发布以交易提案的形式进行,其中包括模型推理任务类型、待输入模型的推理数据及数据摘要和推理完成期限等,此时推理服务申请被发布至推理通道区块链网络,模型所有者节点作为通道内的唯一记账者收到推理服务客户端发出的推理服务申请,本实施例推理服务客户端向模型所有者发送待输入模型的推理数据的方式不作限定,本领域技术人员可以根据实际需要确定,示例性地,推理服务客户端仅通过智能合约上传待推理数据的摘要,同时向模型所有者发送待推理的数据,模型所有者收到数据后计算数据的消息摘要,并与区块链网络中的数据摘要比对。本实施例推理服务客户端向模型所有者发送待输入模型的推理数据的内容不作限定,本领域技术人员可以根据实际需要确定,示例性地,出于隐私考虑,模型所有者采用支持密文推理的机器学习模型,推理服务客户端向模型所有者发送待推理数据的密文。表3提供了在明文推理、基于同态加密的隐私保护推理、基于不经意传输的隐私保护推理这三种推理模式下的推理时间对比。表4提供了上述三种推理模式的推理准确度。隐私保护模型推理在不明显降低推理准确度的前提下,同时保护了用户和模型所有者的隐私。
[0065]
表3:推理时间对比
[0066] 明文推理基于同态加密的加密训练基于混淆电路的加密训练时间(s)3.0813.255.13
[0067]
表4:推理准确度对比
[0068] 明文推理基于同态加密的推理基于不经意传输的推理准确度(%)9996.2398.58
[0069]
步骤303,模型所有者节点完成模型推理,将推理结果发送给推理服务客户端节点。
[0070]
步骤304,区块链网络将模型推理的相关信息打包入区块并上链。
[0071]
示例性地,模型所有者节点根据推理服务客户端提供的推理数据等信息进行模型推理,完成后将推理结果发送给推理服务客户端,同时模型所有者作为推理通道区块链网络的记账者调用部署在区块链网络上的智能合约将推理服务结果打包入区块并上链,推理服务客户端在收到推理结果后计算其消息摘要,并与链上记录的消息摘要进行比对,若发现两者不一致则向区块链网络和仲裁节点提出异议。
[0072]
作为本发明一个可选实施方式,所述方法还包括:模型更新前后对于同一个推理服务可能发生输入同一个私有数据但推理服务结果输出不同,客户端可怀疑该服务提供者先前是否诚实提供了推理服务,此时客户端可向可信仲裁节点提出仲裁申请。仲裁节点通过模型通道(mc,modelchannel)查询模型更新记录,实现对之前的输出结果的验证。本实施例仲裁的方式不作限定,本领域技术人员可以根据实际需要确定。
[0073]
本发明实施例还公开了一种基于区块链的隐私保护机器学习训练与推理系统,应用于基于区块链构建的网络,所述区块链网络包括模型通道和各推理通道,所述模型通道包括机器学习模型所有者节点、计算承包者节点和可信仲裁节点,所述推理通道包括机器学习模型所有者节点、推理服务客户端节点和可信仲裁节点,如图4所示,该系统包括:机器学习模型训练模块401、机器学习模型推理服务模块402、以及与机器学习模型训练模块和推机器学习模型推理服务模块连接并相互通信的区块链服务模块403;
[0074]
机器学习模型训练模块401,用于模型所有者节点独立或外包地完成用于推理任务的模型训练,以及根据新数据对模型进行更新。
[0075]
机器学习模型推理模块402,用于模型所有者节点根据推理服务客户端发起的推理服务申请以及其提供的待推理的数据,进行相应模型推理并输出推理结果。
[0076]
区块链服务模块403,用于模块接受区块链网络的消息并将相关模型训练或模型推理的待处理数据传递给模型训练模块或模型推理服务模块,并且将模型训练模块或模型推理服务模块传递来的相关数据以交易提案等形式发送到区块链网络。
[0077]
作为本发明一个可选实施方式,所述区块链服务模块,还用于当模型通道(mc,modelchannel)和推理通道(ic,inferencechannel)中的节点提出仲裁申请时调用相应通道区块链网络中部署的智能合约查找相关交易记录,以确定违规者并予以处理。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1