随着互联网业务的不断发展,不少机构都积累了海量的线上数据,充分利用这些数据,进行相关的数据分析、特征挖掘、算法建模是各机构重点发展的方向。然而在大多数行业与企业中,数据是以孤岛形式存在的,因为行业竞争、隐私安全、行政手续复杂等问题,即便是在同一个公司的不一样部门之间实现数据整合也面临着重重阻力,在现实中想要将分散在各地、各个机构的数据进行整合几乎是不可能的,或者说所需的成本是巨大的。算法
另外一方面,随着大数据的进一步发展,重视数据隐私和安全已经成为了世界性的趋势。这给人工智能领域带来了史无前例的挑战,如何在知足安全和监管要求的前提下,设计一个机器学习框架,让人工智能系统可以更加高效、准确的共同使用各自的数据,是当前人工智能发展的一个重要课题。segmentfault
近两年,联邦学习技术 (Federated Learning)的出现,为跨团队数据合做,打破“数据孤岛”提供了新的解决方案。安全
联邦学习是一种新兴的人工智能基础技术,在2016年由谷歌最早提出,本来用于解决安卓手机终端用户在本地更新模型的问题,其设计目标是在保障大数据交换时的信息安全、保护终端数据和我的数据隐私、保证合法合规的前提下,在多参与方或多计算结点之间开展高效率的机器学习。联邦学习可以使用的机器学习算法不局限于神经网络,还包括随机森林等重要算法。联邦学习有望成为下一代人工智能协同算法和协做网络的基础。
在这一背景下,京东智联云联邦学习平台应运而生。本篇文章就带你们揭开它的神秘面纱。网络
京东智联云联邦学习平台旨在创建一个 基于分布式数据集的联邦学习模型。 在训练过程当中,模型信息以加密的形式在各机构间交互,交互过程不会暴露任何机构的隐私数据,训练好的模型在各个机构间共享。架构
前不久,凭借在 调度管理能力、数据处理能力、算法实现、效果及性能以及安全性 等方面的出色表现,京东智联云联邦学习平台顺利经过信通院的「大数据产品能力评测 」,被授予联邦学习基础能力专项评测证书,得到业界权威承认。框架
京东智联云联邦学习平台能够很好地解决各个政企间数据孤岛林立的现象,充分释放AI应用潜能,实如今隐私数据安全前提下的多方联合建模。(如图 1)机器学习
▲图1 京东智联云联邦学习平台▲分布式
数据的质量和数量决定了机器学习的效果上限。为了让模型(如神经网络)达到更好的效果就可能须要给模型输入更多的数据。而大量的数据须要消耗更多的存储和算力,此时就要依靠分布式的方法来为机器学习提供充足的算力、存储以及合理的任务调度。联邦学习也是如此,从图 2的京东智联云分布式联邦学习架构咱们能够看出其本质是一种加密的分布式机器学习技术。ide
▲图2 京东智联云分布式联邦学习架构▲工具
京东智联云联邦数据平台能够打通合做方之间的数据孤岛,让多方数据在相互隔离的环境下,创建虚拟共有模型,充分释放AI潜能,实现“共同富裕”。
▲图3 联邦学习应用场景▲
如图3所示,京东智联云联邦数据平台能够打通京东自有数据与合做方之间的数据壁垒,在数据相互隔离的环境下进行建模,创建在京东数据赋能下的共有模型,实现应用场景的深度挖掘与创新。
京东智联云联邦学习平台由联邦学习客户端和京东智联云网关组成,客户端主要负责数据加密和科学计算工做,京东智联云网关负责把必要的加密的参数在各个参与方的客户端间传输。
客户端以镜像的方式交给各参与方,联邦学习各参与方开发人员无需关心操做系统版本和开发相关的软件环境,直接加载镜像便可。在镜像内启动联邦学习平台,就能够开始联邦学习训练了。
京东智联云网关主要工做包括: 对联邦学习客户端作系统鉴权、给各参与方传递必要的加密的参数。 为了保证各参与方的网络安全,京东智联云联邦学习平台采用单向的网络传输策略,即各参与方能够发送网络请求给京东智联云网关,而京东智联云网关没法发送网络请求给各参与方。有了该策略的支持,企业能够只开放网络的上行权限,而关闭下行权限。这有效缓解了某些参与方对网络安全的担忧。
同时,京东智联云联邦学习平台支持两种样本对齐方式,分别是联邦加密对齐和MD5对齐,联邦加密对齐用RSA算法结合随机噪声,帮助两个参与方找到相同的用户ID,保证非共有的ID不会泄漏给对方。
京东智联云自研梯度信息保护,参与训练的各方均在本地更新本身的模型参数,所以能够在加密梯度发送以前,加入足够大的噪声,解密方接收到的是没法恢复的加噪声梯度,而本方能够 经过减去该噪声恢复真实梯度,继而进行本方的模型参数更新。这样 的设计充分保护自身梯度信息,同时保证了模型精度。
此外,京东智联云联邦学习经过分析稀疏格式数据的存储方式,结合同态加密对加法、数乘运算的支持,巧妙地实现了稠密加密数与稀疏数据间的矩阵乘法运算,运行效率只与非零元素个数有关。
京东智联云联邦学习还提供 Logistic regression 、 XGBoost 、 DNN 等算法。支持Pearson、Spearman、WOE(weight of evidence)、IV(Information Value)等特征分析算法,提供了异常值填充、归一化、特征分桶、Count_Encoding、One-Hot等特征处理工具。
京东智联云联邦学习平台不依赖Spark、Yarn、K8s等三方框架,整个网络的搭建是基于Google全新推出的Tensorflow2.0和其高阶API tf.keras。在双塔网络的基础上,用户能够本身定义每一个塔的DNN结构。相较于Tensorflow 1.x,新版Tensorflow模型的调试更简单,API相对清晰,且tensorflow 2.x也会是将来的趋势。
在FATE的模型训练过程当中,使用的是Tensorflow中的Sequential API ,没法很好地将bottom网络和interactive网络的计算流畅地串联起来—训练过程当中,bottom网络的前向传播的结果,没有记录在反向传播中。这致使反向京东智联云联邦学习传播时,须要再次进行前向传播。两次地前向传播,一方面会增长运行时间,另外一方面,若是网络中包含随机数,极可能产生错误的结果。而在京东智联云联邦学习平台中,采用的是 Subclassing API,更具备灵活性,训练过程当中只需一次前向传播便可,可有效下降运行时间和随机数带来的不稳定性。
针对不一样安全要求级别,支持SaaS化的API接口在线预测、客户端内走联邦实时预测两种方案,前者计算更快,后者更安全。
目前,京东智联云联邦学习平台已经普遍服务于 零售 、 汽车 、 教育 、 风控 等行业。在汽车行业,建模训练2周后,模型效果即显著提高17%,实现客户转化率与ROI双重提高,驱动企业实现全链路数智化转型。
某汽车品牌多家线下4S店经过联邦学习平台安全融合线上线下数据,并利用机器学习技术共同建模;该模型有效预测了到店购车的人群、用户对车型的偏好,同时对每一个用户的到店几率及车型偏好进行评分,配合短信与电话触达高潜人群,大幅提高销售的成单效率以及不一样车型的转化率。
在部署方面,京东智联云联邦学习三天内便可完成平台的部署调试工做,一周内便可开始使用。同时支持可视化特征分析,不用手写代码,在页面选择点击便可实现特性相关性分析。
欢迎点击【京东智联云】,了解开发者社区
更多精彩技术实践与独家干货解析
欢迎关注【京东智联云开发者】公众号