近日,杨强教授在SDBD2020·算力在线论坛中指出联邦学习不仅仅是技术,更是开源生态的建立。作为打开数据岛的桥梁,联邦学习在满足数据隐私、安全和监管要求的前提下,让人工智能系统能够更加高效、准确的共同使用各自的数据。
开门见山,本期算力隐私数据安全专栏特邀郭嘉,抛出3大问,大胆构想无第三方和组件化的联邦学习技术未来。
这一年,有幸零距离接触数百家客户,我想以一种更直接的方式来说一说联邦学习是否能落地银行的问题。(《阿凡达 2》会讲一个什么样的故事呢?十年磨一剑,敬请期待。)
三个问题
1)联邦学习的第三方协调器难道不是诟病吗?
2)进银行这样的机构,如果是敲命令行的产品,怎么可能说服领导?
3)机构采购了建模平台甚至建模方案,是不是意味着自己的工程师成为鸡肋?
这是我在富数做联邦学习客户解决方案遇到的数十个问题中的,挑选的其中3个比较另类的疑问。
无第三方才“中立”
目前市场上的隐私计算产品,大多是有第三方存在,或者由其中某一方兼任第三方的。
第三方C在最开始为计算(数据)双方A和B分配同一份公钥,第三方C持有对应的私钥;A方和B方分别就自己的数据作相应的计算,将基于己方数据的中间结果用公钥加密,并将密文发送给第三方C;第三方C使用私钥解密来自各方的中间结果密文获得各方的中间结果明文,并汇总得到完整的中间结果。这一过程会反复迭代,直至满足结束条件。
从最终结果来看,有第三方C在参与过程之中,获得了自己本不该获得的信息。而这些信息是否暴露其他参与方的隐私数据,与运行的算法本身结构有关:例如在逻辑回归算法中,参与方计算出基于己方数据的内积,并将其加密发送给协调方,协调方得到该内积结果并不能得到原来的数据,这是因为内积数据很好地掩盖了原有数据。
但是,并不是所有算法的中间结果都能像逻辑回归问题一样——不暴露参与方的原始数据。
第三方的协调,确实为协议的设计和实现带了很大的便利。但是实际上第三方本身的建立是需要较大成本。而所谓的兼任第三方,虽然整个过程中只有两方参与,但并没有从实际上解决有第三方的方案中存在的问题——其中一方的信息仍存在暴露的危险。
相比有第三方参与的方案,基于MPC无第三方参与的方案从协议设计之初就摒弃了协调方。
MPC协议在理论上要求参与方除了己方输入和己方计算结果输出之外,并不能获得额外的信息。MPC只有参与方之间的信息交互,并且协议执行期间的交互过程不会泄漏参与方的隐私数据。这是由协议设计的底层来保证的。例如,在混淆电路中,参与方会将各自的输入映射成为随机密钥,同时用混淆真值表来保持参与方输入、输出之间。各方交互的只是关于真值表对应的密文,而不包含任何输入、输出数据。
总的来说,基于MPC无第三方参与的方案对于参与方的隐私数据的保护更加彻底,而有第三方参与的方案需要依赖于第三方的可信性或者中间结果的结构才能保证数据的隐私性。也就是说,当双方无法建立可信第三方时,基于MPC无第三方参与的方案将会是安全的首要选择。
富数即将推出的 Avatar 2.0大版本,基于MPC的核心思想,从底层的基本算子和简易函数的计算开始,最终完成无第三方的产品升级。
此技术能够在保证信息安全前提下,让投研机构利用非公开数据资讯和信息,更好的发掘和预测股票的波动。本文即尝试通过安全多方计算技术和联邦学习技术,将公开数据和非公开数据进行结合,并进行量化交易分析,希望该案例能够给从事量化交易的专业人士拓展分析思路。
Dos到Windows的革命:IME
一直关注国内的竞品,目前很多厂商被客户纠结的一个很重要的原因是产品交互体验!我相信任何一个银行级别的客户在Dos和Windows之间,一定选择用Windows。(因为领导肯定喜欢更加看得清楚的东西)。目前能做到的一大批联邦学习平台,还处于“Dos”水平,稍微好一点的,相当于“Windows 95”。
对于集成环境,我们更喜欢封装的更组件化的IDE,流程即业务。我想重新定义一个联邦学习建模平台的概念,集成建模环境 IME(Integrated modeling environment)。
组件化是IME的最大特点,我喜欢用几个词汇来介绍给客户:过程透明化、上下低耦合、算法可扩展。联邦学习平台有非常重要的组件,比如加密组件、解密组件、通信组件、算法组件等等。让联邦学习平台客户专注于算法,可扩展、可编译。
独立:我们的项目、应用、产品,其实可以拆分成多个组件,每个组件负责一项功能,每个组件都以独立的形式存在。
完整:每个组件具备完整的局部功能,组件间互相独立。
自由组合:通过将组件自由组合,可以构成完整的产品、应用、项目。
在面对内部人员的变更、业务的拓展、用户需求的变化时,组件化既满足庞大的开发需求,同时能实现开发人员、用户、应用组件、信息资源互通,也许,组件化是生产流水线的必经之路。
组件化在一定程度上降低了不具备编程能力的业务建模工程师的门槛。在组件化地基础上,用户可在工作台简单地拖拽各种组件,实现灵活组合和连接,让个性化建模流程成为可能。
在面对多种多样地用户需求时,单一组件化或局部组件化架构往往杯水车薪、无法真正解决问题的核心,那么如何通过标准规范组合方式来构建整个产品,最终呈现给用户大量基础模块且每个模块独立、完整、可自由组合的产品,是组件化发展的关键核心。
你的答案
写在结尾,回答一下文章开头的三个问题:
1)联邦学习的第三方协调器难道不是诟病吗?
答:银行这样的客户,如果意识到第三方,他一定会说能不能不要第三方。所以,富数Avatar经历数月攻克,实现了无第三方的联邦学习。
2)进银行这样的机构,如果是敲命令行的产品,怎么可能说服领导?
答:很难说服,联邦学习本来就很难说清楚。有图形,一定是容易说事情。
3)机构采购了建模平台甚至建模方案,是不是意味着自己的工程师成为鸡肋?
答:让合作伙伴真正参与联邦学习平台建设,更合适的是把和业务更近的算法组件开放出去,你的工程师可以根据协议标准,写适合自己业务的算法。你能体会其中的道理吗?
自诩从技术走向业务的小学生。近十年互联网大数据行业经验,先后就职于上海大智慧、平安、挖财,任职大数据架构师、资深分析师等职位,对金融科技有深入研究。
目前任职富数科技高级总监,负责隐私计算的解决方案与业务落地。
郭 嘉
如果您对数据隐私、数据安全共享技术等领域有独到观点分享,欢迎投稿!
投稿邮箱:hehaohua3h@163.com