杨强:应对对抗攻击、结合AutoML,是联邦学习接下来的研究重点| CCF-GAIR 2020

2020-08-12 15:10:46 浏览数 (1)

作者 | 丛末

8月7日-8月9日,2020年全球人工智能和机器人峰会(简称“CCF-GAIR 2020”)在深圳如期举办!CCF-GAIR由中国计算机学会(CCF)主办,香港中文大学(深圳)、雷锋网联合承办,鹏城实验室、深圳市人工智能与机器人研究院协办,以“AI新基建 产业新机遇”为大会主题,致力打造国内人工智能和机器人领域规模最大、规格最高、跨界最广的学术、工业和投资领域盛会。

8月9日下午,在「联邦学习与大数据隐私」专场上,微众银行首席人工智能官、香港科技大学杨强教授进行了题为「联邦学习下的数据价值与模型安全」的演讲。

演讲中,杨强教授介绍了联邦学习的关键技术以及应用案例,并进一步介绍了最新开展的联邦学习和迁移学习的结合研究以及接下来的重点研究方向。

杨强教授表示,我们建立的 AI 离不开人,保护人的隐私是当下AI 发展中特别重要的一点,这也是从政府到个人、企业以及社会的要求;另外,AI也要保护模型的安全,防止恶意或非恶意的攻击;最后,AI 需要人类伙伴的理解,如何实现联邦学习系统的透明性和可解释性,也是研究者接下来需要重点研究的方向。

以下是杨强教授在大会的演讲实录,AI 科技评论进行了不修改原意的整理和编辑:

今天非常高兴跟大家在联邦学习专场相见,也非常感谢CCF-GAIR、雷锋网组织了这场会议。就像刚才主持人所说,联邦学习现在在国内外已经变成“星星之火可以燎原”之势,在学术界、工业界、政府层面都有很大的推动力和场景,这和我们在座同事们的努力也是分不开的。今天我的题目是《联邦学习的数据价值和模型安全》。

1 联邦学习研究背景

首先看一下联邦学习的研究背景。

我们知道AI的力量来自大数据,但我们面临的实际问题往往只有小数据,比方说我经常举的例子,一个是法律,一个是金融,一个是医疗,这些跟国计民生和大产业都相关。另外还有很多其他的例子,比如香港科技大学的老师们,他们网上课程的学生受众是万级的,那能不能用他们的问答数据做一个对话系统?我带着这个问题访问了好几位老师,结果他们的回答都是:没有数据。他们的数据十分有限,也没有标注,完全没办法采用人工智能对话机器人的思路和方法来做对话系统。

这也给了我一个启发,我们总觉得在一个领域应该有很多数据,然而实际情况是,这些数据是非常有限的。我们经常听到的人工智能主战场,像无人车、智能手机等等,每一台设备上的数据也是有限的,我们只有把这些数据汇聚在云端,才能形成大数据。但现在对数据的监管法规,例如欧盟推出的个人隐私与数据法规GDPR等等,也限制了这些数据的汇聚。

给大家讲一个小故事,2018年我在AI瑞典大会上遇到了瑞典的一位工业部长,我们进行了一些问答交流,他对AI也很感兴趣。我当时提的问题是“你们今年推出了GDPR,会不会限制欧洲人工智能的成长?”他说看上去是会的,但是他希望欧洲的公司有提出一些满足GDPR的人工智能方案的理想。今天来看,这个想法是非常好的,因为如果真的做到了,他们的人工智能就能够螺旋性上升,就可以走在世界的前端。不过,欧洲并没有做出这样的人工智能。也就是说,这并不是技术革新的充分条件。

在此背景下,我们也知道数据监管以及对数据隐私的要求,在全世界范围内形成了一股潮流,不管是政府还是民间,大家对数据隐私的安全保护都是非常在意的。另外,To B的企业会知道,每一个机构、企业,甚至是每一个集团公司的子公司,都很希望他们的数据可以不出本地,不为其他人所有。这一方面是受限于监管和数据安全的限制,另一方面是他们不愿意让自己的核心资产被别人拿到,因为数据承载了很多价值,一旦他们的数据被别人掌握,他们的核心价值就折旧了,就好像我们买一辆车,一出4S店的门,这辆车的价值就马上减半了,这种状态使得大家裹足不前。

我们之所以大力推动联邦学习,便是从这个角度出发的。

2

联邦学习:数据不动模型动,数据可用不可见

关于联邦学习,我和我的同事们经常提两句话:

第一句话是“数据不动模型动”,这是联邦学习的核心,让模型在不同机构之间、端和云之间进行沟通交流。

那它产生的效果是什么?这就是第二句话——“数据可用不可见”,这里所说的不可见,是别人看不见你的数据,你也看不见别人的数据,即数据和模型都保留在本地,建模的过程也保证了数据的安全。

我经常用的一个例子是“羊吃草”。我们把羊比拟成一个模型,把草比作数据。传统的做法是把草运到羊的位置,这样的话这个数据就需要出本地,而联邦学习的做法是领着这只羊访问不同的草所在的地方,这样草就不用出本地,羊还是可以长大。

业界也发展出了不同的联邦学习模式,一种模式是谷歌提出的横向联邦,或者叫做按照样本切割的联邦学习。如果我们把所有聚合好的数据想象成一个大的数据集,这个数据集横过来的每一行是一个样本,是一个用户的所有数据,纵过来的每一列则是特征,比如用户的年份、身份等等。

横向联邦,就是把这个数据的一部分样本寄存在某个终端,如上右图所示。这些样本加起来是一个完整的数据集,但我们现在没办法在物理或实际现实世界中达到这个目的。因此,谷歌的做法是:首先在每一个本地建模,建的模型是图里的“w”,对模型加密以后,把加密后的模型在云端进行整合。

这个过程的目的是不让参数泄露,因此关键技术是加密和解密的技术,现在有各种各样的可以使用的加密技术,它们都在不同程度有保密性。

比方说最严格的同态加密,它的特点是穿透性,其进行的数学多项运算可以穿透包对内部数据进行同样的运算,而运作执行者可以不看内容。就像我们在电商上买了很多包咖啡豆,每一个外面都有包裹,聚集了多个包裹以后,我们想把它们做成一个大袋子,同态加密技术就可以让我们在不破坏外包装的前提下做出这个大袋子,同时把咖啡豆聚集在一起。

这个技术也可以同样可以用在纵向联邦模型上。按照特征来分,一个机构可以有这样的用户特征,另一个机构可以有那样的用户特征;一个医院可以有病人的胸腔检测,另一个医院可以有病人的核酸检测,当他们合作以后,就希望得到全面的用户检测模型。而这个模型可以通过上右图呈现的方式,在两个机构之间传播和沟通,整个传播和沟通过程也是在加密的情况下用分布式的机器学习来进行的。

这种做法也可以适配到人工智能算法上,左边的图表示的是在纵向的情况下采用SecureBoost算法,右边的图表示在横向联邦基础上也可以实现SecureBoost算法,这是机器学习联邦化的例子。对于学生来说,将算法和联邦学习相结合是一个很好的研究题目。不管是To C还是To B,可以采用横向联邦学习也可以采用纵向联邦学习。

3

联邦学习应用案例

给大家举几个联邦学习的应用案例。

第一个案例是推荐系统,这是现在很多应用的核心,比如电影推荐、书籍推荐,比如新闻和短视频推荐,这些系统的特点是数据越多越好,我们叫做矩阵数据。也就是说,这个矩阵的纵向是不同用户,横向是不同特征(即产品)。做推荐的时候,矩阵越密越好,因为矩阵的密度决定了推荐的个性化效果。如果要实现这个推荐系统,让两方合作,同时又不在物理上将双方的数据进行传播,就需要用到联邦推荐的架构,具体来说,就是让双方交换一些共有子矩阵,在加密的前提下实现联邦推荐的效果。这种方法也可以应用在广告的推荐上。

第二个例子是基于联邦学习的企业贷款风控模型。金融界特别关心建立一个好的风控模型。在这个案例中,由一家银行和一家票据公司对同一批用户进行联合建模,在建模的过程中就可以复传数据。

对于纵向联邦而言特别重要的一点是,有一方需要有关键的标注数据,比如银行有关键的逾期率数据,但缺乏用户行为数据,而用户行为数据可以由合作的票据方来提供,最终实现效果也是非常明显的。目前在联邦学习实践中,已经有几十家银行和非银行合作的案例了,这些案例都证明联邦学习方法可以大幅降低坏账率。

第三个例子,多个保险公司之间进行横向联邦,在保险公司和互联网之间还可以进行纵向联邦。也就是说在同样类型客户的机构之间,可以进行横向联邦;而在拥有不同特征客户的机构之间可以进行纵向联邦,也可以进行拓扑联邦。

联邦学习在计算机视觉领域也有应用案例。AI 视觉公司之间如果进行横向联邦,他们可以把模型的准确率大幅提高。

视觉以外,人工智能的另一个重要战场是语音识别ASR,这一领域也有采用联邦学习的需求。比方说我们在一个客服中心收集了很多录音,在另一个客服中心也收集了很多录音,那能不能把这两批录音结合起来变成更大的数据集?很显然,这会暴露用户隐私,不过现在我们可以用联邦学习建立一个更好的语音识别模型,目前微众人工智能部门也实现这一方案。

另外,联邦学习在 IoT 领域也得到了应用,比如还利用联邦学习进行仓库的仓储量预测,比如当有些货品缺乏时,系统就可以提早提出预警。

总结来说,这一阶段我们做了各种各样的尝试,以证明联邦学习可以在企业,尤其是可以在不同企业之间广泛使用,现在这一点也得到了很好的印证,接下来的专场,大家也会听到不同讲者 阐述联邦学习在他们各自领域中的应用。

我特别要提到的一个应用——健康码,这是我们最新的一个尝试。大家扫健康码进入会场的时候,扫的时候可能都会有一个担心,健康码记录了你到过什么地方,有没有去过现在疫情比较紧急的地方。其实更准确的健康码,应该能记录到你有没有近距离接触过一些新冠病人,但这就要对你的轨迹数据进行非常细致的调查以及你和其他人的轨迹的交叉计算。这或多或少会让我们担心自己的轨迹数据隐私会不会暴露给一些不认识的人,比方说云计算公司。

我们现在把联邦学习和应用结合起来,形成了新的方案,叫做联邦健康码,它计算出来的最后结果只有你自身所拥有的那台手机才知道,其他的人都只知道片面信息,而不知道全面信息。

4 联邦学习和迁移学习的结合研究

我们现在在做一项研究工作,把联邦学习和迁移学习结合起来。

联邦学习在应用中往往存在一个现象,即每一个数据拥有方所持有的数据,也许和别人的分布是不一样的,也许和别人的表达也是不一样的。比方说一个摄像头中可能看到更多的是男性,另一个摄像头看到的更多的是女性,这样的分布是不一样的。在这种状况下建模,对机器学习来说是有困难的,因为机器学习要求数据遵从统一分布,并且表达也是类似的,而不能一部分数据是图像,而另一部分数据是文字。这种异构的数据在现实中经常发生,所以有必要来做联邦学习和迁移学习的结合。

这种结合可以体现在各个层面,以深度学习为例,左边的图展示的是两个神经网络,蓝色的神经网络有很多数据标签,所以可以建一个很好的神经网络模型,但是红色的神经网络却缺乏这样的数据,我们考虑将蓝色神经网络的数据迁移到红色的神经网络中。过去,迁移学习是不考虑隐私的,模型和数据都可以被物理运到红色神经网络进行知识迁移。现在有了隐私顾虑,是不是可以用联邦学习达到迁移学习的效果?答案是可以。

在两边沟通的过程中,除了隐私加密以外,还要进行一项迁移学习的运算,保证两边数据的分布和两边数据的表达都是相同的。要达到这一点,双方首先要把各自方的模型和数据迁移到一个共同的子空间,这个迁移过程可以通过某种数学运算进行,比如和函数,效果相当于我们把神经网络的某些层迁移到了新的场景下。

这个工作中需要经过多番迁移和对比,所以效率很低。最近我们又提出了一个加速算法,使得每一方本地的数据计算尽量多,跨合作方的计算尽量少,以联邦块的方式进行梯度交互,结果证明效果非常好。

另外随机森林也可以采用这个方法实现迁移学习和联邦学习的结合。

最近我们在推一个联邦视觉的公共数据集,欢迎学校的学生来参与比赛。我在很多场合都说过,我们在共同推动IEEE标准,比如涂威威等人都在共同推动。现在,微众银行开源的FATE也变成了国际上知名的联邦学习开源软件。

5 联邦学习接下来的重点研究方向

接下来,我们会做什么事?

第一方向,是如何应对对抗攻击。假设在联合建模的过程中有坏人参与,或者说这个人并不那么坏,但是他很好奇,时不时要探测合作方数据隐私,这种情况怎么防止?我们要看机器学习的过程中有哪些可攻击点。

第一种,他可以通过跟你的交互来推断你的数据隐私,这个叫推断训练数据的隐私;第二种,通过跟你合作建模,影响你的模型效果,而这个影响朝着他们希望的方向行进;第三种,在测试数据里加入一些小的改动,改变模型对测试数据的判断。

另外我们一不小心也有可能让参与方学到你数据里的隐私,这也是一种隐私攻击。如果我们用很严格的同态加密或者多方安全计算来进行,往往就不会发生这种情况。但是在大规模的工业应用中,我们往往没办法用完整的原始同态加密和多方安全计算保证安全。相反,我们往往会往模型加一些噪音,在完全安全和完全不安全之间选择一个中间点,差分隐私往往是中间点,具体做法是在数据和模型当中加入一些噪音,使对方没办法完全区分某一个人或者某一个样本是不是在你的数据里。

但是这是有一定概率的,有可能对方还是能猜出来你的数据内容。去年年底MIT的韩松教授团队发表了一篇论文,他们证明如果差分隐私应用得不好,有可能让参与方通过对梯度的积累猜出来数据的原始形状和原始的隐私信息。实验证明,如果你加更多的噪音,会导致联邦学习的效果下降,准确率会变差;而加的噪音少了,效果变好了,安全性却又大为降低,所以这个方法其实是一把双刃剑。

最近我们引入了一个新的方法,让每一个参与方不直接和对方沟通,具体来说,就是让参与方在建模的时候建立自己的镜像,在跟别人沟通时,防火墙会把他们对隐私的好奇心挡住,这样就能够在安全和效率高的两个极端找到一个最佳的平衡点。

联邦学习和自动化机器学习的结合研究,是另一个方向,第四范式的涂威威是这方面的专家。

纵向联邦中,我们都希望两边都快速建立起一个神经网络。而神经网络的结构和搜索空间是非常大的,过去我们需要一个人做手工调参,但现在可以通过一些加密手段梯让度和损失函数值进行沟通,促进双边都自动寻找最优网络结构,如图上所示的两个系统一样,可以进行有机结合,最后获得的效果就会非常好。上图的大概思想是,我们建立网络形状拓扑的同时,也可以让他们交换一定量的网络数据、梯度和损失函数,当能够自动化建模的过程,实现的效果非常好。

最后总结一下。首先,我们建立的AI离不开人,保护人的隐私是当下AI 发展中特别重要的一点,这也是从政府到个人、企业以及社会的要求;另外,AI也要保护模型的安全,我刚才举的例子也说到,如果差分隐私用得不好,可能会暴露原始数据;最后,AI需要人类伙伴的理解,如何实现联邦学习系统的透明性和可解释性,也是我们需要研究的方向。

我今天就讲到这,谢谢大家。

观众提问:我想了解一下联邦学习在智能金融方面的应用,目前进度如何?

杨强:联邦学习在智能金融领域的应用,是联邦学习的重点及主战场,其中最重要的一个方向是风险控制。风险控制中模型的全面性非常重要,因此数据的来源越多越好,但数据方往往不肯把数据拿出来,因此用联邦学习是最好的场景。

当然还有其他方面的应用,比如客服里的人脸识别、语音识别。其中以语音识别为例,我们国内有很多口音,比如四川、河南口音,都需要训练,那我们如何能在不把数据物理传过来的情况下同时训练好能理解口音的语音训练模型呢?这其实也是一个非常好的场景。

0 人点赞