1 联合建模(Joint Modeling)
1.1 定义
多个参与方共同训练一个机器学习模型,但各自的数据不离开本地。
1.2 类比理解
就像几个医生一起研究某种疾病的治疗方案,但每位医生只分享“经验总结”(如模型参数),而不透露具体的病人信息。
1.3 实际应用
- 多家保险公司想共同训练一个新能源汽车保险风险评估模型,但每家都只能用自己的客户数据
- 联合建模可以让大家共享模型能力,而不用把原始数据交给别人
1.4 技术实现方式
通常通过 联邦学习(FL) 或 多方安全计算(MPC) 来实现。
多方安全计算(Secure Multi-Party Computation, MPC)
各方将数据加密或秘密共享,在加密状态下共同计算函数,最终只输出结果。如富数所述,参与方不泄露原始数据,通过加密状态协同得到计算结果。多方将数据加密分片,分别计算,最终合成结果,任何单方看不到完整数据。
定义:多个参与方在不泄露自己私有输入的前提下,协作完成一个函数计算。
类比理解:就像几个人在黑暗中同时写下一个数字,然后通过某种机制知道这些数加起来是多少,但不知道别人写了什么。
应用:
- 几个公司想知道他们的用户有多少是重叠的,但不想暴露各自的用户列表(隐私求交 PSI 就是它的一个子集)。
- 银行之间想统计总贷款额,但不想告诉对方自己的具体数据。
技术实现:使用加密协议(如 Yao’s Garbled Circuits、秘密共享等),确保中间过程不泄露原始数据。
联邦学习(Federated Learning, FL)
各方本地训练模型,将加密参数汇聚更新,实现模型共享。如富数所言,“数据不出门,算法满地跑”。可结合安全聚合、MPC 等增强隐私。像是分布式机器学习的参数交换,避免数据直接暴露。
定义:一种分布式机器学习方法,允许多个参与方协同训练模型,但不共享原始数据。
类比理解:像一群学生一起做题,每个人都在自己的练习本上算,最后只告诉老师答案的“趋势”,老师再统一调整教学内容。
实际应用:新能源车企与保险公司合作:车企提供车辆运行数据(如电池状态、行驶轨迹),保险公司提供理赔数据,双方都不交出原始数据,但可以共同训练一个更准确的风险预测模型。
技术实现方式:
- 使用加密梯度聚合(如同态加密或差分隐私)
- 支持横向/纵向联邦学习
横/纵向联邦学习
类型 | 特点 | 示例 |
横向联邦学习(Horizontal FL) | 参与方拥有相同的特征,不同的样本 | 多家银行都有贷款记录,但各自有不同的客户 |
纵向联邦学习(Vertical FL) | 参与方拥有相同的样本,不同的特征 | 同一家客户,银行有收入数据,保险公司有健康数据 |
Java程序员理解:
- 横向:相当于多张表
UNION ALL合并 - 纵向:相当于多张表
JOIN合并
















