Randomised and Advanced Algorithms

Read more »

联邦学习

联邦学习就是一种分布式的机器学习方法,在保证数据隐私的前提下,通过在多个客户端协作训练一个全局的大模型。

横向联邦学习

横向联邦学习是比如用户用的同一个模型,然后使用的是各自本地的数据集进行训练,训练变化的权重返回给根模型

纵向联邦学习

纵向联邦学习就是多个参与方共同训练一个联邦模型 w,各个模型持有w 的一部分功能,而且各个模型使用的样本是一样的,但是特征不同。比如ab 两模型共同训练一个 w,这时候需要一个协调者 c 来进行协助加密和解密操作。首先 c 先下发公钥给 ab,自己保留密钥,然后 ab用公钥对计算的梯度和损失的中间结果加密并互换,然后利用对方提供的中间结果各自计算自己的梯度并添加一个掩码(随机数),然后标签持有者b计算加密损失和误差,ab 把掩码的加密梯度返回给 c,c 使用密钥解密出被掩码的梯度,无法查看原始数据,然后发给 ab,ab 去掉自己的掩码得到真实梯度,从而更新自己的模型。

联邦迁移学习

FTL 就是通过 ab 少量的共同 sample 和 feature 训练出一个有共同语言的映射网络,然后使用source领域 b 的数据训练一个共享的预测模型,这时把 target 领域 a 的数据输入到预测模型,借助模型的知识,输出更准确的预测结果。

Read more »