➢ 联邦学习的分类
从技术本身的类型上,我们认为联邦学习是基于机器学习、分布式计算、密码学等多个技术的融合衍生品。
事实上,联邦学习的技术内核,是通过交互各参与方本地计算的中间因子来实现模型的聚合和优化的。
联邦学习通过交互中间因子来替代原始数据,但直接交互明文的中间因子也有泄露和反推原始数据的可能性。因此,为提升建模过程中对数据隐私的安全保护,现有的实现方案大多是在联邦学习的基础上结合多方安全计算、同态加密、差分隐私等密码学技术,对交互的中间因子进行加密保护,利用同态加密技术对中间因子进行加密交互,是目前我们看到最多的方案。另外还有方案结合了可信执行环境,实现基于可信硬件的中间因子安全交互。
如果再对联邦学习进行分类,可以根据各参与方数据特点的不同,具体分为横向联邦学习、纵向联邦学习和联邦迁移学习。
横向联邦学习更适用于在特征重合较多,而样本重合较少的数据集间进行联合计算的场景。以样本维度(即横向)对数据集进行切分,以特征相同而样本不完全相同的数据部分为对象进行训练,如图2-9所示。谷歌在2016年提出的安卓手机智能输入法推荐方案,就是使用横向联邦学习,是利用单个用户使用安卓手机时的输入序列特征,建立输入“热门词”的模型,并不断在本地更新模型后将参数上传到安卓云上,从而基于数千万个特征维度相同的用户输入习惯进行联合建模,最终实现对用户输入习惯的预测,在用户打字时自动给出下一个输入的关联词。
图2-9 横向联邦学习
纵向联邦学习更适用于样本重合较多,而特征重合较少的数据集间联合计算的场景。以特征维度(即纵向)对数据集进行切分,以样本相同而特征不完全相同的数据部分为对象进行训练,如图2-10所示。在金融行业的风控场景中,有大量纵向联邦学习的实践案例。以同一地区的银行和电商为例,两机构在特定地区的用户群体交集较大,但各自拥有的用户特征不同,银行掌握的是用户的资产信息、借贷历史等,而电商掌握的是用户的消费习惯,利用两机构不同维度的用户特征进行联合建模,可以更好地评估、判断和预测用户信用违约风险的大小,以增强风控能力。
联邦迁移学习则适用于数据集间样本和特征重合均较少的场景。在这样的场景中,不再对数据进行切分,而是利用迁移学习来弥补数据或标签的不足,如图2-11所示。以不同地区不同行业的机构间进行联合建模为例,两家机构的用户群体和特征维度的交集都很小,虽然业务不同,但两家机构具有相似的业务目标。比如资讯公司的广告投放和电商平台的商品推荐,利用双方相似的用户浏览序列,抽取深层用户行为特征作为知识,在双方模型间共享和迁移,可以共同提升业务效果。联邦迁移学习的目标就是针对性地解决单边数据规模小、标签样本少的问题,主要适用于以深度神经网络为基模型的场景。
图2-10 纵向联邦学习
图2-11 联邦迁移学习
目前,大部分落地应用的场景仍以纵向联邦学习为主,横向联邦学习和联邦迁移学习在实际应用中的占比并不高,这也跟现有的隐私计算应用场景较为集中有关,相关内容我们会在之后的章节里进行讨论。