最近一个月来一直在看各种交通预测的论文和算法,今天做个阶段性总结:
在当下深度学习大热的情况下,交通领域Deep Learnig应用很少,目前最新有关交通预测的论文出现几篇有关deeplearning(Short-Term Traffic State Prediction Based on the Spatiotemporal Features of Critical Road Sections)。而具体应用于实际数据的很少,所以在天池智慧交通大赛中,看看各位团队所应用的方法。排在top的参赛队,大多使用竞赛常用算法XGboost,在此我也推荐一篇介绍XGboost原理很详细且通俗易懂的博客
https://blog.csdn.net/github_38414650/article/details/76061893
而top1 使用的是Deeplearning,下面介绍下方法,也当做自己的笔记记录一下
目录
根据 link 历史通过时间预测其未来一个小时内的通过时间。
两大属性:
1. 时间相关性
2. 空间相关性
Spatio-Temporal Graph structure data.
建模时序相对简单,并且方法有很多。
然而建模拓扑图结构的空间相关性当前还是一个比较热的研究领域,特别是使用深度学习的方法。
通过分析,该赛题主要有以下几点特性:
1. 长时预测,未来一个小时30个时间片都需要预测
2. 相邻links之前状态相互影响,拓扑图结构的空间相关性
3. 早晚高峰相对平峰更难预测
1. 仅建模时间相关性
a) Simple LSTM
b) Simple Conv1D
2. 时空相关性同时建模
a) Graph Convolution (Main model)
b) 使用邻接矩阵抽特征,使得Simple LSTM/Conv1D也能同时建模时空相关性。
一些超参数:
1. Adam优化函数
2. Dropout 0.5控制过拟合
3. Simple LSTM是3层LSTM,其它神经网络模型都是10层并使用Residual Connect
4. MAPE loss
5. Early stopping控制过拟合
样本生成:
1. 当前时间片前一小时做特征,后一小时做Y值
2. 以一个时间片为步长进行滑窗生成样本
验证集构造:
训练数据中的最后一个月的早高峰样本,复赛同初赛设置
缺失值处理:
1. 设置mask值,指示某link某时间片是否缺失
2. mask值作为特征喂给神经网络,让神经网络学习对缺失值的处理
通过时间,通过速度,均值时间,均值速度,变换后的时间、速度,link属性特征,时间指示特征(day_of_week, isweekday, hour_of_day, …)
•设计灵感:
通过时间,link属性特征,时间指示特征(day_of_week, isweekday, hour_of_day, …)
基于图谱卷积理论
相关图卷积模型论文:
使用特征:
•时间特征:是否是节假日、小时、分钟等
•道路属性:长度、宽度等
•拓扑结构特征:link图中心度、LINE算法将link转换为向量表示
•路况统计特征:
LightGBM实现:
创新点: