第Ⅰ部分 入门
第1章 进化深度学习简介 3
1.1 什么是进化深度学习 4
1.2 EDL的缘由和应用领域 7
1.3 深度学习优化的需求 7
1.4 用自动化机器学习实现自动优化 9
1.5 进化深度学习的应用 12
1.5.1 模型选择:权重搜索 12
1.5.2 模型架构:架构优化 13
1.5.3 超参数调优 14
1.5.4 验证和损失函数的优化 14
1.5.5 神经进化增强拓扑结构 14
1.5.6 目标 14
1.6 本章小结 15
第2章 进化计算简介 17
2.1 Google Colaboratory中的康威生命游戏 17
2.2 用Python进行生命模拟 20
2.3 将生命模拟作为优化 23
2.4 向生命模拟添加进化 26
2.4.1 模拟进化 26
2.4.2 练习 29
2.4.3 关于达尔文和进化的背景知识 30
2.4.4 自然选择和适者生存 30
2.5 Python中的遗传算法 31
2.5.1 了解遗传学和减数分裂 31
2.5.2 编码遗传算法 33
2.5.3 构建种群 34
2.5.4 评估适应度 34
2.5.5 选择繁殖(交叉) 35
2.5.6 应用交叉:繁殖 36
2.5.7 应用突变和变异 38
2.5.8 将所有内容整合在一起 38
2.5.9 理解遗传算法的超参数 41
2.5.10 练习 42
2.6 本章小结 42
第3章 使用DEAP介绍遗传算法 45
3.1 DEAP中的遗传算法 45
3.1.1 使用DEAP解决一维最大化问题 46
3.1.2 练习 48
3.2 解决“王后开局”问题 49
3.3 旅行商问题 53
3.3.1 构建旅行商问题求解器 55
3.3.2 练习 58
3.4 改进进化的遗传操作符选择 59
3.5 使用EvoLisa进行绘画 63
3.6 本章小结 69
第4章 使用DEAP进行更多的进化计算 71
4.1 基于DEAP的遗传编程 71
4.1.1 用遗传编程解决回归问题 72
4.1.2 练习 77
4.2 基于DEAP的粒子群优化算法 77
4.2.1 用PSO求解方程 78
4.2.2 练习 82
4.3 基于DEAP的协同进化解决方案 82
4.4 使用DEAP的进化策略 87
4.4.1 将进化策略应用于函数逼近问题 87
4.4.2 重新审视EvoLisa 92
4.4.3 练习 93
4.5 基于DEAP的差分进化 94
4.5.1 使用差分进化逼近复杂和不连续的函数 94
4.5.2 练习 97
4.6 本章小结 97
第Ⅱ部分 优化深度学习
第5章 自动超参数优化 101
5.1 选项选择和超参数调优 102
5.1.1 调优超参数策略 102
5.1.2 选择模型选项 106
5.2 使用随机搜索自动化超参数优化过程 108
5.3 网格搜索和超参数优化 114
5.4 使用进化计算进行超参数优化 119
5.4.1 将PSO用于超参数优化 119
5.4.2 将进化计算和DEAP添加到自动化超参数优化中 119
5.5 在超参数优化中使用遗传算法和进化策略 123
5.5.1 将进化策略应用于超参数优化 123
5.5.2 使用主成分分析扩展维度 125
5.6 对超参数优化使用差分进化 128
5.7 本章小结 132
第6章 神经进化优化 133
6.1 使用NumPy的多层感知器 134
6.2 将遗传算法作为深度学习优化器 139
6.3 神经优化的其他进化方法 142
6.4 将神经进化优化应用于Keras 144
6.5 理解进化优化的局限性 148
6.6 本章小结 151
第7章 进化卷积神经网络 153
7.1 回顾Keras中的卷积神经网络 153
7.1.1 理解CNN层的问题 158
7.1.2 练习 161
7.2 将网络架构编码成基因 162
7.3 创建交叉配对操作 166
7.4 开发一个自定义突变操作符 168
7.5 卷积网络架构的进化 171
7.6 本章小结 175
第Ⅲ部分 高级应用
第8章 进化自编码器 179
8.1 卷积自编码器 180
8.1.1 自编码器简介 180
8.1.2 构建卷积自编码器 181
8.1.3 练习 185
8.1.4 卷积AE的泛化 185
8.1.5 改进自编码器 186
8.2 进化自编码器(AE)优化 188
8.2.1 构建AE基因序列 188
8.2.2 练习 192
8.3 配对和突变自编码器基因序列 193
8.4 进化自编码器介绍 195
8.5 构建变分自编码器 198
8.5.1 变分自编码器:综述 198
8.5.2 VAE的实现 200
8.5.3 练习 205
8.6 本章小结 206
第9章 生成式深度学习与进化 207
9.1 生成对抗网络(GAN) 2079.1.1 GAN简介 208
9.1.2 在Keras中构建卷积生成对抗网络 209
9.1.3 练习 214
9.2 训练GAN的挑战 215
9.2.1 GAN优化问题 215
9.2.2 观察梯度消失 216
9.2.3 观察GAN中的模式坍塌 218
9.2.4 观察GAN中的收敛失败 220
9.2.5 练习 222
9.3 使用Wasserstein损失修复GAN的问题 223
9.3.1 理解Wasserstein损失 223
9.3.2 使用Wasserstein损失改进DCGAN 224
9.4 对Wasserstein DCGAN编码,以便进行进化优化 226
9.5 使用遗传算法优化DCGAN 230
9.6 本章小结 231
第10章 NEAT:神经进化增强拓扑 233
10.1 使用NEAT-Python探索NEAT 235
10.2 可视化进化的NEAT网络 238
10.3 通过NEAT的功能进行练习 241
10.4 使用NEAT对图像进行分类 246
10.5 揭示种群细分在进化拓扑中的作用 250
10.5.1 调整NEAT的物种划分 252
10.5.2 练习 255
10.6 本章小结 255
第11章 使用NEAT进行进化学习 257
11.1 介绍强化学习 257
11.1.1 冰冻湖面上的Q-learning智能体 259
11.1.2 练习 265
11.2 探索OpenAI Gym中的复杂问题 266
11.3 使用NEAT解决强化学习问题 270
11.4 使用NEAT智能体解决Gym中的月球着陆器问题 274
11.5 使用DQN解决Gym中的登月器问题 277
11.6 本章小结 282
第12章 进化机器学习及其拓展领域 283
12.1 基因表达编程中的进化和机器学习 284
12.2 重新审视使用Geppy的强化学习 289
12.3 介绍本能学习 294
12.3.1 本能学习的基础知识 294
12.3.2 发展通用本能 296
12.3.3 进化出不带本能的通用解决方案 299
12.3.4 练习 302
12.4 遗传编程中的泛化学习 302
12.5 进化机器学习的未来 309
12.5.1 进化是否出现了问题 309
12.5.2 进化可塑性 309
12.5.3 利用可塑性改进进化过程 310
12.5.4 计算与进化搜索 311
12.6 利用本能深度学习和深度强化学习进行泛化 312
12.7 本章小结 317
附录A 获取和运行代码 319
· · · · · · (
收起)
还没人写过短评呢
还没人写过短评呢