漫漫漫长的假期......

1、文章信息

《Origin-Destination Matrix Prediction via Graph Convolution: a New Perspective of Passenger Demand Modeling》。

北航计算机学院发在2019KDD上的一篇论文。

2、摘要

为了获得乘客的出行模式,打车平台需要提前预测一个地区到另一个地区的乘客需求数量,即OD矩阵预测(ODMP)问题。OD矩阵预测比普通需求预测更具挑战性。除了要预测一个地区的需求产生量,还需要预测需求的目的地。此外,数据稀疏性是一个严重的问题。因此本文提出了一种基于网格嵌入的单馈多任务学习模型(GEML)。该模型主要包含两个部分,分别提取时间信息和空间信息。网格嵌入部分是为了对乘客的空间移动模式和不同区域的相邻关系进行建模,其预加权聚合器的目的是感知数据的稀疏性和范围;多任务学习部分则侧重于时间属性建模和捕获ODMP问题目标。两个数据集-UCAR和Didi-的结果表明GEML方法优于基准模型。

3、简介

除了预测某一区域内可能的乘客需求数量外,了解每次出行的来源地和目的地的乘客需求也很重要。因为不同时段两个区域之间的需求量不仅承载着乘客需求的强度,而且有利于挖掘有用的出行模式。本文从一个新的角度研究了乘客需求模型,即OD矩阵预测(ODMP)。OD矩阵包含两个方面的信息: (1)不同的OD组合; (2)每个OD对的旅客需求数量。ODMP的目标是预测在给定时间段内从一个地理区域到另一个地理区域的叫车订单数量。为了同时兼顾出行产生量和目的地,时空特性以及数据稀疏性,本文提出了一种基于网格嵌入的单馈多任务学习模型(GEML),以基于图对出行模式进行建模。具体来说,我们用图表示与地理区域相关的乘客订单记录,其中节点表示地理区域(以网格形式定义),节点之间的边表示乘客需求,边权重表示订单数量。利用改进后的网格,可以构造出给定时间间隔内的OD矩阵。如图1所示,将区域划分为16个网格,订单记录汇总在相应的OD矩阵中。

本文模型的灵感来自于最近大火的GCNs,然而如果我们直接将已有的GCNs应用到OD矩阵所生成的图上,由于数据稀疏,学习到的具有很少订单的网格嵌入往往是不可靠和无效的,此外,如果没有任何历史订单记录的孤立节点(例如,新建社区),学习到的网格嵌入也是不可行的(无论作为O点还是D点)。为了缓解数据的稀疏性问题,我们提出基于地理学第一定律探索网格的地理相关性,即所有的东西都是相关的,但附近的东西比遥远的东西更相关。例如,在两个地理位置相近的网格中,乘客需求的数量往往接近彼此。特别地,我们考虑了网格嵌入部分的两种邻域,即地理邻域(地理上相邻的)和语义领域(通过OD流连接起来的)。前者用于度量一个网格与其邻域之间的内在紧密程度,后者用于对网络OD之间的交通流强度建模。

基于网格嵌入学习得到的网格的表示,结合乘客需求的重要时间信息,设计了一个面向ODMP的多任务神经网络。受既有工作的启发,我们对一个网格的流入流和流出流分别建模,预测每个网格在不同时间段的流入和流出需求数量。引入这两个子任务的基本原理是,我们能够在每个网格上单独捕获更多的动态出行模式。通过补充两个单独的子任务,总体需求预测任务可以捕获更强的内在时间模式,因为每个网格中的总体需求具有更大的规模或粒度。例如,在早高峰时段,当网格划分的粒度很小时,网约车需求的目的地可能存在很大不同,导致数据稀疏性问题,这意味着乘客需求的目的地可能分布得非常广泛,但这些网格的总流入流和流出流是非常大的。

本文主要贡献如下:

(1)提出OD矩阵预测问题预测给定时间段内的OD乘客需求,这对于网约车平台运营管理具有重要意义。

(2)将研究区域划分为网格,设计了网格嵌入网络,通过在新定义的网格邻域(地理和语义邻域)之间的图卷积,对每个网格进行嵌入,该网络通过模仿GCNs中的信息传递模式来模拟不同网格之间的OD流关系。

(3)借助LSTM设计了一个多任务学习网络用于捕捉乘客需求的时间趋势。两个子任务预测网格中的单个流入流和流出流需求,而主任务预测每对网格之间的需求。

(4)在两个真实大规模叫车数据集上的大量实验表明提出的GEML模型性能优于基准模型。

4、模型框架

GEML模型能同时捕获空间和时间特性。从空间角度出发,提出了一种基于邻域的网格嵌入方法,通过聚集邻域信息来学习每个网格的向量表示。从时间的角度,我们设计了一个多任务学习框架来模拟乘客需求随时间的动态趋势。接下来,我们将介绍网格嵌入和多任务学习的技术细节。

4.1 Grid Embedding

在ODMP环境下,提出了网格嵌入部分的两种邻域,即地理邻域(地理上相邻的)和语义领域(通过OD流连接起来的)。前者用于度量一个网格与其邻域之间的内在紧密程度,后者用于对网络OD之间的交通流强度建模,如图所示。

(1)Geographical Neighborhood

两个区域中心点之间的距离小于一定的阈值可定义为地理邻域。

(2)Semantic Neighborhood

如果两个区域之间至少有一个OD流 (可以是相反方向), 即可定义为两者为语义邻域。在任意时间段t′= 1, 2,…,我们可以通过公式2获取网格i的语义邻域。由式(2)可知,不同网格在不同时间间隔的语义邻居个数是不确定的。由于ODMP问题对时间敏感,因此考虑不同网格在不同时间间隔的语义关系至关重要。

(3)Pre-Weighted Aggregator for Grid Embedding

我们通过聚合地理邻域Φ和语义邻域Ω推断每个网格的向量表示,我们不是为每个网格训练一个不同的嵌入向量,而是训练一个聚合器函数,它学会从网格的邻域中积累和选择特征信息。在详细介绍用于网格嵌入的预加权聚合器之前,我们首先简要介绍[10]采用的朴素聚合器形式:

vi是网格gi的嵌入向量,MEAN(·)表示对应元素均值,vj是网格gj的嵌入向量,朴素聚合方法即是计算vi’和vj’对应元素的均值,并将它们连接到之前的特性vi’。 然而,尽管有一些基本聚合器的变体(例如pooling aggregator and LSTM aggregator),现有的图卷积聚合方法在ODMP场景下缺乏充分捕捉不同网格之间关系的能力,无法进行需求建模,原因是这些聚合器在融合每个网格邻居的所有特性时无法区分它们的重要性,直观地说,两个网格之间的地理距离越近,它们的属性就越相似。此外,在语义邻居集中,邻居网格的受欢迎程度应该对聚合过程产生影响,因为它保留了具有代表性的出行模式。

在此基础上,提出了一种预加权聚合器,该聚合器可以选择性地将重点放在网格嵌入的重要邻域上。对于网格的地理邻域,我们利用相邻区域之间的距离作为聚合器的权重因子。因此,我们将地理邻域的预加权聚合器表示为:

对于语义邻域,degree代表OD流量,即两个区域之间的OD流(从i到j或从j到i),ϵ是一个非常小的值接近于零,以防degree(gj) = 0。

注意,两种表示都是随时间变化的,是一个动态指标。最后,将两种语义表示连接起来得到一个网格最终的语义表示。

4.2 Multi-Task Learning

本节出了一种具有periodic-skip LSTM的多任务学习方案,如图4所示。

(1) Periodic-Skip LSTM

为了全面了解乘客需求的动态模式,我们从UCAR数据集中随机抽取了5天,并在图5中绘制了每天的每小时乘客需求。

显然,与此同时,乘客需求的数量也有类似的模式。然而,在预测下一小时的乘客需求时,LSTM中的序列建模方案将迫使模型从之前的连续小时中收集信息。这可能对需求预测没有多大帮助,因为不相关的输入会产生很多噪音。为此,为了更好地对周期性进行建模,我们取网格嵌入序列{vi1, vi2,…, vit}作为输入,进一步将Eq.(8)转换为Periodic-Skip LSTM,跳过不相关的顺序模式。

其中p是跳过的隐藏状态数。

(2)main task

由periodic-skip LSTM框架,我们可以得到在时间t网格gi的向量表示。为了得到OD矩阵中每一项mij的值,我们构造了一个过渡矩阵Wm∈R(d×d)以对OD流进行建模。此时,预测值m可由下式计算。损失函数为均方误差。

(3)Two Subtasks: Predicting the In- and Out-Degrees

在预测上述总体OD矩阵的主要任务的同时,我们还分别对流入流(p)和流出流(q)进行了建模。其中Win和Wout是用于将网格嵌入投影到标量的两个投影权重。损失函数为均方误差,G是网格的个数。

(4)损失函数

针对上述三个任务,我们将主要任务的损失和两个子任务的损失结合起来,制定出总体损失函数。

实验部分不再详述。

5、总结

总体而言,文章的研究角度确实很新,值得借鉴。但这篇文章仍有一个致命弱点,即没有考虑行程时间,由O点到D点需要一定的行程时间,因此实时的OD矩阵是不可能得到的,因此利用真实的历史OD矩阵作为输入在实时预测中是不可行的。

6、Attention

如果你和我一样是轨道交通、道路交通、城市规划相关领域的,可以加微信:Dr_JinleiZhang,备注“进群”,加入交通大数据交流群!希望我们共同进步!

交通预测新视角-基于GCN的出租车OD需求预测相关推荐

  1. (21) 出行需求预测新视角---基于图卷积神经网络GCN的出租车OD需求预测

    交通预见未来(21): 出行需求预测新视角---基于图卷积神经网络GCN的出租车OD需求预测 1.文章信息 <Origin-Destination Matrix Prediction via G ...

  2. 时间序列预测新范式——基于迁移学习的AdaRNN方法

    本文转载自知乎王晋东不在家的<小王爱迁移>系列之十五:自动选择源域的迁移学习方法 源地址为:<小王爱迁移>系列之32:时间序列预测新范式--基于迁移学习的AdaRNN方法 - ...

  3. (17) 基于时空网络的出租车OD需求预测

    交通预见未来(17): 基于时空网络的出租车OD需求预测 1.文章信息 <Contextualized Spatial–Temporal Network for Taxi rigin-Desti ...

  4. 基于时空网络的出租车OD需求预测-简介

    最近单曲循环的一首歌,分享给大家~ 1.文章信息 <Contextualized Spatial–Temporal Network for Taxi rigin-Destination Dema ...

  5. (23) 基于深度学习框架的出租车OD需求预测应用对比

    交通预见未来(23): 基于深度学习框架的出租车OD需求预测应用对比 文章信息 前面看了 OD需求预测的文章,有一些相似之处,拿出来放到一起对比下. 一.<Contextualized Spat ...

  6. 混合时空图卷积网络:利用导航数据改进交通预测效果 | KDD 2020

    作者 | 高德机器学习团队 出品 | AI科技大本营(ID:rgznai100) 引言 时空预测(spatio-temporal forecasting)在天气预报.运输规划等领域有着重要的应用价值. ...

  7. 网约车需求预测文献阅读笔记(一)《基于图卷积的出发地—目的地矩阵预测:旅客需求建模的新视角》

    文献阅读笔记:<基于图卷积的出发地-目的地矩阵预测:旅客需求建模的新视角> 摘要 现有研究不足 研究挑战(难点) 本文的贡献 准备工作 定义1:格子 定义2:时间片 定义3:OD矩阵 模型 ...

  8. 基于注意力时空图神经网络的交通预测

    文章信息 本周阅读的论文是题目为<Learning Dynamics and Heterogeneity of Spatial-Temporal Graph Data for Traffic F ...

  9. 基于图关系归纳偏差的小样本交通预测

    文章信息 <Few-shot Traffic Prediction with Graph Relational Inductive Biases>,香港理工大学团队发表,近期投稿在AAAI ...

最新文章

  1. 一个html文件放到服务器访问,访问云服务器里面的html文件
  2. Google开源word2vec,文本相似度计算工具
  3. 如何正确刷题计算机考研,2020考研:4个方法教你数学如何正确刷题!
  4. 谷歌语音文本转换python代码_python - Python Google语音到文本的转换 - SO中文参考 - www.soinside.com...
  5. 从零开始学 Java - Spring MVC 统一异常处理
  6. express 框架之 路由与中间件
  7. 洛谷 P1754 球迷购票问题
  8. 数据完整性(python 版)
  9. win7 oracle数据库删除用户名,图文帮你win7系统删除Oracle数据库中的用户的具体方法...
  10. 手动添加linux用户
  11. Linux进程管理工具 Supervisor详解
  12. 解析库之——beautifulsoup
  13. SCADA电力系统基础业务知识
  14. 雪球网热股榜--Ajax动态网页爬虫
  15. maven打包报错failed: Unable to find a single main class from the following candidates []
  16. 积分商城系统积分兑换运营开源架构
  17. Android TextView设置背景色和边框
  18. 计算机主板电感有正负极么,功率电感有没有方向?正负极区分
  19. 面试腾讯Java后台岗,处女面秒挂,17天后竟然拿下字节跳动offer
  20. 一本关于互联网与职场的湿暗后厨,和99元人民币的关系

热门文章

  1. 键盘计算机编程,键盘接口与编程
  2. 基于paddledetection在ROS中搭建红绿灯检测控制车模运动(2)—— 数据集制作以及训练
  3. Unity学习之游戏初步策划
  4. Windows echo 命令
  5. 如何使用华为云WeLink直播一场会议?
  6. 原来,这就是以太坊3.0的样子
  7. LeetCode 855. 考场就座
  8. 基于Golang TCP 开发网络游戏 CLI四川麻将 - 1.选型与结构定义
  9. C语言.内存管理malloc realloc calloc free memset bzero
  10. 植物大战僵尸原版--简单修改攻略