AI 科技评论按:中国香港科技大学讲席教授、微众银行首席人工智能官(CAIO)杨强教授是机器学习领域内活动积极的学者,也是大家非常熟悉的机器学习研究人员之一。
杨强教授对于数据运用的问题有较多研究,比如他经常在公众场合谈及的「迁移学习」(Transfer Learning),其作用就是帮助只有小数据的任务运用来自其他相关任务的大数据,从而获得更好的表现,应用例子比如贷款风控策略在不同用户类别间的迁移、推荐系统的策略迁移、舆情分析中的迁移学习等。
从迁移学习到联邦学习
近几年,领域发现还存在另一种与迁移学习相似,但更有挑战性、也更有应用价值的问题,但无法直接用迁移学习的方法解决:现代组织机构虽然数据多,但是互相之间数据不共享,比如不同的视频网站都会收集各自用户的数据,各自持有分别的数据库,用于各自的推荐系统模型训练。即便这些不同机构的数据全部加在一起形成一个大数据库后训练的模型有更好的表现,但受制于隐私、安全等问题,他们不可以这样做;实际上 2018 年 5 月欧盟提出的 GDPR 也对用户隐私保护作出了明确的要求。而且,由于不同机构的模型设计和针对的目标有所不同,他们也无法直接交换、共享模型。
杨强教授带领微众银行 AI 团队针对这类问题研究了「联邦学习」(Federated Learning)的解决方案。在 2018 年 12 月的「新一代人工智能院士高峰论坛」演讲中,杨强教授也简单介绍过联邦学习的两种模式:纵向联邦学习,不同的数据库中有部分数据特征是相同的,A 方和 B 方都持有模型的一部分,通过同态加密技术传递重要的参数;第二种模式,横向联邦学习,在 A 方、B 方各自更新模型并上传,云端服务器根据一定的策略统一更新他们的模型。
通过近期的三篇论文,微众 AI 团队介绍了联邦学习思路下针对有安全需求的有监督学习、强化学习、决策树的具体方法:安全的联邦迁移学习、联邦强化学习以及 SecureBoost 安全树模型。
安全的联邦迁移学习(Secure Federated Transfer Learning),arxiv.org/abs/1812.03337
联邦迁移学习(FTL)针对的是有标签学习(监督学习)任务,利用一整个数据联邦内的数据资源,提高每个成员的模型的表现。通过联邦迁移学习框架,联邦内不同的成员之间可以在严守数据隐私的前提下共同挖掘数据的价值,而且可以在网络内转移补充性的数据。这样,通过利用整个数据联邦的大量有标签数据,联邦内的每个成员都可以构建出更灵活、更强大的模型;只需要对模型做微小的调整就可以看到准确率的明显提升,甚至可以比拟完全不考虑隐私、直接在全部数据上训练的表现。
安全性是这篇论文所提方法的重要考虑因素,安全保护涵盖了训练、评估、交叉验证的全过程。安全的迁移交叉验证机制确保数据能为联邦内的成员带来性能提升(相比于传统的考虑到安全因素的方法会带来准确率损失)。作者们还提出的可拓展、灵活的方法,为神经网络模型提供额外的同态加密功能,只需要对模型做微小的调整。联邦迁移学习框架非常灵活,可以高效地应用在许多现实世界的机器学习任务中,提供安全的多方性能提升。
联邦强化学习(Federated Reinforcement Learning),arxiv.org/abs/1901.08755
联邦强化学习框架示意图
在强化学习领域中,当状态的特征空间很小、训练数据有限时,构建高质量的策略是很有挑战性的。由于数据和模型的隐私限制,直接从一个智能体迁移数据或者知识到另一个智能体是不行的。具体来说,作者们假设智能体不会分享它自己的部分观察结果,而且也有一些智能体无法获得反馈;这样的设定就和多智能体强化学习、以及多智能体环境下的迁移学习都有明显的区别。
在这篇论文中,作者们提出了一种新的强化学习方案,它考虑到了上述的隐私要求,然后在其它智能体的帮助下为每个智能体构建新的 Q 网络。这就是联邦强化学习(FRL)。
联邦强化学习以三个步骤运行。首先,每个智能体都有一个 Q 网络,而且这个 Q 网络的输出是通过高斯差分方法加密保护的,每个智能体也都会收集其他智能体的 Q 网络输出;然后,智能体会构建一个神经网络,比如多层感知机模型,根据收集的其它智能体的输出和自己的 Q 网络输出计算全局的 Q 网络输出;最后,它会基于全局 Q 网络的输出同时更新刚才的多层感知机模型和自己的 Q 网络。值得注意的是,多层感知机模型是在所有智能体之间共享的,而智能体自己的 Q 网络对其他智能体都是不可见的,而且也是无法通过训练过程中共享的那个 Q 网络的加密输出进行推断的。
为了保护数据和模型的隐私,在不同的智能体之间共享信息、更新本地模型时都会对信息使用高斯差分保护。作者们在 Grid-world (多种不同尺寸)和 Text2Action 两个截然不同的任务中评估了联邦强化学习方法,不仅比所有同样使用了部分观察结果的方法表现更好,甚至和直接把所有信息作为输入的方法取得了同等的表现。
SecureBoost 安全树模型,arxiv.org/abs/1901.08755
SecureBoost 框架示意图
这篇论文中作者们提出了一个基于联邦学习的,新的无损、保护隐私的提升树(tree-boosting)系统 SecureBoost 安全树模型。它可以让多个机构的学习过程共同进行,用户样本只需要有一部分相同,但可以使用完全不同的特征集,相当于对应了不同的垂直分组的虚拟数据集。SecureBoost 安全树模型的优点是,它在训练数据保持多方相互保密的前提下,可以达到和不保护隐私的方法相同的性能;而且这个过程还不需要一个共同信任的第三方参与。
作者们从理论上证明了 SecureBoost 安全树模型框架和其它的把数据合并成一整数据集的传统(非联邦)梯度提升树方法有相同的准确率,是无损(lossless)的。由于 SecureBoost 安全树模型框架由保护隐私的实体对齐以及安全的联邦提升树系统两部分构成,作者们也分别研究了两者的可拓展性。除此之外,作者们还证明了方法的安全性,并且讨论了如何让使用到的协议完全安全。
开源信息
目前 FTL 和 Secureboost 已经开源,开源项目属于微众银行 AI 团队的联盟 AI 解决方案项目 FATE(Federated AI Technology Enabler)。这是一个为联邦 AI 生态及应用提供支持的开源库,可以部署在单机或者计算机集群上,提供了基于同态加密的安全计算协议、多种联邦学习架构的支持,以及支持包括逻辑回归、树算法、深度学习、迁移学习等在内的多种机器学习算法的安全计算。具体介绍以及解决方案示例可以参见 https://www.fedai.org/。
结语
面向实际问题的解决方案需要考虑加密和安全性、以及考虑只有部分信息时如何处理,这三篇带着对安全和隐私的考虑进行研究的联邦学习论文正展现了这一点。让数据带来更高效用、让不同机构的数据不再是「数据孤岛」,联邦学习能带来明显的帮助,相关技术也值得继续深入挖掘。