搜索
高级检索
高级搜索
书       名 :
著       者 :
出  版  社 :
I  S  B  N:
文献来源:
出版时间 :
机器学习系统(设计和实现)
0.00     定价 ¥ 79.00
图书来源: 浙江图书馆(由浙江新华配书)
此书还可采购25本,持证读者免费借回家
  • 配送范围:
    浙江省内
  • ISBN:
    9787302630074
  • 作      者:
    编者:麦络//董豪|责编:曾珊
  • 出 版 社 :
    清华大学出版社
  • 出版日期:
    2023-05-01
收藏
编辑推荐

本书分为三大部分。基础篇覆盖机器学习框架使用者所需要了解的核心系统知识和相关编程案例;进阶篇覆盖了机器学习框架开发着所需要理解的核心知识和相关实践案例;拓展篇详细讨论了多种类的机器学习系统,从而为广大机器学习从业者提供解密底层系统所需的基础知识。

展开
作者简介

麦络  爱丁堡大学信息学院助理教授,博士生导师。2018年于帝国理工学院获得博士学位,谷歌博士奖学金获得者。主要研究方向为分布式系统、机器学习和数据管理,当前研究工作专注于构建大规模、自适应和可信的机器学习系统,受到谷歌、微软、华为、腾讯和阿里巴巴等多家知名科技公司的资助。在计算机顶级会议OSDI、NSDI、USENIX ATC、CoNEXT、VLDB、ECCV和NeurIPS发表多篇论文。获得CoNEXT会议最佳论文入围奖,ACM Multimedia 2017最佳开源论文奖。

 

董豪  北京大学计算机学院助理教授,博士生导师,2019年于帝国理工获得博士学位。主要研究方向为计算机视觉、机器人和具身智能,当前研究工作围绕智能机器人的自主决策与泛化交互。担任CVPR 2023领域主席、AAAI 2023高级程序委员、中国科技核心期刊Machine Intelligence Research副编委等,在NeurIPS、ICLR、ICCV、ECCV、IROS等顶级国际会议和期刊发表30余篇论文,Deep Reinforcement Learning:Fundamentals, Research and Applications作者。获得ACM MM最佳开源软件奖,新一代人工智能产业技术创新战略联盟 OpenI 启智社区优秀开源项目、Springer Nature中国作者高影响力研究精选等。


展开
内容介绍
近年来,机器学习技术广泛用于各行各业,诞生了众多突破性成果。其中,机器学习框架和相关系统作为机器学习技术的核心基础,受到众多科研人员和开发者的密切关注。本书由浅入深,通俗易懂地讲解机器学习框架设计和实现过程中所涉及的核心知识。 本书分为三大部分。基础篇覆盖了使用者所需要了解的机器学习框架核心系统知识和相关编程案例。进阶篇覆盖了开发者所需要理解的机器学习框架核心知识和相关实践案例。拓展篇详细讨论了多种类型的机器学习系统,从而为广大机器学习从业者提供解密底层系统所需的基础知识。
展开
目录

基础篇

第1章  导论 003

1.1  机器学习应用 003

1.2  机器学习框架的设计目标 004

1.3  机器学习框架的基本组成原理 005

1.4  机器学习系统生态 006

1.5  本书结构和读者对象 007

第2章  编程模型 009

2.1  机器学习系统编程模型的演进 009

2.2  机器学习工作流 011

2.2.1  环境配置 011

2.2.2  数据处理 012

2.2.3  模型定义 013

2.2.4  损失函数和优化器 014

2.2.5  训练及保存模型 015

2.2.6  测试和验证 016

2.3  定义深度神经网络 017

2.3.1  以层为核心定义神经网络 017

2.3.2  神经网络层的实现原理 021

2.3.3  自定义神经网络层 022

2.3.4  自定义神经网络模型 023

2.4  C/C++编程接口 024

2.4.1  在Python中调用C/C++函数的原理 025

2.4.2  添加C++编写的自定义算子 025

2.5  机器学习框架的编程范式 030

2.5.1  机器学习框架编程需求 030

2.5.2  机器学习框架编程范式现状 030

2.5.3  函数式编程案例 031

2.6  总结 032

2.7  拓展阅读 032

第3章  计算图 033

3.1  设计背景和作用 033

3.2  计算图的基本构成 034

3.2.1  张量和算子 035

3.2.2  计算依赖 037

3.2.3  控制流 038

3.2.4  基于链式法则计算梯度 041

3.3  计算图的生成 043

3.3.1  静态生成 043

3.3.2  动态生成 046

3.3.3  动态图和静态图生成的比较 048

3.3.4  动态图与静态图的转换和融合 049

3.4  计算图的调度 051

3.4.1  算子调度执行 051

3.4.2  串行与并行 052

3.4.3  数据载入同步与异步机制 053

3.5  总结 054

3.6  拓展阅读 055

进阶篇

第4章  AI 编译器和前端技术 059

4.1  AI编译器设计原理 059

4.2  AI编译器前端技术概述 061

4.3  中间表示 062

4.3.1  中间表示的基本概念 062

4.3.2  中间表示的种类 063

4.3.3  机器学习框架的中间表示 065

4.4  自动微分 072

4.4.1  自动微分的基本概念 072

4.4.2  前向与反向自动微分 074

4.4.3  自动微分的实现 077

4.5  类型系统和静态分析 081

4.5.1  类型系统概述 081

4.5.2  静态分析概述 082

4.6  常见前端编译优化方法 083

4.6.1  前端编译优化简介 083

4.6.2  常见编译优化方法介绍及实现 083

4.7  总结 085

第5章  AI 编译器后端和运行时 086

5.1  概述 086

5.2  计算图优化 088

5.2.1  通用硬件优化 088

5.2.2  特定硬件优化 090

5.3  算子选择 091

5.3.1  算子选择的基础概念 091

5.3.2  算子选择的过程 095

5.4  内存分配 095

5.4.1  Device内存概念 096

5.4.2  内存分配 096

5.4.3  内存复用 098

5.4.4  常见的内存分配优化手段 099

5.5  计算调度与执行 101

5.5.1  单算子调度 101

5.5.2  计算图调度 102

5.5.3  交互式执行 106

5.5.4  下沉式执行 110

5.6  算子编译器 110

5.6.1  算子调度策略 111

5.6.2  子策略组合优化 112

5.6.3  调度空间算法优化 114

5.6.4  芯片指令集适配 115

5.6.5  算子表达能力 116

5.6.6  相关编译优化技术 117

5.7  总结 117

5.8  拓展阅读 118

第6章  硬件加速器 119

6.1  概述 119

6.1.1  硬件加速器设计的意义 119

6.1.2  硬件加速器设计的思路 119

6.2  硬件加速器基本组成原理 120

6.2.1  硬件加速器的架构 120

6.2.2  硬件加速器的存储单元 121

6.2.3  硬件加速器的计算单元 122

6.2.4  DSA芯片架构 124

6.3  加速器基本编程原理 125

6.3.1  硬件加速器的可编程性 125

6.3.2  硬件加速器的多样化编程方法 128

6.4  加速器实践 132

6.4.1  环境 132

6.4.2  广义矩阵乘法的朴素实现 133

6.4.3  提高计算强度 135

6.4.4  使用共享内存缓存复用数据 138

6.4.5  减少寄存器使用 139

6.4.6  隐藏共享内存读取延迟 140

6.4.7  隐藏全局内存读取延迟 141

6.4.8  与cuBLAS对比 142

6.4.9  小结 143

6.5  总结 143

6.6  拓展阅读 144

第7章  数据处理 145

7.1  概述 146

7.1.1  易用性 146

7.1.2  高效性 147

7.1.3  保序性 147

7.2  易用性设计 147

7.2.1  编程抽象与接口 147

7.2.2  自定义算子支持 151

7.3  高效性设计 153

7.3.1  数据读取的高效性 154

7.3.2  数据计算的高效性 157

7.4  保序性设计 162

7.5  单机数据处理性能的扩展 163

7.5.1  基于异构计算的数据预处理 163

7.5.2  基于分布式的数据预处理 165

7.6  总结 166

第8章  模型部署 168

8.1  概述 168

8.2  训练模型到推理模型的转换及优化 169

8.2.1  模型转换 169

8.2.2  算子融合 170

8.2.3  算子替换 172

8.2.4  算子重排 173

8.3  模型压缩 173

8.3.1  量化 174

8.3.2  模型稀疏 176

8.3.3  知识蒸馏 178

8.4  模型推理 179

8.4.1  前处理与后处理 179

8.4.2  并行计算 180

8.4.3  算子优化 181

8.5  模型的安全保护 186

8.5.1  概述 186

8.5.2  模型混淆 186

8.6  总结 188

8.7  拓展阅读 189

第9章  分布式训练 190

9.1  设计概述 190

9.1.1  设计动机 190

9.1.2  系统架构 191

9.1.3  用户益处 192

9.2  实现方法 192

9.2.1  方法分类 192

9.2.2  数据并行 194

9.2.3  模型并行 194

9.2.4  混合并行 197

9.3  流水线并行 197

9.4  机器学习集群架构 198

9.5  集合通信 200

9.5.1  常见集合通信算子 200

9.5.2  基于AllReduce的梯度平均算法 203

9.5.3  集合通信算法性能分析 205

9.5.4  利用集合通信优化模型训练的实践 206

9.5.5  集合通信在数据并行的实践 207

9.5.6  集合通信在混合并行的实践 208

9.6  参数服务器 210

9.6.1  系统架构 210

9.6.2  异步训练 211

9.6.3  数据副本 212

9.7  总结 212

9.8  拓展阅读 213

拓展篇

第10章  联邦学习系统 217

10.1  概述 217

10.1.1  定义 217

10.1.2  应用场景 217

10.1.3  部署场景 218

10.1.4  常用框架 218

10.2  横向联邦学习 219

10.2.1  云云场景中的横向联邦 219

10.2.2  端云场景中的横向联邦 220

10.3  纵向联邦学习 222

10.3.1  纵向联邦架构 222

10.3.2  样本对齐 223

10.3.3  联合训练 224

10.4  隐私加密算法 225

10.4.1  基于LDP算法的安全聚合 226

10.4.2  基于MPC算法的安全聚合 226

10.4.3  基于LDP-SignDS算法的安全聚合 227

10.5  展望 229

10.5.1  异构场景下的联邦学习 229

10.5.2  通信效率提升 230

10.5.3  联邦生态 230

10.6  总结 231


展开
加入书架成功!
收藏图书成功!
我知道了(3)
发表书评
读者登录

请选择您读者所在的图书馆

选择图书馆
浙江图书馆
点击获取验证码
登录
没有读者证?在线办证