金色观察|PaddleDTX:分布式机器学习解决方案_ADD:NER

PaddleDTX是一个基于分布式存储的分布式机器学习技术解决方案。可以解决海量私有数据需要的安全存储和交换难题,可恶意帮助各方突破数据孤岛,实现数据价值最大化。

PaddleDTX的计算层是一个由三种节点组成的网络:Requester、Executor和DataOwner。训练样本和预测数据集存储在由DataOwner和Storage节点组成的去中心化存储网络中。这种去中心化的存储网络和计算层由底层区块链网络支持。

多方计算网络

Requester是有预测需求的一方,Executor是DataOwner授权获得样本数据访问许可的一方,用于可能的模型训练和结果预测。多个Executor节点组成一个SMPC网络。Requester节点将任务发布到区块链网络,Executor节点授权后执行任务。Executor节点通过DataOwner获取样本数据,后者为数据的信任背书。

SMPC网络是支持并行运行的多个分布式学习过程的框架。未来将支持垂直联邦学习和水平联邦学习算法。

去中心化存储网络

一个DataOwner节点处理自己的私有数据,在这个过程中使用了加密、分段和复制相关的算法,最后将加密的分片分发到多个Storage节点。Storage节点通过回答DataOwner产生的挑战来证明它诚实地持有数据片段。通过这些机制,可以在不侵犯任何数据隐私的情况下安全地维护存储资源。

区块链网络

训练任务和预测任务将通过区块链网络广播到Executor节点。然后所涉及的Executor节点将执行这些任务。DataOwner节点和Storage节点在监控文件和节点健康状态时,以及副本持有证明的challenge-answer-verify过程中,通过区块链网络交换信息。

目前,XuperChain是PaddleDTX支持的唯一区块链框架。

垂直联邦学习

PaddleDTX的开源版本支持垂直联邦学习算法,包括两方线性回归、两方逻辑回归和三方DNN。DNN的实现依赖于PaddleFL框架,PaddleFL提供的所有神经网络模型都可以在PaddleDTX中使用。未来更多算法会开源,包括多方VFL和多方HFL算法。

训练和预测步骤如下所示:

运作原理

样品准备

FL任务需要指定将用于计算或预测的示例文件,这些文件存储在去中心化存储系统中。在执行任务之前,执行者需要从XuperDB中获取自己的示例文件。

样品对齐

VFL训练和预测任务都需要样本对齐过程。即使用所有参与者的ID列表查找样本交叉点。训练和预测是在相交的样本上进行的。该项目实施了PSI来进行样本对齐,而不会泄露任何参与者的ID。

训练过程

模型训练是一个迭代过程,它依赖于两个奇偶校验样本的协同计算。参与者需要在许多训练时期交换中间参数,以便为每一方获得适当的局部模型。

为确保每个参与者数据的机密性,Paillier密码系统用于参数加密和解密。Paillier是一种加法同态算法,它使我们能够直接对密文进行加法或标量乘法。

预测过程

预测任务需要模型,因此需要在预测任务开始前完成相关的训练任务。模型单独存储在参与者的本地存储中。参与者使用自己的模型计算局部预测结果,然后收集所有部分预测结果以推导出最终结果。

对于线性回归,可以在收集所有部分结果后执行去标准化过程。这个过程只有有标签的一方才能完成。所以所有的部分结果都会被发送给有标签的一方,它会推导出最终结果并将其作为文件存储在XuperDB中供请求者使用。

来源:金色财经

郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。

金智博客

[0:15ms0-3:101ms