随着时空数据集的数量,数量和分辨率的迅速提高,传统的数据挖掘方法,尤其是基于统计的处理此类数据的方法正变得不知所措。近年来,随着深度学习技术的进步,诸如卷积神经网络(CNN)和递归神经网络(RNN)之类的深度学习模型由于在空间和时间上都具有强大的层次特征学习能力而在各种机器学习任务中都取得了相当大的成功。领域,并已广泛应用于各种时空数据挖掘(STDM)任务,例如预测学习,表示学习,异常检测和分类。在本文中,我们提供了有关将深度学习技术应用于STDM的最新进展的全面调查。我们首先对时空数据的类型进行分类,然后简要介绍STDM中使用的流行深度学习模型。然后介绍了一个框架,以显示针对STDM的深度学习模型利用的一般流程。接下来,我们根据ST数据的类型,数据挖掘任务和深度学习模型对现有文献进行分类,然后将STDM深度学习在不同领域的应用包括交通,气候科学,人员流动,基于位置的社交网络,犯罪分析和神经科学。最后,我们总结了当前研究的局限性,并指出了未来的研究方向。
时空数据挖掘(STDM)在大数据时代变得越来越重要,因为大型时空数据集(如地图,虚拟地球仪,遥感图像,十年一次的人口普查和GPS轨迹)的可用性和重要性日益增加。 STDM在各个领域具有广泛的应用,包括环境和气候(例如风预测和降水预测),公共安全(例如犯罪预测),智能交通(例如交通流量预测),人员流动。(例如,人类轨迹模式挖掘)等。由于多种原因,用于处理交易数据或图形数据的经典数据挖掘技术在应用于时空数据集时通常效果不佳。首先,ST数据通常嵌入在连续的空间中,而传统的数据集(例如交易和图表)通常是离散的。其次,ST数据的模式通常同时具有空间和时间特性,这更复杂,并且传统方法难以捕获数据相关性。最后,传统的基于统计的数据挖掘方法中的常见假设之一是数据样本是独立生成的。但是,当进行时空数据分析时,关于样本独立性的假设通常不成立,因为ST数据倾向于高度自相关。
近年来,随着深度学习的盛行,尽管在过去的几十年中对STDM进行了广泛的研究,但一个共同的问题是传统方法在很大程度上依赖于特征工程。换句话说,用于STDM的常规机器学习和数据挖掘技术在处理原始格式的自然ST数据的能力方面受到限制。例如,要从fMRI数据分析人的大脑活动,通常需要仔细的特征工程和相当多的领域专业知识来设计特征提取器,以将原始数据(例如,扫描的fMRI图像的像素值)转换为合适的内部表示形式或特征向量。近年来,随着深度学习的盛行,卷积神经网络(CNN)和递归神经网络(RNN)等各种深度学习模型因其强大的层次特征学习能力而在各种机器学习任务中取得了相当大的成功,并且已经广泛使用应用于许多领域,包括计算机视觉,自然语言处理,推荐,时间序列数据预测和STDM。与传统方法相比,STDM深度学习模型的优势如下。
自动特征表示学习 深度学习模型可以从原始ST数据中自动学习分层特征表示,这与需要手工制作特征的传统机器学习方法有显着不同。 在STDM中,数据的空间邻近性和长期时间相关性通常很复杂且难以捕获。 通过CNN中的多层卷积操作和RNN的递归结构,可以直接从原始数据中自动有效地学习ST数据中的此类空间邻近性和时间相关性。
强大的函数逼近能力 从理论上讲,深度学习可以逼近任何复杂的非线性函数,并且只要其具有足够的层和神经,就可以拟合任何曲线。 深度学习模型通常由多层组成,每一层都可以被认为是具有池化,辍学和激活功能的简单但非线性的模块,因此它可以将特征表示从一个级别转换为更高级别和更抽象的表示 水平。 通过足够多的此类转换,可以学习非常复杂的功能,以使用更复杂的ST数据执行更困难的STDM任务。
图1显示了每年探索各种STDM任务的深度学习技术的论文数量。可以看到,过去三年中,论文数量呈显着增长趋势。从2012年到2015年,每年仅发表不到10篇相关论文。从2016年开始,这一数量迅速增加,许多研究人员针对不同应用领域中不同类型的ST数据尝试了不同的深度学习模型。 2018年,大约发表了90篇相关论文。目前尚无法获得2019年的完整数字,但我们认为增长趋势将在今年以及未来几年保持下去。鉴于问题的丰富性和实际应用的多样性,由于以下原因,迫切需要概述在STDM迅速发展的领域中探索深度学习技术的现有作品。它可以突出显示使用不同的深度学习模型来解决不同应用程序领域的STDM问题的异同。通过使得有可能看到深度学习模型(例如CNN和RNN)如何针对特定领域(例如,交通流量预测)中特定问题的深度开发,可以实现跨不同研究领域和应用领域的思想的异花授粉。运输)对于解决另一个领域的其他问题(例如,犯罪分析中的犯罪预测)可能很有用
有关STDM的相关调查 最近有一些调查从不同的角度回顾了某些情况下有关STDM的文献。 [9]和[143]讨论了在“大数据”时代用于遥感,气候科学和社交媒体分析等应用领域的STDM算法的计算问题。 [87]专注于时空数据的频繁模式挖掘。它指出了从ST数据中发现模式的挑战,并将模式分为三类:单个周期性模式;多轨迹上的成对运动模式和聚集模式。 [18]回顾了STDM研究和应用中的最新技术,重点放在时空数据的预测,聚类和可视化的数据挖掘任务上。 [130]从计算的角度回顾了STDM,并强调了STDM的统计基础。 [112]回顾了轨迹数据挖掘的方法和应用,轨迹数据挖掘是ST数据的一种重要类型。 [75]提供了对ST数据聚类的全面调查。 [4]讨论了不同类型的ST数据以及在分析每种类型的数据的背景下出现的相关数据挖掘问题。他们将有关STDM的文献分类为六个主要类别:聚类,预测学习,变更检测,频繁模式挖掘,异常检测和关系挖掘。但是,所有这些工作都是从传统方法而非深度学习方法的角度对STDM进行审查的。 [114]和[157]提供了一项调查,该调查特别侧重于利用深度学习模型来分析交通数据以提高交通系统的智能水平。总体上,对于探索STDM的深度学习技术仍然缺乏广泛而系统的调查。
首次调查据我们所知,这是第一份对近期探索STDM深度学习技术的著作进行回顾的调查。 鉴于近年来对时空数据分析进行深度学习的研究越来越多,我们首先对时空数据类型进行分类,然后介绍在STDM中广泛使用的流行的深度学习模型。 我们还总结了不同数据类型的数据表示形式,并总结了哪种深度学习模型适合处理ST数据的哪些类型的数据表示形式。
我们的贡献与现有作品相比,本文做出了重要贡献,总结如下:
首次调查据我们所知,这是第一份对近期探索STDM深度学习技术的著作进行回顾的调查。 鉴于近年来对时空数据分析进行深度学习的研究越来越多,我们首先对时空数据类型进行分类,然后介绍在STDM中广泛使用的流行的深度学习模型。 我们还总结了不同数据类型的数据表示形式,并总结了哪种深度学习模型适合处理ST数据的哪些类型的数据表示形式
通用框架 我们为基于深度学习的STDM提供了一个通用框架,该框架包括以下主要步骤:数据实例构建,数据表示,深度学习模型选择和解决STDM问题。 在框架的指导下,给定特定的STDM任务,人们可以更好地使用适当的数据表示形式,并为正在研究的任务选择或设计合适的深度学习模型。
全面调查 该调查提供了针对不同STDM问题使用深度学习技术的最新进展的全面概述,这些问题包括预测学习,表示学习,分类,估计和推论,异常检测等。 对于每项任务,我们将针对不同类型的ST数据提供具有代表性的作品和模型的详细说明,并进行必要的比较和讨论。 我们还将根据应用领域对当前的工作进行分类和总结,包括运输,气候科学,人类流动性,基于位置的社交网络,犯罪分析和神经科学
未来的研究方向 该调查还突出了一些尚待深入研究的未解决问题,并指出了未来可能的研究方向。
ST数据有多种类型,它们在不同的实际应用程序中的数据收集和表示方式不同。 不同的应用场景和ST数据类型导致不同类型的数据挖掘任务和问题表述。 不同的深度学习模型通常对ST数据的类型有不同的偏好,并且对输入数据格式有不同的要求。 例如,CNN模型设计为处理类似图像的数据,而RNN通常用于处理顺序数据。 因此,重要的是首先总结ST数据的一般类型并正确表示它们。 我们遵循并扩展了[4]中的分类,并将ST数据分为以下类型:事件数据,轨迹数据,点参考数据,栅格数据和视频
数据挖掘算法所操作的基本数据单元称为数据实例。 对于经典的数据挖掘设置,通常可以将数据实例表示为一组功能,这些功能带有用于监督学习的标签,而没有用于监督学习的标签。 在ST数据挖掘方案中,不同的ST数据类型有不同类型的数据实例。 对于不同的数据实例,存在几种类型的数据表示形式,用于表示数据以供深度学习模型进一步挖掘
数据实例 通常,ST数据可以概括为以下数据实例:点,轨迹,时间序列,空间图和ST栅格,如图5的左侧所示。ST点可以表示为包含以下内容的元组时态信息以及观察的一些其他功能,例如犯罪或交通事故的类型。除ST事件外,轨迹和ST点参考也可以形成为点。例如,可以将一条轨迹分解为几个离散的点,以计算在特定时隙中有多少条轨迹经过了特定区域。在某些应用中,除了形成为点和轨迹外,还可以将轨迹形成为时间序列。如果我们确定位置并计算穿过该位置的轨迹数,则它将形成一个时间序列数据。空间图的数据实例包含在每个时间戳处归档的整个ST中所有传感器的数据观测。例如,在时间t处部署在高速公路上的所有环形传感器的交通速度读数形成空间地图数据。 ST栅格数据的数据实例包含跨整个位置和时间戳集的测量。也就是说,ST栅格包含一组空间地图。
根据不同的应用程序和分析要求,可以从ST栅格中提取不同的数据实例作为时间序列,空间图或ST栅格本身。首先,对于某些时间序列挖掘任务,我们可以将在ST字段的特定ST网格处的测量视为时间序列。其次,对于每个时间戳,可以将ST栅格的测量结果视为空间地图。第三,人们还可以考虑跨越所有位置和时间戳的所有测量作为一个整体。在这种情况下,ST栅格本身可以是数据实例
数据表示。 对于上述五种类型的ST数据实例,通常使用四种类型的数据表示形式将其表示为各种深度学习模型,序列,图,二维矩阵和3维张量的输入,如右侧部分所示 图5。不同的深度学习模型需要不同类型的数据表示作为输入。 因此,如何表示ST数据实例取决于正在研究的数据挖掘任务和所选的深度学习模型。通常使用这种数据表示来促进CNN模型的利用[67],[118],[142]。尽管图也可以表示为矩阵,但在这里我们将图和图像矩阵归为两种不同类型的数据表示。这是因为图节点不像图像矩阵那样遵循欧几里得距离,因此处理图和图像矩阵的方式完全不同。稍后,我们将讨论有关处理两种类型的数据表示方法的更多详细信息。根据不同的应用,空间图可以表示为图形和矩阵。例如,在城市交通流量预测中,城市交通网络的交通数据可以表示为交通流量图[85],[155]或小区区域级交通流量矩阵[121],[137]。栅格数据通常表示为2D矩阵或3D张量。对于矩阵而言,这两个维度是位置和时间步长,对于张量而言,这三个维度是行区域单元格id,列区域id和时间戳。与张量相比,矩阵是一种更简单的数据表示格式,但它会丢失位置之间的空间相关信息。两者都广泛用于表示栅格数据。例如,在风能预测中,通常将部署在不同位置的多个风速计的风速时间序列数据合并为一个矩阵,然后输入到CNN或RNN模型中,以进行未来风速预测[96],[200]。在神经科学中,人的功能磁共振成像数据是一系列扫描的功能磁共振成像大脑图像,因此可以像视频一样表示为张量。许多作品使用fMRI图像张量作为CNN模型的输入,用于特征学习以检测大脑活动
[66],[76]和诊断疾病[116],[158]。
在本小节中,我们简要介绍了几种广泛用于STDM的深度学习模型,包括RBM,CNN,GraphCNN,RNN,LSTM,AE / SAE和Seq2Seq。
受限玻尔兹曼机(RBM)。 受限玻尔兹曼机是一种两层随机神经网络[53],可用于降维,分类,特征学习和协作过滤。 如图6所示,RBM的第一层称为带有神经元节点{v1,v2,… vn}的可见层或输入层,第二层称为带有神经元节点{h1, h2,… hm}。 作为完全连接的二部无向图,RBM中的所有节点通过无向权重边{w11,… wnm}跨层相互连接,但是同一层中没有两个节点被链接。 RBM的标准类型具有二进制值的节点,并且还具有权重。 RBM尝试学习二进制代码或输入的表示形式,并且根据特定任务,可以有监督或无监督的方式训练RBM。 RBM通常用于学习功能
CNN。卷积神经网络(CNN)是一类深层的前馈人工神经网络,用于分析视觉图像。典型的CNN模型通常包含以下几层,如图7所示:输入层,卷积层,池化层,完全连接层和输出层。卷积数将通过计算神经元的权重与连接到输入体积的区域之间的标量积来确定其神经元连接到输入局部区域的输出。然后,池化层将简单地沿着给定输入的空间维度执行下采样,以减少参数的数量。全连接层将一层中的每个神经元连接到下一层中的每个神经元,以学习用于分类的最终特征向量。它在原则上与传统的多层感知器神经网络(MLP)相同。与传统的MLP相比,CNN具有以下与众不同的特征,这些特征使它们在视觉问题上实现了很多通用化:3D神经元体积,局部连接性和共享权重。 CNN用于处理图像数据。由于其在空间域中捕获相关性的强大功能,现在已广泛用于挖掘ST数据,尤其是空间地图和ST栅格。
GraphCNN。 CNN设计为处理可在欧几里得空间中表示为规则网格的图像。但是,在很多应用程序中,都是从非欧几里德域生成数据的,例如图形。最近,对GraphCNN进行了广泛研究,以将CNN泛化为结构化数据[160]。图8示出了GraphCNN模型的结构示意图。图卷积操作将卷积变换应用于每个节点的邻居,然后进行池化操作。通过堆叠多个图卷积层,每个节点的潜在嵌入可以包含来自距离多跳的邻居的更多信息。在生成图中节点的潜在嵌入之后,可以轻松地将潜在嵌入馈送到前馈网络以实现回归目标的节点分类,也可以汇总所有节点嵌入以表示整个图,然后执行图分类和回归。由于它具有捕获节点相关性和节点特征的强大功能,因此现在广泛用于挖掘图结构化的ST数据,例如网络规模的流量数据和大脑网络数据
RNN和LSTM。递归神经网络(RNN)是一类人工神经网络,其中节点之间的连接沿序列形成有向图。 RNN旨在识别顺序特征并使用模式来预测下一个可能的情况。它们被广泛用于语音识别和自然语言处理的应用中。图9(a)显示了RNN模型的一般结构,其中Xt是输入数据,A是网络的参数,ht是学习的隐藏状态。可以看到前一个时间步tt1的输出(隐藏状态)被输入到下一个时间步t的神经。因此,历史信息可以存储并传递给将来。标准RNN的一个主要问题是,由于梯度消失的问题,它仅具有短期记忆。长短期记忆(LSTM)网络是递归神经网络的扩展,它能够学习输入数据的长期依赖性。由于使用了特殊的存储单元,如图9(b)的中间部分所示,LSTM使RNN能够长时间记住其输入。 LSTM单元由三个门组成:输入,忘记和输出门。这些门决定是否让新输入进入(输入门),删除信息(因为它不重要)(忘记门)或使其在当前时间步影响输出(输出门)。RNN和LSTM都广泛用于处理序列和时间严重数据,以学习ST数据的时间依赖性。
Seq2Seq。 序列到序列(Seq2Seq)模型的目的是将固定长度的输入与固定长度的输出映射,其中输入和输出的长度可能不同[138]。 它广泛用于各种NLP任务,例如机器翻译,语音识别和在线聊天机器人。 尽管最初提出解决NLP任务的建议,但Seq2Seq是通用框架,可用于任何基于序列的问题。 如图10所示,Seq2Seq模型通常由3个部分组成:编码器,中间(编码器)矢量和解码器。 由于捕获序列数据之间的依存关系的强大能力,Seq2Seq模型被广泛用于ST预测任务中,其中ST数据具有较高的时间相关性,例如城市人群流量数据和交通数据
自动编码器(AE)和堆叠式AE。 自动编码器是一种人工神经网络,旨在以无监督的方式学习有效的数据编码[53]。 如图11所示,它具有编码器功能,可创建一个包含描述输入的代码的隐藏层(或多层)。 然后有一个解码器,它创建来自隐藏层的输入的重构。 自动编码器通过学习数据中的相关性,在隐藏层或瓶颈层中创建数据的压缩表示形式,这可以视为减少维度的一种方式。 作为一种有效的无监督特征表示学习技术,AE有助于进行各种下游数据挖掘和机器学习任务,例如分类和聚类。 堆叠式自动编码器(SAE)是由多层稀疏自动编码器组成的神经网络,其中每层的输出都连接到连续层的输入[7]。
//往下就不翻译其他类型的数据了,主要翻译轨迹数据的处理
在本节中,我们将介绍如何使用深度学习模型总体上解决STDM问题。 首先,我们将提供一个框架,描述包含ST数据实例构造,ST数据表示,深度学习模型部分和设计的管道,最后解决该问题。 接下来,我们将详细介绍这些主要步骤。
图13显示了使用深度学习模型进行ST数据挖掘的通用管道。给定从各种位置传感器收集的原始ST数据,包括事件数据,轨迹数据,点参考数据和栅格数据,首先构建数据实例用于数据存储。如前所述,ST数据实例可以是点,时间序列,空间图,轨迹和ST栅格。为了将深度学习模型应用于各种挖掘任务,ST数据实例需要进一步表示为一种特定的数据格式,以适合深度学习模型。 ST数据实例可以表示为序列数据,2D矩阵,3D张量和图形。然后对于不同的数据表示形式,不同的深度学习模型适用于处理它们。 RNN和LSTM模型擅长处理具有短期或长期时间相关性的序列数据,而CNN模型可以有效地捕获图像中的空间相关性(如矩阵)。结合RNN和CNN的混合模型可以捕获ST栅格数据的张量表示的空间和时间相关性。最后,选定的深度学习模型用于解决各种STDM任务,例如预测,分类,表示学习等。
A. ST数据预处理
ST数据预处理旨在将ST数据实例表示为深度学习模型可以处理的适当数据表示格式。通常,取决于不同的模型,深度学习模型的输入数据格式可以是矢量,矩阵或张量。图12显示了ST数据实例及其对应的数据表示。可以看到,通常一种类型的ST数据实例对应于一种典型的数据表示形式。轨迹和时间序列数据可以自然地表示为序列数据。空间地图数据可以表示为2D矩阵。 ST栅格可以表示为2D矩阵或3D张量。但是,并非总是如此。例如,有时将轨迹数据表示为矩阵,然后应用CNN模型以更好地捕获空间特征[24],[67],[103],[117],[150]。首先,将测量轨迹的ST字段(例如城市)划分为网格单元区域。然后,可以将ST字段建模为矩阵,每个单元格区域代表一个条目。如果轨迹在单元格区域上移动,则将相应的条目值设置为1;否则,将其设置为1。否则将其设置为0。这样,轨迹数据可以表示为矩阵,因此可以应用CNN。有时,空间图被表示为图形。例如,通常将以快速方式部署的传感器建模为图形,其中节点是传感器,边缘表示两个相邻传感器之间的路段。在这种情况下,通常使用GraphCNN模型来处理
传感器图形数据并预测所有节点[22],[85]的未来流量(量,速度等)。根据数据类型和应用,ST栅格数据可以表示为2D矩阵或3D张量。例如,一系列的fMRI脑图像数据可以表示为张量,并输入到用于疾病分类的3D-CNN模型中[78],[116],也可以通过提取之间的时间序列相关性将其表示为矩阵。用于大脑活动分析的成对的大脑区域[48],[113]。
B 深度学习模型的选择与设计
使用ST数据实例的数据表示,下一步是将它们输入到针对不同STDM任务选择或设计的深度学习模型中。如图12的右侧所示,每种类型的数据表示都有不同的深度学习模型选项。序列数据可用作模型的输入,包括RNN,LSTM,GRU,Seq2Seq,AE,混合模型等。 RNN,LSTM和GRU都是适用于预测序列数据的递归神经网络。序列数据也可以通过Seq2Seq模型进行处理。例如,在多步流量预测中,通常使用Seq2Seq模型,该模型由编码器层中的一组LSTM单元和解码器层中的一组LSTM单元组成,以预测接下来几个时隙中的业务量速度或流量同时[89],[90]。作为特征学习模型,AE或SAE可以用于各种数据表示,以学习低维特征编码。序列数据也可以使用AE或SAE编码为低维特征。 GraphCNN特别设计用于处理图形数据,以捕获相邻节点之间的空间相关性。如果输入是单个矩阵,则通常使用CNN模型;如果输入是矩阵序列,则可以根据所研究的问题来应用RNN模型,ConvLSTM和混合模型。如果目标仅是功能学习,则可以应用AE和SAE模型。对于张量数据,通常由3D-CNN或3D-CNN与RNN模型的组合来处理。表一总结了使用深度学习模型处理不同类型的ST数据的工作。如表中所示,CNN,RNN及其变体(例如GraphCNN和ConvLSTM)是STDM两种使用最广泛的深度学习模型。 CNN模型主要用于处理空间地图和ST栅格。一些作品还使用CNN处理轨迹数据,但目前尚无使用CNN进行时间序列数据学习的作品。 GraphCNN模型是专门为处理图形数据而设计的,可以将其分类为空间图。包括LSTM和GRU的RNN模型可广泛应用于处理轨迹,时间序列和空间图序列。 ConvLSTM可以被视为结合RNN和CNN的混合模型,通常用于处理空间地图。 AE和SDAE主要用于从时间序列,轨迹和空间地图中学习特征。 Seq2Seq模型通常设计用于顺序数据,因此仅用于处理时间序列和轨迹。混合模型对于STDM也很常见。例如,可以将CNN和RNN堆叠起来以学习空间特征
首先,然后捕获历史ST数据之间的时间相关性。可以将混合模型设计为适合所有四种类型的数据表示形式。其他模型,例如网络嵌入[164],多层感知器(MLP)[57],[186],生成对抗网络(GAN)[49],[93],残差网络[78],[89],深层在最近的著作中也使用了强化学习[50]等
S. Dabiri and K. Heaslip. Inferring transportation modes from gps trajectories using a convolutional neural network. Transportation research part C: emerging technologies, 86:360–371, 2018.
A. Karatzoglou, N. Schnell, and M. Beigl. A convolutional neural network approach for modeling semantic trajectories and predicting future locations. In International Conference on Artificial Neural Networks, pages 61–72. Springer, 2018.
J. Lv, Q. Li, Q. Sun, and X. Wang. T-conv: A convolutional neural network for multi-scale taxi trajectory prediction. In Big Data and Smart Computing (BigComp), 2018 IEEE International Conference on, pages 82–89. IEEE, 2018.
Q. Gao, F. Zhou, K. Zhang, G. Trajcevski, X. Luo, and F. Zhang. Identifying human mobility via trajectory embeddings. In Proceedings of the 26th International Joint Conference on Artificial Intelligence, pages 1689–1695. AAAI Press, 2017.
G. Yang, Y. Cai, and C. K. Reddy. Recurrent spatio-temporal point process for check-in time prediction. In Proceedings of the 27th ACM International Conference on Information and Knowledge Management, pages 2203–2211. ACM, 2018.
Q. Liu, S. Wu, L. Wang, and T. Tan. Predicting the next location: A recurrent model with spatial and temporal contexts. In AAAI, pages 194–200, 2016.
K. Xu, Z. Qin, G. Wang, K. Huang, S. Ye, and H. Zhang. Collision free lstm for human trajectory prediction. In International Conference on Multimedia Modeling, pages 106–116. Springer, 2018.
J. Feng, Y. Li, C. Zhang, F. Sun, F. Meng, A. Guo, and D. Jin. Deep move: Predicting human mobility with attentional recurrent networks. In Proceedings of the 2018 World Wide Web Conference on World Wide Web, pages 1459–1468. International World Wide Web Conferences Steering Committee, 2018.
Real-Time Taxi-Passenger Prediction with LCNN
C.解决STDM问题
最后,选择或设计的深度学习模型用于解决各种STDM任务,例如分类,预测性学习,表示性学习和异常检测。 请注意,通常如何选择或设计深度学习模型取决于特定的数据挖掘任务和输入数据。 但是,为了展示框架的流程,我们首先展示了深度学习模型,然后展示了数据挖掘任务。 在下一节中,我们将对不同的STDM问题进行分类,并根据问题和ST数据类型详细审查工作。
在本节中,我们将对STDM问题进行分类,并介绍为解决这些问题而建议的相应深度学习模型。图14显示了由深度学习模型解决的各种STDM问题的分布,包括预测,表示学习,检测,分类,推理/估计,推荐等。可以看到研究的STDM问题中最大的类别是预测。超过70%的相关论文致力于研究ST数据预测问题。这主要是因为
准确的预测在很大程度上取决于高质量的特征,而深度学习模型在特征学习中尤其强大。第二大问题类别是表示学习,它旨在以无监督或半监督的方式学习各种ST数据的特征表示。深度学习模型还用于其他STDM任务,包括分类,检测,推断/估计,推荐等。接下来,我们将详细介绍主要的STDM问题,并总结相应的基于深度学习的解决方案
A.预测学习
预测学习的基本目标是根据ST数据的历史数据预测ST数据的未来观察。 对于不同的应用程序,输入和输出变量都可以属于不同类型的ST数据实例,从而产生了各种预测性学习问题公式。 接下来,我们将基于ST数据实例的类型作为模型输入来介绍预测问题。
时间序列。在道路交通预测中,道路或高速公路上的交通流量数据可以建模为时间序列。最近,许多作品尝试了各种深度学习模型来进行道路交通预测[104],[136],[191]。 [104]首次利用堆叠式自动编码器从交通流时间序列数据中学习特征,以进行路段级交通流预测。 [136]将高速公路上的交通流量数据视为时间序列,并建议使用“深度信仰”网络(DBN)根据先前的流量观察结果预测未来的流量。 [126]研究了出租车需求预测问题,并以时间序列对特定区域的出租车需求建模。提出了一个具有全连接层的深度学习模型,以从出租车需求的历史时间序列中学习特征,然后将该特征与其他上下文特征(例如天气和社交媒体文本)集成在一起,以预测未来需求。 RNN和LSTM被广泛用于时间序列ST数据预测。 [90]集成了LSTM和序列到序列模型来预测路段的交通速度。除了交通速度信息外,他们的模型还考虑了其他外部特征,包括道路的地理结构,国家庆典等公共社交活动以及在线人群查询旅行信息。天气变量(例如风速)通常也被建模为时间序列,然后将RNN / LSTM模型应用于未来的天气预报[14],[17],[55],[97],[124],[179]。例如,[17]提出了一个概率风速预报的集成模型。该模型将传统的风速预测模型与小波阈值降噪(WTD)和自适应神经模糊推理系统(ANFIS)与递归神经网络(RNN)集成在一起。在功能磁共振成像数据分析领域,功能磁共振成像时间序列数据通常用于研究功能性大脑网络并诊断疾病。 [34]建议使用LSTM模型直接从静息状态fMRI时间序列对自闭症谱系障碍(ASD)和典型对照进行分类。 [59]开发了一种名为DCAE的深度卷积自动编码器模型,用于以无监督的方式从复杂的大规模tfMRI时间序列中学习中级和高级功能。时间序列数据通常不包含空间信息,因此在基于深度学习的预测模型中未明确考虑数据之间的空间相关性。
轨迹。当前,根据轨迹的数据表示,将两种类型的深度学习模型RNN和CNN用于轨迹预测。首先,轨迹可以表示为位置序列,如图12所示。在这种情况下,可以应用RNN和LSTM模型[38],[64],[77],[88],[135],[ 163],[165]。 [163]提出了无碰撞LSTM,它通过添加排斥池来扩展经典LSTM,以共享相邻行人的隐藏状态以进行人体轨迹预测。无碰撞LSTM可以根据行人过去的位置生成未来序列。 [64]研究了城市人口流动预测问题,该问题给出了一个人观察到的流动性的几个步骤,试图预测他/她将在下一城市去哪里。他们提出了带有RNN的深度序列学习模型,以有效预测城市人口流动性。 [135]提出了一个名为DeepTransport的模型,用于从一组个人的GPS轨迹中预测步行,乘火车,乘公共汽车等运输方式。四个LSTM层用于构建DeepTransport,以预测用户将来的运输方式。
轨迹也可以表示为矩阵。在这种情况下,可以将CNN模型应用于更好地捕获空间相关性[67],[103],[142]。 [67]提出了一种基于CNN的方法来表示语义轨迹和预测未来位置。在语义轨迹中,每个访问的位置都与语义含义相关联,例如房屋,工作,商店等。他们将语义轨迹建模为矩阵,其二维是语义含义和轨迹ID。矩阵被输入到具有多个卷积层的CNN中,以学习潜在特征以用于下次访问的语义位置预测。 [103]将轨迹建模为二维图像,其中图像的每个像素代表是否在轨迹中访问了相应的位置。然后,采用多层卷积神经网络结合多尺度轨迹模式,进行滑行轨迹的目的地预测。将轨迹建模为类似图像的矩阵还用于其他任务,例如异常检测和推断[111],[150],这将在后面详细介绍
…
七。结论
在本文中,我们对探索STDM深度学习技术的最新进展进行了全面概述。我们首先将ST数据的不同数据类型和表示形式进行分类,并简要介绍用于STDM的流行深度学习模型。对于不同类型的ST数据及其表示,我们展示了适合处理它们的相应深度学习模型。然后,我们给出了一个通用框架,该框架显示了利用深度学习模型解决STDM任务的管道。在该框架下,我们根据ST数据类型和STDM任务的分类概述当前的工作,包括预测学习,表示学习,分类,估计和推断,异常检测等。接下来,我们总结了深度学习技术在STDM的不同领域中的应用,这些领域包括交通运输,按需服务,气候和天气,人类流动性,基于位置的社交网络(LBSN),犯罪分析和神经科学。最后,我们列出了一些尚待解决的问题,并指出了这项快速发展的研究的未来研究方向。