写点什么

隐私与 AI 兼得,蚂蚁金服是如何做到的?

  • 2019-10-20
  • 本文字数:3094 字

    阅读完需:约 10 分钟

隐私与AI兼得,蚂蚁金服是如何做到的?

蚂蚁金服在过去十五年重塑支付改变生活,为全球超过十二亿人提供服务,这些背后离不开技术的支撑。在 2019 杭州云栖大会上,蚂蚁金服将十五年来的技术沉淀,以及面向未来的金融技术创新和参会者分享。我们将其中的优秀演讲整理成文并将陆续发布在“蚂蚁金服科技”公众号上,本文为其中一篇。


在人工智能时代,数据是 AI 领域的石油,如果没有数据很难将 AI 更好的落地。但是数据孤岛阻碍了数据的获取和利用,蚂蚁金服在三年前开始布局隐私保护机器学习,致力于在保护数据安全和隐私保护的前提下进行机器学习,我们称之为共享智能。我们之前分享了共享智能的理念和原理,今天,我们想聊聊共享智能的发展与应用趋势。


人工智能目前存在的难题是鱼与熊掌不可兼得,也就是隐私性跟可用性难以兼顾。如果你想要你的 AI 系统能发挥作用,就可能需要牺牲隐私。但是,在大量真实场景中,如果做不到同时兼顾隐私和可用性,会导致很多 AI 落地的困境。


举几个例子。


首先是贷款风控,用户想要买房去银行贷款,在银行 A 可能被判定为“坏人”,没有办法给他进行贷款,因为这个机构持有这个人部分数据,同样的用户到了机构 B,这个机构 B 基于它拥有的部分数据,有可能会给予他贷款,这样矛盾的情况比比皆是,皆是因数据不通导致。


在智慧医疗领域,有些罕见病在每个医院的案例都不多,如果我们能把各个医院的案例共享起来,就能获得更多的样本数据,从而可以利用 AI 进行更准确的诊断,但是这个案例里面技术不是最优先的,对医院来说,它有责任保护患者的隐私,如何确保在共享案例的同时,不泄漏用户的隐私才是首先要解决的。


数据孤岛的问题会给 AI 落地和应用带来很多类似的难题。



现实环境中,数据在这个图中是不通的,有的地方可能有一些短暂的链接,绝大部分数据在这个图中处于断开状态。我们的目标是想打通数据孤岛,用技术的方法解决技术的问题。通过技术保护数据安全的情况下,实现数据的共享和价值的传递。

共享智能:可用不可见

对于共享智能,我们希望达到的目标是数据可用不可见,在多方参与且各数据提供方与平台方互不信任的场景下,能够聚合多方信息进行机器学习,并确保各参与方的隐私不被泄漏,数据不被滥用。


为了达到这一目标,我们使用了很多业界已有的技术,比如学术圈一直在研究的差分隐私、很多大数据厂商在探索的可信执行环境、随着计算力和硬件技术的提升+密码学突破而广受重视的多方安全计算等。还有一些情况,目标数据比较少,但源领域数据较多,我们采用迁移学习的方法去做数据共享,这个也属于我们大的技术范畴。



具体来看的话,第一种方案是可信执行环境的方案,主要依赖中间的硬件级的保险箱 Enclave,双方通过一些密码学的机制,把数据进行加密,加密之后只有在密码箱里面才能解密,解密以后做各式各样的计算,因为密码箱是第三方可信的密码箱,大家不信任彼此的情况下,信任密码箱即可,这样在数据隐私不会泄露的情况下,去做各式各样 AI 的算法。


这种方案依赖可信硬件,通过数据加密的方式,集中传送到可信的平台。对于一些机构,本身就已经上云,把所有的东西都存放在云上面,所有的技术在云上面部署,那么采用这种方式非常快速便捷,同时又能达到很好的隐私保护的效果。



第二种方案是偏软件级别的方案,我们在中间把数据做相应的处理后再进行计算。比如说像秘密分享的技术,通过把数据拆分完以后,几方通过发送随机数来完成运算,然后可以完成各式各样 AI 的计算和模型;还有像同态加密这样的方法,在加密后的空间里面做相应的运算来完成 AI 的计算,中间有一个控制模块来共同完成学习的目标。这个方式本身不涉及到硬件,是偏软件+密码学的方案,中间出去的是随机数/加密中间结果,目前业界隐私+AI 结合的方向上,用这个方案相对来说比较多。

星云 Nebula:共享智能网络


共享智能需要多方参与,我们设计了星云 Nebula 共享智能网络架构,对于蚂蚁金服而言,希望跟合作方共同打造这样的共享智能网络。


网络中存在各式各样的计算节点,能够在某个管理平台中进行触发实现 AI 计算。这个共享智能网络,可以用不同的技术完成共享智能的目标,比如,构建联合营销网络,节点之间可任意组网,采用多方安全计算技术来实现联合营销,同时管理节点可以部署在任何的地方;对于某些机构而言,可能没有很强的 AI 能力和多方计算能力,那他们可以依赖于云这样的技术,将数据放在可信执行环境中,去参与建设这样的网络,通过这样的共享智能技术来解决 AI 落地最后一公里的难题。



我们整个计算节点的架构如上图,最底层跟正常环境比较相似,左边是各式各样的可信执行环境,右边是正常的 CPU、GPU 环境。上面会有统一的 API 层来屏蔽这些不同的细节。


再往上面,会有本地的计算,这个计算本身会跟通用的开源框架稍有差异,我们会把现在流行的版本改成安全的版本,比如安全的 XGBoost。中间做 MPC 的时候,我们会提供各式各样的技术,混淆电路、OT 等等这样的技术,最顶层提供一些可视化跟交互式的接口,普通的用户通过这样的调用就可以完成复杂的多方计算的操作。同时支持各种保护隐私的安全模型推断。


我们希望通过这样的架构完成共享智能技术,并且打造了可视化的界面,采用拖拽式的方式就可以快速高效完成整个 AI 计算的构建。


上述共享智能架构现在已经达到了较好的完备性、易用性和稳定性的目标,在很多的地方已经进行了落地。在完备性方面,我们实现了功能完备和场景完备,目前主要是支持风控和其它 AI 典型场景,里面的算法比较全面,涵盖了线性模型、树模型、深度学习、图神经网络等各个方向;在易用性方面,我们希望能够更好的推广这种建模技术,同时又能“屏蔽”一些底层技术(可信执行环境、多方安全计算等),降低大家学习使用的成本;在稳定性方面,我们实现了共享智能计算的集群化,并且支持远程运维。


我们已经将共享智能上线到大数据智能平台上,下面这个 demo,是一个多方安全计算的 AI 建模展示。


前面预处理部分跟正常的 AI 建模看起来一样,通过拖拽式操作,把数据进行了预处理以后,送到共享智能建模中,会产生 AI 运算的结果。通过这种方式能够大幅度降低新技术的使用门槛,方便业务方使用。


蚂蚁金服在共享智能领域里建设了三年多,发布论文超过 10 篇,获得专利超过 80 余项,在标准立项上我们在 IEEE 共享智能和 ITU-T MPC 国际标准、CCSA 共享智能行业标准以及 AIOSS / AIIA 共享智能联盟标准方面都在同步推进,也获得了一些创新奖项。

共享智能落地案例

接下来分享三个典型落地案例。



一个是在安全风控领域,联合生态伙伴来建立安全风控网络。生态伙伴使用前面介绍的可信执行环境技术,把数据加密传输到网络中共建这个模型,打击虚假交易、团伙作案等,大幅度提升风控准确率,实现风控网络的净化。通过这样的风控网络平台,使得商家每天新增很多的交易,同时降低资损。


第二个是中和农信,我们通过数据融合大幅度提高风控性能,把原来传统的线下模式,变成线上自动过审模式,完成授信只需 5 分钟,8 个月累计放款 31.9 亿,授信成功人数 44 万人,业务覆盖 20+省区,300+县城,10000+个乡村,助力实现农村普惠金融。


第三个是与江苏银行进行的信贷联合风控,还记得我们前面的例子吗?因为数据不完整,导致风控决策错误,现在通过共享智能技术,双方可以完成共同的模型构建,通过这样的机制实现联合风控,使得效果有大幅度提升。同时在这个过程中,用户的数据和隐私得到了有效保护。


总的来说,我们想构建开放的共享智能网络,希望有更多的伙伴、机构参与进来,一起完成建设,打破数据孤岛,助力 AI 技术更好的落地和应用。


本文转载自公众号蚂蚁金服科技(ID:Ant-Techfin)。


原文链接:


https://mp.weixin.qq.com/s/9q-c_TGWianaJ9bsUJa4OQ


2019-10-20 23:571022

评论

发布
暂无评论
发现更多内容

性能场景之压测策略设计

zuozewei

性能测试 性能分析 1月月更

AI开发平台系列2:集成式机器学习平台对比分析

Baihai IDP

AI

前端质量提升利器-马可代码覆盖率平台

vivo互联网技术

前端 代码 平台架构

试卷存储和访问架构设计

supermenG

架构师训练营 4 期

查询 MySQL 字段注释的 5 种方法!

王磊

美团李凯揭秘数据库发展三大趋势 | TiDB Hackathon 评委访谈

PingCAP

架构实战营模块四作业

Evan

模块四

黄秀明

「架构实战营」

Flutter:创建一个自动调整大小的 TextField

坚果

flutter 1月月更

Java&Go高性能队列之LinkedBlockingQueue性能测试

FunTester

Disruptor 性能测试 消息队列 FunTester 高性能消息队列

深入理解static关键字

编程江湖

static关键字

请说出4种不使用第三方变量交换两个变量值的方法

阿Q说代码

位运算 1月月更 交换变量

1 月月更|盘点 2021|推荐学Java——数据表操作

逆锋起笔

Java MySQL 数据库表 多表查询 关联查询

教你如何在Spark Scala/Java应用中调用Python脚本

华为云开发者联盟

Python spark 脚本 Spark Scala Spark java

【Spring专场】「MVC容器」不看源码就带你认识核心流程以及运作原理

洛神灬殇

springmvc Spring Framework Spring MVC 1月月更

表设计之数据类型优化

Ayue、

数据库 1月月更

java集合【13】——— Stack源码分析走一波

秦怀杂货店

Java 源码分析 集合

中年人对酒的看法

wood

300天创作

浅谈数据中台和DataFabric的差异

Kafka中文社区

架构实战营 - 模块 4 课后作业

tony

模块四

浮生若梦

前后端分离 -- 深入浅出Spring Boot + Vue实现员工管理系统 Vue如此简单~

Bug终结者

Vue 前后端分离 Java 分布式 elementUI

模块四 - 千万级学生管理系统考试试卷存储方案

圈圈gor

架构实战营 「架构实战营」

ReactNative进阶(十):WebView 应用详解

No Silver Bullet

webview React Native 1月月更

netty系列之:JVM中的Reference count原来netty中也有

程序那些事

Java Netty 程序那些事 1月月更

Rust - mmap 简单写性能比较测试

rust Mmap

Hive UDF,就这

华为云开发者联盟

sql 函数 UDF Hive UDF 用户自定义函数

Vue的动态组件 & 异步组件

编程江湖

Vue

云原生-模块二-httpserver

hunk

在线HTML5,CSS3,VueJS,jQuery运行测试练习工具

入门小站

工具

架构实战营 - 模块 4 - 作业

Pyel

「架构实战营」

隐私与AI兼得,蚂蚁金服是如何做到的?_AI&大模型_周俊_InfoQ精选文章