Fate1.6 支持的机器学习算法

Posted AI浩

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Fate1.6 支持的机器学习算法相关的知识,希望对你有一定的参考价值。

联邦机器学习

Federatedml模块包括许多常见机器学习算法联邦化实现。所有模块均采用去耦的模块化方法开发,以增强模块的可扩展性。具体来说,我们提供:

  1. 联邦统计: 包括隐私交集计算,并集计算,皮尔逊系数, PSI等
  2. 联邦特征工程:包括联邦采样,联邦特征分箱,联邦特征选择等。
  3. 联邦机器学习算法:包括横向和纵向的联邦LR, GBDT, DNN,迁移学习等
  4. 模型评估:提供对二分类,多分类,回归评估,聚类评估,联邦和单边对比评估
  5. 安全协议:提供了多种安全协议,以进行更安全的多方交互计算。

图1

算法清单

算法模块名描述数据输入数据输出模型输入模型输出
ReaderReader当输入数据的存储引擎当前计算引擎不支持时,会自动转存到FATE集群适配计算引擎的组件输出存储引擎;当输入数据的存储格式非FATE支持存储格式时,会自动转换格式,并存储到FATE集群的组件输出存储引擎用户原始存储数据转换后原始数据
DataIODataIO该组件将原始数据转换为Instance对象(FATE-v1.7后会逐步弃用,使用DataTransform)。Table,值为原始数据转换后的数据表,值为在 : federatedml/feature/instance.py 中定义的Data Instance的实例DataIO模型
DataTransform_DataTransform该组件将原始数据转换为Instance对象。Table,值为原始数据转换后的数据表,值为在 : federatedml/feature/instance.py 中定义的Data Instance的实例DataTransform模型
IntersectIntersection计算两方的相交数据集,而不会泄漏任何差异数据集的信息。主要用于纵向任务。Table两方Table中相交的部分Intersect模型
Federated SamplingFederatedSample对数据进行联邦采样,使得数据分布在各方之间变得平衡。这一模块同时支持单机和集群版本。Table采样后的数据,同时支持随机采样和分层采样
Feature ScaleFeatureScale特征归一化和标准化。Table,其值为instance转换后的Table变换系数,例如最小值/最大值,平均值/标准差
Hetero Feature BinningHetero Feature Binning使用分箱的输入数据,计算每个列的iv和woe,并根据合并后的信息转换数据。Table,在guest中有标签y,在host中没有标签y转换后的Table每列的iv/woe,分裂点,事件计数,非事件计数等
Homo Feature BinningHomo Feature Binning计算横向场景的等频分箱Table转换后的Table每列的分裂点
OneHot EncoderOneHotEncoder将一列转换为One-Hot格式。Table, 值为Instance转换了带有新列名的Table原始列名和特征值到新列名的映射
Hetero Feature SelectionHeteroFeatureSelection提供多种类型的filter。每个filter都可以根据用户配置选择列。Table, 值为Instance转换的Table具有新的header和已过滤的数据实例模型输入如果使用iv filters,则需要hetero_binning模型每列是否留下
UnionUnion将多个数据表合并成一个。Tables多个Tables合并后的Table
Hetero-LRHeteroLR通过多方构建纵向逻辑回归模块。Table, 值为InstanceLogistic回归模型,由模型本身和模型参数组成
Local BaselineLocalBaseline使用本地数据运行sklearn Logistic回归模型。Table, 值为Instance
Hetero-LinRHeteroLinR通过多方建立纵向线性回归模块。Table, 值为Instance线性回归模型,由模型本身和模型参数组成
Hetero-PoissonHeteroPoisson通过多方构建纵向泊松回归模块。Table, 值为Instance泊松回归模型,由模型本身和模型参数组成
Homo-LRHomoLR通过多方构建横向逻辑回归模块。Table, 值为InstanceLogistic回归模型,由模型本身和模型参数组成
Homo-NNHomoNN通过多方构建横向神经网络模块。Table, 值为Instance神经网络模型,由模型本身和模型参数组成
Hetero Secure BoostingHeteroSecureBoost通过多方构建纵向Secure Boost模块。Table,值为InstanceSecureBoost模型,由模型本身和模型参数组成
Hetero Fast Secure BoostingHeteroFastSecureBoost使用分层/混合模式快速构建树模型Table,值为InstanceTable,值为InstanceFastSecureBoost模型
Hetero Secure Boost Feature TransformerSBT Feature Transformer利用SBT叶子为特征编码Table,值为InstanceTable,值为InstanceSBT Transformer模型
EvaluationEvaluation为用户输出模型评估指标。Table(s), 值为Instance
Hetero PearsonHeteroPearson计算来自不同方的特征的Pearson相关系数。Table, 值为Instance
Hetero-NNHeteroNN构建纵向神经网络模块。Table, 值为Instance纵向神经网络模型
Homo Secure BoostingHomoSecureBoost通过多方构建横向Secure Boost模块Table, 值为InstanceSecureBoost模型,由模型本身和模型参数组成
Homo OneHot Encoder横向 OneHotEncoder将一列转换为One-Hot格式。Table, 值为Instance转换了带有新列名的Table原始列名和特征值到新列名的映射
Data Split数据切分将输入数据集按用户自定义比例或样本量切分为3份子数据集Table, 值为Instance3 Tables
Column Expand对原始Table添加任意列数的任意数值Table, 值为原始数据转换后带有新数列与列名的TableColumn Expand模型
Secure Information Retrieval通过不经意传输协议安全取回所需数值Table, 值为InstanceTable, 值为取回数值
Hetero Federated Transfer Learning纵向联邦迁移学习在两个party间构建联邦迁移模型Table, 值为InstanceFTL神经网络模型参数等
PSIPSI模块计算两个表特征间的PSI值Table, 值为InstancePSI 结果
Hetero KMeans纵向 K均值算法构建K均值模块Table, 值为InstanceTable, 值为Instance; Arbiter方输出2个TableHetero KMeans模型
Data Statistics数据统计这个组件会对数据做一些统计工作,包括统计均值,最大最小值,中位数等Table, 值为InstanceTableStatistic Result
Scorecard评分卡转换二分类预测分数至信用分Table, 值为二分类预测结果Table, 值为转化后信用分结果
Sample Weight样本加权根据用户设置对输入数据加权Table, 值为InstanceTable, 值为加权后Instance
Feldman Verifiable Sum费尔德曼秘密分享求和不暴露隐私数据的前提下进行多方隐私数据求和Table, 值为加数或被加数Table, 值为求和结果

安全协议

以上是关于Fate1.6 支持的机器学习算法的主要内容,如果未能解决你的问题,请参考以下文章

机器学习三人行(系列七)----支持向量机实践指南(附代码)

[机器学习与scikit-learn-35]:算法-分类-支持向量机-线性分类代码示例

机器学习3_EM算法与混合高斯模型

机器学习速成宝典模型篇08支持向量机SVM(附python代码)

机器学习推荐算法(附例题代码)

python 机器学习有用的代码片段