从《Urban Anomaly Analytics: Description,Detection,and Prediction》说起

      《Urban Anomaly Analytics: Description,Detection,and Prediction》是Mingyang Zhang,Yu Zheng等人于2020年4月发表的一篇综述性文章,该文概述了最新的城市异常检测技术的研究进展,涵盖所需的数据来源、数据表现形式、预测算法、异常检测算法等,对于从事交通领域研究的初学者颇具启发性意义。

目录

1 概述

2 城市数据

2.1 数据类型

2.2 数据表示

3 城市异常事件 

4 算法 

4.1 异常检测

4.1.1 基于时空特征

 4.1.2 基于城市动态模式

4.1.3 基于视频的异常检测 

4.2 预测

4.2.1 分类方法

4.2.2 回归方法

5 开放性挑战和问题

5.1 数据挑战

5.1.1 数据种类

5.1.2 数据失衡

5.1.3 数据依赖

5.2 开放性问题

5.2.1 可靠检测

5.2.2 精确预测

5.2.3 原因诊断


1 概述

城市交通异常事件如交通拥堵、人群意外聚集等如果不处理好,可能会对公共安全与稳定造成巨大威胁。若我们能提前预测或检测到此类异常状况,则可采取有效措施,降低事态发生的严重性,也可采用此类技术合理规划人们的出行和旅游路线等,节约时间、提高生活质量。城市异常检测的数据来源于城市中广泛分布的各类传感器和智能设备,被称之为城市大数据,与其他类型的数据区别在于:

  1. 数据量大。大量的城市活动在社交媒体平台上留下了丰富的数字足迹,如车辆轨迹、帖子等。
  2. 形式多样。来源的多样化使得数据形式多样,如监控视频、GPS等。

此外,城市数据与时间及位置标签相关联,在不同的数据点之间带来复杂的时空相关性和依赖性

在城市大数据时代,也形成了新的城市异常分析框架:利用数据驱动智能,自动检测和预测城市异常。 例如,许多出租车配备的GPS设备,能够以二级采样率报告汽车的精确位置,通过这些定位序列,我们可以通过观察车辆的速度和路径选择,快速了解出租车的行驶轨迹,进而推断出区域交通状况,发现交通异常。

数据驱动的城市异常检测逻辑图如下:

 

从《Urban Anomaly Analytics: Description,Detection,and Prediction》说起_第1张图片

  • Urban Data:城市数据是由分布在城市的传感器产生的时空数据
  • Urban Dynamics:城市动态是指城市物理状态的变化,包括城市人群或交通流等城市人的流动性和城市环境的变化。
  • Urban Events:城市事件是指发生在城市地区的社会或个人活动,包括常规的城市人类活动或环境变化的正常城市事件和突发性不规则事件的异常城市事件

真实世界的逻辑为城市事件是城市动态的根本原因。如人类和车辆的移动,往往都是与特定城市事件相对应驱动的。城市动态影响城市数据。如人群的聚集使连接到附近手机信号塔的手机数量大幅增加。而数据驱动的与此相反。城市动态是用城市数据来描述的城市动态揭示了城市潜在的事件。通过检测城市动态中的异常模式或预测城市动态异常,最终实现城市异常检测或预测的目的。

根据上述逻辑,提出数据驱动的城市异常分析的总体框架。各类型城市数据首先以特定的数据结构表示,然后将数据导入检测或预测模型,以识别或预测有关城市异常的发生。如下图:

从《Urban Anomaly Analytics: Description,Detection,and Prediction》说起_第2张图片

接下来,将由这四部分做具体介绍。


2 城市数据

2.1 数据类型

根据数据类型和属性将城市数据集划分为八个类别。结构化数据:轨迹行程记录城市传感器记录移动电话呼叫详细记录(CDRs)事件记录环境数据。非结构化数据:社交媒体数据监控摄像头数据

  • 轨迹:由一系列时间-位置记录组成,GPS设备以二级采样率报告这些记录。
  • 旅行记录:通常是从出租车和共享单车系统中收集的。记录包含开始位置、结束位置、行程距离和行程持续时间。人们聚集的事件可通过查看出租车行程记录来发现。
  • CDR:包括通话的时间和位置信息,使用相关基站的位置作为用户位置,被广泛用于估计人类的流动性和人口分布。
  • 城市传感器记录:常见的传感器如道路上的环形探测器,可以用来评估车辆速度和路况;公交读卡机用来记录人流。
  • 事件记录:全面记录了事件发生的时间、地点和描述。例如交通管理部门提供的交通事故记录可在多个城市使用。
  • 环境数据:环境数据作为附加信息,通常用于辅助异常检测和预测。例如,由于恶劣天气是交通事故的一类主要原因,因此天气数据被广泛应用于交通异常检测中。
  • 社交媒体数据:社交媒体如Twitter和微博的数据也被广泛用于事件发现。其通常不单独使用,例如将社交媒体数据的主要分布作为特征,与其他类型的城市数据一起用于多视图异常检测和预测。
  • 监控摄像头数据:监控摄像头在捕捉和监控人类移动方面起着至关重要的作用。

2.2 数据表示

城市数据需通过数据结构来表示,其选择取决于城市数据的自然属性,考虑空间和时间关系。有五种常用的表示城市数据的数据结构,分别是点(point)序列(sequence)矩阵(matrix)张量(tensor)图(graph)

  • 点:没有考虑城市数据实例之间的空间和时间关系,通常用来表示被动收集的城市数据。连续数据实例之间的时间间隔不固定,产生的位置也不确定,难以对它们的时间依赖性和空间关系进行建模。
  • 序列:一些城市数据以特定采样率生成,自然地形成时间序列(time series)可以用序列(sequence)表示。序列保留了城市数据实例的时间顺序,但失去了空间关系。
  • 矩阵:如果城市数据是多元的时间序列,则我们通常将其按指定长度截取,组成矩阵。矩阵的第二个维度可以是区域或特征。虽然考虑了多个位置,但位置之间的关系被忽略,因此,矩阵表示只能保留时间相关性。
  • 张量:用于表示城市数据包含的时间、地点、特征等多维信息。可以将城市区域划分为n*n个网格,每个区域都可组成一个相同维度、大小的矩阵,多矩阵组成张量。这样保留了地理上的邻接关系。
  • 图:以位置为节点,区域间的交通流决定边的权重构建图,可保留有限的城市数据实例之间的空间关系。

下图表示常见城市数据类型与数据表示之间的对应关系:

从《Urban Anomaly Analytics: Description,Detection,and Prediction》说起_第3张图片

 


3 城市异常事件 

接下来介绍四种最常被研究的城市异常事件:交通异常人群意外聚集环境异常个体异常

  • 交通异常:主要有两种类型:
  1. 交通拥堵

  2. 道路管理

交通异常分析工作分为两类:

  1. 局部交通异常分析:将路网视为独立路段的组合,并检测或预测每个路段的异常情况。首先提取不同路段的车速等交通特征,然后在特征空间中应用一般的异常检测方法,如统计方法等。

  2. 群体交通异常检测:路段视为不独立。由于交通异常通常影响多个路段,因此若将路网看做一张图,则交通异常是一个异常子图。

  • 人群意外聚集:人群意外聚集导致的事故如上海外滩灯光秀踩踏事故可通过早期预测而避免。地区人口密度的增加可反映在城市数据域,如基站周围区域用户数量突增。
  • 环境异常:目前环境异常研究的重点是对城市环境异常风险的评估和成因的追踪。常见异常如水污染、火灾风险等。
  • 个体异常:由于个别人原因造成的异常,如犯罪和非法活动。大规模异常事件是由大量个体异常组成,因此也有研究意义

4 算法 

4.1 异常检测

城市异常检测散发可分为三大类:基于时空特征基于城市动态模式基于视频的异常检测方法,如下图:

从《Urban Anomaly Analytics: Description,Detection,and Prediction》说起_第4张图片

4.1.1 基于时空特征

城市数据受复杂的城市环境因素影响,包含大量的冗余信息,传统的异常检测算法不能直接应用。我们需要从城市数据中提取基本信息,构建或学习一个特征,将数据实例嵌入到一个通用的特征空间中。基于时空特征的方法的一般过程如下图:

从《Urban Anomaly Analytics: Description,Detection,and Prediction》说起_第5张图片

  1. 从城市数据中提取时空特征
  2. 将特征导入异常检测器(模型)来识别异常

目前基于时空特征的研究主要有三个层次:简单物理特征基于特定定义的城市数据构建的人为构造特征通过表示学习方法从城市出具中学习特征(representation learning methods)

  • 简单物理特征:现有的研究如利用平均车速来检测交通事故或拥堵,将城市道路网分成小段,并基于小时间段内的轨迹估计交通流速度;交通流速度的变化率,认为变化率超过阈值时会出现异常;基于车辆速度的拥堵程度评分来检测交通拥堵;基于异常行驶距离的出租车出行检测框架,进一步推断出基于出行异常的交通拥堵情况;基于运动方向序列计算轨迹离群值的系统。综上所述,常用物理特征有车速(包括围绕车速的特征,如车速变化率)行驶距离运动方向
  •  人为构造特征:目前广泛应用的一类特征是时空相似性,其框架如下图:

从《Urban Anomaly Analytics: Description,Detection,and Prediction》说起_第6张图片

  1.  基于城市道路网将城市区域划分为若干小区域
  2. 对每个区域,从它们的出租车和自行车历史行驶记录中计算出该地区和其他所有区域的相似性评分
  3. 整合各区域异常为城市异常
  • 表示学习:虽然以上二者易于访问和理解,但它们很难保留城市数据实例复杂的空间和时间相关性。表示学习方法能从城市数据中获取综合的时空特征,主成分分析法(PCA)及其变式是最流行的子空间学习方法。
  1. 主成分分析法(PCA): 利用正交变换将线性相关的数据转换为线性不相关的数据。有研究在显示不同道路在时间窗口中的交通量的关联时间矩阵上应用PCA,检测异常路线,然后通过探索道路之间的联动关系来找到交通异常的根本原因。
  2. 鲁棒主成分分析法(RPCA):PCA的一种变式,允许数据中存在非高斯噪声,可通过RPCA分离噪声。
  3. 贝叶斯鲁棒主成分分析法(Bayesian RPCA)
  4. 局部线性嵌入(LLE):一种常用的流形学习算法,通过将一个数据点构造成它的K个最近邻的线性组合来学习数据点的表示。在最小二乘构造误差的意义下得到权值,并将权值向量作为原始数据点的特征。

多视图学习方法用于跨越多个数据集学习时空特征,其框架如下图

从《Urban Anomaly Analytics: Description,Detection,and Prediction》说起_第7张图片

基于城市数据构建动态网络,包含一系列有向加权图,表示连续时段的城市动态。其中的节点表示地理区域,边表示不同区域间的交通流,权值为交通量。将每个区域的twitter的topic的分布等空间特征定为节点属性。

获得合适特征后,问题即转化为经典异常检测问题(Anomaly Detector)。经典的异常检测方法有以下几类:基于统计的方法基于分类的方法基于最近邻的方法基于聚类的方法

  • 基于统计的方法:估计数据的分布,将低概率的情况视为异常。数据分布的方法有参数法非参数法
  1. 基于高斯的参数化方法:是城市异常检测的主要方法。基于高斯的模型假设数据服从高斯分布,利用极大似然法估计参数。在此基础上,将实例的异常分数定义为其后验概率。
  2. 基于混合模型的参数化方法:用混合参数统计分布对数据进行建模。如有研究使用多个高斯分布对两地之间的行驶距离分布进行建模,其中每个高斯分布描述了一条路的距离分布。
  3. 基于核函数的模型的非参数方法:利用核函数估计概率密度。
  • 基于分类的方法:One-class SVM利用核函数学习特征空间中包含法线点的区域,将区域外的实例识别为异常,将实例与区域边界的距离视为异常程度。

 4.1.2 基于城市动态模式

正常城市活动通常遵循一些固定模式,一些研究中采用城市动态模式建模的间接方式。在城市异常检测中,有两种主流的城市动态建模方法:统计模型张量分解

  • 统计模型:常用的统计方法是对城市动态如交通量人流进行高斯分布的建模,然后通过统计假设检验方法计算某一观测下异常事件发生的概率。
  1. 隐性马尔科夫模型(HMM):有一些研究认为,在复杂的城市动态背后存在着有限的潜在状态,城市的异常会引起异常状态的转变。常见的状态变化模型即马尔科夫链。隐性马尔科夫模型(HMM)即用于城市状态变化的建模。示意图如下:

从《Urban Anomaly Analytics: Description,Detection,and Prediction》说起_第8张图片

 HMM的隐状态(hidden urban stats)只依赖于前一个状态,观测值(urban dynamics states)只依赖于当前状态,转移概率矩阵(transition probability matrix)用来描述一个状态转移到另一状态的概率。观测序列对应于观测到的城市动态状态,状态序列对应于隐藏的城市状态。建立模型后,可以计算出新的观测序列的概率,如果概率低于阈值,就认为发生了异常事件。

2. 似然比检验(LRT):最初用于针对模型统计结果来做模型比较。给定一个数据集X,模型参数\theta \in \Theta_{0},另一待比较模型参数\theta \in \Theta -\Theta _{0},似然比定义为

似然比定义

 

\Theta是整个参数空间,\Theta _{0}是限制参数空间,这个比率可以通过极大似然估计计算得到。同时,\Lambda = -2log\lambda的渐进分布服从卡方分布\chi ^{2}\left ( \Lambda \right, p-q)。p和q分别是null model和alternative model的自由参数数量;null model对应的是没有异常的假设,alternative model则是相反假设。首先选定一个概率密度函数,然后通过极大似然估计计算\Lambda值,当\Lambda > c异常可通过\alpha被检测出来,c是比\alpha更小的卡方分布密度函数区域阈值。

  • 张量分解:有研究认为城市动态是一些基本城市动态模式的组合,这些模式对应于市民基本活动,如工作、饮食和娱乐,并可通过对用张量表示的城市数据应用restricted张量分解技术来得到。下图展示张量分解框架:

从《Urban Anomaly Analytics: Description,Detection,and Prediction》说起_第9张图片

 图的上半部分展示了Regions-Feature-time张量构成,其中Feature为进出其他区域的交通流。下半部分展示了异常检测过程,首先用非负CP分解法将张量分解成移动模式、时间和空间分布的三因子矩阵。不同地点和时间的城市动态具有相同的基本移动模式,因此该方法在移动模式矩阵固定的情况下分解upcoming张量。最后,在移动模式异常的区域发现异常事件。

  • 深度神经网络:深度神经网络在从海量高维数据中进行模式识别方面取得了巨大成功。有研究提出将城市动态分解为正常和异常分量,通过神经网络对其学习,目前有研究采用LSTM网络对城市移动交通事件序列的模式进行建模。但深度神经网络通常需要足够多的带标签的数据,而城市异常检测中是无法获得这些数据的。因此,有人提出限制神经网络输出的方差,通过从数据集中重新采样来扩充训练数据。

4.1.3 基于视频的异常检测 

视频数据都是高维的,其中的物体运动轨迹与正常轨迹模式相比较,可以检测出异常。但是,当观测对象被遮挡或场景拥堵时,这种方法便失效了。因此很多研究者提出多种提取移动模式的方法来克服这一局限性,如使用像素变化的直方图;使用光流来测量物体的动态模式。这些方法主要强调动态,忽视了外观上的异常,因此有人提出使用混合动态纹理(MDT)模型来检测空间和时间异常。此外,为了获取高级特性(如视频中的交互)和低级特性(如每个视频patch的运动特征),有人提出使用分层结构来表示事件和交互。

近年来由于深度学习的快速发展,给图像和视频处理提供了新的思路。下图给出了卷积神经网络模型的架构:

从《Urban Anomaly Analytics: Description,Detection,and Prediction》说起_第10张图片

该图模型由两个预先训练好的卷积层和一个输出层组成,用于捕获视频帧中的区域特征,并将这些特征输入到高斯分类器中进行异常识别。此外,也有研究者引入了生成对抗网络(GANs),只用正常数据训练GANs,通过计算真实视频片段和GANs重建的外观和运动的表示之间的差异,可以检测出异常区域。

4.2 预测

目前对城市异常事件预测的研究都是通过收集实时的城市动态来推断在不久的将来是否会发生异常,此外还有一种是关于环境异常的研究,根据观察到的特征来评估是否存在某种类型的异常风险,这两种通常采用分类方法。此外,其他一些研究通过从已记录的事件中探索出规则来预测不同异常的总体分布,采用时间序列预测和深度神经网络等预测方法,我们将其归纳为回归方法

4.2.1 分类方法

成功分类的关键是构造和选择合适的特征,在环境异常检测中,通常根据环境信息构造特征,例如一些文章预备对城市水污染进行预测,以家庭信息健康状况土地信息作为特征。特征选取后,可以直接使用经典分类方法进行分类,如Logistic回归、支持向量机、随机森林、梯度树增强等。在交通异常检测中,通常利用环路检测器观测到的道路状况和天气信息作为特征。也有研究使用深度学习模型预测不同类型城市异常的发生,如有研究者将交通数据映射到图像,然后用CNN来预测拥堵的发生。

4.2.2 回归方法

一些研究采用回归方法预测未来某一时段城市地区异常事件的数量,而非预测单个异常事件的发生。如有研究者用张量表示城市异常记录,然后分解为区域、类别、时间三个因子矩阵,并假设区域和类别矩阵随时间变化而恒定,然后利用向量自回归方法算法(VAR)估计出时间矩阵的下一列。此外,深度学习模型也被广泛应用于回归方法,例如有研究者提出了LSTM网络基于历史记录对区域交通事故风险进行预测;利用卷积LSTM网络预测不同区域的交通事故数量。

5 开放性挑战和问题

5.1 数据挑战

5.1.1 数据种类

  • 为了全面发现和理解城市异常事件,需要将来自多视图的不同类型的城市数据组合在一起例如,为了确定进入一个景点的人数是否超标,游客流量和道路上检测到的车辆流量的视频都是需要的。但是,不同类型数据的数据量、处理效率和分析技术存在很大差异,难以同时使用多形式数据

  • 由于不同的采样率和敏感区域的存在,不同的数据源往往会出现时空错位的问题。为了获得特定时间点和地点的精确快照,需要对不同来源产生的数据进行时空对齐。

  • 多模态融合使解决数据多样性问题的一种潜在方法,然而,现有的研究仅停滞于离线处理和时空数据对齐,实时融合和时空比对仍是未解决的问题。

5.1.2 数据失衡

虽然正常的城市事件每天都在发生,但异常事件很少发生,通常也没有记录。因此,大部分的城市数据都是由正常事件产生的。而在城市地区发生的人类日常活动中,只有一小部分会引起异常事件。这种数据集的失衡带来两个问题:

  1. 由于异常的复杂类型,很难获取这些事件的模式并评估它们对城市数据的影响。

  2. 由于记录的异常事件很少,很难评价一个实际的检测系统。

一些研究人员使用合成数据集来评估他们的算法,然而,城市数据在现实世界中产生的机制是及其复杂的。通过简单的规则几乎不可能模拟真实世界的异常的影响。因此,跨城市数据转移是一个可行的方向。 虽然不同的城市通常具有完全不同的物理环境,但城市异常再网络空间的影响扩散过程具有相似的模式。如人群流量预测和共享单车检测。然而这一方向的研究目前仍是空白。

5.1.3 数据依赖

大多数数据挖掘和机器学习算法都是假设数据点是从独立同分布中采样的。然而,这一假设并不适用于具有复杂空间和时间依赖性的城市大数据。因而导致两个难题:

  1. 城市数据点之间的时空依赖性使正常城市数据的分布随时间和地点而变化。如将高峰时间改到午夜,高峰时段的正常交通量会非常高。
  2. 一个异常事件通过时空依赖性,可以导致不同时间、地点和来源的城市数据异常改变,难以推断其根源。如一条道路的阻塞可能会导致其他道路的交通超载,由于变化之间的因果是隐含的,所以很难追溯根源。

发展深度时空随意推理模型是解决城市大数据依赖问题的一个潜在机会。 

5.2 开放性问题

5.2.1 可靠检测

可靠性是城市异常检测的基本要求,目前有两个难点:

  1. 城市异常的影响通常由不同类型的城市数据反映的成分组成。如音乐会的观众可以选择不同类型的交通工具。仅仅依靠这些数据源的一部分可能会导致低估音乐会的规模。
  2. 城市异常的检测主要依赖于从城市数据中识别离群值,而这些离群值不一定意味着城市异常。如传感器物理故障等。因此,必须建立有效的机制来区分这些内在异常值和真实的城市异常值

5.2.2 精确预测

对于具有一定累积数量的异常事件的预测和评估目前已经有不少的研究,然而,对单个事件的精确预测仍然是空白,在实践中,准确时间和位置的预测非常重要。目前要实现这一目标有三大困难:

  1. 由于城市环境的复杂性,数据中存在非常多噪声。早期异常事件的细微迹象很容易被噪声掩盖。
  2. 异常的前兆有时会出现在不同的数据源。如在社交媒体上议论纷纷的抗议事件可能都会导致交通拥堵。
  3. 在发现城市异常的早期迹象后,由于城市事件时空扩散过程的复杂性,如何推断出准确的位置和时间仍然是一个挑战。

5.2.3 原因诊断

城市异常检测与预测有助于我们了解异常事件的发生,分析异常事件发生的根本原因有助于我们决定采取什么样的行动。然而,由于城市异常的成因和效果可以通过不同类型的城市数据反映出来,且存在显著的时空错位,因此发现城市异常的深层次原因十分困难。要追溯其根本原因,需要从跨时间、跨区域和跨领域的多模态数据中推断出潜在的因果关系

 

由于笔者个人理解及英文能力有限,对文章的理解还存在问题,欢迎指正批评。

备注:文中所用图例皆截取自《Urban Anomaly Analytics: Description,Detection,and Prediction》一文。

 

 

 

你可能感兴趣的:(从论文说起)