占有率:占有率反映的是交通流在时空维度的占有情况,包括空间占有率和时间占有率,能够刻画交通流的时空特性。空间占有率的定义是:在指定的时间间隔内,某一路段中车辆长度的和与该路段长度的比值。对空间占有率进行测定较为困难,所以一般采用时间占有率。
在指定的时间间隔内,使用某一交通传感器在该时间段内的总的工作时间除以该传感器被交通实体所占用的时间,就可以得到时间占有率。时间占有率低时,说明车流量较小或车速较高,道路畅通;时间占有率高时,说明车流量较大或车速较低,道路拥堵。
交通流系统是一个不断变化的复杂整体,其内在相关性和周期性表明了交通流中是有着某种可以被度量的规律的,交通流的各组成部分是相互联系的,而其繁杂的时空特性和不确定性又揭示了交通流的随机性和复杂性,要从如此复杂的交通流信息中找出这种规律,找出各种参数之间的内在联系,绝对不是一件容易的事。
基于统计理论的方法:
ARIMA:自回归积分滑动平均预测方法,是一种针对时间序列进行分析的方法,其目的在于根据观测到的时间序列数据,建立适当的模型,对事物随时间变化的规律进行描述,对事物未来的状态进行预测。ARIMA模型进行预测的基本思想如下:预测基于样本观测值的线性函数;目标是寻求一个最简的模型,实现对观测数据的准确描述。
局部线性回归:局部线性回归通过赋予预测点附近的点以一定的权值,一般是通过高斯核函数等计算权值,然后再进行普通的线性回归,得到预测值和观测到的 交通流数据之间的线性关系,以此进行交通流预测工作。该种方法对数据的要求较高,且无法处理非线性的短时交通流。
卡尔曼滤波:通过观测和状态方程组成状态空间模型,可以实现对平稳和非平稳随机过程的估计,以此来对交通流进行描述。但是其本质上仍然是线性的模型,无法有效应对短时交通流预测的随机性和复杂性。
总结:基于统计理论的预测方法都是线性的模型,虽然建模简单,计算容易,但是在预测的时间间隔缩短后,交通流的不确定性和非线性特征不断增强,由于线性模型不能对这种情况进行有效的处理,模型的预测精度就变得较差。
基于机器学习的算法:
1.决策树算法
决策树就是一种对样本空间递归地进行切分的分类器。决策树是一颗有向树,其中除根节点以外的每个节点的入度都为1,出度为0的节点被称为叶子节点,即为决策树中的决策节点。在决策树生成过程中,每一次节点切分都会根据不纯度最小的原则将样本空间切分成两个样本子空间,决策树的生成过程中就是确定最优切分的过程,切分的过程不断进行,直到不纯度的减少低于一个事先预定的阈值,切分结束。在用于分类问题时,每个叶子节点都对应着一个类别,当新的样本进入时,只需要从根节点开始向下搜索,直到匹配到一个叶子节点,就可以完成对该样本的分类;当用于回归时,也是类似的原理,只是类别变成了数值。使用决策树进行分类和回归的过程就跟现实生活中人类做决策的过程极其相似。
2.集成学习算法
Bagging是著名的对样本进行处理的方法之一,通过创建改进的组合分类器来提升准确度,将多个学习分类器的输出融合称为一个最终的预测值。
其主要流程:给定一个训练集S,其中有N个样本,设定迭代次数T,在迭代次数范围内,采用有放回的抽取方法不断的从训练集S抽出n个样本,得到T个子样本集St,基于每一个St训练一个分类器,最后训练得到T个分类器,将这T个分类器组合起来以提升分类器的性能。
美国加利福尼亚州的交通情况:
从上面的图可以明显地看出交通流量的变化是具有一定规律的,特别是工作日期间的交通流量,明显呈现周期性的变化,周一到周五每天的交通流量分布都较为类似,且每天都有明显的早高峰晚高峰。相比而言,周末的交通流量则偏少,且变化没有特别明显的规律,与工作日的交通情况有所不同。
工作日期间的平均速度也具有一定规律,但是相对于交通流量来说没有那么明显,其波动也较交通流量更为剧烈。在早晚高峰期间速度有明显下降,而周末的速度比较平稳,维持在较高的速度区间。
数据清洗:由于道路上的交通传感器众多,且面临着各种复杂的交通情况,所以在进行数据采集的过程中,会产生一些问题数据,比如异常值、数据缺失等等,如果不对这些数据加以处理就直接使用,将会对后期的分析预测工作造成极大的不便。所以需要进行数据清洗的工作,检测和消除数据中的错误数据、重复数据、无关数据等,并对缺失值和异常值进行妥善的处理。
缺失数据的处理:删除记录和数据插补。其中删除记录的方法由于通过减少历史数据来换取数据的完备,会使得隐藏在数据中的大量信息被丢弃,可能会对分析结果的准确性造成严重的影响。相比而言,数据插补的方法更适合交通数据流缺失的处理。常用的插补方法有:均值插补、中位数插补、众数插补、插值法等。
数据去噪:
1.滑动平均去噪:根据时间序列的分布的记忆性,采用算术平均的方法,去除时间序列中的随机波动,使序列变得平滑。
2.小波去噪:小波是一种特殊的波形,其能量集中在某一点附近,同时具有衰减性和波动性,震荡形式正负相间。
随机森林算法:
随机森林跟显示中的森林一样,有一系列的决策树组合而成,其结合了Bagging集成学习理论和随机子空间的思想。每个分类器的构造都需要从原始样本数据集中随机抽取出一部分样本作为样本子空间,然后从样本子空间中随机抽取出特征子空间,在这个特征子空间中建立决策树,最后综合所有决策树的输出得到最终结果。
支持向量机在短时交通流预测中,处理有限样本、非线性和高维问题时有着得天独厚的优势。
数据采集层,数据采集层主要实现对路网交通数据的采集工作,实时的交通数
据主要来自于环形感应线圈、收费卡口、车载 GPS 等等,考虑到交通信息来源的
复杂性,在本层需要进行数据融合的工作。同时,在采集层也需要对数据进行初步
的预处理,控制数据质量。
数据存储层,本层的数据从数据采集层进行抽取,将其持久化存储于关系型数
据库 Oracle 中。本层存储的的数据主要分为两类,一类是交通流数据,一类是天
气数据,交通流数据又分为历史交通流数据和实时交通流数据。历史交通流数据用
于交通流预测模型的训练,实时交通流数据用于对预测效果的进行相应的评价,帮助用户对算法的效果进行判断,从而实现对算法进行有针对性的选择。本层为计算
服务层提供数据支持,计算服务层所需要的数据都来自于本层。
计算服务层,计算服务层是本系统的核心功能层,本系统的目的即为用户提供
精准的交通流预测。本层提供交通流预处理功能以及交通流预测算法库,其中预处
理功能主要是系统自动实现,一般不需要用户自行选择,但是交通流选择算法提供
了 LOO-RF 算法和普通的 RF 算法供用户选择,用户可以根据自己的需求,进行交
通流数据特征选取工作。交通流预测提供多种预测算法供用户选择,主要包括
CGA-SVR、普通的 SVR、BPNN、ARIMA 等交通流预测模型,用户可以根据不同
的场景和自己的需求,调用相应的算法进行交通流预测工作。
结果展示层,通过计算服务层的计算,可以得到预测结果,并采用可视化方法
进行展示。计算服务层和结果展示层之间采用 RESTful 架构,可以实现模块之间
松耦合的连接。通过结果展示层,可以将预测结果以图表的形式展示给用户,实现
用户和数据之间的交互。
呼呼,再度理解下什么叫结构化数据,半结构化数据,非结构化数据:
结构化数据就是数据库里存的那种行列形式的数据,半结构化数据指的是XML,JSON这种结构的数据,非结构化数据就是一些文本,视频,图像这些。