书籍详情
遗传算法与机器学习编程
作者:(英)弗朗西斯·布翁滕波Frances Buontempo
出版社:华中科技大学出版社
出版时间:2023-01-01
ISBN:9787568089784
定价:¥82.90
购买这本书可以去
内容简介
自动驾驶汽车、自然语言识别、内容推荐引擎的实现都离不开人工智能和机器学习算法。机器学习算法只有在解决具体问题时才能体现价值。本书以解决各种趣味问题为目标,教读者用Python、JavaScript、C 编写机器学习算法,内容深入浅出,兼具实用性与大局观。读者将学习编写遗传算法、启发式算法、爬山算法、模拟退火算法,运用蒙特·卡洛模拟、点格自动机、适应函数解决问题。本书尤其适合对人工智能和机器学习感兴趣的程序员进阶学习。
作者简介
弗朗西斯·布翁滕波博士多年来一直从事数据挖掘方面的研究工作,她有近三十年的软件开发经验,同时还兼任ACCU网站的Overload杂志首席编辑。
目录
第 1 章 逃出纸口袋 1
1.1 开始 3
1.1.1 逃出纸口袋 4
1.2 目标:寻找出路 5
1.3 帮助乌龟逃脱 6
1.3.1 乌龟和纸口袋 7
1.4 拯救乌龟 8
1.4.1 正方形 9
1.4.2 角螺旋 10
1.4.3 该逃脱了 11
1.5 算法有效吗 12
1.6 拓展学习 14
第 2 章 寻找纸口袋 17
2.1 从数据中学习 18
2.1.1 划分数据 21
2.2 生成决策树的方法 22
2.2.1 选取特征 22
2.3 找到纸口袋 28
2.3.1 寻找分割点 29
2.3.2 构建决策树 30
2.3.3 数据分类 31
2.3.4 将决策树转为规则集 32
2.4 算法有效吗 33
2.4.1 如何剪枝36
2.5 拓展学习38
第 3 章 遗传算法 39
3.1 发射炮弹41
3.2 解的生成方法44
3.2.1 算法的初始化 44
3.2.2 算法的迭代45
3.2.3 如何让解变得更好45
3.2.4 终决策46
3.3 发射炮弹47
3.3.1 随机初始化48
3.3.2 选择过程48
3.3.3 交叉 53
3.3.4 突变 54
3.4 算法有效吗56
3.4.1 画图 56
3.4.2 记录 60
3.4.3 突变测试60
3.4.4 遗传算法的变体 62
3.5 拓展学习63
第 4 章 粒子群算法 65
4.1 控制粒子群67
4.1.1 移动单个粒子 67
4.1.2 移动多个粒子 71
4.1.3 粒子群75
4.2 粒子群的生成76
4.2.1 跟随邻近粒子 77
4.2.2 跟随好位置 78
4.3 创建粒子群80
4.3.1 跟随邻近粒子 80
4.3.2 跟随好位置 83
4.4 算法有效吗 88
4.5 拓展学习 90
第 5 章 寻找路线 91
5.1 释放信息素 92
5.1.1 使用信息素 94
5.2 怎样生成路线 96
5.3 让蚂蚁行动起来 98
5.3.1 随机初始化 98
5.3.2 画路线 102
5.3.3 迭代优化路线 103
5.4 算法有效吗 107
5.4.1 从同一点出发 107
5.4.2 随机从不同点出发 109
5.4.3 α和β的选择 109
5.4.4 其他参数 111
5.5 拓展学习 112
第 6 章 运用随机模型 113
6.1 让粒子随机运动 114
6.1.1 蒙特卡洛模拟 114
6.1.2 布朗运动 117
6.1.3 几何布朗运动 122
6.1.4 跳跃扩散 123
6.2 如何产生扩散 125
6.2.1 小随机步长 125
6.2.2 用 C 画图 126
6.3 让粒子扩散开 127
6.3.1 布朗运动 128
6.3.2 股票价格 133
6.4 算法有效吗 137
6.4.1 基于特性的测试 139
6.5 拓展学习143
第 7 章 蜂群算法 145
7.1 养蜂 146
7.1.1 让蜜蜂行动起来 146
7.1.2 蜜蜂的分工147
7.1.3 算法总览 149
7.2 算法分析150
7.2.1 算法细节 150
7.2.2 摇摆舞152
7.3 让蜜蜂飞起来 152
7.3.1 蜂群算法的实现 153
7.3.2 蜂群算法的可视化161
7.4 算法有效吗164
7.5 拓展学习166
第 8 章 元胞自动机167
8.1 让元胞活起来 169
8.2 创造人工生命 172
8.2.1 算法细节 173
8.3 实现元胞自动机 175
8.4 算法有效吗182
8.5 拓展学习183
第 9 章 遗传算法与元胞自动机185
9.1 找到好的配置 186
9.2 遗传算法在元胞自动机上的工作方式190
9.3 找到初始排列193
9.3.1 交叉 197
9.3.2 突变 201
9.3.3 运行遗传算法 202
9.3.4 初等元胞自动机 204
9.3.5 随机规则 206
9.4 算法有效吗 207
9.4.1 初等元胞自动机 209
9.4.2 随机规则 211
9.5 拓展学习 212
第 10 章 找到解 215
10.1 移动乌龟 216
10.2 乌龟怎么走 217
10.2.1 爬山法 218
10.2.2 模拟退火算法 220
10.3 寻找口袋底部 222
10.3.1 用函数表示口袋形状 223
10.3.2 爬山法 224
10.3.3 模拟退火算法 225
10.4 算法有效吗 228
10.4.1 爬山法 229
10.4.2 模拟退火算法 231
10.5 更高维度的情况 233
10.6 拓展学习 237
参考文献 239
1.1 开始 3
1.1.1 逃出纸口袋 4
1.2 目标:寻找出路 5
1.3 帮助乌龟逃脱 6
1.3.1 乌龟和纸口袋 7
1.4 拯救乌龟 8
1.4.1 正方形 9
1.4.2 角螺旋 10
1.4.3 该逃脱了 11
1.5 算法有效吗 12
1.6 拓展学习 14
第 2 章 寻找纸口袋 17
2.1 从数据中学习 18
2.1.1 划分数据 21
2.2 生成决策树的方法 22
2.2.1 选取特征 22
2.3 找到纸口袋 28
2.3.1 寻找分割点 29
2.3.2 构建决策树 30
2.3.3 数据分类 31
2.3.4 将决策树转为规则集 32
2.4 算法有效吗 33
2.4.1 如何剪枝36
2.5 拓展学习38
第 3 章 遗传算法 39
3.1 发射炮弹41
3.2 解的生成方法44
3.2.1 算法的初始化 44
3.2.2 算法的迭代45
3.2.3 如何让解变得更好45
3.2.4 终决策46
3.3 发射炮弹47
3.3.1 随机初始化48
3.3.2 选择过程48
3.3.3 交叉 53
3.3.4 突变 54
3.4 算法有效吗56
3.4.1 画图 56
3.4.2 记录 60
3.4.3 突变测试60
3.4.4 遗传算法的变体 62
3.5 拓展学习63
第 4 章 粒子群算法 65
4.1 控制粒子群67
4.1.1 移动单个粒子 67
4.1.2 移动多个粒子 71
4.1.3 粒子群75
4.2 粒子群的生成76
4.2.1 跟随邻近粒子 77
4.2.2 跟随好位置 78
4.3 创建粒子群80
4.3.1 跟随邻近粒子 80
4.3.2 跟随好位置 83
4.4 算法有效吗 88
4.5 拓展学习 90
第 5 章 寻找路线 91
5.1 释放信息素 92
5.1.1 使用信息素 94
5.2 怎样生成路线 96
5.3 让蚂蚁行动起来 98
5.3.1 随机初始化 98
5.3.2 画路线 102
5.3.3 迭代优化路线 103
5.4 算法有效吗 107
5.4.1 从同一点出发 107
5.4.2 随机从不同点出发 109
5.4.3 α和β的选择 109
5.4.4 其他参数 111
5.5 拓展学习 112
第 6 章 运用随机模型 113
6.1 让粒子随机运动 114
6.1.1 蒙特卡洛模拟 114
6.1.2 布朗运动 117
6.1.3 几何布朗运动 122
6.1.4 跳跃扩散 123
6.2 如何产生扩散 125
6.2.1 小随机步长 125
6.2.2 用 C 画图 126
6.3 让粒子扩散开 127
6.3.1 布朗运动 128
6.3.2 股票价格 133
6.4 算法有效吗 137
6.4.1 基于特性的测试 139
6.5 拓展学习143
第 7 章 蜂群算法 145
7.1 养蜂 146
7.1.1 让蜜蜂行动起来 146
7.1.2 蜜蜂的分工147
7.1.3 算法总览 149
7.2 算法分析150
7.2.1 算法细节 150
7.2.2 摇摆舞152
7.3 让蜜蜂飞起来 152
7.3.1 蜂群算法的实现 153
7.3.2 蜂群算法的可视化161
7.4 算法有效吗164
7.5 拓展学习166
第 8 章 元胞自动机167
8.1 让元胞活起来 169
8.2 创造人工生命 172
8.2.1 算法细节 173
8.3 实现元胞自动机 175
8.4 算法有效吗182
8.5 拓展学习183
第 9 章 遗传算法与元胞自动机185
9.1 找到好的配置 186
9.2 遗传算法在元胞自动机上的工作方式190
9.3 找到初始排列193
9.3.1 交叉 197
9.3.2 突变 201
9.3.3 运行遗传算法 202
9.3.4 初等元胞自动机 204
9.3.5 随机规则 206
9.4 算法有效吗 207
9.4.1 初等元胞自动机 209
9.4.2 随机规则 211
9.5 拓展学习 212
第 10 章 找到解 215
10.1 移动乌龟 216
10.2 乌龟怎么走 217
10.2.1 爬山法 218
10.2.2 模拟退火算法 220
10.3 寻找口袋底部 222
10.3.1 用函数表示口袋形状 223
10.3.2 爬山法 224
10.3.3 模拟退火算法 225
10.4 算法有效吗 228
10.4.1 爬山法 229
10.4.2 模拟退火算法 231
10.5 更高维度的情况 233
10.6 拓展学习 237
参考文献 239
猜您喜欢