机器学习作业-FOGS: 基于学习图的一阶梯度监督交通流预测
文章目录
- FOGS: First-Order Gradient Supervision with Learning-based Graph for Traffic Flow Forecasting
- 摘要
- 论文创新点
- 数据集
- 论文内容
- 1. 构建时间相关图
- 2. First-Order Gradient Supervision (FOGS)
FOGS: First-Order Gradient Supervision with Learning-based Graph for Traffic Flow Forecasting
摘要
交通流预测是交通运输领域的重要组成部分。现有的研究通常手动构建相关图,设计复杂的模型来学习空间和时间特征,以预测未来的交通状态。然而,人工构建的相关图无法准确提取隐藏在交通数据中的复杂模式。此外,由于交通数据分布不规则,预测模型对其拟合具有一定的挑战性。针对上述问题,本文提出了:
- 一种新的基于学习的方法来学习时空相关图,这可以很好地利用交通流数据。
- 还提出了一种新的交通流预测方法——一阶梯度监督(FOGS)。
FOGS利用一阶梯度而不是特定流训练预测模型,有效地避免了不规则分布拟合问题。对四个真实数据集的综合数值评估表明,所提出的方法实现了最先进的性能,并显著优于基准测试。
论文创新点
- 提出了一种基于学习的方法来构建时空相关图,避免人工构造的相关图无法提取隐藏信息的问题
- 提出了一种新的交通流预测方法FOGS,可以有效避免不规则分布拟合问题
数据集
数据:[节点数,时间,特征数],3维特征为flow, occupy, speed
邻接矩阵:[from,to,distance]
论文内容
1. 构建时间相关图
构造空间相关图 R = ( V , E r o a d ) R=(V,E_{road}) R=(V,Eroad), E r o a d E_{road} Eroad:如果两个节点相邻,则保存为<u,v>
构造时间相关图 C = ( V , E t i m e ) C=(V,E_{time}) C=(V,Etime):
(1)首先对每个节点 v ∈ V v \in V v∈V,按5分钟一个时间间隔,统计一周内的平均流量,得到一个:
形状为[node_size,time_size]的矩阵。
其中node_size为节点个数, t i m e _ s i z e = 7 天 ∗ 24 小时 ∗ 60 分钟 / 5 分钟 time\_size=7天*24小时*60分钟 / 5分钟 time_size=7天∗24小时∗60分钟/5分钟(2)然后对该矩阵求k近邻,每个节点都得到前k个与他相邻的节点。这步的意思是统计一下在时间维度上每个节点相邻的节点。
(3)将u节点的k个近邻节点保存到 E t i m e E_{time} Etime中使用skip-gram模型计算词嵌入向量
使用随机游走的方式训练模型,这里定义了一个采样策略S:
从 t j = < v 0 , v 1 , . . . v j > t_j = <v_0,v_1,...v_j> tj=<v0,v1,...vj> 以概率 P r Pr Pr 游走到第 v j + 1 v_{j+1} vj+1 的个节点,其中 P r Pr Pr的计算方法是:
这里的 d R ( v j + 1 ) d_R(v_{j+1}) dR(vj+1)指的是 v j − 1 到 v j + 1 v_{j-1}到v_{j+1} vj−1到vj+1的空间距离,即在图R上的距离。他只有可能是三种情况:0,1和2
0: v j − 1 到 v j 再到 v j + 1 v_{j-1} 到 v_j 再到 v_{j+1} vj−1到vj再到vj+1
1: v j − 1 到 v j 再到 v j + 1 v_{j-1} 到 v_j 再到 v_{j+1} vj−1到vj再到vj+1, < v j − 1 , v j + 1 > ∈ R <v_{j-1},v_{j+1}> \in R <vj−1,vj+1>∈R,即 v j − 1 和 v j + 1 相邻 v_{j-1}和v_{j+1}相邻 vj−1和vj+1相邻
2: v j − 1 到 v j 再到 v j + 1 v_{j-1} 到 v_j 再到 v_{j+1} vj−1到vj再到vj+1, < v j − 1 , v j + 1 > ∉ R <v_{j-1},v_{j+1}> \notin R <vj−1,vj+1>∈/R,即 v j − 1 和 v j + 1 不相邻 v_{j-1}和v_{j+1}不相邻 vj−1和vj+1不相邻这样一来,采样策略S中既考虑了节点之间的空间相关性,也考虑了节点之间的时间相关性。
训练模型后得到一个词向量矩阵h,形状为[node_size,embedding_size]
构造时空相关图
(1)首先构造一个形状为[node_size,node_size]的矩阵M,该矩阵中的值只能是0或者1
(2)基于M,为每个节点求k近邻,构造一个新矩阵G
(3)获取时空相关图
这个时空相关图其实就是一个邻接矩阵,只不过这个邻接矩阵保留了每个节点的时间和空间信息。
2. First-Order Gradient Supervision (FOGS)
首先因为交通流的分布会受到其他因素(比如假期,天气)而不同(比如十月一那一周流量会整体升高),因此交通流的分布是不规则且广泛的,但是交通流的变化趋势的分布却是集中的。所以给定一个分布不规则的X来预测另一个分布不规则的Y,效果不如给定一个分布不规则的X来预测一个分布集中的Z,下图给出了交通流和趋势的分布图:
流量预测问题,其实就是给定不同节点前T个时隙的流量X(形状为[node_size,T]),然后预测不同节点接下来K个时隙的流量Y(形状为[node_size,K])。根据上面的分析,我们需要对Y进行变换,具体方法如下:
其中,
y j t y_{jt} yjt表示第j个节点在第t个时隙的平均流量
x j T x_{jT} xjT表示第j个节点在第T个时隙的平均流量这样就对Y进行了一个变换,从交通流(flow)变成了趋势(trend)
这里会有一个小问题,那就是 x j T x_{jT} xjT如果为0怎么办,文中给出的办法是依次尝试 x j T − 1 , x j T − 2 x_{jT-1},x_{j_T-2} xjT−1,xjT−2…,直到找到第一个不为0的值。但是如果每个值都为0,那么就用常数5来替代 ,这也是最上面的图中Replace所做的事情。
选择使用MSE来度量模型
因为我们最终的目的还是预测Y,所以最后我们需要将Z再转化为Y:
其中 X T X_T XT的形状为[node_size,K],它其实是 x T x_T xT重复了K次构成的矩阵
机器学习作业-FOGS: 基于学习图的一阶梯度监督交通流预测相关推荐
- python交通流预测算法_基于机器学习的交通流预测技术的研究与应用
摘要: 随着城市化进程的加快,交通系统的智能化迫在眉睫.作为智能交通系统的重要组成部分,短时交通流预测也得到了迅速的发展,而如何提升短时交通流预测的精度,保障智能交通系统的高效运行,一直是学者们研究的 ...
- (16) 基于图卷积神经网络的轨道交通流量预测
交通预见未来(16) 基于图卷积神经网络的轨道交通流量预测 1.文章信息 <Predicting Station-Level Short-Term Passenger Flow in a Cit ...
- (5)基于深度学习的短时道路交通流预测
交通预见未来 (5)基于深度学习的短时道路交通流预测 1.文章信息 <Short-Term Traffic Flow Prediction with Conv-LSTM>. 这篇文章是一篇 ...
- 基于交通图卷积长短时记忆网络的网络级交通流预测
文章信息 本周阅读的论文是题目为<Traffic Graph Convolutional Recurrent Neural Network: A Deep Learning Framework ...
- lstm中look_back的大小选择_基于时空关联度加权的LSTM短时交通速度预测
作 者 信 息 刘易诗1,关雪峰1,2,吴华意1,2,曹 军1,张 娜1 (1. 武汉大学 测绘遥感信息工程国家重点实验室,湖北 武汉 430079:2. 地球空间信息技术协同创新中心,湖北 武汉 4 ...
- 【论文阅读】Attention Based Spatial-Temporal GCN...Traffic Flow Forecasting[基于注意力的时空图卷积网络交通流预测](1)
[论文阅读]Attention Based Spatial-Temporal Graph Convolutional Networks for Traffic Flow Forecasting[基于注 ...
- 交通流预测python代码_Python 3 amp; Keras 实现基于神经网络的交通流预测
交通流量预测在智能交通(ITS)系统中占有重要地位,是实现交通诱导的前提.准确实时的短时交通流预测有助于更好的分析路网交通状况,对路网交通规划和交通优化控制有非常重要的作用.随着交通数据采集技术的不断 ...
- 交通状态预测 | Python实现基于Transformer的交通流预测
交通状态预测 | Python实现基于Transformer的交通流预测 目录 交通状态预测 | Python实现基于Transformer的交通流预测 基本介绍 模型构建 程序设计 学习总结 基本介 ...
- 基于小波神经网络的交通流预测
%该代码为基于小波神经网络的交通流预测代码 % 清空环境变量 clc clear %网络参数配置 load traffic_flux input output input_test output_te ...
最新文章
- RS232详解(续)
- 如何帮助谷歌鉴别内容重复的网页
- heic怎么查看,如何打开heic
- linux查看 idt日志,实现RCP的日志管理
- 元月份退休能享受涨养老金的待遇吗?
- SQL Server系统视图/表/功能。 现实生活中的常见问题和解决方案
- 南京铁道学院计算机应用,南京铁道职业技术学院铁道交通运营管理专业
- MAC OSX 正確地同時安裝 PYTHON 2.7 和 PYTHON3
- 西南科技大学OJ题 约瑟夫问题的实现0956
- 数据结构题及c语言版 答案,数据结构(C语言版)1800道题及答案[完整版]
- 计算机考研数据结构答案,计算机考研数据结构试卷八(练习题含答案)
- PHP数字金额转换成中文大写金额
- 说一说协议生成器 - Ricequant米筐量化
- HTML---鼠标悬停导航栏变颜色
- css3实现尖角,css3如何做 尖角
- 集成 React Native 到现有Android项目
- 解读 2018:13 家开源框架谁能统一流计算?
- 深圳外包及不考虑公司名单
- 建立自己的机器人手臂-组装
- 超级码力在线编程大赛初赛 第2场 1.三角魔法