《Keras深度学习实战》为前端工程师和大数据工程师而撰写,书里简要而全方位地详细介绍了现阶段的神经网络和深度学习技术性。全书展现了根据Keras架构、以Python编号的20多种多样合理的神经网络。你将从这书初中到以下几点:在大中型神经网络上应用反向传播优化算法逐渐提升涵数调整神经网络以改善結果品质应用深度学习开展图象和音频处理在特殊的实例中应用递归神经系统张量互联网(RNTN)以获得比规范词嵌入更强的实际效果鉴别循环系统神经网络(RNN)适合处理的难题探寻自动编码机的完成全过程应用强化学习提高深层次神经网络全书浅显易懂,注重具体实例,合适众多的深度学习从业人员和发烧友新手入门与实践活动。
做为一kuan轻巧、模块化设计的开源系统深度学习架构,Keras以非常容易入门、有利于迅速原形完成、可以与TensorFlow和Theano等后端开发测算服务平台非常好适配等优势,备受诸多开发者和科学研究工作人员的钟爱。这书融合很多案例,言简意赅地详细介绍了现阶段受欢迎的神经网络技术性和深度学习技术性。从經典的多层感知机到用以图象处理的深层卷积网络,从解决实例化数据信息的循环系统互联网到仿冒模拟仿真数据信息的转化成对抗网络,从词嵌入到AI游戏软件中的强化学习,这书引ling读者一层一层解开深度学习的面具,并在慢慢清楚的理论框架下,出示好几个Python编号案例,便捷读者动手能力实践活动。根据阅读文章这书,读者不但能学好应用Keras便捷搭建每个种类的深层互联网,还能够按需自定传输层和后端开发作用,进而提高自己的AI编程工作能力,在变成深度学习权威专家的道上更进一步。
目录
- 第 1章 神经网络基础 1
- 1.1 感知机 2
- 第 一个Keras代码示例 3
- 1.2 多层感知机—第 一个神经网络的示例 3
- 1.2.1 感知机训练方案中的问题 4
- 1.2.2 激活函数—sigmoid 5
- 1.2.3 激活函数—ReLU 5
- 1.2.4 激活函数 6
- 1.3 实例—手写数字识别 6
- 1.3.1 One-hot编码—OHE 7
- 1.3.2 用Keras定义简单神经网络 7
- 1.3.3 运行一个简单的Keras网络并创建基线 10
- 1.3.4 用隐藏层改进简单网络 11
- 1.3.5 用dropout进一步改进简单网络 14
- 1.3.6 Keras中的不同优化器测试 16
- 1.3.7 增加训练轮数 20
- 1.3.8 控制优化器的学习率 20
- 1.3.9 增加内部隐藏神经元的数量 21
- 1.3.10 增加批处理的大小 22
- 1.3.11 识别手写数字的实验总结 22
- 1.3.12 采用正则化方法避免过拟合 22
- 1.3.13 超参数调优 24
- 1.3.14 输出预测 24
- 1.4 一种实用的反向传播概述 25
- 1.5 走向深度学习之路 26
- 1.6 小结 27
- 第 2章 Keras安装和API 28
- 2.1 安装Keras 28
- 2.1.1 第 1步—安装依赖项 28
- 2.1.2 第 2步—安装Theano 29
- 2.1.3 第3步—安装TensorFlow 29
- 2.1.4 第4步—安装Keras 30
- 2.1.5 第5步—测试Theano、TensorFlow和Keras 30
- 2.2 配置Keras 31
- 2.3 在Docker上安装Keras 32
- 2.4 在谷歌Cloud ML上安装Keras 34
- 2.5 在亚马逊AWS上安装Keras 36
- 2.6 在微软Azure上安装Keras 37
- 2.7 Keras API 39
- 2.7.1 从Keras架构开始 40
- 2.7.2 预定义神经网络层概述 40
- 2.7.3 预定义激活函数概述 43
- 2.7.4 损失函数概述 44
- 2.7.5 评估函数概述 44
- 2.7.6 优化器概述 44
- 2.7.7 一些有用的操作 44
- 2.7.8 保存和加载权重及模型结构 45
- 2.8 自定义训练过程的回调函数 45
- 2.8.1 检查点设置 45
- 2.8.2 使用TensorBoard 47
- 2.8.3 使用Quiver 47
- 2.9 小结 48
- 第3章 深度学习之卷积网络 49
- 3.1 深度卷积神经网络—DCNN 50
- 3.1.1 局部感受野 50
- 3.1.2 共享权重和偏置 51
- 3.1.3 池化层 51
- 3.2 DCNN示例—LeNet 52
- 3.2.1 用Keras构建LeNet代码 53
- 3.2.2 深度学习的本领 59
- 3.3 用深度学习网络识别CIFAR-10图像 60
- 3.3.1 用深度学习网络改进CIFAR-10的性能 64
- 3.3.2 通过数据增加改善CIFAR-10的性能 66
- 3.3.3 用CIFAR-10进行预测 68
- 3.4 用于大型图片识别的极深度卷积网络 69
- 3.4.1 用VGG-16网络识别猫 71
- 3.4.2 使用Keras内置的VGG-16网络模块 72
- 3.4.3 为特征提取回收内置深度学习模型 73
- 3.4.4 用于迁移学习的极深inception-v3网络 74
- 3.5 小结 76
- 第4章 生成对抗网络和WaveNet 78
- 4.1 什么是生成对抗网络 78
- 生成对抗网络的一些应用 80
- 4.2 深度卷积生成对抗网络 82
- 4.3 用Keras adversarial生成MNIST数据 85
- 4.4 用Keras adversarial生成CIFAR数据 91
- 4.5 WaveNet—一个学习如何产生音频的生成模型 99
- 4.6 小结 108
- 第5章 词嵌入 109
- 5.1 分布式表示 110
- 5.2 word2vec 110
- 5.2.1 skip-gram word2vec模型 111
- 5.2.2 CBOW word2vec模型 114
- 5.2.3 从模型中提取word2vec向量 116
- 5.2.4 使用word2vec的第三方实现 117
- 5.3 探索GloVe 121
- 5.4 使用预训练好的词向量 122
- 5.4.1 从头开始学习词向量 123
- 5.4.2 从word2vec中微调训练好的词向量 127
- 5.4.3 从GloVe中微调训练好的词向量 131
- 5.4.4 查找词向量 132
- 5.5 小结 136
- 第6章 循环神经网络—RNN 137
- 6.1 SimpleRNN单元 138
- 用Keras实现SimpleRNN—生成文本 139
- 6.2 RNN拓扑结构 143
- 6.3 梯度消失和梯度爆炸 145
- 6.4 长短期记忆网络—LSTM 146
- 用Keras实现LSTM—情感分析 148
- 6.5 门控循环单元—GRU 153
- 用Keras实现GRU—词性标注 154
- 6.6 双向RNN 160
- 6.7 有状态RNN 161
- 用Keras实现有状态LSTM—电量消费预测 161
- 6.8 其他RNN变体 167
- 6.9 小结 167
- 第7章 其他深度学习模型 169
- 7.1 Keras函数API 170
- 7.2 回归网络 172
- Keras回归示例—预测空气中的苯含量 172
- 7.3 无监督学习—自动编码器 176
- Keras自动编码器示例—句向量 178
- 7.4 构造深度网络 185
- Keras示例—问答记忆网络 185
- 7.5 自定义Keras 192
- 7.5.1 Keras示例—使用lambda层 193
- 7.5.2 Keras示例—自定义归一化层 193
- 7.6 生成模型 196
- 7.6.1 Keras示例—Deep Dreaming 197
- 7.6.2 Keras示例—风格转换 204
- 7.7 小结 208
- 第8章 游戏中的AI 210
- 8.1 强化学习 211
- 8.1.1 最da化未来奖赏 212
- 8.1.2 Q学习 212
- 8.1.3 深度Q网络作为Q函数 213
- 8.1.4 探索和利用的平衡 214
- 8.1.5 经验回放,或经验值 215
- 8.2 示例—用Keras深度Q网络实现捕捉游戏 215
- 8.3 未来之路 226
- 8.4 小结 228
- 第9章 结束语 229
- 9.1 Keras 2.0—新特性 230
- 9.1.1 安装Keras 2.0 230
- 9.1.2 API的变化 231