Auto Byte

专注未来出行及智能汽车科技

微信扫一扫获取更多资讯

Science AI

关注人工智能与其他前沿技术、基础学科的交叉研究与融合发展

微信扫一扫获取更多资讯

市北GMIS | 微众银行首席人工智能官杨强:联邦学习的最新发展及应用

前段时间,Facebook 因泄露隐私数据被罚 50 亿美元,使得数据隐私和安全再次成为大家关注的焦点。如何在保证隐私安全的前提下利用数据也是人工智能发展面临的一大难题。联邦学习可以说是一个可行的解决方案。在市北·GMIS 2019 全球数据智能峰会上,微众银行首席人工智能官、国际人工智能学会理事长、香港科技大学教授杨强为我们介绍了联邦学习的最新发展及应用。

杨教授于 2013 年 7 月当选为国际人工智能协会(AAAI)院士,是第一位获此殊荣的华人。他是国际人工智能界「迁移学习」技术的开创者,同时提出「联邦学习」的研究新方向。

以下为杨教授在市北·GMIS 2019 全球数据智能峰会上的演讲内容,机器之心进行了不改变原意的编辑、整理:

大家好!今天非常荣幸有机会跟大家交流。非常感谢市北和机器之心举办的这个活动。我在前年也参加了 GMIS 活动,印象很深刻。今天给大家带来的演讲叫《联邦学习的最新发展及应用》。

AI 进入现在这个时刻也面临很大的挑战,今天我特别要讲的是数据挑战。

AI 时代的数据挑战

我们说 AI 是离不开大数据的,比如深度学习。一开始的比赛是上千万的图像,AlphaGo 也是几十万的棋盘做训练,我们叫大数据。但是我们在行业中看到的数据往往是小数据和细碎的数据,也就是没有联通起来的数据。如果我们只面临小数据,那么最先进的人工智能技术就很难用上,所以对我们来说,这是一个很大的挑战。

同时,我们现在日益关心数据隐私这一话题。比方说医疗数据,我们很难把不同医院的医疗影像数据汇聚到一起形成大数据来训练一个医疗模型。社会也需要更多的监管,更多地关注隐私和安全。比如说我们在美国看到的一些例子,就是因为数据泄露给公司带来的巨大灾难。

因此世界各地也引入了各种法规,像我们熟知的欧洲引入了一个著名的法规叫 GDPR,也就是个人通用数据的保护法规。根据该法规,一个公司在一个应用上使用数据的时候,首先要获得用户的同意,同时如果把这个数据和另外一个公司或者企业进行交换的时候也要获得用户的同意。

那么在这一点上,我们现在面临很大的挑战。因为,比如说在互联网公司,我们如何能够找到原来的用户,获得他的同意,这个本身就是一个很难的问题。因此,很多的数据使用方和数据拥有方就形成了一个隔裂墙,使得他们很难进行沟通。美国也逐渐引入相关的法规。对数据立法是全世界的现象,我们中国也在逐渐引入严格的数据保护法律法规。各领域的管理细则也纷纷出台,包括用户授权、监管部门的审批流程等等。所以我们看到的这个趋势是逐渐严格化、全面化的。

那么在这样的形势下,我们业界是怎样的呢?下图是我们的一个例子。

在保险行业进行个性化定价的时候,我们需要非常多的数据,包括保险行业的数据、业务数据、互联网行为数据等。我们要把它们融合在一起,以得到非常丰富的用户画像、用户 ID 的高度匹配。但是现实情况如何呢?因为上面所提到的隐私、安全、法规等等之类的原因,我们看到的数据是很有限的,我们能用到的数据集也是非常有限的。这使得我们数据的使用只有很小的维度、很小的范围,并且能够重复的用户占比非常小。

第二个例子是小微企业贷款的行业,这种企业的风险管理是一个难题。那么解决这个难题,就要引入不同的数据集、大量的数据集,比如票据数据、资产数据、舆情数据等等。但是因为以上这些原因造成数据的隔裂,我们只能用一些有限的数据,比如央行的征信报告,但是这些征信报告的覆盖范围是非常有限的。只能覆盖一部分的人群,少于 10%,大部分的用户没有重复的表现,因为你没有引入其他重要的数据。

所以在这,我们引入一个新的概念,能够解决以上这些难题,叫做联邦学习。

联邦学习

之前我们建立模型是要把数据汇聚到一起,就是所谓的数据移动。联邦学习就是要求数据不动,但是我们可以让模型在各个参与方之间移动,在安全加密的情况下,这个模型在成长。

那具体来说,这个事是怎么做的呢?我们看到下边这张图。

我们有多个数据方,在他们之间建立一个联盟。他们已经互相取得同意,参与到共同建模的共享模型联盟里面来了。那么我们可以在他们之间建一个全局的模型。我们希望达到以下目标:首先是数据隐私的保护,同时我们也要保护模型的参数,就是不同模型拥有方之间,模型的参数也不互相暴露。

那我们对这个模型的要求就是它的效果更好,比单方拥有的模型要好:A 方 B 方各自拥有模型,但是它们共同的模型比各自的更好。这个从数学上来说是很容易解释的,因为假如我们有上下两个数据集,如果我们能够把这个数据集的维度加以聚合,再形成概念的空间,就形成一个更大维度的数据集,这样就可以建一个下图所示更加复杂和有效的模型。

但是现在的问题是,如何能够在建立 A 方和 B 方之间模型的时候,不互相泄露数据。

应该说,这两年这个领域取得了突飞猛进的发展,大家研究的对象,包括如何压缩这个模型;如何进行算法的优化取得更好的效果;如何能够选择参与方、数据提供方;如何能够支持边缘计算,同时在数据分布不均匀的情况下,还能够进行这样的一种联邦学习,同时可以支持个性化,所有的这些都是在一个前提下,就是数据安全。

那么这里我要讲一下细分的领域,联邦学习的分类。

联邦学习的分类

我们可以把一个数据集看成是一个平面、一个矩阵。那么这个矩阵横过来是我们所说的样本,每一个样本占一行,每一个数据的特征,就是我们所说的属性,是占一列。这样讲很清楚,这里我们简化成两方,A 方和 B 方,两方要进行数据的合作。但是它们不能交换数据,假设我们知道这个数据是有某种重叠的,那么我们根据它的重叠来进行分类。比如说这种叫横向联邦,他们的 ID 维度是不同的。那么右边这里呢,我们看到,样本的 ID 是相同的,但是它们的特征却有区别,这个就是我们所经常说的 ToB 的应用。那么左边这个横向联邦更多是 ToC 的应用。

那么在这两个不同的分类下,我们可以分别研究不同的算法。研究这个算法就一定要注意数据的隐私保护、安全保护。

在这里我们引入几个概念,每一个参与方可以是非常诚实的,也可以是半诚实的,他对对方的数据有一种好奇,可能不是恶意的。但是我们也不排除某一个参与方完全是恶意的,就是想盗窃对方的数据。那么我们所说的安全的定义,一定要覆盖各个方面。同时,我们也在说某一方对对方的数据到底有多少知识。一个可能是零知识,另一个是他知道一些知识,这个根据两方的合同而定。

还有一个问题,我们可能有云计算在里面。所以这时候我们要考虑这个云计算的服务器是不是恶意中心,里面有没有一个人在偷盗用户的隐私。并且我们也要考虑某个节点他提供的数据可能是有毒性的数据,也就是说是恶意的数据节点。这个情况拼起来就非常非常多,我们要一个一个地去解决。所以在这个领域,每个方向都有比较大的进展。

联邦学习关键技术:加密/解密

第二个我们需要了解的是,加密技术现在也有突飞猛进的发展。

上边我列举了一些加密技术的名词,有一个叫同态加密,右边这个图是把不同的终端数据或者模型进行一个同态加密。那么同态加密的意思是什么呢?如果我们有一个公式,要把整个公式模型加密的话,可以把加密的算子分布到各个成分里面去,这样一种分布式的加密,就使得我们能够进行很有效的机器学习运算。比如说我们可以把同态加密用在深度学习模型上。另外几个加密算法包括多方安全计算,包括姚式混淆电路、差分隐私等等。

同态加密的一个好处是,它可以通过近似计算把非线性的方程进行同态加密。就像左上图所示,假设我们有一个错误率的方程,这个方程可以用某种近似给展开。那么这个展开是多项式的,我们可以通过对这个多项式的加密变成对每一项的加密。我们想象一下,这个方法可以渗透到深度神经网络里面每一个神经元的启动函数、激活函数。

纵向联邦学习

我们再回来利用加密的技术讨论一下不同的联邦学习分类,一个是纵向联邦学习。我们刚才说它们的样本是重叠的,但是数据维度是不重叠的。比如有一个银行要跟互联网合作,或者一个银行跟零售企业合作,他们看到的用户数据的维度是不一样的,但是他们可能在处理同一批用户,这样就形成 A 方和 B 方。我们希望这两方共同持有一个模型,这时候这个模型是做什么呢?可能是对银行的信用分进行建模。这个是刚才所说的新零售或者互联网方没有的。所以我们利用一方有 Y 的数据,一方有 X 的数据,这个就是纵向联邦学习的一个目标。

那么纵向联邦学习是怎么进行的呢?如下图所示,我们有一个 A 方,有一个 B 方,那么 A 方和 B 方通过两者的交互,在交互的过程中交换加密后的参数。这个加密后的参数使得各方所持有的模型逐渐地成长,最后达到稳定的状态,合起来就是一个完整的模型,分开是各自拥有一半的模型。

在对新的用户进行操作的时候,他们也一定要合作来进行。就好像我们每个人对一个新来的学生进行面试,但是我们两个人面试的内容不一样,对于最后来的一个新学生,两个老师要同时参与面试。另外一个例子,就是假设两个共同作者在写同一本书,每一个作者自己写一部分的章节,一个作者写完自己的章节以后把他的内容概述发给另外一个作者,使得他们互相之间不要看各自私有的数据,同时把这本书写完。所以用这个办法最后可以建一个共享模型。

我们在企业上关心的是效果,那么这个模型多有效呢?答案是非常有效。比如说跟保险公司合作的个性化保险定价,就是可以对不同的人定不同的价。个性化保险定价领域,使得我们的覆盖面增长八倍,同时效果也有所提升。这就使得用户的体验大为提升。右边这个是我们在小微企业贷款方面,也取得了很大的提高,有 12% 的提高。

横向联邦学习

刚才讲的是纵向,是说两个企业之间,它们共享一些用户,但是它们却不共享特征。现在我们考虑另外一个方面,即他们共享特征,但是不共享用户。这里以手机行业为例,每一个手机都是在跟云端沟通,都记录同样的用户信息,但是来自不同的用户。所以它们的内容都是不一样的,而且它们之间不能交换,也不希望云端能够看到用户的隐私信息。在这个情况下,我们如何能够把大家的数据汇聚起来,建立一个共同的模型?

我举个例子,假设我们每个手机上有很多图片,每个人在自己的手机上对自己的图像进行标注,那么这个标注能不能影响到一个云端的通用模型,使得它不断得到更新呢?

现在的这个状态是需要把这些标注的数据上传,但是这样就会暴露我这些照片的隐私,所以是不可取的。但是我们用横向联邦学习,在本地建一个小的模型,把这个模型加密以后上传。上传的模型的参数是受到加密保护的,服务器端看不到它的内容但是却可以把模型汇聚起来,对它通用的模型进行更新,然后再释放给这些手机,所以我们的手机在下一步就会得到一个新的通用模型,帮助我们进行自动化图片标注。所以这个对用户是非常有效的,同时也保护了隐私。

这里我要特别指出的是 16 年谷歌提出的一个算法,是在手机的输入法上。谷歌的输入法基于此取得了非常大的实验性成果。

如下图所示,云端在搜集各个手机端的模型,但是这个模型是加密后的,然后它在右上角 C 那一步,把加密后更新的模型再释放给这些手机,形成一个闭环。这个算法是在深度学习的基础上进行同态加密,总结起来就是:在手机终端有多个用户和一个中心,所有数据维度相同,它的特点是进行本地的模型训练,同时它还有一个特点,就是可以选择某些用户参与训练,某些用户不参与。

联邦迁移学习

如果两边既没有共同的特征,又没有共同的用户怎么办呢?我们可以用迁移学习。我们把两方的数据移到一个第三方的空间,在这个空间里面,数据之间的知识可以互相迁移,这个也是把联邦学习和迁移学习加以结合,加以聚合,使得当我们在两方的 ID 和特征都不一样的情况下,也可以共同建模。这个稍微复杂一点,它的计算量、需求也会大一点。在进行模型推断的时候,也是两方共同参与,进行加密、交换,最后进行结果的推断。

这里我要说的是这些加密算法,它的效率就显得非常重要。比较好的加密算法计算费用还是很高的,所以在这方面,还有很多的路要走。但是应该说,在同态加密和混淆电路方面,在私密性方面它有独到的地方,也是大家比较喜欢用的。

联邦学习生态和应用案例

下面给大家举一些应用案例。第一点我要强调的是,联邦学习一定是多方共同协作,所以我们有必要讨论如何建立一个生态、一个联盟,使得它们之间乐于互相参与,贡献不同的数据和模型。

如上图所示,如果用了联邦学习以后,两方就可以共同拥有共享的模型,那么与之前的隐私机器学习等相比,联邦学习有很大的优势。其中最大的优势就是它可以保证数据出库。

那么我们建立这个生态就可以在不同的行业之间选取参与方,银行和监管方、互联网和保险方、金融和互联网、零售和互联网等都可以建立这样的联盟,而我们现在正在进行这样的工作。

保险业的个性化定价

第一个例子就是我刚才说的保险业的个性化定价的难题,如何能够利用更多的数据来进行个性化的保险定价呢?这里的例子是一个互联网企业和一个保险企业的数据合作。这两个数据是互相不能透露的。但是我们却看到用户之间有很多的重叠,这个是属于我们刚才说的纵向联邦学习。这个重叠度相当大,所以这样的一个扩展使得数据的维度大为增加,效果也显著提升,这个就是我刚开始所说的 8 倍的覆盖率提升。

小微企业信贷的风险管理

第二个是对小微企业信贷的风险管理。我们用联邦学习克服对客户了解的缺乏和数据分布的严重缺失。利用纵向联邦学习,数据的维度可以合作,样本有重叠,那么在扩展以后,风险管理水平就大为提升。比方说风控的区分度提高了 12%,贷款的不良率也大为下降,小于千分之五。

联邦学习落地场景实例

我们根据不同的结构可以设计不同的横向和纵向混合架构,上图左上角就是一个很有趣的例子。在保险行业有再保险领域,它是保险公司的保险,也属于一种保险公司,它需要和很多的保险公司进行合作。这些保险公司和再保险公司同时也要和互联网公司进行合作,所以我们在这里看到这样一个架构:互联网公司和保险公司之间有一个纵向联邦,但是保险公司相互之间却是横向联邦,因为它们之间拥有共同的特征,但是没有共同的用户。

右上角举的是计算机视觉的例子。在这里有很多用户方、很多企业。比如说,有很多摄像头在进行某种行为监测,但是因为隐私缘故,它们之间不能直接沟通数据,所以它们可以跟某个视觉公司合作。视觉公司之间可以形成一个大联邦,这些摄像头之间可以形成小联邦。

左下角是一个监管科技的例子,就是说银行之间的反洗钱需要互联网公司来参与,这样才能把模型壮大,使得特征变得丰富。但是银行和银行之间也要合作,我们要知道用户的金融行为,一定要引入更多的银行参与。所以银行和银行之间是横向联邦,但是银行和互联网公司是纵向联邦。那么右下角是一个零售商和零售商之间的一种合作,同样他们之间是横向联邦,但是他们和互联网公司是纵向联邦。

我刚才特别举的一个例子是视觉公司,这里假设的是一个真实的案例,是我们跟深圳一家公司的合作。他们面临的实际场景是,有很多视觉公司,每家视觉公司都在监控一个地点的安全生产,比如工地和工厂。要用摄像头去监控工人是不是戴了安全帽,有没有人抽烟,有没有明火等等,但是同时我们不希望暴露出现在镜头中的工人,这个属于隐私。所以每个镜头和不同的摄像公司、不同的监控公司都形成一个联邦学习,最后使得他们的模型共同壮大,这个效果也是非常好的。

我们做了另外一个实践,就是在语音识别领域。语音识别在服务中心,尤其像银行、大的设备商、手机厂商、电商服务中心都是非常有用的。那么利用机器人进行自动化语音识别,就需要把语音的数据加以整理,变成训练数据。但是我们又不希望暴露这些客户和客服的隐私,这时候就可以引入联邦学习。联邦学习使得数据的加工方和数据的提供方之间可以进行双向交流,用群体智能不断地提升模型效果,这个也取得了很好的成果。

最后一点是,联邦学习也需要建立一个生态,这个生态需要引入更多的经济学概念,同时我们知道在人工智能方面有一个领域,叫多智能体。这个领域已经非常深入地研究经济学模型和博弈论,如何鼓励用户更多地参与。我们在这里就会加入到这样的一个研究行列里面来。

联邦学习和迁移学习的生态也在蓬勃发展,这里特别要说的是联邦学习已经成为 AI 在学术界和工业界的趋势。我们在去年的中国人工智能大会上作了一个演讲,和谷歌也有很多的交流。谷歌 6 月份的时候在西雅图举办了一个大会,也有很多学术界的同仁参加。包括下下周在澳门 IJCAI 大会上将会举办第一届国际联邦学习研讨会,也希望大家积极参与。

同时,联邦学习需要各个参与方都对其软件和架构有足够的信任。为了达到这一点,我们采取的途径是开源。那些源代码都是可见的,你可以分析所有可能的漏洞,因此使用起来也会非常放心,这个也是我们初衷。在这里我特别要提的是,国际上已经有不少开源项目,但是我们最全的一个开源项目是微众银行提出的 FATE 这个项目,大家可以下载,并且可以参与贡献其中。同时我们在推动建立一个标准,使得各个参与方之间可以建立共同的语言,来构建这样的一个标准。这个标准同时在国内也在推进,刚刚一个工信部的团体标准被批准了,我们下一步是向国家标准靠近。

上面这个是我刚刚讲的团体标准的案例,希望大家能够有机会下载。

联邦学习研究展望

最后要说的是,联邦学习的提出有很深厚的背景,像我一开始所说的,人工智能面临数据挑战:数据不足、割裂、小数据的问题,要解决这些问题一定要解决安全、合规、隐私保护的问题,并且还要能够提高模型的效率。作为一个新兴的学术和工业应用的领域,它有很多要走的路,前面还有很多事情要做。比如说安全合规、如何防御恶性攻击、如何提高算法的效率、加密算法的效率、如何扩展它的技术应用,并且能够从机制上解决联盟的建立和蓬勃发展、可持续发展的难题。如果有一些人对数据进行渲染,使得这个数据偏袒某些他希望的方面,如果能够探测到这些数据方面的缺陷和隐含的漏洞,所以这些方面在座如果有学术界的同仁,欢迎大家来参与研究。谢谢大家!


理论GMIS 2019杨强联邦学习智慧金融
2
暂无评论
暂无评论~