掌桥专利:专业的专利平台
掌桥专利
首页

针对梯度提升决策树外包推理的隐私保护方法

文献发布时间:2023-06-19 19:28:50


针对梯度提升决策树外包推理的隐私保护方法

技术领域

本发明涉及信息安全技术,具体涉及针对梯度提升决策树的隐私保护技术。

技术背景

目前在信用建模、欺诈检测和医学诊断等工业场景中分类任务常使用梯度提升决策树GBDT完成。GBDT逐一建立许多决策树,每棵树都试图减少以前的树的残差。在预测阶段,最终的结果是由所有树的输出相加得出的。随着云计算的广泛采用,将GBDT推理服务外包给云计算正获得越来越多的青睐。

将GBDT推理服务外包给云计算,在通信过程中会导致关键的隐私问题。第一,模型所有者的模型通常是私密的,因为训练一个有效的模型需要大量的投资,比如数据集、计算资源和劳动力成本。模型所有者自然不希望将私有模型以明文形式暴露给云服务器。第二,用户的查询数据可能是敏感的,如金融信息或医疗数据。直接以明文方式发送数据可能很容易损害用户的隐私。第三,用户可能不希望服务器知道真实的预测结果,如财务判断或医疗诊断。同时,用户不能根据预测推断出关于GBDT的信息。服务器应该只能进行预测而不能知道真实的结果。因此,安全问题必须从一开始就嵌入推理外包的设计中,这样才能保证专有模型、敏感数据和私人预测的隐私。

为了缓解这样的问题,一些工作已经探索了设计保护隐私的决策树评估方法,但是现有的隐私保护决策树框架要么增加了大量的开销,要么没有实现对模型、预测结果和中间值的全面隐私保护。

发明内容

本发明要解决的技术问题是,提供一种能在梯度提升决策树外包推理过程中,以低计算量和低通信开销实现全面的隐私保护的方法。

本发明为解决上述技术问题所采用的技术方案是,针对梯度提升决策树外包推理的隐私保护方法,包括以下步骤:

初始化阶段:

用户和模型拥有者共享哈希密钥和加法同态密钥;

模型拥有者训练本地梯度提升决策树GBDT模型,本地GBDT模型由n棵决策树组成;对n棵决策树进行私密树转换得到n棵密文隐私树,将私密树转换后的GBDT模型发送至云服务器;

推理阶段:

用户对待预测数据进行加密:对特征名使用哈希密钥进行哈希处理,对数据值使用加法同态密钥进行加密,用户将加密后的待预测数据发送至云服务器;

云服务器和用户之间执行安全比较协议:云服务器和用户进行D轮执行密文下的安全比较协议完成通信,每一轮通信云服务器会发送当前节点在密文下的判断结果至用户,经过D轮迭代得到加法同态密钥加密后的预测结果,求和之后发送至用户;

用户使用加法同态密钥进行解密后得到最终预测结果。

更进一步的,为了防止用户和云服务器在执行安全比较协议的过程中的模型信息泄露,在推理阶段的每一轮通信过程中,云服务器发送当前节点在密文下的预测值之前先进行随机树置换:对于每一棵决策树的节点,使用哈希密钥对非叶子节点的特征名进行哈希处理,并使用加法同态密钥对非叶子节点的阈值和叶子节点的预测值进行加密来保护节点隐私;再使用随机节点替换未达到最大深度的叶子节点来保护路径隐私;随机节点替换未达到最大深度的叶子节点具体为:使用哈希密钥对随机节点的特征名进行哈希处理,并使用加法同态密钥对随机节点的阈值进行加密,之后将随机节点的左右子节点重定向到被替换的叶子节点;将进行随机树置换后的决策树的节点的预测值发送至用户;用户收到并解密当前接收到的预测值并返回明文;云服务器接收到明文后进行反向随机树置换,根据偏移表恢复正确的映射关系,并为所有的树选择下一个节点,直到达到叶子节点。

本发明提出一种结合GBDT、Hash、AHE以及定制化协议的隐私保护框架,不同于现有的隐私保护方法。将轻量级哈希和加法同态加密技术用于梯度提升决策树的外包推理。具体来说,它首先为梯度提升决策树设计了一种转换方法,以保护模型的节点和结构隐私。在受保护的模型之上,该框架设计了定制的比较和随机树置换协议,这些协议大幅加速了计算,降低了外包推理的通信成本,同时防止用户推断出与梯度提升决策树相关的隐私。与目前的隐私保护工作相比,该框架的运行时间减少47倍,通信量减少37倍。

本发明的有益效果是:对于GBDT的外包推理过程能够提供高效、安全、完整的隐私保护;降低了计算和通信开销。

附图说明

图1为实施例的方案图。

具体实施方式

对以下参数符号的含义进行说明:

H

AHE表示加法同态加密,pk和sk分别表示AHE的公钥和私钥,AHE.Enc表示加法同态加密的加密过程,AHE.DecA表示加法同态加密的解密过程,

Data[]表示测试数据,原始为明文,用户加密之后为加法同态加密的密文;

v表示节点,v

x表示特征值,f表示特征名,θ表示阈值,value表示预测值,x;

v

如图1所示,本发明方法包括步骤:

(1)用户User拥有测试数据,测试数据由特征值x

(2)模型拥有者训练本地的决策树Local GBDT,共有n颗决策树G

本发明通过私密树转换修改GBDT的每一棵树:对于节点隐私,我们使用哈希对非叶子节点的特征名进行处理,即H

对于路径隐私,我们用随机节点(随机特征名、特征值和阈值)替换未达到最大深度的叶子节点v,同样需要经过Hash和AHE加密的处理,并将随机节点的左右子节点重定向到v。从图1中可以看到G

(3)用户对测试数据进行加密:对特征名f

(4)云服务器和用户通过D轮通信进行节点确定,D代表的是GBDT中树的最大深度:

(4-1)云服务器和用户执行安全比较协议,并计算出所有树在密文下的比较结果,即从每个树的比较根节点得到每棵树的比较结果;

安全比较协议是指在云服务器和用户之前确定内部节点结果的过程。安全比较协议在执行时,对于每个非叶子节点,云服务器从模型拥有者处得到的AHE加密的阈值AHE.Enc(pk,v

进一步的,考虑到用户和云服务器在执行安全比较协议的过程中,仍然存在着模型信息泄露的风险,用户可以通过细微调整测试数据而破解每棵树的阈值信息。所以我们设计了随机树置换协议,来防止用户获得GBDT的信息。

可选的,增加步骤(4-2)与(4-3)。如果不进行(4-2)与(4-3)也不影响用户得到比较结果。

(4-2)云服务器和用户执行随机树置换RTP:云服务器使用随机树置换生成一个偏移表,通过使用该表,云服务器混淆了树和比较结果之间的关系。用户收到并解密所有的结果,返回明文。

(4-3)云服务器执行反向随机树置换Anti-RTP:根据偏移表恢复正确的映射关系,并为所有的树选择下一个节点,直到达到叶子节点,得到每棵树的真实结果。

(5)云服务器将每棵树的所有加密的叶子值作为预测值AHE.Enc(pk,v

(6)用户对加密预测结果进行AHE解密AHE.DecA(predict_enc,sk)得到最终的预测结果prediction。

RTP与Anti-RTP:

在本发明方案中,预测依赖于D轮通信。在每一轮中,在执行了密文下的安全比较协议后,CS需要根据明文判断每棵树的真实路径。然而,如果发送密文的顺序与树的顺序相对应,用户可以通过构思一些特定的测试数据来推断出树的阈值、特征和其他信息。例如,在第一轮中发送的第一个密码文本对应于第一棵树的根节点确定。因此,我们提出了随机树置换协议来混淆树和比较结果之间的关系。

随机树排列算法RTP我们选择著名的Fisher-Yates洗牌法,将一个序列从末尾迭代到开头(或反过来),对于每个位置i,它将i的值与随机目标位置j的值进行交换。上述过程可以表示为:

其中(p(1),p(2),…,p(n))是序列(1,2,…,n)的随机排列。

首先,云服务器需要生成一个随机的映射表p,然后,根据该表对比较结果进行置换。例如,对于比较结果(s

RTP混淆了每一轮通信的比较结果和决策树之间的对应关系,RTP的具体过程为:在每一轮中,云服务器使用RTP算法对安全比较结果进行混淆,并发送给用户。用户对乱序的密文进行解密,并将明文发送给云服务器。通过执行反向随机树置换Anti-RTP,云服务器可以恢复正确的顺序,得到每棵树的真实结果。因此,CS知道每棵树在下一轮应该选择左子节点或右子节点。即使用户推断出某个节点的信息,他/她不知道对应的树,也无法在下一轮找到子节点。该协议保护了GDBT的节点隐私以及路径隐私。此外,随机排列算法只需要很少的步骤,每个迭代只需要一个整数和交换操作。由于其效率和简单性,混淆和恢复一个向量只需要线性复杂度O(n),其中n代表本轮执行安全比较协议和随机树置换协议的决策树数量。

相关技术
  • 一种针对云外包数据的隐私保护决策树分类方法
  • 一种针对云外包数据的隐私保护决策树分类方法
技术分类

06120115924032