一部权威、通俗、前沿的深度学习指南。
从机器学习基础知识到前沿模型,《理解深度学习》精选关键理论与尖端主题,以直观形式呈现高密度的核心知识。
涵盖热门主题:如Transformer模型与扩散模型(Diffusion Model)。
化繁为简:先以通俗语言阐释复杂概念,再辅以数学公式与视觉图解深入解析。
实践导向:引导读者动手实现模型的初级版本。
配套资源丰富:提供教师课件、习题及Python Notebook编程练习。
适用读者:适合已掌握应用数学基础知识的本科生、研究生及从业者。
在当今这个信息爆炸的时代,获取学习资料的渠道并不匮乏,各类书籍和视频资源可谓琳琅满目。但我始终没有找到一本合适的人工智能入门指南。一部分书籍罗列了许多新颖的算法,但缺乏深入剖析,浮于表面;它们更适合作为科普读物,对于希望深入学习的读者来说,内容深度是远远不够的。一部分书籍从最基础的数学原理入手,详细列出相关公式,但学习门槛较高;而且即便完全掌握了这些原理,若想将算法落地,仍需要补充对应的编程技能。还有一部分书籍侧重实践应用,提供了大量示例代码和详细讲解,却容易让读者陷入知其然而不知其所以然的困境。
直到阅读了亚东老师推荐的Understanding Deep Learning后,我意识到终于找到理想的指南书了。本书从最基础的浅层神经网络入手,逐步深入,直至扩散模型,内容包罗万象。在基础模型章节中,Simon教授对每个问题的建模和公式推导都进行了细致入微的讲解;在高级模型章节中,阐述原理,还深入探讨模型的应用场景及前沿研究趋势。如果你潜心研读每一章节、每一个公式,会发现Simon教授倾注了大量心血,力求将复杂的概念以最清晰的方式呈现给读者。深度学习的难点之一在于如何理解高维空间中的问题,Simon教授通过降维和可视化手段,将梯度下降、迭代求解等抽象过程直观展现出来,极大地降低了理解门槛。本书讲解算法原理,还附有每个模型的Python Notebook源代码。无论你是具备一定数学基础的本科生,还是希望深入了解人工智能技术的软件工程师,本书都是你的上佳选择。
译者序
尊敬的读者:
首先,由衷地感谢你拿起我翻译的这本《理解深度学习》(Understanding Deep Learning)。作为本书的译者,能将这本杰作呈现在中文读者面前,我备感荣幸,内心充满感激之情。
我要向本书的作者西蒙·J. D.普林斯教授致以最诚挚的谢意。感谢他创作了这样一本深入浅出、系统全面、充满洞见的深度学习著作。本书不仅揭开了深度学习的神秘面纱,更以清晰的逻辑和丰富的实例,引导读者逐步理解和掌握这一前沿技术的核心概念和应用方法。 在翻译过程中,我一次次地被作者的深刻思考所折服,也愈发体会到这本书对于想要入门或深入理解深度学习、大模型学习的读者来说,是多么宝贵和不可或缺。
感谢编辑王军老师,一次偶遇让我有了圆梦的机会!深度学习(尤其是大语言模型)作为人工智能领域的核心驱动力,正深刻改变着世界。将这样一本优秀的著作译成中文,使其能够惠及广大的中文读者,帮助朋友们理解并掌握这方面的相关原理与技术,是我的荣幸。
翻译过程既是一次充满挑战的智力探险,也是一段收获满满的学习之旅。我力求在忠实原文的基础上,尽可能地使译文流畅自然,易于理解。确保术语的准确性和表达的规范性,尽量保证精准翻译每个细节。如果有任何不确切或者谬误之处,请原谅译者的才具不足。
在此,衷心感谢在本书翻译和出版过程中给予我帮助和支持的所有朋友们。感谢付裕从头到尾给予的指点与支持。感谢合作译者马壮的支持,他完成了另一半的翻译工作。感谢朋友王志晨校对了每一句中文,让工科背景人的译作也向信、达、雅靠近了!感谢所有为本书的出版辛勤付出的其他人士,使得本书的中文版能以高质量的面貌呈现在大家面前。
衷心希望本书能帮助更多读者踏入深度学习、大语言模型的大门,理解其精髓,掌握其应用,并在未来的学习和工作中取得更大成就。如果我能为中国的深度学习技术发展贡献绵薄之力,那将是我最大的荣幸。
愿你在AI技术这一激动人心的探索之旅中,收获满满!
译者 张亚东
无论是在求学阶段,还是在步入职场后,很多人都会向我提出这样一个问题:我准备进入人工智能领域进行学习或研究,你能推荐一些合适的学习资料吗?
在当今这个信息爆炸的时代,获取学习资料的渠道并不匮乏,各类书籍和视频资源可谓琳琅满目。但我始终没有找到一本合适的人工智能入门指南。一部分书籍罗列了许多新颖的算法,但缺乏深入剖析,浮于表面;它们更适合作为科普读物,对于希望深入学习的读者来说,内容深度是远远不够的。一部分书籍从最基础的数学原理入手,详细列出相关公式,但学习门槛较高;而且即便完全掌握了这些原理,若想将算法落地,仍需要补充对应的编程技能。还有一部分书籍侧重实践应用,提供了大量示例代码和详细讲解,却容易让读者陷入知其然而不知其所以然的困境。
直到阅读了亚东老师推荐的Understanding Deep Learning后,我意识到终于找到理想的指南书了。本书从最基础的浅层神经网络入手,逐步深入,直至扩散模型,内容包罗万象。在基础模型章节中,Simon教授对每个问题的建模和公式推导都进行了细致入微的讲解;在高级模型章节中,阐述原理,还深入探讨模型的应用场景及前沿研究趋势。如果你潜心研读每一章节、每一个公式,会发现Simon教授倾注了大量心血,力求将复杂的概念以最清晰的方式呈现给读者。深度学习的难点之一在于如何理解高维空间中的问题,Simon教授通过降维和可视化手段,将梯度下降、迭代求解等抽象过程直观展现出来,极大地降低了理解门槛。本书讲解算法原理,还附有每个模型的Python Notebook源代码。无论你是具备一定数学基础的本科生,还是希望深入了解人工智能技术的软件工程师,本书都是你的最佳选择。
非常感谢亚东老师让我参与本书的翻译工作。翻译不仅是将文字从一种语言转换为另一种语言的过程,更是一次重构和深化知识体系的宝贵机会。在翻译过程中,原本零散的知识碎片被重新串联起来,形成更完整的知识框架,这对我来说是一次极为珍贵的经历。
由于时间仓促且本人学识有限,译文中难免存在疏漏与不足之处,恳请各位读者批评指正。同时,建议有能力的读者直接阅读Simon教授的原文,相信你一定会从中获得更多启发与收获。
译者 马壮
序言
这是一本最新的权威深度学习入门书籍,内容通俗易懂。本书涵盖从机器学习基础知识到高级模型的全部内容,精选了机器学习领域的核心要点和前沿课题,并直观地凝练了知识要点。
?涵盖前沿课题,如 Transformer 和扩散模型。
?用通俗易懂的语言阐述复杂的概念,并辅以数学公式和可视化图表。
?使读者能够实现简单的模型。
?提供了全面的在线资料,含 Python Notebook 中的编程练习。
?适合任何具有应用数学基础的人学习。
Simon J. D. Prince 是巴斯大学计算机科学系荣誉教授,是《计算机视觉:模型、学习和推断》一书的作者。他是一位专注于人工智能和深度学习研究的科学家,曾在Borealis AI 等公司担任研究员。
这是一部学术与视觉双重精妙的杰作。它以简洁而清晰的方式传递核心思想,并通过精心设计的插图加以诠释,堪称当今最出色的深度学习入门著作。
Kevin Murphy
Google DeepMind研究科学家
Probabilistic Machine learning: Advanced Topics作者
前言
在学术界,深度学习的发展史极不寻常。一小群科学家坚持不懈地在一个看似没有前途的领域工作了25年,最终使一个领域发生了技术革命并极大地影响了人类社会。研究者持续探究学术界或工程界中深奥且难以解决的问题,通常情况下这些问题无法得到根本性解决。但深度学习领域是个例外,尽管广泛的怀疑仍然存在,但Yoshua Bengio、Geoff Hinton 和Yann LeCun 等人的系统性努力最终取得了成效。
本书的书名是理解深度学习,这意味着它更关注深度学习背后的原理,而不侧重于编程实现或实际应用。本书的前半部分介绍深度学习模型并讨论了如何训练它们,评估它们的表现并做出改进。后半部分讨论专用于图像、文本、图数据的模型架构。只要学习过线性代数、微积分和概率论的二年级本科生都能掌握这些章节的知识。对于后续涉及生成模型和强化学习的章节,则需要更多的概率论和微积分知识,它们面向更高年级的学生。
这个书名在一定程度上也是一个玩笑在撰写本书时,没有人能够真正理解深度学习。目前深度神经网络学习的分段线性函数的数量比宇宙中的原子数还多,可用远少于模型参数数量的样本进行训练。现在我们既无法找到可靠地拟合这些函数的方法,又不能保证能很好地描述新数据。第20章讨论了上述问题和其他尚未完全理解的问题。无论如何,深度学习都将或好或坏地改变这个世界。最后一章讨论了人工智能伦理,并呼吁从业者更多地考虑所从事的工作带来的伦理问题。
本书配套资源丰富,提供教师课件、习题及Python Notebook编程练习。
你的时间是宝贵的,为了保证你能高效理解深度学习相关知识,本书的内容都经过我的精心整理。每一章都对最基本思路进行简明描述,并附有插图。附录回顾了所有数学原理。对于希望深入研究的读者,可认真研究每章列出的问题、Python Notebook资源和背景说明。
致谢
本书的出版离不开以下人士的无私帮助和建议:Kathryn Hume、Kevin Murphy、Christopher Bishop、Peng Xu、Yann Dubois、Justin Domke、Chris Fletcher、Yanshuai Cao、Wendy Tay、Corey Toler-Franklin、Dmytro Mishkin、Guy McCusker、Daniel Worrall、Paul McIlroy、Roy Amoyal、Austin Anderson、Romero Barata de Morais、Gabriel Harrison、Peter Ball、Alf Muir、David Bryson、Vedika Parulkar、Patryk Lietzau、Jessica Nicholson、Alexa Huxley、Oisin Mac Aodha、Giuseppe Castiglione、Josh Akylbekov、Alex Gougoulaki、Joshua Omilabu、Alister Guenther、Joe Goodier、Logan Wade、Joshua Guenther、Kylan Tobin、Benedict Ellett、Jad Araj、Andrew Glennerster、Giorgos Sfikas、Diya Vibhakar、Sam Mansat-Bhattacharyya、Ben Ross、Ivor Simpson、Gaurang Aggarwal、Shakeel Sheikh、Jacob Horton、Felix Rammell、Sasha Luccioni、Akshil Patel、Mark Hudson、Alessandro Gentilini、Kevin Mercier、Krzysztof Lichocki、Chuck Krapf、Brian Ha、Chris Kang、Leonardo Viotti、Kai Li、Himan Abdollahpouri、Ari Pakman、Giuseppe Antonio Di Luna、Dan Oneat?、Conrad Whiteley、Joseph Santarcangelo、Brad Shook、Gabriel Brostow、Lei He、Ali Satvaty、Romain Sabathé、Qiang Zhou、Prasanna Vigneswaran、Siqi Zheng、Stephan Grein、Jonas Klesen、Giovanni Stilo、Huang Bokai、Bernhard Pfahringer、Joseph Santarcangelo、Kevin McGuinness、Qiang Sun、Zakaria Lotfi、Yifei Lin、Sylvain Bouix、Alex Pitt、Stephane Chretien、Robin Liu、Bian Li、Adam Jones、Marcin ?wierkot、Tommy Lfstedt、Eugen Hotaj、Fernando Flores Mangas、Tony Polichroniadis、Pietro Monticone、Rohan Deepak Ajwani、Menashe Yarden Einy、Robert Gevorgyan、Thilo Stadelmann、Gui JieMiao、Botao Zhu、Mohamed Elabbas、Satya Krishna Gorti、James Elder、Helio Perroni Filho、Xiaochao Qu、Jaekang Shin、Joshua Evans、Robert Dobson、Shibo Wang、Edoardo Zorzi、Joseph Santarcangelo、Stanis?aw Jastrz?bski、Pieris Kalligeros、Matt Hewitt和Zvika Haramaty.
感谢 Daniyar Turmukhambetov、Amedeo Buonanno、Tyler Mills、Andrea Panizza和Bernhard Pfahringer 对多个章节给出的详细修改建议。尤其感谢Andrew Fitzgibbon和Konstantinos Derpanis 通读全书,你们的热情使我有动力完成本书的撰写工作。同时,感谢Neill Campbell和zgr ?im?ek邀请我到巴斯大学讲课,在那里我基于这些材料第一次开设了一门课程。最后,尤其感谢编辑 Elizabeth Swayze 提出的中肯建议。
第12章(变换器)和第17章(变分自编码器)最初发布在Borealis AI的博客中,改编后的版本在获得许可的情况下在此转载。非常感谢他们对我工作的支持。第16章(标准化流)大致基于Kobyzev等人在2002年发表的文章,我是该文章的合著者。我很幸运能够和来自达尔豪斯大学的Travis LaCroix合作撰写第21章。他既有趣又平易近人,他承担了大部分工作。
Simon J.D.Prince 现任英国巴斯大学计算机科学名誉教授,著有Computer Vision: Models, Learning, and Inference .他专注于人工智能与深度学习领域研究,曾在Anthropics Technologies Ltd、Borealis AI等机构领导学术界与工业界科研团队。
第1章 引言 1
1.1 监督学习 1
1.1.1 回归和分类问题 2
1.1.2 输入 3
1.1.3 机器学习模型 4
1.1.4 深度神经网络 5
1.1.5 结构化输出 5
1.2 无监督学习 7
1.2.1 生成模型 7
1.2.2 潜变量 9
1.2.3 联系监督学习和无监督学习 10
1.3 强化学习 11
1.4 伦理学 12
1.5 本书编排方式 13
1.6 其他书籍 14
1.7 如何阅读本书 15
第2章 监督学习 16
2.1 监督学习概述 16
2.2 线性回归示例 17
2.2.1 一维(1D)线性回归模型 17
2.2.2 损失 18
2.2.3 训练 20
2.2.4 测试 21
2.3 本章小结 21
2.4 注释 22
2.5 问题 22
第3章 浅层神经网络 24
3.1 神经网络示例 24
3.1.1 神经网络的直观理解 25
3.1.2 描绘神经网络 27
3.2 通用逼近定理 28
3.3 多变量输入和输出 29
3.3.1 可视化多变量输出 29
3.3.2 可视化多变量输入 30
3.4 浅层神经网络:一般情形 33
3.5 术语 33
3.6 本章小结 34
3.7 注释 34
3.8 问题 37
第4章 深度神经网络 40
4.1 组合神经网络 40
4.2 从组合网络到深度网络 43
4.3 深度神经网络 43
4.4 矩阵表示法 46
4.5 浅层与深度神经网络 48
4.5.1 逼近不同函数的能力 48
4.5.2 每参数线性区域数量 48
4.5.3 深度效率 49
4.5.4 大型结构化输入 49
4.5.5 训练和泛化 49
4.6 本章小结 50
4.7 注释 50
4.8 问题 51
第5章 损失函数 54
5.1 最大似然 54
5.1.1 计算输出分布 56
5.1.2 最大似然准则 56
5.1.3 最大化对数似然 56
5.1.4 最小化负对数似然 57
5.1.5 模型推理 58
5.2 构建损失函数 58
5.3 示例1:单变量回归问题 58
5.3.1 最小二乘损失函数 59
5.3.2 模型推理 61
5.3.3 方差估计 61
5.3.4 异方差回归 62
5.4 示例2:二分类问题 63
5.5 示例3:多分类问题 65
5.6 多输出问题 67
5.7 交叉熵损失 68
5.8 本章小结 69
5.9 注释 70
5.10 问题 71
第6章 模型训练 74
6.1 梯度下降法 74
6.1.1 线性回归示例 75
6.1.2 Garbor模型示例 77
6.1.3 局部最小值和鞍点 77
6.2 随机梯度下降 79
6.2.1 批次和epoch 80
6.2.2 随机梯度下降的特性 82
6.3 动量 82
6.4 Adam 优化器 84
6.5 训练算法超参数 86
6.6 本章小结 87
6.7 注释 87
6.8 问题 90
第7章 梯度与参数初始化 93
7.1 问题定义 93
7.2 计算导数 95
7.3 简单示例 96
7.4 反向传播算法 99
7.4.1 反向传播算法总结 102
7.4.2 自动微分 103
7.4.3 扩展到任意计算图 103
7.5 参数初始化 103
7.5.1 正向传播的初始化 104
7.5.2 反向传播的初始化 106
7.5.3 正向和反向传播的初始化 106
7.6 训练代码示例 107
7.7 本章小结 108
7.8 注释 108
7.9 问题 110
第8章 性能评估 114
8.1 训练简单模型 114
8.2 误差来源 116
8.2.1 噪声、偏差和方差 117
8.2.2 测试误差的数学表达 118
8.3 降低误差 120
8.3.1 降低方差 120
8.3.2 降低偏差 122
8.3.3 偏差-方差权衡 122
8.4 选择超参数 127
8.5 本章小结 128
8.6 注释 128
8.7 问题 131
第9章 正则化 133
9.1 显式正则化 133
9.1.1 概率解释 134
9.1.2 L2正则化 134
9.2 隐式正则化 136
9.2.1 梯度下降法中的隐式正则化 136
9.2.2 随机梯度下降法中的隐式正则化 137
9.3 提高性能的启发式算法 139
9.3.1 提前停止 139
9.3.2 集成学习 140
9.3.3 随机丢弃 141
9.3.4 添加噪声 143
9.3.5 贝叶斯推理 144
9.3.6 迁移学习和多任务学习 145
9.3.7 自监督学习 146
9.3.8 数据增广 146
9.4 本章小结 147
9.5 注释 148
9.6 问题 154
第10章 卷积网络 155
10.1 不变性和等变性 156
10.2 用于一维输入的卷积网络 157
10.2.1 一维卷积操作 157
10.2.2 填充 157
10.2.3 步长、核大小和膨胀率 158
10.2.4 卷积层 159
10.2.5 通道 160
10.2.6 卷积网络和感受野 160
10.2.7 示例:MNIST-1D 161
10.3 二维输入的卷积网络 163
10.4 下采样和上采样 165
10.4.1 下采样 165
10.4.2 上采样 165
10.4.3 更改通道数量 166
10.5 应用 167
10.5.1 图像分类 167
10.5.2 目标检测 169
10.5.3 语义分割 170
10.6 本章小结 172
10.7 注释 172
10.8 问题 176
第11章 残差网络 178
11.1 顺序处理 178
11.2 残差连接和残差块 180
11.2.1 残差块中的操作顺序 182
11.2.2 带有残差连接的更深层网络 182
11.3 残差网络中的梯度爆炸 183
11.4 批量归一化 184
11.5 常见的残差架构 185
11.5.1 ResNet 185
11.5.2 DenseNet 187
11.5.3 U-Net和沙漏网络 188
11.6 为什么具有残差连接的网络表现如此出色? 190
11.7 本章小结 190
11.8 注释 191
11.9 问题 195
第12章 变换器 197
12.1 处理文本数据 197
12.2 点积自注意力 198
12.2.1 计算和加权值 199
12.2.2 计算注意力权重 200
12.2.3 自注意力总结 201
12.2.4 矩阵形式 202
12.3 点积自注意力的扩展 203
12.3.1 位置编码 203
12.3.2 缩放点积自注意力 204
12.3.3 多头 204
12.4 变换器 205
12.5 自然语言处理中的变换器 206
12.5.1 分词 206
12.5.2 嵌入 207
12.5.3 变换器模型 208
12.6 编码器模型示例:BERT 208
12.6.1 预训练 209
12.6.2 微调 209
12.7 解码器模型示例:GPT-3 211
12.7.1 语言建模 211
12.7.2 掩码自注意力 211
12.7.3 从解码器生成文本 212
12.7.4 GPT-3与少样本学习 213
12.8 编码器-解码器模型示例:机器翻译 214
12.9 用于长序列的变换器 216
12.10 图像的变换器 217
12.10.1 ImageGPT 218
12.10.2 视觉变换器(ViT) 219
12.10.3 多尺度视觉变换器 219
12.11 本章小结 220
12.12 注释 221
12.13 问题 228
第13章 图神经网络 230
13.1 什么是图 230
13.2 图的表示 233
13.2.1 邻接矩阵的属性 233
13.2.2 节点索引的排列 234
13.3 图神经网络、任务和损失函数 235
13.4 图卷积网络 237
13.4.1 等变性和不变性 238
13.4.2 参数共享 238
13.4.3 GCN层示例 239
13.5 示例:图分类 240
13.6 归纳模型与演绎模型 241
13.7 示例:节点分类 242
13.8 图卷积网络的层 245
13.8.1 结合当前节点和聚合邻居 245
13.8.2 残差连接 245
13.8.3 平均聚合 246
13.8.4 Kipf归一化 246
13.8.5 最大池化聚合 246
13.8.6 注意力聚合 246
13.9 边图 248
13.10 本章小结 249
13.11 注释 249
13.12 问题 254
第14章 无监督学习 257
14.1 无监督学习模型分类 257
14.2 什么是好的生成模型? 259
14.3 量化评估指标 260
14.4 本章小结 263
14.5 注释 263
第15章 生成式对抗网络 264
15.1 判别作为信号 264
15.1.1 GAN 损失函数 265
15.1.2 训练 GAN 266
15.1.3 DCGAN 267
15.1.4 GAN训练的难点 268
15.2 提高稳定性 269
15.2.1 GAN 损失函数分析 269
15.2.2 梯度消失 270
15.2.3 Wasserstein距离 271
15.2.4 离散分布的Wasserstein距离 271
15.2.5 连续分布的Wasserstein距离 273
15.2.6 Wasserstein GAN损失函数 273
15.3 提升生成图像质量的方法 274
15.4 条件生成 276
15.4.1 cGAN 276
15.4.2 ACGAN 277
15.4.3 InfoGAN 278
15.5 图像翻译 279
15.5.1 Pix2Pix 279
15.5.2 对抗性损失 279
15.5.3 CycleGAN 281
15.6 StyleGAN 282
15.7 本章小结 284
15.8 注释 285
15.9 问题 288
第16章 标准化流 290
16.1 一维示例 290
16.1.1 计算概率 291
16.1.2 正向和反向映射 292
16.1.3 学习 292
16.2 一般情况 293
16.2.1 基于深度神经网络的正向映射 293
16.2.2 对网络层的要求 294
16.3 可逆网络层 295
16.3.1 线性流 295
16.3.2 逐元素流 296
16.3.3 耦合流 297
16.3.4 自回归流 298
16.3.5 反向自回归流 299
16.3.6 残差流:iRevNet 300
16.3.7 残差流和收缩映射:iResNet 301
16.4 多尺度流 302
16.5 应用 303
16.5.1 密度建模 303
16.5.2 图像合成 304
16.5.3 近似其他密度模型 305
16.6 本章小结 306
16.7 注释 307
16.8 问题 310
第17章 变分自编码器 312
17.1 隐变量模型 312
17.2 非线性隐变量模型 314
17.3 训练 315
17.3.1 证据下界 (ELBO) 315
17.3.2 Jensen 不等式 316
17.3.3 推导下界 317
17.4 ELBO 的性质 318
17.4.1 下界的紧密性 318
17.4.2 ELBO的第三种表示方式 319
17.5 变分近似 320
17.6 变分自编码器 320
17.7 重参数化技巧 323
17.8 应用 323
17.8.1 估计样本概率 323
17.8.2 生成 324
17.8.3 重合成 325
17.8.4 解耦 326
17.9 本章小结 327
17.10 注释 328
17.11 问题 331
第18章 扩散模型 333
18.1 概述 333
18.2 编码器(前向过程) 334
18.2.1 扩散核 335
18.2.2 边缘分布 337
18.2.3 条件分布 338
18.2.4 条件扩散分布 338
18.3 解码器模型(反向过程) 340
18.4 训练 340
18.4.1 证据下界 (ELBO) 341
18.4.2 简化 ELBO 341
18.4.3 分析ELBO 342
18.4.4 扩散损失函数 343
18.4.5 训练过程 343
18.5 损失函数的重参数化 344
18.5.1 目标值的参数化 345
18.5.2 网络的重参数化 346
18.6 实现 347
18.6.1 应用于图像 347
18.6.2 提高生成速度 348
18.6.3 条件生成 349
18.6.4 提高生成质量 350
18.7 本章小结 352
18.8 注释 352
18.9 问题 355
第19章 强化学习 357
19.1 马尔可夫决策过程、回报和策略 357
19.1.1 马尔可夫过程 358
19.1.2 马尔可夫奖励过程 358
19.1.3 马尔可夫决策过程 359
19.1.4 部分可观测马尔可夫决策过程 359
19.1.5 策略 360
19.2 预期回报 361
19.2.1 状态和动作价值 362
19.2.2 最优策略 363
19.2.3 贝尔曼式 363
19.3 表格型强化学习 365
19.3.1 动态规划 365
19.3.2 蒙特卡罗方法 366
19.3.3 时间差分方法 367
19.4 拟合Q学习 368
19.4.1 用于玩ATARI游戏的深度Q网络 369
19.4.2 双Q学习和双深度Q网络 370
19.5 策略梯度方法 371
19.5.1 梯度更新的推导 372
19.5.2 REINFORCE算法 374
19.5.3 基线 374
19.5.4 状态依赖的基线 375
19.6 演员-评论家方法 376
19.7 离线强化学习 377
19.8 本章小结 378
19.9 注释 378
19.10 问题 382
第20章 为什么深度网络有效 385
20.1 质疑深度学习的案例 385
20.1.1 训练 385
20.1.2 泛化 386
20.1.3 看似不合理的有效性 386
20.2 影响拟合性能的因素 387
20.2.1 数据集 387
20.2.2 正则化 387
20.2.3 随机训练算法 388
20.2.4 过度参数化 388
20.2.5 激活函数 389
20.2.6 初始化 390
20.2.7 网络深度 390
20.3 损失函数的性质 391
20.3.1 多个全局最小值 391
20.3.2 到达最小值的路径 391
20.3.3 最小值之间的联系 392
20.3.4 损失面的曲率 393
20.4 决定泛化的因素 394
20.4.1 训练算法 394
20.4.2 最小值的平坦度 395
20.4.3 架构 396
20.4.4 权重的范数 396
20.4.5 过度参数化 397
20.4.6 离开数据流形 397
20.5 我们需要这么多参数吗 398
20.5.1 剪枝 399
20.5.2 知识蒸馏 400
20.5.3 讨论 400
20.6 网络必须很深吗? 401
20.6.1 建模函数的复杂性 401
20.6.2 训练的可行性 402
20.6.3 归纳偏差 402
20.7 本章小结 402
20.8 问题 403
第21章 深度学习和伦理 404
21.1 价值一致性 405
21.1.1 偏见与公平性 406
21.1.2 人工道德代理 408
21.1.3 透明度与不透明度 409
21.1.4 可解释性 409
21.2 故意滥用 410
21.2.1 面部识别和分析 410
21.2.2 军事化和政治干预 410
21.2.3 欺诈 411
21.2.4 数据隐私 411
21.3 其他社会、伦理和专业问题 412
21.3.1 知识产权 412
21.3.2 自动化偏见和道德技能退化 412
21.3.3 环境影响 413
21.3.4 就业和社会 413
21.3.5 权力集中 413
21.4 案例研究 414
21.5 科学的价值中立理想 414
21.6 负责任的人工智能研究作为集体行动问题 415
21.6.1 科学沟通 416
21.6.2 多样性和异质性 416
21.7 未来的方向 416
21.8 本章小结 417
21.9 问题 418
附录A 符号表示 420
附录B 数学 423
附录C 概率 432