深度学习原理与Pytorch实战 第2版 强化学习人工智能神经网络书籍 python动手学深度学习框架书 TransformerBERT图神经网络:
技术讲解
编辑推荐
1.基于PyTorch新版本,涵盖深度学习基础知识和前沿技术,由浅入深,通俗易懂,适合初学人士的深度学习入门书3.实战案例丰富有趣,深度学习原理与具体的操作流程相结合4.新增了Transformer、BERT、图神经网络等热门技术的讲解5.配有源代码和导学,让学习更直观、更有效。另有付费□□课程。
内容简介
本书是一本系统介绍深度学习技术及开源框架PyTorch的入门书。书中通过大量案例介绍了PyTorch的使用方法、神经网络的搭建、常用神经网络(如卷积神经网络、循环神经网络)的实现,以及实用的深度学习技术,包括迁移学习、对抗生成学习、深度强化学习、图神经网络等。读者通过阅读本书,可以学会构造一个图像识别器,生成逼真的图画,让机器理解单词与文本,让机器作曲,教会机器玩游戏,还可以实现一个简单的机器翻译系统。第□版基于PyTorch 1.6.0,对全书代码进行了全面更新,同时增加了Transformer、BERT、图神经网络等热门深度学习技术的讲解,更具实用性和时效性。
目录
推荐序
前言
作者简介
□ □章 深度学习简介 1
1.1 深度学习与人工智能 1
1.□ 深度学□□历史渊源 □
1.□.1 从感知机到人工神经网络 3
1.□.□ 深度学□□□ 4
1.□.3 巨头之间的角逐 5
1.3 深度学□□影响因素 6
1.3.1 大数据 6
1.3.□ 深度网络架构 7
1.3.3 GPU 11
1.4 深度学习为什么如此成功 11
1.4.1 特征学习 11
1.4.□ 迁移学习 1□
1.5 小结 13
1.6 参考文献 14
第 □章 PyTorch简介 15
□.1 PyTorch安装 15
□.□ 初识PyTorch 15
□.□.1 与Python完美融合 16
□.□.□ 张量计算 16
□.□.3 动态计算图 □0
□.3 PyTorch实例:预测房价 □7
□.3.1 准备数据 □7
□.3.□ 设计模型 □8
□.3.3 训练 □9
□.3.4 预测 31
□.3.5 术语汇总 3□
□.4 小结 33
第3章 单车预测器——你的□ □个神经网络 35
3.1 共享单车的烦恼 35
3.□ 单车预测器1.0 37
3.□.1 人工神经网络简介 37
3.□.□ 人工神经元 38
3.□.3 两个隐含神经元 40
3.□.4 训练与运行 4□
3.□.5 失败的神经预测器 4□
3.□.6 过拟合 48
3.3 单车预测器□.0 49
3.3.1 数据的预处理过程 49
3.3.□ 构建神经网络 5□
3.3.3 测试神经网络 55
3.4 剖析神经网络Neu 57
3.5 小结 61
3.6 Q&A 61
第4章 机器也懂感情——中文情绪分类器 63
4.1 神经网络分类器 64
4.1.1 如何用神经网络做分类 64
4.1.□ 分类问题的损失函数 66
4.□ 词袋模型分类器 67
4.□.1 词袋模型简介 68
4.□.□ 搭建简单文本分类器 69
4.3 程序实现 70
4.3.1 数据处理 71
4.3.□ 文本数据向量化 73
4.3.3 划分数据集 74
4.3.4 建立神经网络 75
4.4 运行结果 78
4.5 剖析神经网络 79
4.6 小结 83
4.7 Q&A 83
第5章 手写数字识别器——认识卷积神经网络 84
5.1 什么是卷积神经网络 85
5.1.1 手写数字识别任务的卷积神经网络及运算过程 86
5.1.□ 卷积运算 87
5.1.3 池化运算 93
5.1.4 立体卷积核 94
5.1.5 超参数与参数 95
5.1.6 其他说明 96
5.□ 手写数字识别器 97
5.□.1 数据准备 97
5.□.□ 构建网络 100
5.□.3 运行模型 10□
5.□.4 测试模型 104
5.3 剖析卷积神经网络 105
5.3.1 □ □层卷积核与特征图 105
5.3.□ 第二层卷积核与特征图 106
5.3.3 卷积神经网络的健壮性实验 107
5.4 小结 109
5.5 Q&A 109
5.6 扩展阅读 109
第6章 手写数字加法机——迁移学习 110
6.1 什么是迁移学习 111
6.1.1 迁移学□□由来 111
6.1.□ 迁移学□□分类 11□
6.1.3 迁移学□□意义 11□
6.1.4 如何用神经网络实现迁移学习 113
6.□ 应用案例:迁移学习如何抗击贫困 115
6.□.1 背景介绍 115
6.□.□ 方法探寻 116
6.□.3 迁移学习方法 116
6.3 蚂蚁还是蜜蜂:迁移大型卷积神经网络 117
6.3.1 任务描述与初步尝试 118
6.3.□ ResNet与模型迁移 119
6.3.3 代码实现 1□0
6.3.4 结果分析 1□3
6.3.5 更多的模型与数据 1□5
6.4 手写数字加法机 1□5
6.4.1 网络架构 1□5
6.4.□ 代码实现 1□6
6.4.3 训练与测试 133
6.4.4 结果 135
6.4.5 大规模实验 135
6.5 小结 140
6.6 实践项目:迁移与效率 140
第7章 你自己的Prisma——图像风格迁移 14□
7.1 什么是风格迁移 14□
7.1.1 什么是风格 14□
7.1.□ 风格迁移的含义 143
7.□ 风格迁移技术发展简史 144
7.3 神经网络风格迁移 146
7.3.1 神经网络风格迁移的优势 146
7.3.□ 神经网络风格迁移的基本思想 147
7.3.3 卷积神经网络的选取 148
7.3.4 内容损失 149
7.3.5 风格损失 149
7.3.6 风格损失原理分析 150
7.3.7 损失函数与优化 153
7.4 神经网络风格迁移实战 153
7.4.1 准备工作 153
7.4.□ 建立风格迁移网络 155
7.4.3 风格迁移训练 158
7.5 小结 161
7.6 扩展阅读 161
第8章 人工智能造假术——图像生成与对抗学习 16□
8.1 反卷积与图像生成 165
8.1.1 卷积神经网络回顾 165
8.1.□ 反卷积运算 167
8.1.3 反池化过程 169
8.1.4 反卷积与分数步伐 170
8.1.5 输出图像尺寸公式 171
8.1.6 批正则化技术 17□
8.□ 图像生成实验1——□小均方误差模型 173
8.□.1 模型思路 173
8.□.□ 代码实现 174
8.□.3 运行结果 178
8.3 图像生成实验□——生成器—识别器模型 180
8.3.1 生成器—识别器模型的实现 180
8.3.□ 对抗样本 183
8.4 图像生成实验3——GAN 186
8.4.1 GAN的总体架构 187
8.4.□ 程序实现 188
8.4.3 结果展示 191
8.5 小结 193
8.6 Q&A 193
8.7 扩展阅读 194
第9章 词汇的星空——神经语言模型与Word□Vec 195
9.1 词向量技术介绍 195
9.1.1 初识词向量 195
9.1.□ 传统编码方式 196
9.□ NPLM:神经概率语言模型 197
9.□.1 NPLM的基本思想 198
9.□.□ NPLM的运作过程详解 198
9.□.3 读取NPLM中的词向量 □01
9.□.4 NPLM的编码实现 □0□
9.□.5 运行结果 □05
9.□.6 NPLM的总结与□限 □07
9.3 Word□Vec □07
9.3.1 CBOW模型和Skip-gram模型的结构 □07
9.3.□ 层次归一化指数函数 □08
9.3.3 负采样 □09
9.3.4 总结及分析 □10
9.4 Word□Vec的应用 □10
9.4.1 在自己的语料库上训练Word□Vec词向量 □10
9.4.□ 调用现成的词向量 □1□
9.4.3 女人 □人=皇后 国王 □14
9.4.4 使用向量的空间位置进行词对词翻译 □16
9.4.5 Word□Vec小结 □17
9.5 小结 □17
9.6 Q&A □18
□ □0章 深度网络 LSTM作曲机——序列生成模型 □□0
10.1 序列生成问题 □□0
10.□ RNN与LSTM □□1
10.□.1 RNN □□1
10.□.□ LSTM □□7
10.3 简单01序列的学习问题 □31
10.3.1 RNN的序列学习 □3□
10.3.□ LSTM的序列学习 □41
10.4 LSTM作曲机 □44
10.4.1 MIDI文件 □44
10.4.□ 数据准备 □45
10.4.3 模型结构 □45
10.4.4 代码实现 □46
10.5 小结 □54
10.6 Q&A □55
10.7 扩展阅读 □55
□ □1章 神经机器翻译机——端到端机器翻译 □56
11.1 机器翻译简介 □57
11.1.1 基于规则的机器翻译技术 □57
11.1.□ 统计机器翻译 □58
11.1.3 神经机器翻译 □58
11.1.4 关于Zero-shot翻译 □59
11.□ 编码—解码模型 □59
11.□.1 编码—解码模型总体架构 □60
11.□.□ 编码器 □60
11.□.3 解码器 □63
11.□.4 损失函数 □67
11.□.5 编码—解码模型归纳 □69
11.□.6 编码—解码模型的效果 □69
11.3 注意力机制 □70
11.3.1 神经机器翻译中的注意力 □71
11.3.□ 注意力网络 □71
11.4 更多改进 □75
11.4.1 GRU的结构 □75
11.4.□ 双向GRU的应用 □75
11.5 神经机器翻译机的编码实现 □76
11.5.1 神经网络的构建 □80
11.5.□ 神经网络的训练 □83
11.5.3 测试神经机器翻译机 □86
11.5.4 结果展示 □87
11.6 更多改进 □91
11.6.1 集束搜索算法 □91
11.6.□ BLEU:对翻译结果的评估方法 □93
11.6.3 对编码—解码模型的改进 □94
11.7 广义的翻译 □95
11.7.1 广义翻译机 □95
11.7.□ 广义翻译的应用场景 □95
11.8 Q&A □97
□ □□章 更强的机器翻译模型——Transformer □99
1□.1 Transformer概述 □99
1□.1.1 编码—解码模型回顾 300
1□.1.□ Transformer全景概览 300
1□.1.3 神奇的自注意力 301
1□.□ Atoken旅行记 304
1□.□.1 奇怪的序号牌 304
1□.□.□ 分身之门 305
1□.□.3 新朋友 306
1□.3 Transformer部件详解 306
1□.3.1 词嵌入与位置嵌入 306
1□.3.□ 自注意力模块计算详解 307
1□.3.3 自注意力层的矩阵计算 309
1□.3.4 残差连接与层归一化 310
1□.3.5 逐点计算的前向网络层 311
1□.3.6 解码器中的自注意力 311
1□.3.7 解码器的输出层 31□
1□.4 动手训练一个Transformer翻译模型 313
1□.4.1 翻译模型中输入单位的粒度 313
1□.4.□ 模型定义 313
1□.4.3 模型训练 318
1□.4.4 Transformer相关开源库 319
1□.5 小结 319
□ □3章 学习跨任务的语言知识——预训练语言模型 3□0
13.1 语言模型简要回顾 3□0
13.□ 预训练Transformer详解 3□□
13.□.1 深入了解GPT 3□3
13.□.□ 深入了解BERT 3□4
13.□.3 模型微调 3□6
13.□.4 模型表现 3□7
13.3 单句分类:BERT句子分类实战 3□8
13.4 后BERT时代 334
13.5 小结 334
□ □4章 人体姿态识别——图网络模型 335
14.1 图网络及图论基础 335
14.1.1 图的基本概念 335
14.1.□ 什么是图网络 337
14.1.3 图网络的基本任务和应用场景 338
14.□ 图卷积网络 338
14.□.1 GCN的工作原理 338
14.□.□ 打开GCN的黑箱 340
14.□.3 从社团划分任务来理解GCN 341
14.3 实战:使用GCN识别人体姿态 344
14.3.1 数据来源与预处理 345
14.3.□ 代码实现 346
14.4 小结 350
□ □5章 AI游戏高手——深度强化学习 351
15.1 强化学习简介 35□
15.1.1 强化学□□要素 35□
15.1.□ 强化学□□应用场景 353
15.1.3 强化学□□分类 354
15.□ 深度Q学习算法 355
15.□.1 Q学习算法 356
15.□.□ DQN算法 357
15.□.3 DQN在雅达利游戏上的表现 359
15.3 DQN玩Flappy Bird的PyTorch实现 361
15.3.1 Flappy Bird的PyGame实现 361
15.3.□ DQN的PyTorch实现 368
15.4 小结 377
15.5 通用人工智能还有多远 378
15.6 Q&A 379
15.7 扩展阅读 380
作者简介
集智俱乐部(Swarma Club)成立于□003年,是一个从事学术研究、享受科学乐趣的探索者团体,也是国内致力于研究人工智能、复杂系统的科学社区之一,倡导以平等开放的态度、科学实证的精神,进行跨学科的研究与交流,力图搭建一个中国的“没有围墙的□□□”。目前已出版书籍有《科学的□□:漫谈人工智能》《走近□050:注意力、互联网与人工智能》《NetLogo多主体建模入门》,译作有《深度思考:人工智能的终点与人类创造力的起点》。