Advertisement

论文《Vertical Federated Learning: Concepts, Advances, and Challenges》阅读

阅读量:

论文《Vertical Federated Learning: Concepts, Advances, and Challenges》阅读

  • 论文概况

  • 纵向联邦

  • VFL框架介绍

    • 问题定义
    • VFL 训练协议
  • 对通信效率的优化

  • 对性能的优化

    • 自监督方案(Self-Supervised Approaches)
    • 半监督方案(Semi-Supervised Approaches)
    • 知识蒸馏方案(Knowledge Distillation Approaches)
    • 迁移学习方案(Transfer Learning Approaches)
  • 安全性

  • 其他

  • 总结

今天带来的是一篇综述,主题关于纵向联邦,综述组织合理,内容丰富,而且对新手非常友好,值得推荐!

论文概况

论文由清华大学 AIR 刘洋 等人完成,发表在TKDE上。
论文链接:TKDE

纵向联邦

FLs
如图所示,

  • 横向联邦 针对的是不同的sample具备相同的特征空间,主要干的事是做梯度的聚合、计算等内容。
  • 纵向联邦 (狭义)是指不同的 sample,但是具备相同的特征空间,主要目的是为了将不同平台下的重叠用户的特征利用最大化。
  • 特征迁移学习 就是两者之间,重叠的 sample 有限,交叉的特征也不是全部,这种情况就是特征迁移的典型场景。

具体比较也可以如表所示:
Comparisons of FLs

此外,从应用场景出发,FL也可分类为:cross-silo 和 cross-device。

  • Cross-Silo 就是指为了解决数据孤岛问题,让不同的组织、公司数据利用最大化。既可以包含横向、也可以包含纵向。
  • Cross-Device 是指跨设备的联邦学习,这种一般是指横向,例如在不同的设备上聚合用户的梯度、模型等。

VFL框架介绍

问题定义

问题形式化如下所示:

\min _{\boldsymbol{\Theta}} \ell(\boldsymbol{\Theta} ; \mathcal{D}) \triangleq \frac{1}{N} \sum_{i=1}^N f\left(\boldsymbol{\Theta} ; \mathbf{x}_i, y_i\right)+\lambda \sum_{k=1}^K \gamma(\mathbf{\Theta}) \tag{1}

典型场景下,VFL 具有 K 方。

  • 其中下标为kk \in [1, K-1] 的是被动方 (passive party),只具有feature,不具有label。
  • 只有主动方 (active party)具有label,运算在主动方一方完成,下标为 K

\gamma(\cdot) 是 函数正则化。 f(\cdot) 表示 任务的预测函数。

在VFL场景下,任意数据被 K 方分割开,共同构成数据的特征空间,i.e.,
\{\mathbf{x}_{i,k} \in \mathbb{R}^{d_{k}}\}_{k=1}^{K}。被动方只具有feature,即
\mathcal{D}_k \triangleq\left\{\mathbf{x}_{i, k}\right\}_{i=1}^N \forall k \in [1, K-1]。主动方具备feature 和 label,如下:\mathcal{D}_K \triangleq\left\{\mathbf{x}_{i, K}, y_{i, K}\right\}_{i=1}^N

模型可以分为 local 部分 和 global 部分,分别用于每个 Party 各自的计算 和 汇总到 Active Pary 进行预测任务,将 \boldsymbol{\Theta} 重写,\mathcal{F}_K(\cdot) 表示global model,参数集合表示为 \psi_K;每个local model 表示为 \mathcal{G}_k(\cdot),参数分别为 \theta_{k}。因此,典型的VFL形式化定义可以具体如下:

f\left(\boldsymbol{\Theta} ; \mathbf{x}_i, y_i\right)=\mathcal{L}\left(\mathcal{F}_K\left(\psi_K ; \mathcal{G}_1\left(\mathbf{x}_{i, 1}, \theta_1\right), \ldots, \mathcal{G}_K\left(\mathbf{x}_{i, K}, \theta_K\right)\right), y_{i, K}\right) \tag{2}

典型的 VFL 如图所示:
Illustration
大体的 Pipeline 就是先进行sample的对齐,把 unaligned samples给去掉,针对相同的sample不同的feature 进行本地的训练,party之间只进行中间结果的交流,汇总到Global Model,最终由 Global Model 完成预测。

这里的 Global Model 可以分为 可训练的 (trainable)不可训练的(non-trainable) ,作者分别表示为 splitVFL 和 aggVFL。如图所示:
SplitVFL & AggVFL

VFL 训练协议

作者将 VFL 训练分为两大步骤:

  • 隐私保护下的实体对齐(Privacy-Preserving Entity Alignment)
  • 隐私保护下的模型训练(Privacy-Preserving Training)

实体对齐就是把不同party下的特征的不同行对应到同一个实体下。现在还有做一对多的模糊对应,用于加强表示,这个按下不表。

训练过程首先就是计算每个local model,H_k = \mathcal{G}_{k}(\mathbf{x}_{k}, \theta_{k})。计算完成后将 H_k 发送到 active party,主动方聚合完成后先更新 global model,\dfrac{\partial \ell}{\partial \psi_{K}}。完事把对应每个 party 的梯度 \dfrac{\partial \ell}{\partial H_{k}} 回传,每个 local model 的参数更新如下:

\nabla_{\theta_k} \ell=\frac{\partial \ell}{\partial \theta_k}=\sum_i \frac{\partial \ell}{\partial H_{i, k}} \frac{\partial H_{i, k}}{\partial \theta_k} \tag{3}

这一过程伴随着隐私保护的应用,用于防止数据被窃取。
基于加密的隐私保护 手段包括:

  • 同态加密 HE (Homomorphic Encryption,表示为[[ \cdot ]]
  • 安全多方计算MPC (Secure Multi-Party Computation)
  • 可信执行环境TEE (Trusted Execution Environment)

此外,还包括其他隐私保护方法,例如:

  • 差分隐私DP (Differential Privacy)
  • 梯度离散化 (Gradient Discretization)

典型的 VFL 运算流程展示如下:
Training Procedure
介绍完了 VFL 的大体情况,下面介绍针对各个方面(包括 通信效率,性能,安全等)对 VFL 的优化。

对通信效率的优化

  • Multiple Client Updates(Local Model 多次更新才和 Active Party 通信一次)
  • Asynchronous Coordination (Local Model 不用跟 Active Party 同步,限制好相关条件,自由通信。当然可能存在模型还没训练好就请求数据的情况,这种就是各自约束通信条件了)
  • One-Shot Communication(就通信一次)
  • Compression (数据压缩)
  • Sample and Feature Selection(下采样,具体包含 sample 和 feaure 的采样,这种肯定会涉及到性能下降,合理安排)

总结如下表:
Communication Efficiency

对性能的优化

作者这里绘制了一份数据的表示图还挺方便的,展示如下:
Data Distribution in VFL
align 的 sample 就是说在 横向上 sample 是否有重叠 (overlap);labeled 还是 unlabeled是说是否有标签。作者将多方场景简化为 A 和 B 两方的场景,分别考虑了不同场景下的优化方案。

这里主要优化的目标就是:

  1. 优化 Global Model 的性能(build a joint VFL model.)
  2. local model 也能完成预测任务(help participating parties build ** local predictiors**.)

自监督方案(Self-Supervised Approaches)

利用 local party 未标注数据,先完成自监督下的pretrain(看例子好像对比学习 居多,大概意思应该是 Refine 本地的 重叠 sample 的表示以提高 Global Model 的性能)。

将公式(1)重写为 两方场景下的 VFL,如下:

\min _{\psi_A, \theta_A, \theta_B} \ell_{\mathrm{VFL}}\left(\psi_A, \theta_A, \theta_B ; \mathcal{D}\right) \tag{4}

则Self-SL 方案形式化为:

\tilde{\psi}_A, \tilde{\theta}_A, \tilde{\theta}_B= \argmin_{\psi_A, \theta_A, \theta_B} \ell_{\mathrm{Self-SL}}\left(\psi_A, \theta_A, \theta_B ; \mathcal{D}^{a u}, \mathcal{D}_A^{u u}, \mathcal{D}_B^{u u}\right) \tag{5}

这里的 \mathcal{D}^{a u}, \mathcal{D}_A^{u u}, \mathcal{D}_B^{u u} 第一个a/u 表示 aligned/unaligned,第二个全是u,表示 unlabeled,实际上就是用 non-overlapped samples 去提高 overlapped samples 的表示。

半监督方案(Semi-Supervised Approaches)

同样考虑 无标签数据, 使用 伪标签 (pesudo-label)来提高性能。
如下所示:

\min _{\psi_A, \theta_A, \theta_B, \tilde{\mathcal{D}}} \ell_{\mathrm{VFL}}\left(\psi_A, \theta_A, \theta_B ; \tilde{\mathcal{D}}\right)+\lambda \ell_{\mathrm{Semi}-\mathrm{SL}}\left(\psi_A, \theta_A, \theta_B ; \mathcal{D}, \mathcal{D}_A^{u l}, \mathcal{D}_B^{u u}\right), \tag{6}

这里\tilde{\mathcal{D}}即为构造的 enriched 的数据。

知识蒸馏方案(Knowledge Distillation Approaches)

将教师模型的知识通过 VFL transfer 到 Active Party。

\min _{\psi_A^s, \theta_A^s} \ell_A\left(\psi_A^s, \theta_A^s ; \mathcal{D}_A^{u l}\right)+\lambda \ell_{\mathrm{KD}}\left(\psi_A^s, \theta_A^s, \psi_A^t, \theta_A^t, \theta_B^t ; \mathcal{D}^{a u}\right) \tag{7}

迁移学习方案(Transfer Learning Approaches)

将 Active Party A 视为源域,Passive Party B 视为目标域。源域包含 labeled data,迁移到 目标域 不包含 或者 少量包含 label。目标应该是为了提高 B’s local predictor的性能。 形式化表示如下:

\min _{\phi_B, \theta_B} \ell_B\left(\phi_B ; \theta_B ; \mathcal{D}_B\right)+\lambda_1 \ell_A\left(\psi_A, \theta_A, \theta_B ; \mathcal{D}, \mathcal{D}_A^{u l}\right)+\lambda_2 \ell_{\mathrm{TL}}\left(\theta_A, \theta_B ; \mathcal{D}^{a u}, \mathcal{D}_A^{u u}, \mathcal{D}_B^{u u}\right) \tag{8}

安全性

作者定义了好几个层级的VFL安全性指标如下:
Security
分别如下:

  • 最低级 (P0): P1的适当宽松版,适用于非私人的label或model。
  • 基础级(P1):本地数据和模型存在本地
  • 标准级(P2):中间结果传输保护
  • 加强级(P3):整个训练过程保护 (如安全多方计算)
  • 严格级(P4):保护训练过程及训练好的模型

攻击场景如下所示:
VFL Attack
相关文献总结如下:
Attack
Defense

其他

还包括 数据评估、数据集总结、作者总结的VFL整体评估框架 VFLow ,未来发展方向,就不再赘述了。

总结

论文整体上相当工整,survey的方向也很全面,非常方便作为调研方向的参考。

全部评论 (0)

还没有任何评论哟~