写点什么

联邦学习—金融数据壁垒和隐私保护的解决之道

发布于: 20 小时前

━━━━━━

【引语】金融 AI 的每一步,大数据红利在左,数据隐私安全在右;联邦学习便是能兼顾金融数据挖掘和保护隐私的利器。索信达作为金融大数据行业服务科技的先行者,持续在联邦学习领域进行深入研究及深耕。近日,索信达控股 AI 创新中心副主任、数据科学家邵俊博士就带来了一场生动的线上直播,引领大家探索金融数据壁垒和隐私保护的解决之道。以下内容为分享干货梳理:


大家好,很荣幸有这个机会跟大家探讨联邦学习在金融大数据领域的应用。为了兼顾到我分享的广度和深度,在本次直播中大概会先后介绍什么是联邦学习、联邦学习在技术层面怎么实现以及联邦学习的应用、实践和挑战。在开始联邦学习的论述之前,会先带大家了解为什么金融行业需要数据,以及因大数据隐私保护而催生的对于联邦学习的需求。

为什么金融行业需要大数据?


以金融风控为例,现如今,银行的一大重点业务是贷款业务,银行需要对个人的资质进行审查,以确保能够收回贷款。银行需要尽可能地选择目标放款客户,使得能够收回来的概率最高,以保收益。在资质审核时,银行首先要收集用户的信息,识别用户特征,如用户的年龄、学历、收入等等。比如银行知道用户的年龄信息。银行通过历史信息统计,发现每 100 个 25 岁的用户中有 3 个人不还款,而年龄 30 岁的用户每 100 个中有 2 个人不还款,那么同样一笔钱是贷给一个 30 岁的客户还是 25 岁的客户呢?毫无疑问,我们会贷给 30 岁的客户。



当银行掌握了用户的年龄这一信息,再来做这个贷款就有了依据。除了用户的年龄信息,通话信息等也都可以分析出规律。比如有一个用户他最近 7 天打了 10 个电话,另一个用户他最近 7 天打了 20 个电话。通过做历史数据分析:最近 7 天打 10 个电话的客群中,每 100 个有 2 个不还款,而最近 7 天打 20 个电话的客群中,每 100 个有 3 个不还款。那么在这种情况下,毫无疑问,银行会贷款给只打 10 个电话的人。所以只要我们在数据分析的过程中发现了这个规律,能够把还钱或者不还钱的可能性大小区分开来,这样的特征就是有用的特征,这个用户信息就是银行应该去收集的。用户的数据信息能够指导银行做这类风控业务。



到这里,我们已经可以看到数据的价值。这里讲的是用户只知道一个用户特征的情况。现在如果假设银行同时知道用户的年龄和通话次数呢,这样对于用户的分析就可以更加精细。



所以,大家从这里可以看出来,当银行拥有更多的用户特征的数据信息的时候,银行的业务就会有更好的指导。所以银行需要数据,而且需要用户更多的数据信息。


什么是联邦学习?


刚才举例的通信的数据,这个数据在电信公司而不是在银行。由于国家对于数据隐私管得非常严,电信公司无法将客户的隐私数据给到银行。这时,联邦学习就隆重登场了!联邦学习可使得各个参与方之间协同来完成一个数据模型的训练,训练出的模型是基于所有参与方的数据而达到的效果,但参与方彼此之间不会泄露各自的原始数据。


怎么实现呢?我们先简单地讲一下我们的数据建模过程中什么是样本,什么是特征,什么是标签,还有模型。样本,是我们用来建立模型的一个个的个体;特征,就是个体的信息;标签就是用来建立模型的样本的历史表现,用于建模的每个样本都有 1 个标签。比如某个用户触发过违约事件,我们给他的标签就是 1,用户如果没有触发违约事件,他的标签就是 0。至于建模,就是去确定这些参数。我们可以把一个建模过程简化成三步。第一步,数值化,如将地址、性别将这些文本特征转化成数值,因为计算机只能做数值计算,没办法直接处理文本。第二步,特征筛选,从中筛选出和标签相关度比较高的特征,而把相关度较低的特征去除掉。第三步,就是去求取这些参数。前两步又可以合起来叫做特征工程。大量的样本和大量的特征都是我们需要的,因为我们需要做概率估计。


那么如何估计呢?最简单的方式就是通过频率进行估计。比如说,我这个群体 100 个人当中有 10 个违约了,那么我就认为违约的概率是 10%。样本越多,就意味着我们的概率估计就越精确。同样的,用户的特征信息也类似,地域是一个特征、通话次数是一个特征,然后征信查询了多少次又是一个特征。我知道用户越多的特征,就能让我的模型变得越好。所以说,对于银行来说,要建立模型,我既希望能够有用户越多的特征,也希望能够有更多的客户的数据。一个是客户数,一个是特征数,是从不同维度来衡量我们对数据的需求。纵向是为了更好地去了解一个人,而横向是为了有更多的数据来支撑我的论证。由此,也产生了联邦学习里面两个重要的概念,分别叫做横向联邦学习和纵向联邦学习。


横向联邦,就是指多个机构方一起来建一个模型,这些机构之间的用户不同,但是这些用户被记录下来的特征维度是差不多的。横向联邦学习适用于同一个行业的机构之间;比如说银行和银行之间,或者银行的分支机构之间。比如深圳分行有深圳用户的年龄信息、学历信息、征信信息;广州分行有广州用户的年龄信息、学历信息、征信信息,那么我这些机构之间来做这个事情,叫做横向联邦学习。纵向联邦学习,就是说同一批客户在不同平台的数据,一个是银行,另一个是电商。如同样都是深圳市的消费群体,但是银行里面可能有他的金融数据、征信数据;电商平台可能有他的购买数据、消费偏好数据,这就叫做纵向联邦学习。用一个更直观的图来展示,横向联邦学习呢就是特征之间的重叠,而纵向联邦学习就是样本之间的重叠。




当然,还有一种情况呢,就是说我这个无论是特征也好,样本也好,重叠的部分都非常少,那么我们就叫做联邦迁移学习。所谓迁移,就是指我们在一个领域学到的东西拿到另一个领域来用。



联邦学习是如何做到的呢?


因为联邦学习应用在多个机构,且是在各自不让原始数据出本地的情况下,完成模型的共同训练;所以要把模型中的参数值找到。要找到这些参数值,我们只需要传递和建模相关的这些中间值就可以。


比如我们以横向联邦学习为例,我们只需要在大家之间传递梯度参数就可以。梯度可以理解为是要对参数进行调整的一个幅度,也就是说告诉你怎么样一步步地调整这些参数,使得他达到最终模型想要他达到的一个值,也就是大家共同训练的结果。而且一般来说,联邦学习有一个中间协调方,协调方来协调各家之间的数据传递。纵向的情况会相对复杂一点,因为这些交互方之间,首先需要找出大家有哪些共同的样本,这个过程也叫做样本对齐。这里面会涉及到一些隐私保护的问题,因为我们一方面要把共同的部分找出来,一方面又不能知道其他额外的信息。其次,我们的特征工程也相对复杂一些。特征工程我们前面讲到过,包括变量数值化,还有变量筛选。变量筛选的时候我们需要计算特征与标签之间的相关度。那么在纵向的场景下,由于大家的特征是分裂的,比如像这个机构 B,他仅仅只有特征,他却没有标签,标签只有 A 机构有,但是同样 A 机构也不会把特征给 B 机构。那么这里面呢也会涉及到一些有所挑战的问题。当然我说到的这些问题都是有办法解决的,比如就像样本对齐,我们可能会用到一些密码学的方法,比如哈希摘要,非对称加密这些方式来做这些事情。当然,如果后面说到联邦迁移学习的话就更复杂一些,哪怕不考虑联邦的情形,只考虑迁移学习的话,他本身也是一个非常大的课题。这里就不做深入讲解。


联邦学习的应用场景有哪些?



我们刚刚讲了联邦学习这几种类型,其实除了银行风控这个场景之外,类似联邦学习这种方式的运用,在日常生活中是很多见的。比如手机输入法,大家发现键盘输入变得越来越智能,他就会采用一种类似联邦学习的方法,在每个终端只是收集和他们在训练的模型相关的一些中间参数,并上传到服务器里面进行汇总,通过这种方式来保证用户的隐私安全。当然智能输入法和我们今天要讲到的联邦学习还有些不一样,这种方式可以叫做跨设备的联邦学习。


联邦学习还可以用在保险领域。比如车险,因每个司机的驾驶习惯不同,有的司机可能用车用得很多,而可能有的司机可能他的车常年停在地下车库里;有的司机可能驾车习惯比较好,有的司机可能喜欢超速,从事一些危险驾驶的行为。同样投保一年,那能不能针对每个不同的用户设计不一样的保费呢,比如用车时间长的用户比用车时间少的用户保费高,驾驶习惯不好的用户比驾驶习惯好的用户保费高。如果有这样的设计方式,那么对用户来说是很有吸引力的;而且对于保险公司来说也可以降低风险,对那些出事故概率比较高的用户提高保费,也能够将一部分不好的用户阻挡在外。实现这样的设计方式的前提是要收集用户足够多的数据,尤其是和用户驾驶车辆相关的习惯数据。所以保险公司肯定要去和一些拥有这些用户数据的机构进行联邦建模。又如游戏公司的营销,我要去推销一款游戏,当我知道这个用户他不同的年龄,还有他的上网时长和上网习惯数据,对于游戏公司去提升营销的转化率也是非常有帮助的。同样,电信公司不会把用户上网数据直接给到游戏公司,那么这也就催生了一个联邦学习的应用场景。


其实,只要是在大数据分析的场景中,当我们需要外部更多的数据,而遭遇数据隐私保护而导致的数据流动不畅的情况下,联邦学习就可以派上用场,所以说,联邦学习在未来也会越来越多进入到商业实践当中。


联邦学习技术落地有哪些挑战?


勾画了上面这么多美好的愿景,那是不是意味着联邦学习就马上要遍地开花了呢?这还需要一个过程,毕竟联邦学习实际上无论从技术上,还是行业生态上,都还有一些难度。这就需要我们这些从事前沿 AI 技术研究的人,以及像索信达这样致力于金融大数据行业服务的科技公司来不断加码投入,推动联邦学习技术的进步,推动联邦学习产业生态的落地。



目前,联邦学习面临不少挑战。


▶▷首先第一个问题,就是激励机制如何设计。也就是说,别人为什么要和你去联邦建模呢?联邦系统是由多家机构共同协作完成的,团队协作一定是在各方的利益都得到满足的时候才有可行性。也就是根据每个参与方的收益,根据大家的收益和贡献来进行分配利益。但实际操作上,要怎么去衡量每个人的贡献和每个人的收益?就是说,在这个激励的过程当中怎么样去平衡各方的利益和怎样用很好的机制来保证各方利益是个问题。


▶▷第二个问题就是隐私保护的问题。刚刚说到,我们不能够让原始数据外传,显然,我们就去传输一些模型中间数据,比如梯度信息。可事实上,即便就是这些梯度信息的泄露,也还是会有原始数据被推导出来的风险。


▶▷第三个问题,就是恶意攻击。我怎么保证联邦学习的每个参与方都是诚实的呢?因为每个参与方他们可能有不同的动机。那么我们说到不诚实的参与方又分为两种:一种是恶意的,一种是无恶意但是好奇的。所谓恶意的参与方,就是他可能会来对模型进行投毒,比如故意传输一些错误的数据来损害其他参与方的利益,而好奇的参与方他不会去损害其他参与方的利益,但是他会对他收集到的所有的交互数据进行分析来试图推导其他各方的原始数据。


当然联邦学习还有一些其他比如数据传输效率的问题。模型训练会涉及到大量的运算,那么各方联合建模就会涉及到大量的数据进行交互的问题。比如像在梯度下降的时候,每一步的梯度迭代都会涉及到通信成本。所以通信效率这块也是联邦学习在落地过程中会遇到的挑战。此外,还有像机构与机构之间样本分布不均衡的问题等等。



基于这些,我们会有一些解决方法。比如说,回到我们刚才讲到的激励和隐私保护的问题,他们都会涉及到一个信任的问题。我怎么样去信任这个生态,以及信任这个生态中的其他成员?一般来说,近年来信任的发展有两种形式,一种叫做中心化的信任方式,一种叫做去中心化的信任方式。


所谓中心化的信任,就好比我们信任银行一样,我们把钱存在银行,由银行帮助我们记账,我们相信银行不会在我的账户余额上面少一个 0,或者给我无中生有增加一笔我本来没有的开支。那么去中心化的方式呢,就是在没有这样一个中心服务器存在的情况下,大家之间怎么去共同协作。最典型的去中心信任的例子就是区块链,因为区块链本身解决的就是在没有银行这样一个中心协调方存在的情况下,一群人怎么去协同完成记账的过程。比如说采用了区块链技术的比特币,实际上就给大家之间进行点对点的交易敞开了一扇大门。在比特币的交易网络当中,因为没有中心节点,保证了大家仅仅通过一些密码学和博弈论的机制,就能够相信这个系统,那么这个就是一种去中心化的信任方式。当我们在构建这样一个让人信任的联邦生态的时候,我们会考虑从这两个方面去入手。如果是有中心协调方的生态,那我们就需要对这个协调方就足够的信任。那么这个信任能不能建立起来呢?当然能。就好比当年在大家对互联网还十分缺乏认知的时候,淘宝就建立起了商家和消费者之间的纽带,让大家都信任这个平台在这上面购物。至于他们怎么做到的,这就是一个商业问题,就不属于我们今天讨论的范围了。那么去中心化的方式呢?比如通过区块链。那这个的话呢,就相对比较复杂。当然,这一块理论上的探索,也是我们索信达 AI 创新中心正在研究和攻关的课题。


再说到隐私保护,怎么保证我的梯度信息不被泄露但是又可以完成求和计算呢?那么我们可以在这里介绍一种同态加密的算法。所谓同态加密,就是说这些梯度消息,我们不以明文的方式发出去;我发给中央协调方的,也以密文的方式发出去。那么通过密文发出去,那么一般来说,只要我的私钥不泄露出去,对方是无法从密文还原出我的明文的。他无法还原的话,我就可以保证我的信息是安全的。但是,这就有个问题,中央协调方收到的是密文,并且他无法还原成密文,这里我们通过这个同态加密的技术来处理数据。比如像加法同态。加法同态指的是我明文上的加法,如果把他们转到密文上,再将密文加起来,跟我把这两个明文加起来再加密,所得到的结果是一样的。换句话说,我作为中央协调方收到的大家传过来的密文,我把密文加起来再分发下去,你们各自解密就好了,就能得到这些梯度明文的和。而这个中央协调方完成了这个求和的工作,但还是仍然无法知道这个真实的值是什么。


所有这些办法术语叫做安全多方计算。所谓安全多方计算,指的是我多个参与方,在各自不泄露自身原始数据的情况下,来协同完成一件工作。说到安全多方计算,有一个很著名的故事:当时是图灵奖得主姚期智提出了一个《百万富翁问题》。指的是两个百万富翁在街头偶遇,他们俩想比较一下谁更有钱。但是前提是,你们不能把各自的财富数告诉对方,也不能告诉任何一个人。也就是说在没有其他人知道你财富的情况下,你们要完成财富多少的比较;这就是一个简化版的安全多方计算问题。但是同样的安全多方计算问题还有,比如说一群人在一起,想知道大家的薪资的和是多少,但是每个人都不能把自己的薪资透露给在场的任何一个人,以及任何一个局外人;这些都是很典型的安全多方计算问题。那么安全多方计算呢,也是我们索信达 AI 创新中心正在研究的一个范畴。我们将多方安全计算问题和联邦学习场景相结合,这个在联邦学习未来也是一个非常有前景的研究方向。

发布于: 20 小时前阅读数: 5
用户头像

索信达控股(股票代码:03680.HK) 2021.05.20 加入

索信达被誉为港股金融AI第一股。核心团队和研发团队全部来自SAS、Teradata、FICO、德勤、毕马威、安永等,天然具有世界级产品厂商的血缘和水准及专业服务能力,是中国金融行业AI大数据、整合智能营销领导者。

评论

发布
暂无评论
联邦学习—金融数据壁垒和隐私保护的解决之道