
上QQ阅读APP看书,第一时间看更新
4.2 纵向联邦随机森林算法
4.2.1 算法结构
随机森林算法是一种典型的树模型算法,原理依然是基于树形结构对特征空间进行划分。相比单棵决策树的基本形态,随机森林算法通过随机选择样本和特征的方式,建立多棵独立的决策树,并通过Bagging的形式整合这些决策树各自的决策结果,以完成训练和预测,常见的Bagging方式是取投票多数(分类树)或者取平均(回归树)。由于样本和特征带来的双重随机性,随机森林算法天然就带有降维和采样的特点,可以轻松处理高维度或者大规模的数据,即使在特征遗失的情况下仍然可以保证准确度,甚至对于不平衡数据集也可以平衡误差,是一种适用范围广泛的机器学习方法。
本节介绍的纵向联邦随机森林算法实现方案可以保留单机环境下随机森林算法的所有优点。为了实现多个参与方之间的数据交互,该整体算法将被拆分成4个子算法步骤,在不同的参与方中执行,如图4-2所示。

图4-2 FedLearn随机森林算法流程总览
明文传输和密文传输
多参与方之间交互的数据内容大致分为两类:一类是包含用户ID、样本维度、样本数量等不需要对其他参与方保密的数据,可以简单使用明文传输;另一类是样本在各参与方的特征以及最关键的主动方的样本标签,这些是最受关注的隐私内容,需要确保交互时使用加密形态,避免某一个参与方拥有不该拥有的明文数据,产生隐私泄露问题。本例将使用Paillier同态加密作为数据传输过程中的加密选项。