您的浏览器禁用了JavaScript(一种计算机语言,用以实现您与网页的交互),请解除该禁用,或者联系我们。[DataFunSummit:2023年用户隐私与数据安全峰会]:Squirrel 用于训练的可扩展安全计算框架 - 发现报告

Squirrel 用于训练的可扩展安全计算框架

AI智能总结
查看更多
Squirrel 用于训练的可扩展安全计算框架

卢文杰 , 黄智聪 , 张启智 , 王玉晨 , 程红 目录C本体 背景 背景 : 决策树 • 构建最接近 Y 的分支模型 F (X)•(简单的二元分类) 背景 : 梯度提升决策树 • 训练许多决策树• 最终预测 = 所有预测的总和 • 使用 “提升 ” 技术• 提升就像 “纠错 ” • Nth树试图 “纠正 ” 先前N - 1 个树所做的预测。 GBDT 大楼 • 计算 1stand 2nd每棵树上每个样本的梯度 (gi, hi) • 对于所有候选拆分点 :• 找到最大化的最佳点 • 在实践中 , 数据通常是有序和存储的%%%Gain =!"#$'%()$+− 例如 , 检查 2 个候选人 , 而不是 4 个 GBDT 很好 • 高精度• 由 Kaggle 的许多获奖者使用 • Interpretability• 客户经常要求解释 , 例如 : 为什么我的帐户被阻止 ? • Several variables• XGBoost / LightGBM... 在垂直分割数据集上的协作Goal: 保险公司 B 知道这个分布在 A / B 对齐 ID(例如通过 PSI) 银行 •假设有人想从 A 申请贷款• 常规 : A 使用基于本地数据的信用模型 • 但 A 可以在 B 的帮助下做出更好的决策 隐私要求 • 半诚实two方计算• 除了最终模型之外的任何东西都不应该被揭示 • 最终模型的一部分 : 阈值为 “年龄 < 20 ” NOT最终模型部分: 属于左树节点• 属性 “年龄 ” 的所有者知道 • 但另一方不应该知道 • 在实践中 ,一个秘密指示器向量 V 是i用于保持样本分发的私有 没有 “年龄 ” 栏的一方不知道 V 或 V12 挑战 • 使用 MPC 的隐私保护 GBDT 培训很有前途• 为什么不联合学习 ? = > 我们希望最小的信息泄漏• 直接共享数据可能不是一种选择•L损害用户隐私• 高效的 MPC GDBT 对数以百万计的样品是困难的• 更快的计算 • 更轻的通信 相关工程 • 基于联邦学习• 安全升压 [1] 和 VFboost [2] •L泄漏样品分布L在清除中计算增益 繁重的计算和通信 [1] 成凯, 范涛, 金宇, 等. SecureBoost:无损联邦学习框架[J]. IEEE智能系统, 2021 [2] 孙锋, 邵宇, 于乐, 等. Vf2Boost:快速垂直联邦梯度提升算法在跨企业学习中的应用, SIGMOD 2021 [3] 方文, 赵栋, 田嘉, 等. 大规模安全XGB在垂直联邦学习中的应用, CIKM 2021 [4] 吴宇, 蔡爽, 许晓, 等. 基于树模型的隐私保护垂直联邦学习, VLDB 2020 03 MPC 工具 ASS & LHE • Additive Secrete Sharing • 信息 / 数据是随机分割的 + = %e.g., p=2^64!"• 对许多(非线性)函数(例如,Div、ArgMax 和 Sqrt)制定了协议。• 需要多轮交互,即往返时间敏感。 • 线性同态加密 • Enc (x; pk) + Enc (y; pk) = > C 如果 Dec (C; sk) 可以给出 x + y%N• 例如 , Paillier 或 BFV HE 方案 •(通常) 计算密集型 • 但是 , 评估非线性函数效率低下 混合原语评估 • 为什么基于格子的 LHE(例如 BFV) 而不是 Paillier 或其他• 将 ASS 用于非线性函数• “安全性 ” : 明文空间 BFV _ N = p(例如 2 ^ 64) vs Pailler _ N > > p • 性能 : BFV enc 〜每秒 10 ^ 6 vs Pailler 〜每秒 10 ^ 3 enc• Switch to LHE for a lower communication•èA2H: Enc (x0; pk0)Enc (x0; pk0) + x1 = Enc (x; pk0) •çH2A: 12 月 (C; sk0) = m - rEnc (m; pk0) + r 蚂蚁集团中的隐私增强技术 (PETs) • 目标 : 安全的数据协作• 反洗钱 , 客户潜在价值... • 主要是统计 / 机器学习任务 • External• 如蚂蚁金服 vs 江苏银行、蚂蚁金服 vs 浦发银行... • 内部• 不同的子公司可能有不同的隐私政策 • 例如支付宝 vs Antchain • Service• 银行 A 和银行 B 购买蚂蚁金服的 PETs 产品进行合作 A2H / H2A 使用 Paillier 可能存在的陷阱 • 主要原因 : LHE 明文空间和 ASS 空间不匹配• 例如 , Paillier 在 [0 , N) 中处理大 INT , 而在 [0 , 2 ^ {64} 中处理 ASS 域 • 陷阱可能发生在链 A2H - > LHE Eval - > H2A) • A2H : Enc(x0) + x1 给出 Enc(x0 + x1 % N) , 但不是精确的 x• x0 + x1 = x 或 x0 + x1 = x + 2 ^ {64}(根据 ASS 的定义) • LHE Eval 将携带可能的值 2 ^ {64} •H2A: Enc (m + c * 2 ^ {64} + r)• 如果随机掩码 r < < c * 2 ^ {64}; 它泄漏了一些关于评估 , 例如 , 进行了一些很多总结。 • What about LHE such as ECC - Elgmal or DGK? Inefficient for 64 - bit plaintext 04 松鼠 GBDT 安全管道 • 步骤 1: PSI GBDT 安全管道 •步骤 2 : 数据编码(即 Binning) GBDT 安全管道 • 步骤 3 : 使用(秘密共享) 梯度表存储梯度 g , h 对于我tht 中的样本thtree: A 公司和 B 公司之间的添加剂共享 步骤 3 : 计算聚合梯度 非常耗时 : O (n) 同态运算• 秘密共享形式到同态形式(A2H) • 矩阵和二进制向量之间的乘法(BinMatVec)• 选择非零位置并求和 聚合梯度表(在 Alice 的密钥下加密) 渐变表(在 A 的密钥下加密) 步骤 1 到 3 与 [3, 4] 没有什么不同 , 除了... • 如何有效地进行 A2H 和 BinMatVec •LO (n) Paillier 操作将是禁止的 • 使用 SIMD HE (BFV/ BGV)?•L • 解决方案 : 对 RLWE 系数中的梯度进行编码pick - then - sum 需要昂贵的旋转 •采摘系数很容易 : 给定 RLWE(m) =(b , a) - > LWE(m [k]) =(b [k] , a ') 在秘密共享和 HE 加密之间切换 • 在 BinMatVec 之后 , B 获得了 LWE 加密表 G / H 在 Alice 的密钥下加密 • 下一步是计算最大值 • 在 FHE 中很难做到; 在 MPC 中更方便• 使用 H2A 切换到秘密共享表单进行 MPC 操作• 在 H2A 之前将 LWE 打包到 RLWE 中以节省通信 [5] • 密文大小从 GB减少到 MB [5] 郝晨, 戴伟, 米兰, 宋永秀. (环) LWE 密文之间的高效同态转换. ACNS2021. 步骤 4 : 计算最大增益 • Find max(即 ArgMax) • 使用基于一般秘密共享的 MPC(GMW) • 安全分区\ 安全 argmax... • 但用 Ferret -OTs 代替 OT [6]• 保存一些通信 步骤 5 : 拆分树节点 V ={1,1,1,1,1} 0 12• Vand V是 “AND - shared ”• “Age ”(Alice) 的所有者更新了 V 和 V 的股份12• 每个树节点都有一个指示向量• 开始于 V = {1, 1, 1, 1, 1}0• 双方更新梯度表私人乘以 Vi• Bob 不清楚 Vi V ={1,1,0,0,0} 1 V ={0,0,1,1,1} 2 • 重复执行步骤 1 - 5 • 可能是深度优先或宽度优先 , 取决于要求 • 直到达到最大深度 • 然后训练新树(具有新的渐变)• 计算新的梯度需要 Sigmoid • 问题 : 私人计算 sigmoid•L乱码电路 : 高通信 •L浮点幂运算 : 太多回合 •L分段线性函数 : 精度损失 新的 Sigmoid 协议 • 考虑 ≤ 2 的傅立叶级数 由 A 持有由 B 持有 • 2 * J 私有乘法(使用 HE) 就足够了• 完整的 Sigmoid 方案: • 更精确和更少的沟通 实验结果 • 28 - 40x 加速比枢轴 (VLDB20) • 3 - 4x 加速比 HEP - XGB (CIKM21)• 他们使用 TEE 来生成乘法三元组 实验结果 结论: ••RLWE - LWE 快速梯度聚合LWE - RLWE 减少通信 灵感来自我们以前的工作PEGASUS [7] • 用于跟踪分割信息的 “AND - shared ” 指示向量 • 平滑且便宜的 Sigmoid - 谢谢 - 感谢您的观看