第1章 为什么进行深度学习 1
1.1 什么是人工智能和深度学习 1
1.2 深度学习的历史及其兴起 2
1.3 为什么进行深度学习 7
1.3.1 相比于传统浅层方法的优势 7
1.3.2 深度学习的影响 8
1.4 深层架构的动机 9
1.4.1 神经的观点 10
1.4.2 特征表示的观点 10
1.5 应用 14
1.5.1 盈利性应用 14
1.5.2 成功案例 14
1.5.3 面向企业的深度学习 19
1.6 未来的潜力和挑战 20
1.7 小结 21
第2章 为深度学习做准备 22
2.1 线性代数的基础知识 22
2.1.1 数据表示 22
2.1.2 数据操作 23
2.1.3 矩阵属性 24
2.2 使用GPU进行深度学习 24
2.2.1 深度学习硬件指南 26
2.3 深度学习软件框架 27
2.3.1 TensorFlow 27
2.3.2 Caffe 27
2.3.3 MXNet 28
2.3.4 Torch 28
2.3.5 Theano 28
2.3.6 CNTK 29
2.3.7 Keras 29
2.3.8 框架比较 29
2.4 基本亚马逊网络服务的深度学习开发环境配置 30
2.4.1 从零开始配置 30
2.4.2 基于Docker的配置 33
2.5 小结 34
第3章 神经网络入门 35
3.1 多层感知机 35
3.1.1 输入层 36
3.1.2 输出层 36
3.1.3 隐藏层 36
3.1.4 激活函数 36
3.2 如何进行网络学习 39
3.2.1 权值初始化 39
3.2.2 前向传播 39
3.2.3 反向传播 40
3.2.4 梯度消失与爆炸 42
3.2.5 优化算法 42
3.2.6 正则化 43
3.3 深度学习模型 43
3.3.1 卷积神经网络 43
3.3.2 受限玻耳兹曼机 47
3.3.3 循环神经网络(RNNLSTM网络) 50
3.3.4 RNN中的单元及其展开 51
3.3.5 通过时间的反向传播 51
3.3.6 梯度消失与LSTM网络 51
3.3.7 LSTM网络中的单元和网关 52
3.4 应用示例 53
3.4.1 TensorFlow设置与关键概念 53
3.4.2 手写数字识别 54
3.5 小结 57
第4章 计算机视觉中的深度学习 58
4.1 卷积神经网络的起源 58
4.2 卷积神经网络 59
4.2.1 数据变换 61
4.2.2 网络层 62
4.2.3 网络初始化 65
4.2.4 正则化 66
4.2.5 损失函数 67
4.2.6 模型可视化 68
4.2.7 手写数字分类示例 69
4.3 微调卷积神经网络 71
4.4 主流的卷积神经网络架构 72
4.4.1 AlexNet 72
4.4.2 VGG 72
4.4.3 GoogLeNet 73
4.4.4 ResNet 73
4.5 小结 74
第5章 自然语言处理中的向量表示 75
5.1 传统的自然语言处理 75
5.1.1 BoW 75
5.1.2 带权的tf-idf 76
5.2 基于深度学习的自然语言处理 77
5.2.1 动机及分散式表示法 77
5.2.2 词嵌入 78
5.2.3 Word2Vec 81
5.2.4 了解GloVe 92
5.2.5 FastText 92
5.3 应用 93
5.3.1 使用示例 93
5.3.2 微调 93
5.4 小结 94
第6章 高级自然语言处理 95
6.1 面向文本的深度学习 95
6.1.1 神经网络的局限性 95
6.2 循环神经网络 96
6.2.1 RNN架构 97
6.2.2 基本的RNN模型 98
6.2.3 训练RNN很难 98
6.3 LSTM网络 99
6.3.1 使用TensorFlow实现LSTM网络 101
6.4 应用 103
6.4.1 语言建模 103
6.4.2 序列标注 104
6.4.3 机器翻译 106
6.4.4 聊天机器人 109
6.5 小结 110
第7章 多模态 111
7.1 什么是多模态学习 111
7.2 多模态学习的挑战 111
7.2.1 模态表示 112
7.2.2 模态转换 112
7.2.3 模态对齐 112
7.2.4 模态融合 113
7.2.5 协同学习 113
7.3 图像标注生成 113
7.3.1 show&tell算法 114
7.3.2 其他类型的方法 116
7.3.3 数据集 117
7.3.4 评估方法 119
7.3.5 注意力模型 121
7.4 视觉问答 125
7.5 基于多源的自动驾驶 127
7.6 小结 130
第8章 深度强化学习 131
8.1 什么是强化学习 131
8.1.1 问题设置 132
8.1.2 基于值函数学习的算法 132
8.1.3 基于策略搜索的算法 134
8.1.4 基于Actor-Critic的算法 134
8.2 深度强化学习 135
8.2.1 深度Q网络(DQN) 135
8.2.2 双DQN 137
8.2.3 竞争DQN 138
8.3 强化学习实现 138
8.3.1 简单的强化学习示例 138
8.3.2 以Q-learning为例的强化学习 139
8.4 小结 141
第9章 深度学习的技巧 142
9.1 处理数据 142
9.1.1 数据清理 142
9.1.2 数据扩充 142
9.1.3 数据归一化 143
9.2 训练技巧 143
9.2.1 权值初始化 143
9.2.2 优化 144
9.2.3 损失函数选择 146
9.2.4 防止过拟合 147
9.2.5 微调 148
9.3 模型压缩 149
9.4 小结 152
第10章 深度学习的发展趋势 153
10.1 深度学习的最新模型 153
10.1.1 生成对抗网络 153
10.1.2 Capsule网络 154
10.2 深度学习的新应用 155
10.2.1 基因组学 155
10.2.2 医疗预测 157
10.2.3 临床影像学 159
10.2.4 唇语 160
10.2.5 视觉推理 161
10.2.6 代码合成 162
10.3 小结 164