书籍作者:[美] 安德鲁·特拉斯克 | ISBN:9787302540991 |
书籍语言:简体中文 | 连载状态:全集 |
电子书格式:pdf,txt,epub,mobi,azw3 | 下载次数:4710 |
创建日期:2021-02-14 | 发布日期:2021-02-14 |
运行环境:PC/Windows/Linux/Mac/IOS/iPhone/iPad/Kindle/Android/安卓/平板 |
Andrew W. Trask是Digital Reasoning公司机器学习实验室的创始成员,该实验室致力于自然语言处理、图像识别和音频转录的深度学习研究。几个月内,Andrew和他的伙伴们就在情绪分类和词性标注方面发表了超过业界更佳方案的结果。
他训练了世界上更大的人工神经网络,拥有超过1600亿个参数,实验结果发表在ICML(International Conference on Machine Learning)上,还有一部分结果发表在Journal of Machine Learning(JML)上。他在Digital Reasoning公司担任文本处理和音频分析的产品经理,负责仿真认知计算平台的架构设计,深度学习是这一平台的核心能力。
深度学习是人工智能的一个分支,受到人类大脑的启发,致力于指导计算机用神经网络进行学习。在线文本翻译、自动驾驶、商品推荐和智能语音助手等一系列令人兴奋的现代技术应用领域,都在深度学习的辅助下取得了突破性进展。
《深度学习图解》指导你从基础的每一行代码开始搭建深度学习网络!经验丰富的深度学习专家Andrew W. Trask以有趣的图解方式为你揭开深度学习的神秘面纱,使你可亲身体会训练神经网络的每个细节。只需要使用Python语言及其最基本的数学库NumPy,就可以训练出自己的神经网络,借助它观察并理解图像、将文字翻译成不同的语言,甚至像莎士比亚一样写作!当你完成这一切后,就为成为精通深度学习框架的专家做好了充分准备!
前 言
这本《深度学习图解》是我三年艰苦努力的成果。为了完成你手中所握的这本书,我实际撰写的篇幅至少是你现在看到的两倍。在《深度学习图解》准备出版之前,有六个章节被从头重写了三到四次,同时,在这个过程中,一些计划之外的重要章节也被添加进来。
更重要的是,我很早就做出了两个决定,这两个决定使这本《深度学习图解》具有独特的价值。首先,除了基础的算术之外,这《深度学习图解》不需要读者具有任何数学背景,其次,它不依赖于那些可能隐藏着运行细节的高级库。换句话说,任何人都可以读懂《深度学习图解》,了解深度学习真正的工作方式。为达到这个目的,我必须寻找一些新的方法来描述和讲授书中的核心思想和技术,而不是依赖于别人编写的高等数学或复杂代码。
写作这本《深度学习图解》的目的是为深度学习的入门实践尽可能扫除障碍。在《深度学习图解》中,你不只需要阅读理论,更要靠自己发现深度学习的真谛。为了帮助你实现这一点,我编写了大量代码,并尽我所能以正确的顺序解释它——使得书中演示的每一段代码都容易理解。
深入浅出的知识,加上你将在《深度学习图解》中探索的所有理论、代码和示例,将使你以最快的速度完成各种实验。你可以更快地获得成功,得到更好的工作机会,甚至能够更快地掌握更先进的深度学习概念。
在过去的三年里,我不仅写了这本书,还收到了牛津大学的博士录取通知书,加入了谷歌的团队,进行了前沿研究——开发了一个去中心化的公司人工智能平台,名为OpenMined。《深度学习图解》是我多年思考、学习和教学的结晶。
当然,深度学习还有其他很多资源。我很高兴你能选择阅读《深度学习图解》。
目录
第1章 深度学习简介:为什么应该学习深度学习 1
1.1 欢迎阅读《深度学习图解》 1
1.2 为什么要学习深度学习 2
1.3 这很难学吗? 3
1.4 为什么要阅读本书 3
1.5 准备工作 4
1.6 你可能需要掌握一部分Python知识 5
1.7 本章小结 6
第2章 基本概念:机器该如何学习? 7
2.1 什么是深度学习? 7
2.2 什么是机器学习? 8
2.3 监督机器学习 9
2.4 无监督机器学习 10
2.5 参数学习和非参数学习 10
2.6 监督参数学习 11
2.7 无监督参数学习 13
2.8 非参数学习 14
2.9 本章小结 15
第3章 神经网络预测导论:前向传播 17
3.1 什么是预测 17
3.2 能够进行预测的简单神经网络 19
3.3 什么是神经网络? 20
3.4 这个神经网络做了什么? 21
3.5 使用多个输入进行预测 23
3.6 多个输入:这个神经网络做了什么? 24
3.7 多个输入:完整的可运行代码 29
3.8 预测多个输出 30
3.9 使用多个输入和输出进行预测 32
3.10 多输入多输出神经网络的工作原理 33
3.11 用预测结果进一步预测 35
3.12 NumPy快速入门 37
3.13 本章小结 40
第4章 神经网络学习导论:梯度下降 41
4.1 预测、比较和学习 41
4.2 什么是比较 42
4.3 学习 42
4.4 比较:你的神经网络是否做出了好的预测? 43
4.5 为什么需要测量误差? 44
4.6 最简单的神经学习形式是什么? 45
4.7 冷热学习 46
4.8 冷热学习的特点 47
4.9 基于误差调节权重 48
4.10 梯度下降的一次迭代 50
4.11 学习就是减少误差 52
4.12 回顾学习的步骤 54
4.13 权重增量到底是什么? 55
4.14 狭隘的观点 57
4.15 插着小棍的盒子 58
4.16 导数:两种方式 59
4.17 你真正需要知道的 60
4.18 你不需要知道的 60
4.19 如何使用导数来学习 61
4.20 看起来熟悉吗? 62
4.21 破坏梯度下降 63
4.22 过度修正的可视化 64
4.23 发散 65
4.24 引入α 66
4.25 在代码中实现α 66
4.26 记忆背诵 67
第5章 通用梯度下降:一次学习多个权重 69
5.1 多输入梯度下降学习 69
5.2 多输入梯度下降详解 71
5.3 回顾学习的步骤 75
5.4 单项权重冻结:它有什么作用? 77
5.5 具有多个输出的梯度下降学习 79
5.6 具有多个输入和输出的梯度下降 81
5.7 这些权重学到了什么? 83
5.8 权重可视化 85
5.9 点积(加权和)可视化 86
5.10 本章小结 87
第6章 建立你的第一个深度神经网络:反向传播 89
6.1 交通信号灯问题 89
6.2 准备数据 91
6.3 矩阵和矩阵关系 92
6.4 使用Python创建矩阵 95
6.5 建立神经网络 96
6.6 学习整个数据集 97
6.7 完全、批量和随机梯度下降 97
6.8 神经网络对相关性的学习 98
6.9 向上与向下的压力 99
6.10 边界情况:过拟合 101
6.11 边界情况:压力冲突 101
6.12 学习间接相关性 103
6.13 创建关联 104
6.14 堆叠神经网络:回顾 105
6.15 反向传播:远程错误归因 106
6.16 反向传播:为什么有效? 107
6.17 线性与非线性 107
6.18 为什么神经网络仍然不起作用 109
6.19 选择性相关的秘密 110
6.20 快速冲刺 111
6.21 你的第一个深度神经网络 111
6.22 反向传播的代码 112
6.23 反向传播的一次迭代 114
6.24 整合代码 116
6.25 为什么深度网络这么重要? 117
第7章 如何描绘神经网络:在脑海里,在白纸上 119
7.1 到了简化的时候了 119
7.2 关联抽象 120
7.3 旧的可视化方法过于复杂 121
7.4 简化版可视化 122
7.5 进一步简化 123
7.6 观察神经网络是如何进行预测的 124
7.7 用字母而不是图片来进行可视化 125
7.8 连接变量 126
7.9 信息整合 127
7.10 可视化工具的重要性 127
第8章 学习信号,忽略噪声:正则化和批处理介绍 129
8.1 用在MNIST上的三层网络 129
8.2 好吧,这很简单 131
8.3 记忆与泛化 132
8.4 神经网络中的过拟合 133
8.5 过拟合从何而来 134
8.6 最简单的正则化:提前停止 135
8.7 行业标准正则化:dropout 136
8.8 为什么dropout有效:整合是有效的 137
8.9 dropout的代码 137
8.10 在MNIST数据集上对dropout进行测试 139
8.11 批量梯度下降 140
8.12 本章小结 143
第9章 概率和非线性建模:激活函数 145
9.1 什么是激活函数? 145
9.2 标准隐藏层激活函数 148
9.3 标准输出层激活函数 149
9.4 核心问题:输入具有
相似性 151
9.5 计算softmax 152
9.6 激活函数使用说明 153
9.7 将增量与斜率相乘 156
9.8 将输出转换为斜率(导数) 157
9.9 升级MNIST网络 157
第10章 卷积神经网络概论:关于边与角的神经学习 161
10.1 在多个位置复用权重 161
10.2 卷积层 162
10.3 基于NumPy的简单实现 164
10.4 本章小结 167
第11章 能够理解自然语言的神经网络:国王-男人+女人=? 169
11.1 理解语言究竟是指什么? 170
11.2 自然语言处理(NLP) 170
11.3 监督NLP学习 171
11.4 IMDB电影评论数据集 172
11.5 在输入数据中提取单词相关性 173
11.6 对影评进行预测 174
11.7 引入嵌入层 175
11.8 解释输出 177
11.9 神经网络结构 178
11.10 单词嵌入表达的对比 180
11.11 神经元是什么意思? 181
11.12 完形填空 182
11.13 损失函数的意义 183
11.14 国王-男人+女人~=女王 186
11.15 单词类比 187
11.16 本章小结 188
第12章 像莎士比亚一样写作的神经网络:变长数据的递归层 189
12.1 任意长度的挑战 189
12.2 做比较真的重要吗? 190
12.3 平均词向量的神奇力量 191
12.4 信息是如何存储在这些向量嵌入中的? 192
12.5 神经网络是如何使用嵌入的? 193
12.6 词袋向量的局限 194
12.7 用单位向量求词嵌入之和 195
12.8 不改变任何东西的矩阵 196
12.9 学习转移矩阵 197
12.10 学习创建有用的句子向量 198
12.11 Python下的前向传播 199
12.12 如何反向传播? 200
12.13 让我们训练它! 201
12.14 进行设置 201
12.15 任意长度的前向传播 202
12.16 任意长度的反向传播 203
12.17 任意长度的权重更新 204
12.18 运行代码,并分析输出 205
12.19 本章小结 207
第13章 介绍自动优化:搭建深度学习框架 209
13.1 深度学习框架是什么? 209
13.2 张量介绍 210
13.3 自动梯度计算(autograd)介绍 211
13.4 快速检查 213
13.5 多次使用的张量 214
13.6 升级autograd以支持多次使用的张量 215
13.7 加法的反向传播如何工作? 217
13.8 增加取负值操作的支持 218
13.9 添加更多函数的支持 219
13.10 使用autograd训练神经网络 222
13.11 增加自动优化 224
13.12 添加神经元层类型的支持 225
13.13 包含神经元层的神经元层 226
13.14 损失函数层 227
13.15 如何学习一个框架 228
13.16 非线性层 228
13.17 嵌入层 230
13.18 将下标操作添加到
autograd 231
13.19 再看嵌入层 232
13.20 交叉熵层 233
13.21 递归神经网络层 235
13.22 本章小结 238
第14章 像莎士比亚一样写作:长短期记忆网络 239
14.1 字符语言建模 239
14.2 截断式反向传播的必要性 240
14.3 截断式反向传播 241
14.4 输出样例 244
14.5 梯度消失与梯度激增 245
14.6 RNN反向传播的小例子 246
14.7 长短期记忆(LSTM)元胞 247
14.8 关于LSTM门限的直观理解 248
14.9 长短期记忆层 249
14.10 升级字符语言模型 250
14.11 训练LSTM字符语言模型 251
14.12 调优LSTM字符语言模型 252
14.13 本章小结 253
第15章 在看不见的数据上做深度学习:联邦学习导论 255
15.1 深度学习的隐私问题 255
15.2 联邦学习 256
15.3 学习检测垃圾邮件 257
15.4 让我们把它联邦化 259
15.5 深入联邦学习 260
15.6 安全聚合 261
15.7 同态加密 262
15.8 同态加密联邦学习 263
15.9 本章小结 264
第16章 往哪里去:简要指引 265