天池智慧交通大赛根据Top团队经验总结

最近一个月来一直在看各种交通预测的论文和算法,今天做个阶段性总结:

在当下深度学习大热的情况下,交通领域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,下面介绍下方法,也当做自己的笔记记录一下

目录

赛题分析

Deep learning建模

LightGBM建模

创新点和总结

 

赛题分析

根据 link 历史通过时间预测其未来一个小时内的通过时间。

两大属性:

1.  时间相关性

2.   空间相关性

Spatio-Temporal Graph structure data.

建模时序相对简单,并且方法有很多。

然而建模拓扑图结构的空间相关性当前还是一个比较热的研究领域,特别是使用深度学习的方法。

 

通过分析,该赛题主要有以下几点特性:

1.  长时预测,未来一个小时30个时间片都需要预测

2.  相邻links之前状态相互影响,拓扑图结构的空间相关性

3.  早晚高峰相对平峰更难预测

 

Deep learning 建模

 

尝试的深度模型有

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值作为特征喂给神经网络,让神经网络学习对缺失值的处理

 

 

Simple LSTM/Conv1D使用特征

通过时间,通过速度,均值时间,均值速度,变换后的时间、速度,link属性特征,时间指示特征(day_of_week, isweekday, hour_of_day, …)

 

Simple LSTM示意网络结构

simple_lstm_arch

 

Simple Conv1D示意网络结构

simple_conv1d_arch

 

Graph Convolution 模型

•设计灵感:

 

  1. •in links 和 out links 需要区别对待
  2. •2 维卷积拆开,变成 3 个一维卷积,分别对应 Win, Wout, Wself
  3. •借鉴 Recursive NN 和 Tree Conv 模型,不同的关系需要不同的参数 处理,同一关系共享参数

 

 

Graph Conv 模型使用特征

通过时间,link属性特征,时间指示特征(day_of_week, isweekday, hour_of_day, …)

 

Graph Conv2D 层计算公式

graph_conv2d_equations

 

 

Graph Conv 理论基础

基于图谱卷积理论

graph_conv_theories

 

相关图卷积模型论文:

 

  1. •Spectral Networks and Locally Connected Networks on Graphs (ICLR 2014)
  2. •Learning Convolutional Neural Networks for Graphs (ICML 2016)
  3. •Convolutional Neural Networks on Graphs with Fast Localized Spectral Filtering (NIPS 2016)
  4. •Semi-Supervised Classi cation with Graph Convolutional Networks (ICLR 2017)

 

使用拓扑邻接矩阵抽特征

 

  1. •使用拓扑的邻接矩阵A_in | A_out 从路况特征中抽取拓扑路况特征
  2. •拓扑路况特征和原始特征连接到一块,一起送入LSTM/Conv1D
  3. •在特征层进行拓扑空间相关性建模
  4. •需要仔细的对拓扑邻接矩阵进行归一化,仿照Laplacian矩阵的归一化方式

 

LightGBM建模

使用特征:

•时间特征:是否是节假日、小时、分钟等

•道路属性:长度、宽度等

•拓扑结构特征:link图中心度、LINE算法将link转换为向量表示

•路况统计特征:

 

  1. •以不同时间粒度、不同时间窗口取历史同一时刻的最大值、平均值、最小值、中位数、方差等
  2. •类似的过去一个小时的统一特征

 

LightGBM实现:

 

  1. •针对MAPE的评价指标,对于每条样本赋予 1/y 的权重,然后采用MAE的损失函数
  2. •采用不同参数训练不同的模型,最后将所有得到的结果进行平均作为最后的传统模型结果

 

创新点和总结

创新点:

  1.  首次将Graph Convolution针对交通路况预测问题进行改进,使其成功应用在该问题上。
  2. 首次使用邻接矩阵抽特征的方式,将拓扑图结构的空间相关性在特征层建模出来,使得时序神经网络模型/传统机器学习方法也能够处理复杂图结构的空间相关性问题。

 

  • 5
    点赞
  • 37
    收藏
    觉得还不错? 一键收藏
  • 14
    评论
天池智慧交通预测挑战赛是由阿里巴巴举办的比赛,旨在通过数据分析和建模预测来优化城市交通系统。参赛者需要利用提供的交通数据集,通过构建模型并进行预测,提供交通出行时间的准确性和效率。这个比赛要求参赛者具备数据分析、建模预测和时间序列预测等相关技能。 参赛者可以先进行准备工作,包括数据集的分割和预处理,然后根据时间序列预测的思路,利用已有的历史数据进行训练模型,并预测未来的交通出行时间。可以根据过去的几个时间点的交通状况预测未来一个时间段的交通状况,进而生成整个月的序列。 具体的建模预测步骤包括:数据集的准备和预处理、特征构建、模型的选择和训练、时间序列预测等。在建模预测过程中,可以使用各种机器学习算法和时间序列预测方法,如回归模型、神经网络、ARIMA模型等,来进行交通出行时间的预测。通过不断调整模型的参数和进行交叉验证,优化模型的性能和准确性。 总之,天池智慧交通预测挑战赛是一个利用数据分析和建模预测的比赛,旨在优化城市交通系统。参赛者可以通过对历史数据的分析和预测预测未来的交通出行时间,提高交通的准确性和效率。同时,参赛者需要具备数据分析、建模预测和时间序列预测等相关技能。<span class="em">1</span><span class="em">2</span><span class="em">3</span><span class="em">4</span>

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 14
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值