随着互联网业务的不断发展,很多机构都积累了海量的线上数据,充分利用这些数据,进行相关的数据分析、特征挖掘、算法建模是各机构重点发展的方向。然而在大多数行业与企业中,数据是以孤岛形式存在的,由于行业竞争、隐私安全、行政手续复杂等问题,即使是在同一个公司的不同部门之间实现数据整合也面临着重重阻力,在现实中想要将分散在各地、各个机构的数据进行整合几乎是不可能的,或者说所需的成本是巨大的。
另一方面,随着大数据的进一步发展,重视数据隐私和安全已经成为了世界性的趋势。这给人工智能领域带来了前所未有的挑战,如何在满足安全和监管要求的前提下,设计一个机器学习框架,让人工智能系统能够更加高效、准确的共同使用各自的数据,是当前人工智能发展的一个重要课题。
近两年,联邦学习技术 (Federated Learning)的出现,为跨团队数据合作,打破“数据孤岛”提供了新的解决方案。
联邦学习是一种新兴的人工智能基础技术,在2016年由谷歌最先提出,原本用于解决安卓手机终端用户在本地更新模型的问题,其设计目标是在保障大数据交换时的信息安全、保护终端数据和个人数据隐私、保证合法合规的前提下,在多参与方或多计算结点之间开展高效率的机器学习。联邦学习可使用的机器学习算法不局限于神经网络,还包括随机森林等重要算法。联邦学习有望成为下一代人工智能协同算法和协作网络的基础。
在这一背景下,京东智联云联邦学习平台应运而生。本篇文章就带大家揭开它的神秘面纱。
京东智联云联邦学习平台架构解析
京东智联云联邦学习平台旨在建立一个基于分布式数据集的联邦学习模型。在训练过程中,模型信息以加密的形式在各机构间交互,交互过程不会暴露任何机构的隐私数据,训练好的模型在各个机构间共享。
前不久,凭借在调度管理能力、数据处理能力、算法实现、效果及性能以及安全性等方面的出色表现,京东智联云联邦学习平台顺利通过信通院的「大数据产品能力评测 」,被授予联邦学习基础能力专项评测证书,获得业界权威认可。
京东智联云联邦学习平台可以很好地解决各个政企间数据孤岛林立的现象,充分释放AI应用潜能,实现在隐私数据安全前提下的多方联合建模。(如图 1)
▲图1 京东智联云联邦学习平台▲
为什么京东智联云联邦数据平台可以具备以上特性呢?
数据的质量和数量决定了机器学习的效果上限。为了让模型(如神经网络)达到更好的效果就可能需要给模型输入更多的数据。而大量的数据需要消耗更多的存储和算力,此时就要依靠分布式的方法来为机器学习提供充足的算力、存储以及合理的任务调度。联邦学习也是如此,从图 2的京东智联云分布式联邦学习架构我们可以看出其本质是一种加密的分布式机器学习技术。
▲图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店通过联邦学习平台安全融合线上线下数据,并利用机器学习技术共同建模;该模型有效预测了到店购车的人群、用户对车型的偏好,同时对每个用户的到店概率及车型偏好进行评分,配合短信与电话触达高潜人群,大幅提升销售的成单效率以及不同车型的转化率。
在部署方面,京东智联云联邦学习三天内即可完成平台的部署调试工作,一周内即可开始使用。同时支持可视化特征分析,不用手写代码,在页面选择点击即可实现特性相关性分析。