随着大数据的发展,重视数据隐私和安全已经成为一种世界性的趋势,如何在实现大数据隐私保护的同时,满足企业的产业AI数字化应用需求是大家普遍面临的难题。

8月9日,在2020全球人工智能和机器人峰会(简称2020 CCF-GAIR) “联邦数据与大隐私专场”,京东数字科技集团(以下简称:京东数科)AI实验室首席科学家薄列峰分享了《快速安全的联邦学习框架》的主题演讲,详细介绍了京东数科独自研发的既能保证数据安全性又具有高效率的联邦学习算法。

以下为现场演讲整理。

很高兴和大家来分享我们在联邦学习方面的一些探索。

今天主要讲四个部分,一是联邦学习的背景;二是纵向联邦学习;三是我们提出的快速安全的纵向联邦学习框架和它的核心的思想,以及实践结果和思考;最后会讨论一下联邦学习和区块链可能存在融合趋势。

现在用户越来越关注数据的隐私,有两个趋势还是非常明显的,一个是数据管理的严格化,现在数据责任明确,刑罚甚至要到自然人。另外就是数据监督更加全面化,覆盖的领域越来越多。在这样的大背景下,急需一些创新的工具,能够满足数据监督和管理的需求,同时也能让我们使用大数据。

现在欧美的数据管控非常严格,特别是对个人数据的保护,大的方向是,一个企业越能对个人的数据进行好的保护,你越能赢得信任。

传统的机器学习是把数据都聚集到一块,然后建立一个机器学习的模型,这样的方法首先是需要把数据汇集起来,数据的隐私就已经不存在了,因为你已经上传到一个中心化的地方了。分布式联邦学习可以解决把数据放到一起,然后来做机器学习模型的问题。但是分布式机器学习需要传递梯度这样的非常强的关于数据的信息,它本身的安全性也会受到一定的挑战。在这种情况下,联邦学习这样一个工具就应运而生,来解决这个问题。

联邦学习框架如何助力产业数字化升级?-科记汇

在联邦学习的框架下,大家就在思考,我能传一些更加可靠的,很难从中间的结果推断出原始数据信息的参数,这样我既能更新模型,大家协作地完成这个学习过程,同时我又能保护数据的隐私。

什么是联邦学习

这里讲一下联邦学习的定义,联邦学习是指在满足数据隐私、安全和监管要求的前提下,让人工智能系统能够更加高效、准确的共同使用各自的数据的机器学习框架。它的应用范围包括横向联邦学习对不同用户上的应用,还有纵向联邦学习在多个企业上的应用。最早时候是谷歌做的一个纵向的联邦学习框架,在公司内部得到推广。

大家都知道大的企业的用户是遍及各个区域的,像谷歌它有美国、欧洲的用户,还有其它国家的用户,怎么让这些用户的信息待在他们各自的国家,同时又能利用这些数据来强化搜索、推荐等等的系统,这样一个横向的联邦学习框架,是非常有用的工具,来做这样的工作。

这一块是对纵向和横向联邦学习框架的定义,简单来讲,一个是分数据,一个是分特征。

联邦学习框架如何助力产业数字化升级?-科记汇

这里列出了纵向联邦学习这样一个大的框架性的流程图,在经典的纵向联邦学习这样一个框架,它的核心理念是为梯度关键的信息进行加密,加密的工具理论上说任何加密算法都可以使用,这里大家选择比较多的是同态加密,因为它能够在加密里做一些运算,这样的运算能够保留原来域的一些同态的特点。

有了这样的工具,一些中间的结果,包括加密后的梯度,它就可以在一些加密域进行,包括加法运算等等。

同态加密首先会有一个安全参数,然后产生公钥,产生私钥,公钥就可以对明文产生加密,变成密文。同态加密具备这样的特点,在两个明文的加合,用公钥给它做加密,它是相当于分别给两个明文加密,在这个加密域做加和。这个特性就允许对两个加密的密文进行加法运算,然后再解密,我们就能获取出原始的两个明文加和的运算。在加密域做这样的运算,各参与方是不知道原始数据的,这样原始数据信息得到了比较好的保留。另外一个特性是在加密域也可以进行一个尺度的运算。同态加密在整个开源领域也有比较好的开源软件可以利用。

在这个框架下,这里列出了一个线性回归的纵向联邦学习的框架。

纵向联邦学习

大的思路就是刚才讲的,像中间的一些梯度的信息会用同态加密来做,然后有一个collaborator,最终会解密传递的信息,然后传回来,各自参与者的信息能得到比较好的保留,大家是不知道彼此信息的。

联邦学习框架如何助力产业数字化升级?-科记汇

联邦学习框架如何助力产业数字化升级?-科记汇

这是线性回归算法的一个经典的案例,在杨老师的书上也有这个例子。

另外一个是随机森林算法。

联邦学习框架如何助力产业数字化升级?-科记汇

随机森林算法之前比较经典的是联邦XGB的算法。随机森林的算法有一个优势,它在建数的各个中是纵向的,它也是相对比较容易做成一个垂直联邦学习算法的。

大的思路是这样,主动方有同态加密的公钥和密钥,主动方会把加密的中间的信息送给被动方,被动方会根据各自的特征的信息,对传递过来的加密信息按照自己的特征,基于这样的一些操作,基于自己特征的特点,把加密的信息传给主动方,主动方会通过再来解密,然后去计算每个特征的分,进行特征的选择,这样就可以完成多方垂直联邦学习的过程。

快速安全的联邦学习框架

这里讲一下我们今年做的工作,主要的思路是这样,传统的纵向联邦学习框架是依赖于对梯度进行加密的过程,这样的过程是非常安全,同时也是大家相对非常信赖的过程,这里头涉及大量的密码学的运算,在我们实践和真实运行的过程中,它通常会是整个训练过程中的一个计算上的瓶颈。

联邦学习框架如何助力产业数字化升级?-科记汇

我们设计了一个基于内机和Corner的方法,来做一个快速的联邦学习的框架。

联邦学习框架如何助力产业数字化升级?-科记汇

它的特点第一是数据和模型的隐私能得到保护,这个我们可以从理论上进行证明。第二个特点是利用树状通讯结构,来平衡各个参与方之间的数据上的通信,从而来提升效率。在提升效率的同时,因为它的树状结构的差异性,也能进一步平衡主动方或者是coordinator得到的信息量,进一步得到安全性。同时我们也设计了异步的梯队更新的发,能再次提升通信的效率。如果是同步通信的话,必须等大家都把信息传到主动方或者传到coordinator之后才能进行运算,整个系统中最慢的worker就会对算法的训练速度产生影响,通过异步的框架,我们能够有效地避免这个问题。

这个流程图画了我们大概的思路,它的核心是通过一个内机的方法,还有树状的结构图。

联邦学习框架如何助力产业数字化升级?-科记汇

下面我们简单地看一个具体的例子,就是把这个大的流程简单地走一遍。以这个逻辑回归为例,这里头有一些符号,包括X、Y来表示输入、输出训练集,还有不同的worker来协作,不同的worker代表不同的参与方,代表不同的公司,在我们的应用问题中,我们把这个问题应用到了风控和数字营销上。我们的实验一般是考虑8个worker,这个可以灵活做一个变化。

两个差异显著的树结构,这里举了个例子,就是各个worker形成了这样一个树状的结构图。可以看到T1和T2的树状的结构是明显不同的。

简单地来看看主要的算法步骤。第一个步骤是把中间内机的结果,就是这个参数和这个特征,在这个worker上的值计算出来,这个值是一个单值,并且产生一个随机数,我们通过不同的树状结构,分别对内机加噪声,用树状结构进行聚合,聚合完之后,我们减去这个噪声,就可以计算到这个特征和线性参数W的内机值。在我们每个worker都计算出这个值之后,我们把它发给主动方active worker,发给它之后我和就可以计算出它的值。然后我们就会把这个值传递给Passive worker,Passive worker接到从Active worker传过来的值,它自己也能计算出自己的值,这样就可以利用梯度进行更新。核心的思路可以看到在这里是内机的这样一个情况。对线性的内机是很容易实现的,这个东西推广到非线性,我们可以用Corner的方法来实现,Corner的方法可以看成是高维甚至是无限位,以它做一个内机的方式。

在实现的过程中,主要保证以下两点,第一是确保通信的安全,也就是说我们这个框架在通信过程中不会被其它的系统所攻击,如果整个通信过程被其它系统所攻击,这个可能也是现在很多联邦学习所要面临的挑战。第二是需要一个可信赖的第三方来进行调度。在实际操作中,这个相对也是比较容易的,因为当几个参与方来联合做这样一个事情的时候,大家其实都倾向于有一个可以信赖的机构来合作。举个例子,如果两方或三方合作,有一个公司要求做主动方,其他方也会有一些担心,所以这里面都会有一些协调的过程。

然后看一下我们的安全性分析,在安全性分析之前,我们定义了semi-honest、精确推理攻击、近似推理攻击等等,因为时间关系就不讲它的细节,观点是算法不仅可以有效抵御直接的攻击,也能抵御近似的攻击。

刚才也提到,整个框架是在线性模型下的一个框架,大家会问,在实际的问题中,我们如果只做线性的,它可能面临精度不够的问题,这就需要我们有一个方式把整个框架推广到非线性,这一块我们利用Corner的方法把它推广到非线性,这里面的一个核心的思想是我们可以用随机逼近的方法,就是逼近Corner的方法,一种方法是随机逼近,另一种方法也可以更广义地说,像一个神经元所定义的一组高维的映射,它也能对应到一个Corner。所以这一块在Corner的逼近上还是比较灵活的。通过Corner的逼近之后,我们就能把刚才的算法走两次,通过走两次这样的思路,就能实现这样一个非线性的机器学习的算法,这样相比线性会有明显的性能的提升。

这一块是收敛性的分析。

联邦学习框架如何助力产业数字化升级?-科记汇

我们在论文中都有证明。它的贡献是实现了快速安全的异步并行的纵向联邦随机梯度算法。在纵向联邦学习框架下异步的梯度空间算法,我们也是首次来尝试这样一个工作。我们的算法的优势包括安全性和快速性。

联邦学习框架如何助力产业数字化升级?-科记汇

我们对结果做了一些对比,包括跟原始的LIBSVM进行对比,我们也引入了Corner下降的算法,所以我们的收敛速度还是非常有效,即使跟一个不是联邦学习的Corner算法来比,还是有一定的优势。

联邦学习框架如何助力产业数字化升级?-科记汇

包括和LIBSVM对比,包括和SecureBoost的对比,看到这里面的结果,它也都是比较好的,在各个结果上,我们的精度都是在最低的水平上。

联邦学习框架如何助力产业数字化升级?-科记汇

我们的论文也已经发表了,感兴趣的大家可以去看。

联邦学习框架如何助力产业数字化升级?-科记汇

联邦学习和区块链可能存在融合趋势

最后我花一分钟讲另外一个趋势,大家知道联邦学习解决了在保护数据隐私下联合建模的问题,区块链特别是在金融领域,它的推广和应用也是越来越多了,联邦学习在金融领域,特别是像风控领域,杨老师有很多探索,京东数科在应用联邦学习到风控领域也有相当多的探索,我们和超过十几家机构合作做这样的工作。

联邦学习框架如何助力产业数字化升级?-科记汇

区块链在金融领域也有比较广泛的应用,随着区块链的发展,越来越多的数据在区块链上存储,因为区块链解决了篡改的问题,我们在区块链也看到了区块链和联邦学习结合的趋势。

它们有几个共同的特点,首先它都是有很多不同的参与方,这是区块链和联邦学习共同的特点,第二个共同特点是它们都比较重地用到了数据的加解密的技术。随着越来越多的数据走向区块链,联邦学习就可以建在区块链之上,和区块链有机的融合,来利用区块链的数据,它两个的共同特点,包括区块链的不可篡改性和联邦学习建模,对隐私的保护,这两个双重的结合,对很多To B的方案是有非常大的吸引力,京东数科也在主大这样一个To B的业务,所以我们看到了区块链和联邦学习结合相当大的潜力,我们在内部也做了一些比较好的尝试,这一块也有一些比较好的结果。

以上就是我关于快速安全联邦学习框架的介绍,再次感谢大家。

—————————————————

(市场有风险,投资交易需谨慎。据此投资交易,风险自担。)