第一篇 机器学习基础
第1章 机器学习与无人驾驶 1
1.1 机器学习简介 1
1.1.1 机器学习 1
1.1.2 深度学习 5
1.1.3 强化学习 6
1.2 无人驾驶与机器学习 7
1.2.1 无人驾驶的历史 7
1.2.2 为什么要在无人驾驶中应用机器学习 9
1.2.3 无人驾驶商业化的优势 10
1.2.4 无人驾驶商业化的进展 11
参考文献 13
第2章 TensorFlow基础 15
2.1 机器学习主流框架简介 15
2.2 TensorFlow开发环境搭建 19
2.2.1 基于Python语言框架的Virtualenv方案 19
2.2.2 基于应用容器化的Docker方案 23
2.3 Hello TensorFlow—一个简单的例子 23
2.4 TensorFlow架构 26
2.4.1 TensorFlow架构概述 26
2.4.2 TensorFlow客户端架构 27
2.4.3 TensorFlow分布式主服务架构 28
2.4.4 TensorFlow工作器服务架构 29
2.4.5 TensorFlow内核架构 30
2.5 TensorFlow核心API 30
2.5.1 TensorFlow低级API 31
2.5.2 TensorFlow高级API 35
2.6 扩展:使用tensorflow.js进行机器学习 38
参考文献 40
第3章 线性回归 41
3.1 什么是线性回归 41
3.1.1 线性回归的概念 41
3.1.2 线性回归的历史 42
3.1.3 线性回归模型 42
3.2 线性回归中的最小二乘法模型 43
3.3 最小二乘法模型实例 45
3.4 线性回归的梯度下降模型 47
3.5 梯度下降模型实例 48
参考文献 51
第4章 逻辑回归 52
4.1 逻辑回归简介 52
4.2 逻辑回归模型 54
4.3 泛逻辑回归 55
4.4 实例:股价预测 56
参考文献 64
第二篇 机器学习进阶
第5章 神经网络 65
5.1 神经元模型 65
5.1.1 神经网络的灵感来源 65
5.1.2 感知器模型概述 66
5.2 单神经元模型实例 67
5.2.1 验证码概述 68
5.2.2 开发实例代码详解 69
5.3 激活函数 76
5.3.1 常用激活函数 76
5.3.2 Sigmoid函数 77
5.3.3 tanh函数 79
5.3.4 ReLU函数以及变式 79
5.4 全连接神经网络模型 80
5.4.1 多层感知器神经网络结构 80
5.4.2 BP算法 82
5.5 全连接神经网络实例 82
参考文献 84
第6章 卷积神经网络 85
6.1 卷积神经网络概述 85
6.1.1 卷积神经网络架构 85
6.1.2 卷积操作 86
6.1.3 池化操作 87
6.1.4 卷积神经网络的特点 88
6.2 实例1:验证码识别 89
6.2.1 神经网络的具体设计 89
6.2.2 卷积过程分析 91
6.2.3 池化过程分析 92
6.2.4 完整学习过程分析 93
6.3 实例2:过拟合和欠拟合 95
6.3.1 下载 IMDB 数据集 96
6.3.2 构建模型 99
6.3.3 训练模型 101
6.3.4 过拟合过程实践 106
6.3.5 过拟合应对策略 115
参考文献 120
第7章 循环神经网络 121
7.1 循环神经网络概述 121
7.1.1 时序数据 121
7.1.2 循环神经网络模型 122
7.2 长短时记忆神经网络架构 123
7.3 实例:仿写西游记 126
7.3.1 文本的读取和分段 126
7.3.2 循环神经网络模型定义 130
7.3.3 模型训练和结果分析 132
参考文献 134
第8章 强化学习 136
8.1 强化学习概述 136
8.2 Q-Learning架构 140
8.3 实例:贪吃蛇人工智能 142
参考文献 160
第三篇 无人驾驶
第9章 无人驾驶系统 161
9.1 无人驾驶系统概述 161
9.2 Apollo简介 165
9.3 Apollo开发环境搭建 169
参考文献 173
第10章 Cyber基础 174
10.1 Cyber简介(包括和ROS的对比) 174
10.2 Cyber API和API Demo 177
10.3 Apollo 模块启动源码分析 199
参考文献 222
第11章 无人驾驶地图技术 223
11.1 高精地图 223
11.2 PncMap 264
11.3 Relative Map模块 281
参考文献 303
第12章 无人驾驶定位技术 304
12.1 RTK定位技术 304
12.2 多传感器融合定位技术 307
参考文献 322
第13章 无人驾驶预测技术 323
13.1 预测模块简介 323
13.2 成本评估器:由一组成本函数计算概率 327
13.3 MLP评估器:用MLP模型计算概率 329
13.4 RNN评估器:用RNN模型计算概率 343
参考文献 350
第14章 无人驾驶规划策略 351
14.1 规划模块简介 351
14.2 路径规划 353
14.3 障碍物规划 363
14.4 速度规划 373
参考文献 392
第15章 无人驾驶控制策略 394
15.1 车辆模型 394
15.2 PID控制算法 397
15.3 MPC控制算法 408
参考文献 414
附录A 强化学习:贪吃蛇AI完整游戏逻辑代码 416
附录B CyberRT系统核心API字典 423