《联邦学习原理与算法》系统介绍了联邦学习的全貌,内容丰富,兼顾算法理论与实践。算法部分包含横向联邦、纵向联邦等不同的数据建模方式,重点讨论了联邦学习由于数据异质性和设备异质性带来的算法稳定性、隐私性挑战及其解决策略,这对每一个联邦学习框架设计者来说都是至关重要但却容易忽略的部分;实践部分介绍了当前主流的联邦学习框架,并进行对比,然后给出相同算法的不同实现供读者比较。《联邦学习原理与算法》重点介绍了联邦学习计算机视觉及推荐系统等方面的应用,方便算法工程师拓展当前的算法框架,对金融、医疗、边缘计算、区块链等应用也做了详尽阐述,相信对于研究隐私保护机器学习的计算机相关专业学生和联邦学习领域的开发者、创业者都有很好的借鉴作用。详细的代码以及对现有框架和开源项目的介绍是本书的一大特色。《联邦学习原理与算法》为读者提供了全部案例源代码下载和高清学习视频,读者可以直接扫描二维码观看。
《联邦学习原理与算法》融合了联邦学习资深技术专家多年经验,系统介绍了联邦学习的全貌,内容丰富,兼顾算法理论与实践,对联邦学习性能挑战、安全与隐私挑战,以及推荐系统进行了介绍。理论讲解由浅入深、注重编程实践,语言简练、内容实用。重点难点部分还配备了二维码视频。
随着算法、算力的不断提升,以及企业不断累积的海量业务数据,人工智能正在广泛地影响着各行各业,给人们的生活带来便捷,比如自动驾驶、医疗辅助诊断和智能制造等。然而数据驱动的人工智能既推动着生产力的发展,也带来了隐私泄露等方面的隐患。很多大数据公司被曝光会非法收集用户的数据并出售用户隐私数据牟利。越来越多的人正在倡导践行负责任的人工智能技术(Responsible AI),保证人工智能技术的公平性、可解释性与隐私保护性。联邦学习正是在此背景之下发展的一项技术,主要从避免收集数据的角度出发,研究在分布式环境下全局模型的计算。与一般的分布式机器学习不同,联邦学习对各计算节点的控制权不同,计算节点对数据拥有控制权,且节点的稳定性不同、不同节点上的数据特征分布也不同。这就带来了比一般分布式机器学习更复杂的系统层级优化挑战。
由于不同计算节点无须分享数据,联邦学习适用于对数据隐私敏感的系统与行业,如医疗、金融风控、智慧城市等。在这些场景中,由于商业风险、道德与法规的约束,使得这些领域的数据很难被收集到本组织以外的地方。联邦学习的开发将打破数据壁垒,实现不同组织、不同类型数据之间的隐私保护之下的价值挖掘。
此外,中共中央、国务院2020年也发布了《关于构建更加完善的要素市场化配置体制机制的意见》,首次正式将数据视为一种新型生产要素,与传统的土地、劳动力、资本等要素并列,并提出加快培育数据要素市场、加强企业间数据合作共赢、共同提升社会数据的资源价值。联邦学习预计将在数据隐私与安全计算、数据价值流转中发挥巨大的作用。
本书内容安排如下:第1章介绍联邦学习的基础知识,包括提出与发展的背景,从技术角度来讲解其定义、分类与挑战,以及相关的法律与社区。此外,为了方便人工智能的初学者更好地理解后面的内容,还介绍了机器学习与深度学习基础知识。第2章介绍了现有的一些联邦学习框架,包括其安装与部署,并且比较了不同系统的特性,给出了使用建议。第3章深入联邦学习技术本身,讨论其主要技术,包括横向联邦学习、纵向联邦学习与分割学习。第4章介绍了联邦学习建模难点与解决方案,对应于第1章提到的性能与效率挑战。第5章介绍了主流的隐私保护技术,这些技术可以与联邦学习技术互为补充。第6章介绍了联邦学习系统安全与防御算法,这是当前联邦学习研究的热点。第7章在计算机视觉方向进行联邦学习实战。第8章介绍了联邦学习与推荐系统的相关知识。之前主要讨论的学习模式是监督学习,第9章介绍了联邦学习系统与其他深度学习模式的结合(比如多任务学习、半监督学习、强化学习、联邦图学习等)。第10章介绍了联邦学习在不同行业的前景(如医疗、金融、边缘计算、物联网、区块链等)。
本书的特色与优势在于:,本书的作者是扎根于联邦学习前沿的研究者和从业者;第二,我们参考了近两年全新的文章和综述,紧跟学术和业界动态。第三,我们对联邦学习性能挑战、安全与隐私挑战,以及推荐系统进行了介绍。在本书的编写过程中,我们深深地感受到联邦学习及其相关领域技术的繁多冗杂,因此书中难免会出现一些错误或者不准确的地方,恳请读者批评指正。
作者
耿佳辉,博士,欧盟玛丽居里项目研究员,研究的重点包括隐私保护计算、区块链、自然语言处理等。多篇文章在国际会议发表,在中国、德国、挪威的知名企业都有丰富的工作经验。
牟永利,博士,致力于联邦学习、数据隐私和区块链应用等领域的研究,并参与多个德国的医疗数据基建项目,如MMI和NFDI4Health,拥有丰富的数据科学和人工智能研究背景。有多篇医学信息学、联邦学习、区块链技术国际论文发表经验。
李青,博士,挪威斯塔万格大学。致力于机器学习鲁棒性、可解释性,机器学习中的常微分或偏微分方程的数值计算。
容淳铭,挪威工程院院士、挪威斯塔万格大学计算机系终身教授、服务式计算研究创新中心主任。曾任IEEE国际云计算学术会议系列指导委员会主席,IEEE区块链专家委员会主席、(国际)云安全联盟(CSA)挪威分部副总理事长,中国科学院海外评审专家。
第1章联邦学习与机器学习基础
1.1联邦学习概述
1.1.1联邦学习的背景与发展
1.1.2联邦学习的定义与分类
1.1.3联邦学习的相关法规与社区
1.1.4展望与总结
1.2联邦学习挑战
1.2.1性能挑战
1.2.2效率挑战
1.2.3隐私与安全挑战
1.3机器学习基础
1.3.1机器学习定义与分类
1.3.2机器学习流程
1.3.3常见的机器学习算法
1.4深度学习基础与框架
1.4.1深度学习基本原理
1.4.2常见的神经网络类型
1.4.3常见的深度学习框架
第2章联邦学习框架
2.1百度PaddleFL框架2.1.1PaddleFL框架结构
2.1.2PaddleFL框架安装和部署
2.1.3PaddleFL使用示例
2.2Flower框架
2.2.1Flower框架结构
2.2.2Flower框架安装与部署
2.2.3Flower使用示例
2.3微众银行FATE框架
2.3.1FATE的技术架构
2.3.2FATE安装与部署
2.4联邦学习框架对比
第3章联邦学习系统架构
3.1横向联邦学习
3.1.1横向联邦学习定义
3.1.2横向联邦学习算法
3.1.3安全聚合算法
3.2纵向联邦学习
3.2.1纵向联邦学习算法概述
3.2.2纵向联邦逻辑回归算法
3.3分割学习
3.3.1分割学习基本原理
3.3.2分割学习设置与应用场景
第4章联邦学习建模难点与解决方案
4.1数据统计异质性
4.1.1非独立同分布影响与收敛性分析
4.1.2非同质性数据分类与构建
4.1.3联邦学习非独立同分布策略
4.2个性化联邦学习
4.2.1个性化联邦学习的动机和概念4.2.2全局模型个性化策略
4.2.3个性化本地模型
4.3联邦学习通信与加速算法
4.3.1模型压缩算法
4.3.2异步与并行优化
4.3.3硬件加速
第5章联邦学习与隐私保护
5.1差分隐私
5.1.1差分隐私定义
5.1.2差分隐私与机器学习
5.1.3差分隐私在联邦学习中的应用
5.1.4开源项目与工具
5.2安全多方计算
5.2.1百万富翁问题
5.2.2不经意传输
5.2.3混淆电路
5.2.4秘密分享
5.2.5安全多方计算在联邦学习中的应用
5.3同态加密
5.3.1同态加密定义与分类
5.3.2部分同态加密方案
5.4可信执行环境
第6章联邦学习系统安全与防御算法
6.1联邦学习安全性分析
6.1.1CIA原则: 私密性、完整性与可用性
6.1.2敌手模型
6.2联邦学习隐私攻击与防御
6.2.1成员推断攻击与防御
6.2.2重构攻击与防御6.3联邦学习安全攻击与防御
6.3.1联邦学习安全攻击目标与手段
6.3.2联邦学习安全防御
第7章联邦学习与计算机视觉
7.1图像分类
7.1.1传统图像分类算法
7.1.2基于深度学习的图像分类算法
7.1.3图像分类常用数据集
7.2目标检测
7.2.1目标检测模型的常用评价标准
7.2.2目标检测的常用算法
7.2.3目标检测的常用数据集
7.3图像分割
7.3.1图像分割分类
7.3.2图像分割数据集
7.3.3语义分割
7.3.4实例分割常用的算法
7.4联邦学习图像识别非独立同分布数据实验
7.4.1实验描述
7.4.2实验过程
7.4.3结果分析
第8章联邦学习与推荐系统
8.1推荐系统基本知识
8.1.1推荐系统数据
8.1.2推荐系统架构
8.1.3推荐系统数据集
8.2协同过滤算法
8.2.1协同过滤算法分类
8.2.2协同过滤算法评价指标8.3矩阵分解
8.3.1奇异值分解
8.3.2联邦矩阵分解算法
8.4神经协同过滤网络
8.4.1神经协同过滤系统框架
8.4.2神经协同过滤层设计
8.4.3神经协同过滤训练
8.4.4联邦神经协同过滤
第9章联邦学习与其他深度学习模式结合
9.1联邦多任务学习
9.1.1多任务学习基本原理
9.1.2联邦多任务学习算法
9.2联邦学习与半监督学习
9.2.1半监督学习的基本方法
9.2.2联邦学习与半监督学习结合
9.3联邦强化学习
9.3.1强化学习基本原理与分类
9.3.2联邦学习与强化学习结合
9.4联邦图学习
9.4.1图学习算法基础知识
9.4.2联邦图学习算法与挑战
第10章联邦学习应用前景
10.1联邦学习与医疗
10.1.1联邦医学图像处理
10.1.2联邦学习与电子医疗记录
10.1.3联邦学习与药物开发
10.2联邦学习与金融
10.2.1联邦学习与银行风控
10.2.2联邦学习与消费社交反欺诈10.2.3联邦学习与智慧营销
10.3联邦学习、边缘计算与物联网
10.3.1联邦学习与边缘计算
10.3.2联邦学习与物联网
10.3.3联邦学习与自动驾驶
10.4联邦学习与区块链
10.4.1区块链基本原理
10.4.2区块链分类
10.4.3区块链与联邦学习结合