第1章 概述 / 1
1.1 时间序列分析基础 / 1
1.1.1 时间序列特性 / 1
1.1.2 时间序列数据预处理 / 3
1.2 时间序列预测 / 14
1.2.1 滑动窗口 / 14
1.2.2 数据集划分 / 20
1.2.3 预测任务分类 / 20
1.2.4 预测任务描述 / 22
1.2.5 预测误差评价 / 24
1.2.6 预测可视化 / 30
1.3 时间序列预测常用框架 / 39
1.3.1 统计方法框架 / 39
1.3.2 机器学习模型框架 / 40
1.3.3 深度学习模型框架 / 40
1.4 常用优化技术 / 41
1.4.1 交叉验证 / 41
1.4.2 网格搜索 / 41
1.4.3 随机搜索 / 41
第2章 统计方法时间序列分析 / 42
2.1 时间序列分析 / 43
2.1.1 时间序列分析模型 / 43
2.1.2 时间序列分析流程 / 44
2.2 ARIMA模型预测实例 / 45
2.2.1 实例: Grid-SARIMA客流预测 / 45
2.2.2 实例: Auto-SARIMA销量预测 / 57
第3章 机器学习时间序列分析 / 66
3.1 数据集 / 67
3.2 K最近邻回归 / 69
3.2.1 模型介绍 / 69
3.2.2 实例: K最近邻(KNN)回归预测 / 69
3.3 多元线性回归 / 75
3.3.1 模型介绍 / 75
3.3.2 实例: 多元线性回归(MLR)预测 / 75
3.4 支持向量回归 / 81
3.4.1 模型介绍 / 81
3.4.2 实例: 支持向量回归(SVR)预测 / 81
3.5 决策树回归 / 87
3.5.1 模型介绍 / 87
3.5.2 实例: 决策树(DT)回归预测 / 87
3.6 随机森林回归 / 92
3.6.1 模型介绍 / 92
3.6.2 实例: 随机森林(RF)回归预测 / 93
3.7 梯度提升回归树 / 98
3.7.1 模型介绍 / 98
3.7.2 实例: 梯度提升回归树(GBRT)预测 / 98
3.8 极度梯度提升回归 / 104
3.8.1 模型介绍 / 104
3.8.2 实例: 极度梯度提升(XGBosst)回归预测 / 104
3.9 轻量梯度提升机回归 / 112
3.9.1 模型介绍 / 112
3.9.2 实例: 轻量梯度提升机(LightGBM)回归预测 / 113
3.10 Spark模型实现 / 121
第4章 深度学习时间序列分析 / 134
4.1 前馈神经网络 / 135
4.1.1 模型介绍 / 135
4.1.2 实例: 前馈神经网络(FNN)太阳黑子预测 / 136
4.2 循环神经网络 / 145
4.2.1 模型介绍 / 145
4.2.2 实例: 长短期记忆(LSTM)网络风速预测 / 147
4.2.3 实例: 门控循环单元(GRU)网络风电功率预测 / 155
4.3 卷积神经网络 / 164
4.3.1 模型介绍 / 164
4.3.2 实例: 卷积神经网络(CNN)电力负荷预测 / 166
4.3.3 实例: 时间卷积网络(TCN)网络流量预测 / 175
4.4 图神经网络 / 184
4.4.1 模型介绍 / 184
4.4.2 实例: 图卷积网络(GCN)空气污染指数预测 / 186
4.4.3 实例: 图注意力网络(GAT)交通流量预测 / 210
4.5 注意力网络 / 221
4.5.1 模型介绍 / 221
4.5.2 实例: 多头自注意力(MSA)网络温度预测 / 222
附录A Python开发环境配置 / 239
A.1 Ubuntu安装配置 / 239
A.2 Anaconda安装配置 / 240
A.3 pip配置 / 241
A.4 Python虚拟环境配置 / 242
A.5 Vscode安装配置 / 243
附录B Spark开发环境配置 / 245
B.1 Java安装配置 / 245
B.2 Scala和Hadoop安装配置 / 246
B.3 Spark安装配置 / 246
B.4 PySpark安装配置 / 248
附录C 项目工程结构 / 250
参考文献 / 253