深度学习是人工智能的重要分支,在多个应用领域取得了突破性成果。本书作为深度学习的入门教材,基本涵盖了深度学习的各个方面。全书共8章,第1章概要介绍了深度学习的基本概念、典型算法及应用;第2~5章是本书的核心内容,详细介绍了卷积神经网络、循环神经网络、Transformer和生成对抗网络的基本原理、典型算法以及主要应用;第6章介绍了一些典型的深度生成模型以及近期比较流行的扩散模型;第7章介绍了深度学习中常用的正则化与优化方法;第8章介绍了TensorFlow、PyTorch和飞桨三个常用的深度学习框架。本书每章都附有复习题,中间各章还附有实验题,便于读者复习知识点和进行实践锻炼。此外,附录中还给出了一些数学基础知识和中英文术语对照。
本书可作为高等院校计算机科学与技术、智能科学与技术、自动化、电子科学与技术等相关专业的研究生或本科生教材,也可作为深度学习研究人员与算法工程师的参考书。
?读者通过本书可以掌握深度学习的基本原理、核心技术以及实践技能。
?各章内容相对独立,读者可根据需要选择阅读。
?每章附有复习题和实验题,便于读者复习重要知识点和进行实践技能锻炼。
?每章附有“本章人物”专栏,介绍与该章内容相关的著名科学家。
?附录中给出了数学基础知识和中英文术语对照,便于读者查阅学习。
前言
ChatGPT等大型语言模型的出现引发了新一轮人工智能浪潮,这被认为是继互联网之后信息技术发展史上的又一个里程碑。ChatGPT等大型语言模型均基于Transformer构建,Transformer本身就是一种深度学习模型,这足以说明深度学习在人工智能中具有举足轻重的地位。深度学习在计算机视觉、语音识别和自然语言处理等领域都取得了大量突破性的成果,很多成果已经在我国经济与社会发展、人民生产生活中发挥了重要作用,如人脸识别、语音识别、语音合成、机器翻译、问答系统和产品缺陷检测等。目前,深度学习的应用领域还在不断扩展,如基于AI的内容生成、蛋白质结构预测、新兴材料结构预测、天气预报以及数学发现等,并且在部分领域已经取得了重要进展。
2018~2019学年春季学期,我在中国科学院大学首次开设了“深度学习”课程,选课人数超过400人,由于当时市面上并没有合适的教材可用,为了讲好这门课,我花费了大量时间备课,好在自己的研究方向跟深度学习紧密相关,积累了不少素材,但仍阅读了大量文献资料来撰写讲义和制作课件。我很早就有将课程讲义完善并出版的想法,但是由于教学科研工作繁忙,直到学校批复“深度学习”课程要出版教材,我才付诸行动。在此要感谢学校教务处田晨晨老师和计算机学院杨林春老师在本书撰写过程中的支持与帮助,同时也要感谢机械工业出版社对本书出版工作的大力支持。
作为高等学校教材,本书写作的初衷是希望帮助同学们掌握深度学习的基本原理、核心技术以及实践技能。全书共分8章,各章内容相对独立,在讲授或者阅读时不一定要按照顺序进行。第1章概要介绍了深度学习的基本概念、典型算法及应用;第2~5章是本书的核心内容,详细介绍了卷积神经网络、循环神经网络、Transformer和生成对抗网络的相关知识;第6章介绍了一些典型的深度生成模型以及近期比较流行的扩散模型;第7章介绍了深度学习中常用的正则化与优化方法;第8章介绍了TensorFlow、PyTorch和飞桨三个常用的深度学习框架。此外,附录中还给出了一些数学基础知识和中英文术语对照。
每章都给出了复习题,以帮助读者复习该章内容。同时,我认为只有通过动手实践才能深刻领会深度学习算法的精髓,因此,第2~7章都给出了一些实验题,便于选用本书的教师有选择地安排教学实验。此外,为了让读者更好地了解深度学习的起源与发展,在每章最后还开设了“本章人物”专栏,介绍与该章内容相关的著名科学家。
当然,由于深度学习技术的发展日新月异,本书并没有覆盖深度学习的全部内容,希望再版时能够不断更新,也希望广大读者提出宝贵建议。
本书能够完成,还要感谢“深度学习”课程教学团队的张新锋老师、林姝老师和万方老师的支持与帮助,感谢CCIP实验室的各位同学,包括李鹏飞、李帅敏、景琨、王义宇、刘淼、李科尧、向迅之、王迪、陈旭、邱柏瑜、夏琦等。北京交通大学于剑教授审阅了教材全稿并提出了很好的修改建议,在此对于剑教授表示衷心的感谢。此外,本书参考了大量学术文献与互联网资源,在此对文献与资源作者同样表示衷心的感谢!
最后,由于本人能力有限,书中难免会有不当和错误之处,还请各位读者不吝告知,我将及时纠正!
徐俊刚
中国科学院大学
2024年4月于北京
徐俊刚 中国科学院大学计算机科学与技术学院教授,博士生导师,云计算与智能信息处理实验室(Cloud Computing & Intelligent Information Processing Lab,CCIP实验室)主任,中国科学院大学第六届学位评定委员会计算机与控制学位评定委员会委员,计算机科学与技术学院教学委员会委员,计算机科学与技术学院“深度学习”课程首席教授。2003年博士毕业于中国科学院软件研究所,2005年清华大学计算机科学与技术系博士后出站。研究领域包括深度学习、自动机器学习和多模态智能分析等,主持国家科技支撑计划课题、国家自然科学基金面上项目、北京市科技计划课题、北京市自然科学基金面上项目等科研项目多项,发表论文100余篇。现为国家科技专家库专家,北京市科学技术委员会、中关村科技园区管理委员会专家。目前任中国人工智能学会智能服务专业委员会常务委员,中国计算机学会人工智能与模式识别专业委员会执行委员、数据库专业委员会执行委员和自然语言处理专业委员会执行委员。讲授的“深度学习”课程被评为2021年中国科学院大学“校级优秀研究生课程”,个人荣获2016年“中国科学院朱李月华优秀教师奖”。
目录
序
前言
主要符号表
第1章 引言 1
1.1 深度学习的起源与发展 1
1.1.1 深度学习的起源 1
1.1.2 深度学习的发展 2
1.2 深度学习与机器学习、人工智能的关系 4
1.2.1 人工智能 4
1.2.2 机器学习 4
1.2.3 深度学习 5
1.3 深度学习的基本概念和典型算法 6
1.3.1 深度学习的基本概念 6
1.3.2 典型深度学习算法 6
1.4 深度学习的主要应用概述 12
1.4.1 深度学习在计算机视觉领域的应用 12
1.4.2 深度学习在语音处理领域的应用 13
1.4.3 深度学习在自然语言处理领域的应用 14
1.4.4 深度学习在多模态处理领域的应用 14
1.5 本书的组织结构 14
复习题 15
参考文献 15
本章人物:Geoffrey Hinton教授 18
第2章 卷积神经网络 19
2.1 卷积神经网络的起源与发展 19
2.1.1 卷积神经网络的起源 19
2.1.2 卷积神经网络的发展 20
2.2 卷积神经网络的基本结构 21
2.2.1 卷积层 21
2.2.2 激活函数 26
2.2.3 池化层 30
2.2.4 全连接层 30
2.2.5 输出层 30
2.3 卷积神经网络的训练 31
2.3.1 卷积神经网络的训练过程 31
2.3.2 池化层的训练 31
2.3.3 卷积层的训练 33
2.4 典型卷积神经网络 35
2.4.1 LeNet-5 35
2.4.2 AlexNet 37
2.4.3 VGGNet 39
2.4.4 GoogleNet 41
2.4.5 ResNet 42
2.5 卷积神经网络的主要应用 43
2.5.1 目标检测 43
2.5.2 图像分割 52
2.5.3 姿态估计 56
2.5.4 人脸识别 58
复习题 62
实验题 62
参考文献 63
本章人物:Yann LeCun教授 65
第3章 循环神经网络 66
3.1 循环神经网络的起源与发展 66
3.2 循环神经网络的训练 67
3.3 长短期记忆网络 70
3.4 循环神经网络的变种 73
3.4.1 GRU 73
3.4.2 双向RNN 75
3.4.3 堆叠RNN 75
3.5 循环神经网络的典型应用 76
3.5.1 语言模型 76
3.5.2 自动文本摘要 79
3.5.3 机器阅读理解 82
复习题 85
实验题 86
参考文献 86
本章人物:Jürgen Schmidhuber教授 89
第4章 Transformer 90
4.1 注意力机制 90
4.1.1 注意力机制的Encoder-Decoder结构 90
4.1.2 注意力机制的分类 92
4.2 Transformer概述 93
4.2.1 Transformer的结构 93
4.2.2 Transformer的输入编码 94
4.2.3 Transformer中的自注意力机制 95
4.2.4 Transformer中的其他细节 98
4.2.5 基于Transformer的大规模预训练模型 99
4.3 GPT系列模型 99
4.3.1 GPT-1 99
4.3.2 GPT-2 101
4.3.3 GPT-3 102
4.3.4 InstructGPT和ChatGPT 103
4.4 BERT系列模型 104
4.4.1 与其他大规模预训练模型的区别 105
4.4.2 BERT的架构与参数 105
4.4.3 BERT的输入表示 105
4.4.4 BERT的训练 107
4.4.5 BERT的变种 107
4.5 Swin Transformer 109
4.5.1 Swin Transformer的提出 109
4.5.2 Swin Transformer结构 109
4.5.3 Swin Transformer的滑动窗口机制 111
4.6 Transformer的主要应用 112
4.6.1 自然语言处理领域 112
4.6.2 计算机视觉领域 117
4.6.3 多模态领域 121
复习题 128
实验题 128
参考文献 128
本章人物:Yoshua Bengio教授 131
第5章 生成对抗网络 132
5.1 GAN的基本原理 132
5.1.1 零和博弈 132
5.1.2 GAN的基本结构 133
5.1.3 GAN的目标函数 134
5.1.4 GAN的训练 134
5.2 GAN的优化与改进 135
5.2.1 限定条件优化 136
5.2.2 迭代式生成优化 138
5.2.3 结构优化 141
5.3 GAN的主要应用 143
5.3.1 图像生成 143
5.3.2 图像转换 144
5.3.3 图像超分辨率重建 147
5.3.4 音乐生成 148
5.3.5 异常检测 152
复习题 156
实验题 156
参考文献 156
本章人物:Ian Goodfellow博士 158
第6章 深度生成模型 159
6.1 深度生成模型概述 159
6.2 Hopfield神经网络 160
6.3 玻尔兹曼机与受限玻尔兹曼机 162
6.3.1 玻尔兹曼机 162
6.3.2 受限玻尔兹曼机 163
6.4 Sigmoid信念网络与深度信念网络 165
6.4.1 Sigmoid信念网络 165
6.4.2 深度信念网络 166
6.5 深度玻尔兹曼机 167
6.6 自编码器及其变种 169
6.6.1 自编码器 169
6.6.2 降噪自编码器 170
6.6.3 稀疏自编码器 170
6.6.4 深度自编码器 171
6.7 扩散模型 172
6.7.1 前向过程 173
6.7.2 逆向过程 174
6.7.3 DDPM的训练 176
6.8 深度生成模型的应