基于时空相关性的检测器缺失数据的填补方法与流程

文档序号:17587051发布日期:2019-05-03 21:25阅读:225来源:国知局
基于时空相关性的检测器缺失数据的填补方法与流程
本发明属于智能交通系统(intelligenttrafficsystems,its)领域,具体涉及基于时间相关性和空间相关性对检测器缺失数据进行空值填补的方法。
背景技术
:随着城市智能交通系统建设规模的不断扩大,交通数据采集的范围、广度和深度急剧增加,正在形成海量交通数据。然而,当前城市交通数据还存在着诸多问题,如因硬件故障、通信故障、软件故障而导致的数据缺失、数据不准确、数据异常等问题。这些数据无法从空间或时间领域全面得展现城市交通的真实情况,更无法为深层次的交通数据挖掘、政府交通管控提供可靠的数据支持。同时,城市交通数据的时间特性和空间特性使得缺失数据既与时间邻近的历史数据相关,又与空间邻近的相邻检测器的数据相关。因而,通过时间维度和空间维度的数据填补空值的方法,能有效地提高当前交通数据的数据质量,为交通领域的研究奠定夯实的基础。本发明所提供的基于时间相关性和空间相关性对检测器缺失数据进行空值填补的方法既采用通过时间邻近或相似的数据进行空值填补,又采用通过空间邻近的数据进行空值填补,准确率高、实用性强而且处理效率高。技术实现要素:为了实现缺失数据的有效填补,本方法采用了时间维度和空间维度的空值填补方法弥补交通领域的缺失数据,包括以下步骤:步骤一:获取数据:s11、对检测器数据进行采样,获取城市道路中每个车道的流量数据、每个路口的地理信息数据以及各路口中各车道的基础信息数据;s12、计算各路口之间的欧几里得距离,根据欧几里得距离的数值,确定离目标车道最近的路口;s13、通过数据筛选、数据清洗和数据转换,形成各车道流量数据,其中,各车道的进口方向保持一致;s14、按照每五分钟设定一个时间点的方式,为每天设定288个时间采样点,确定时间维度的基准;s15、将检测器数据的获取时间与采样点时间校准、比对,获得检测器数据获取的标准时间采样点,保证数据在时间维度的完整性和一致性;如果同一时间采样点具有检测器的数据,则插入检测器的数据,否则,则将该时间采样点对应检测器的数据设为-1。步骤二:判断数据的缺失情况:s21、根据标准时间采样点中各检测器的数值是否为-1,判断某检测器数据是否存在缺失,如果存在缺失,继续判断,继续判断数据缺失的情况为单个检测器数据缺失或多个检测器数据缺失;s22、判断标准时间点的相邻检测器数据或同方向相邻路口的检测器数据是否存在数据缺失,若相邻检测器数据不存在缺失,判断为单个检测器数据缺失;若相邻检测器数据或同方向相邻路口检测器数据存在缺失,判断为多个检测器数据缺失;若缺失情况为单个检测器缺失,执行步骤三,采用空间维度的回归填补方法进行空值填补;若缺失情况为多个检测器缺失,则继续进行时间维度的判断;s23、判断单个检测器缺失数据在时间维度的缺失情况:若缺失时间点的前一时间点和后一时间点的检测器数据不为缺失,则判断为孤单缺失值,执行步骤四;若缺失时间点的前后时间点数据存在缺失,则认为该检测器的缺失情况为连续型缺失,执行步骤五。步骤三:单个检测器数据缺失的回归填补:将缺失检测器数据作为因变量,邻近检测器及同方向邻近路口的检测器数据作为自变量,将全部数据集划分为训练集和测试集,在训练集中,根据自变量、因变量的数量关系,利用最小二乘法,建立回归模型,在判断模型准确的前提上,根据回归方程,预测测试集中的因变量数据。步骤四:孤单缺失值的空值填补:如果标准时间点的单个检测器缺失数据为孤单缺失值,则采用该检测器前一标准时间点的数据进行空值填补。步骤五:连续型缺失的空值填补:如果检测器缺失数据为连续性缺失,则根据缺失数据当月的数据。计算当月各工作日及各休息日的小时平均值,即计算当月周一、周二、周三、周四、周五、周六、周天的小时平均值。根据检测器缺失所处的时间点为一周的哪一天以及一天中的哪一小时,采用缺失数据对应的小时平均值替代缺失值。步骤六:导出结果:将填补后的检测器数据,存入结果数据库。借由上述方案,本发明至少具有以下优点:城市交通数据并不孤立存在,城市交通数据之间往往存在着各种各样的约束,这些约束既包括时间维度的关联关系,也包括空间维度的关联关系,它们共同描述了城市交通数据的关联关系。本方法基于城市交通数据的时空特性,采用空间维度的空值填补方法及时间维度的空值填补方法进行空值填补,准确率高、实用性强而且处理效率高。上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,并可依照说明书的内容予以实施,以下以本发明的较佳实施例并配合附图详细说明如后。附图说明图1为本发明的流程示意图;图2为检测器数据在空间维度的空值填补步骤,即步骤三的流程示意图。图3为检测器数据在时间维度的空值填补步骤,即步骤四和步骤五的流程示意图;图4为采用空间维度的空值填补后的结果示意图,其中,点数据为真实数据,线数据为填补数据;图5为采用时间维度的空值填补后的结果示意图,其中,点数据为真实数据,线数据为填补数据。具体实施方式下面结合附图和实施例,对本发明的具体实施方式作进一步详细描述。以下实施例用于说明本发明,但不用来限制本发明的范围。以下将详细阐述具体的填补过程。步骤一:获取数据:对检测器数据进行采样,获取城市道路中各个车道在不同时间点的流量数据、每个路口的地理信息数据以及路口各车道的基础信息数据。其中,流量数据表的各字段、车道信息表、车道关联表的各字段定义见表1至表3所示:表1流量数据表中各字段的描述字段名称数据类型字段含义flow_valuenumber流量值datedate时间signal_dector_novarchar2检测器编号signal_cross_novarchar2检测器所在路口time_lagnumber时间间隔表2车道信息表中各字段的描述表3车道关联表中各字段的描述字段名称数据类型字段含义signal_cross_novarchar2路口编号signal_device_novarchar2设备编号lane_novarchar2车道编号shape(complex)地理坐标根据流量数据表、车道信息表、车道关联表的关联关系,完善流量数据表的数据,为流量数据表增加车道进口方向、车道行驶方向等字段。其中,流量数据表中的时间间隔为5分钟。根据车道关联表中的shape字段获取各路口的地理坐标(xi,yj)i=1,2,3,……,n计算各路口坐标之间的欧几里得距离:根据欧几里得距离,找到离目标车道最近的路口,在空间领域的空值填补中,将采用邻近检测器和邻近路口的检测器数据进行空值填补。根据检测器所在路口,筛选同一进口方向的车道,获取同一进口方向的检测器及邻近路口同方向的检测器流量数据。对各路口的流量数据进行转换,形成以五分钟为时间间隔的流量数据表。举例而言,字段形式通过以下方式呈现:时间,路口1车道1(北进口左转车道),路口1车道2(北进口直行车道),路口1车道3(北进口右转车道),路口2车道1(北进口左转车道),路口2车道2(北进口直行车道),路口2车道3(北进口右转车道)。转换后的数据采用以下形式呈现:时间路口(1)车道(1)路口(1)车道(2)路口(1)车道(3)路口(2)车道(1)…路口(i)车道(j)time1time2time3time4time5…time(m)由于检测器流量可能在某时间点存在数据缺失,导致“时间”字段在某些时间点上存在缺失,影响数据在时间维度的完整性。因而,按照每五分钟设定一个时间点的方式,为每天设定288个标准时间采样点,确定时间维度的基准。将检测器数据的获取时间与采样点时间校准、比对,如果同一时间采样点具有检测器的数据,则插入检测器的数据,否则,则将该时间采样点对应检测器的数据设为-1。步骤二:判断数据的缺失情况:根据标准时间采样点中各检测器的数值是否为-1,判断某检测器数据是否存在缺失。如果检测器数据存在缺失,继续观察该检测器邻近车道及邻近路口的各车道检测器数据是否存在缺失,判断数据缺失的情况为单个检测器数据缺失或多个检测器数据缺失。情况一:如果某检测器数据缺失情况为单个检测器的数据缺失,则采用步骤三,即采用相邻检测器以及同方向相邻路口检测器的数据进行回归填补。步骤三:单个检测器数据缺失的回归填补:将缺失检测器数据作为因变量,相邻检测器数据以及邻近路口的检测器数据作为自变量。根据因变量的缺失时间点,将全部数据集划分为训练集和测试集。在训练集中,自变量与因变量的数据都不存在缺失。在测试集中,自变量的数据不存在缺失,因变量的数据存在缺失。基本保持训练集和测试集的比例为8/2或7/3。根据训练集中自变量、因变量的数量关系,采用最小二乘法,估计参数。假设训练集中有m个标准时间点,利用n个附近的检测器来回归填补,自变量与因变量的关系为:训练集中的自变量,参数,因变量表示为:通过计算残差平方和最小时的偏导,可以得到参数的最小二乘估计:在得到了最小二乘的参数估计后,可以得到关于自变量与因变量的表达式:y=β0+β1x1+β2x2+…+βnxn利用回归方程以及测试集中自变量的数值,预测测试集中因变量的数据。假设要预测测试中的第k个标准时间点的值,第k个预测后的因变量为:yk=β0+β1xk1+β2xk2+…+βnxkn在回归方程的基础上,分别计算训练集、测试集中的决定系数r2值,通过r2值判断模型的拟合情况。r2值反应了因变量的变异中有多少百分比由自变量来解释,r2值越大,模型拟合效果越好。当r2值在训练集及测试集中的数值均较高且无明显差别的情况下,判断模型拟合效果较好且无过度拟合情况。否则,则需要调整模型,重新判断模型的准确性及拟合效果。步骤二:判断数据的缺失情况:根据标准时间采样点中各检测器的数值是否为-1,判断某检测器数据是否存在缺失。如果某检测器数据缺失情况为多个检测器的数据缺失,则进一步判断。情况二:检测器的数据缺失情况为孤单缺失值,即该检测器在某标准时间点的前一时刻数据和后一时刻数据不存在缺失。如果检测器的数据缺失情况为孤单缺失值,则执行步骤四。步骤四:直接采用该检测器前一标准时间点的数据进行空值填补。情况三:检测器的数据缺失为连续型缺失,即该检测器在某标准时间点的前一时刻数据和后一时刻数据也存在数据缺失。如果检测器的数据缺失情况为连续型缺失,则执行步骤五。步骤五:按缺失数据所处时间点的平均值填补空值:按照缺失时间当月的数据,计算该月中周一、周二、周三、周四、周五、周六、周天的小时平均流量值。根据缺失数据所处的标准时间点为周一、周二、周三、周四、周五、周六、周天中的哪一天,以及标准时间点所处的小时,采用缺失数据对应的小时平均流量值替代空值。步骤六:导出结果:将填补后的检测器数据,存入结果数据库。为了详细描述本方法的技术方案和操作过程,以下将举出实例对方法做以详细说明。步骤一:获取数据:通过调取数据库中的数据,获取线圈检测器流量数据,线圈检测器基础信息数据,以及车道关联表。在本案例中,以解放路的某直行车道的检测器数据为研究对象,将目标车道简称为lane1,该车道所在路口简称为cross1。根据欧氏距离,计算出离cross1最近的路口cross2,在空间领域的空值填补中,将采用cross1的各检测器数据以及cross2的各检测器数据进行目标车道的空值填补。通过筛选cross1和cross2的进口方向,获取cross1和cross2同一进口方向的流量数据表。对流量数据进行转换,形成各车道的流量数据形式:按照每五分钟设定一个时间点的方式,为每天设定288个标准时间采样点。例如,为2017年7月17日设立288个时间采样点:[00:03:00,00:08:00,00:13:00,00:18:00,00:23:00,00:28:00,…,23:43:00,23:48:00,23:53:00,23:58:00]。将检测器数据的获取时间与采样点时间校准、比对,如果同一时间采样点具有检测器的数据,则插入检测器的数据,否则,则将该时间采样点对应检测器的数据设为-1。步骤二:判断数据的缺失情况:如果目标车道cross1lane1检测器存在数据缺失,而其他检测器不存在数据缺失,则判断为单个检测器数据缺失,采用空间相邻的检测器数据进行回归值填补。步骤三:单个检测器数据缺失的回归填补:将cross1lane1车道作为因变量,同路口的其他检测器以及邻近路口相同方向的检测器数据(cross1lane2,cross1lane3,cross1lane4,cross2lane1,cross2lane2,cross2lane3,cross2lane4)作为自变量。根据cross1lane1车道与其他车道数据缺失的情况划分训练集和测试集。如果cross1lane1车道检测器数据和其他车道检测器数据均不存在数据缺失,则将这部分数据划分为训练集,如果cross1lane1车道检测器的数据存在缺失,而其他车道不存在数据缺失,则将这部分数据划分为测试集。基本保持训练集数据量和测试集数据量的比例为8/2或7/3。在本例中,采用随机种子,按照8/2的比例将全部数据集分为训练集和测试集。数据划分后,在训练集中,全部变量的数据完整,不存在数据缺失。在测试集中,将因变量的数据设为缺失数据,自变量数据保持不缺失的完整数据。在本例中,利用训练集的数据,采用最小二乘法的参数估计,构建线性回归方程,得到的模型:cross1lane1=4.11021762+0.04819272*(cross1lane2)+0.04461159*(cross1lane3)+0.03559144*(cross1lane4)+0.08002473*(cross2lane1)+0.09115428*(cross2lane2)+0.60532465*(cross2lane3)+0.05204399*(cross2lane4),将测试集中的自变量值代入模型,得到因变量的预测值。分别计算训练集、测试集中的r2值。在本例中,训练集中的r2值为0.79,测试集中的r2值为0.80。训练集、测试集中的r2值较高,且无明显数值差异,说明模型拟合效果较好。完成空间维度的空值填补后,继续判断是否需要进行时间维度的空值填补。当cross1lane1车道和其他车道在相同时间点均存在数据缺失,则采用cross1lane1车道时间维度的历史数据进行空值填补。判断cross1lane1车道在时间维度的缺失是孤单缺失值还是连续型缺失。步骤四:如果cross1lane1车道存在孤单缺失值,即在某时间点存在数据缺失,但前后时间点不存在数据缺失,则采用前一时刻数据进行空值填补。如,cross1lane1车道在2017年7月17日的00:08:00时刻存在数据缺失,而cross1lane1车道在2017年7月17日的00:03:00和00:13:00时刻不存在数据缺失,则判断cross1lane1车道在2017年7月17日的00:08:00时刻的数据为孤单缺失数据。对00:08:00时刻的空值数据,采用00:03:00时刻的数据进行空值填补。步骤五:如果cross1lane1车道存在连续型缺失,则采用检测器缺失所处的周几的小时平均值替代缺失值。如,cross1lane1车道在2017年7月17日的09:08:00至09:48:00均存在数据缺失,由于2017年7月17日是星期一,则计算2017年7月中所有星期一(2017年7月3日、2017年7月10日、2017年7月17日、2017年7月24日、2017年7月31日)在09:00am的均值。将此均值填补连续型缺失值。步骤六:导出结果:将填补后的检测器数据,存入结果数据库。以上仅是本发明的优选实施方式,并不用于限制本发明,应当指出,对于本
技术领域
的普通技术人员来说,在不脱离本发明技术原理的前提下,还可以做出若干改进和变型,这些改进和变型也应视为本发明的保护范围。当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1