python深度学习电子书

有兴趣探讨(阅读)此书的伙伴,发邮件到[email protected],免费提供资源

在这里插入图片描述

目  录
第一部分 深度学习基础
第 1 章 什么是深度学习 … 2
1.1 人工智能、机器学习与深度学习 … 2
1.1.1 人工智能 … 3
1.1.2 机器学习 … 3
1.1.3 从数据中学习表示 … 4
1.1.4 深度学习之“深度”
… 6
1.1.5 用三张图理解深度学习的工作
原理 … 7
1.1.6 深度学习已经取得的进展 … 9
1.1.7 不要相信短期炒作 … 9
1.1.8 人工智能的未来 … 10
1.2 深度学习之前:机器学习简史 … 11
1.2.1 概率建模 … 11
1.2.2 早期神经网络 … 11
1.2.3 核方法 … 12
1.2.4 决策树、随机森林与梯度
提升机 … 13
1.2.5 回到神经网络 … 14
1.2.6 深度学习有何不同 … 14
1.2.7 机器学习现状 … 15
1.3 为什么是深度学习,为什么是现在 … 15
1.3.1 硬件 … 16
1.3.2 数据 … 17
1.3.3 算法 … 17
1.3.4 新的投资热潮 … 17
1.3.5 深度学习的大众化 … 18
1.3.6 这种趋势会持续吗 … 18
第 2 章 神经网络的数学基础 … 20
2.1 初识神经网络 … 20
2.2 神经网络的数据表示 … 23
2.2.1 标量(0D 张量)
… 23
2.2.2 向量(1D 张量)
… 24
2.2.3 矩阵(2D 张量)
… 24
2.2.4 3D 张量与更高维张量 … 24
2.2.5 关键属性 … 25
2.2.6 在 Numpy 中操作张量 … 26
2.2.7 数据批量的概念 … 27
2.2.8 现实世界中的数据张量 … 27
2.2.9 向量数据 … 27
2.2.10 时间序列数据或序列数据 … 28
2.2.11 图像数据 … 28
2.2.12 视频数据 … 29
2.3 神经网络的“齿轮”:张量运算 … 29
2.3.1 逐元素运算 … 30
2.3.2 广播 … 31
2.3.3 张量点积 … 32
2.3.4 张量变形 … 34
2.3.5 张量运算的几何解释 … 34
2.3.6 深度学习的几何解释 … 35
2.4 神经网络的“引擎”:基于梯度的
优化 … 36
2.4.1 什么是导数 … 37
2.4.2 张量运算的导数:梯度 … 38
2.4.3 随机梯度下降 … 38
2.4.4 链式求导:反向传播算法 … 41
2.5 回顾第一个例子 … 41
本章小结 … 42
 2  目  录
第 3 章 神经网络入门 … 43
3.1 神经网络剖析 … 43
3.1.1 层:深度学习的基础组件 … 44
3.1.2 模型:层构成的网络 … 45
3.1.3 损失函数与优化器:配置学习
过程的关键 … 45
3.2 Keras 简介 … 46
3.2.1 Keras、TensorFlow、Theano 和
CNTK … 47
3.2.2 使用 Keras 开发:概述 … 48
3.3 建立深度学习工作站 … 49
3.3.1 Jupyter 笔记本:运行深度学习
实验的首选方法 … 49
3.3.2 运行 Keras:两种选择 … 50
3.3.3 在云端运行深度学习任务:
优点和缺点 … 50
3.3.4 深度学习的最佳 GPU … 50
3.4 电影评论分类:二分类问题 … 51
3.4.1 IMDB 数据集 … 51
3.4.2 准备数据 … 52
3.4.3 构建网络 … 52
3.4.4 验证你的方法 … 56
3.4.5 使用训练好的网络在新数据上
生成预测结果 … 59
3.4.6 进一步的实验 … 59
3.4.7 小结 … 59
3.5 新闻分类:多分类问题 … 59
3.5.1 路透社数据集 … 60
3.5.2 准备数据 … 61
3.5.3 构建网络 … 61
3.5.4 验证你的方法 … 62
3.5.5 在新数据上生成预测结果 … 65
3.5.6 处理标签和损失的另一种方法 … 65
3.5.7 中间层维度足够大的重要性 … 65
3.5.8 进一步的实验 … 66
3.5.9 小结 … 66
3.6 预测房价:回归问题 … 66
3.6.1 波士顿房价数据集 … 67
3.6.2 准备数据 … 67
3.6.3 构建网络 … 68
3.6.4 利用 K 折验证来验证你的
方法 … 68
3.6.5 小结 … 72
本章小结 … 73
第 4 章 机器学习基础 … 74
4.1 机器学习的四个分支 … 74
4.1.1 监督学习 … 74
4.1.2 无监督学习 … 75
4.1.3 自监督学习 … 75
4.1.4 强化学习 … 75
4.2 评估机器学习模型 … 76
4.2.1 训练集、验证集和测试集 … 77
4.2.2 评估模型的注意事项 … 80
4.3 数据预处理、特征工程和特征学习 … 80
4.3.1 神经网络的数据预处理 … 80
4.3.2 特征工程 … 81
4.4 过拟合与欠拟合 … 83
4.4.1 减小网络大小 … 83
4.4.2 添加权重正则化 … 85
4.4.3 添加 dropout 正则化 … 87
4.5 机器学习的通用工作流程 … 89
4.5.1 定义问题,收集数据集 … 89
4.5.2 选择衡量成功的指标 … 89
4.5.3 确定评估方法 … 90
4.5.4 准备数据 … 90
4.5.5 开发比基准更好的模型 … 90
4.5.6 扩大模型规模:开发过拟合的
模型 … 91
4.5.7 模型正则化与调节超参数 … 92
本章小结 … 92
1
5
3
7
10
2
6
9
4
8
11
目  录  3
第二部分 深度学习实践
第 5 章 深度学习用于计算机视觉 … 94
5.1 卷积神经网络简介 … 94
5.1.1 卷积运算 … 96
5.1.2 最大池化运算 … 101
5.2 在小型数据集上从头开始训练一个
卷积神经网络 … 102
5.2.1 深度学习与小数据问题的
相关性 … 103
5.2.2 下载数据 … 103
5.2.3 构建网络 … 106
5.2.4 数据预处理 … 107
5.2.5 使用数据增强 … 111
5.3 使用预训练的卷积神经网络 … 115
5.3.1 特征提取 … 116
5.3.2 微调模型 … 124
5.3.3 小结 … 130
5.4 卷积神经网络的可视化 … 130
5.4.1 可视化中间激活 … 131
5.4.2 可视化卷积神经网络的
过滤器 … 136
5.4.3 可视化类激活的热力图 … 142
本章小结 … 146
第 6 章 深度学习用于文本和序列 … 147
6.1 处理文本数据 … 147
6.1.1 单词和字符的 one-hot 编码 … 149
6.1.2 使用词嵌入 … 151
6.1.3 整合在一起:从原始文本到
词嵌入 … 155
6.1.4 小结 … 162
6.2 理解循环神经网络 … 162
6.2.1 Keras 中的循环层 … 164
6.2.2 理解 LSTM 层和 GRU 层 … 168
6.2.3 Keras 中一个 LSTM 的具体
例子 … 170
6.2.4 小结 … 172
6.3 循环神经网络的高级用法 … 172
6.3.1 温度预测问题 … 172
6.3.2 准备数据 … 175
6.3.3 一种基于常识的、非机器学
习的基准方法 … 177
6.3.4 一种基本的机器学习方法 … 178
6.3.5 第一个循环网络基准 … 180
6.3.6 使用循环 dropout 来降低过
拟合 … 181
6.3.7 循环层堆叠 … 182
6.3.8 使用双向 RNN … 184
6.3.9 更多尝试 … 187
6.3.10 小结 … 187
6.4 用卷积神经网络处理序列 … 188
6.4.1 理解序列数据的一维卷积 … 188
6.4.2 序列数据的一维池化 … 189
6.4.3 实现一维卷积神经网络 … 189
6.4.4 结合 CNN 和 RNN 来处理
长序列 … 191
6.4.5 小结 … 195
本章总结 … 195
第 7 章 高级的深度学习最佳实践 … 196
7.1 不用 Sequential 模型的解决方案:
Keras 函数式 API … 196
7.1.1 函数式 API 简介 … 199
7.1.2 多输入模型 … 200
7.1.3 多输出模型 … 202
7.1.4 层组成的有向无环图 … 204
7.1.5 共享层权重 … 208
7.1.6 将模型作为层 … 208
7.1.7 小结 … 209
7.2 使用 Keras 回调函数和 TensorBoard
来检查并监控深度学习模型 … 210
7.2.1 训练过程中将回调函数作用于
模型 … 210
 4  目  录
7.2.2 TensorBoard 简介:TensorFlow
的可视化框架 … 212
7.2.3 小结 … 219
7.3 让模型性能发挥到极致 … 219
7.3.1 高级架构模式 … 219
7.3.2 超参数优化 … 222
7.3.3 模型集成 … 223
7.3.4 小结 … 224
本章总结 … 225
第 8 章 生成式深度学习 … 226
8.1 使用 LSTM 生成文本 … 227
8.1.1 生成式循环网络简史 … 227
8.1.2 如何生成序列数据 … 228
8.1.3 采样策略的重要性 … 229
8.1.4 实现字符级的 LSTM 文本
生成 … 230
8.1.5 小结 … 234
8.2 DeepDream … 235
8.2.1 用 Keras 实现 DeepDream … 236
8.2.2 小结 … 241
8.3 神经风格迁移 … 241
8.3.1 内容损失 … 242
8.3.2 风格损失 … 243
8.3.3 用 Keras 实现神经风格迁移 … 243
8.3.4 小结 … 249
8.4 用变分自编码器生成图像 … 249
8.4.1 从图像的潜在空间中采样 … 249
8.4.2 图像编辑的概念向量 … 250
8.4.3 变分自编码器 … 251
8.4.4 小结 … 256
8.5 生成式对抗网络简介 … 257
8.5.1 GAN 的简要实现流程 … 258
8.5.2 大量技巧 … 259
8.5.3 生成器 … 260
8.5.4 判别器 … 261
8.5.5 对抗网络 … 261
8.5.6 如何训练 DCGAN … 262
8.5.7 小结 … 264
本章总结 … 264
第 9 章 总结 … 265
9.1 重点内容回顾 … 265
9.1.1 人工智能的各种方法 … 265
9.1.2 深度学习在机器学习领域
中的特殊之处 … 266
9.1.3 如何看待深度学习 … 266
9.1.4 关键的推动技术 … 267
9.1.5 机器学习的通用工作流程 … 268
9.1.6 关键网络架构 … 268
9.1.7 可能性空间 … 272
9.2 深度学习的局限性 … 273
9.2.1 将机器学习模型拟人化的
风险 … 273
9.2.2 局部泛化与极端泛化 … 275
9.2.3 小结 … 276
9.3 深度学习的未来 … 277
9.3.1 模型即程序 … 277
9.3.2 超越反向传播和可微层 … 278
9.3.3 自动化机器学习 … 279
9.3.4 终身学习与模块化子程序复用 … 279
9.3.5 长期愿景 … 281
9.4 了解一个快速发展领域的最新进展 … 281
9.4.1 使用 Kaggle 练习解决现实
世界的问题 … 281
9.4.2 在 arXiv 阅读最新进展 … 282
9.4.3 探索 Keras 生态系统 … 282
9.5 结束语 … 282
附录 A 在 Ubuntu 上安装 Keras 及其
依赖 … 283
附录 B 在 EC2 GPU 实例上运行
Jupyter 笔记本 … 287

猜你喜欢

转载自blog.csdn.net/MESSI_JAMES/article/details/86465990