一种基于轨迹偏差点嵌入和深度聚类的异常节点检测方法

文档序号:31534923发布日期:2022-09-16 22:04阅读:154来源:国知局
一种基于轨迹偏差点嵌入和深度聚类的异常节点检测方法

1.本发明属于智慧交通轨迹监测领域,具体涉及一种基于轨迹偏差点嵌入和深度聚类的异常节点检测方法。


背景技术:

2.协同智慧交通系统通过利用参与者的交流和合作,为用户提供可持续性、安全性以及舒适度的交通管理环境,而交通管理系统是实现城市中心区域交通智能化、现代化的关键。由于车辆具有较高的移动性,因此交通管理系统会产生大量的交通数据,这些数据主要包括城市道路网络和轨迹。城市的宜居行和可持续性要求对城市智慧交通系统的准确和及时的了解是至关重要的,例如,它有助于了解一个路段的不同路径,提供最可靠的交通管理系统信息,以促进优化目标,即低碳交通。智慧城市使用全球定位系统(gps)接收器、道路传感器和车载传感器等方法来监测交通状况,每个移动的对象产生轨迹,结果产生无限数量的序列点,序列点用于高性能计算资源分析交通流。轨迹数据库在移动交通网络和智慧交通系统方面有很多实际应用,在交通分析中,异常轨迹的检测具有重要意义。
3.目前,异常点检测技术旨在从正常观察中确定异常检测,基本目的是从正常流量中提取不一致的数据进行检测;而在现有的方法中,只考虑子轨迹或整体轨迹中异常点的单一视图,造成了检测结果的准确度低,检测的效率低的问题。


技术实现要素:

4.为解决以上现有技术存在的问题,本发明提出了一种基于轨迹偏差点嵌入和深度聚类的异常节点检测方法,该方法包括:构建交通轨迹检测网络结构,并初始化网络结构;根据网络结构中各个节点之间的关系构建结构嵌入;根据结构嵌入采用随机游走方法构建分层多层图;获取待检测节点的轨迹数据,将轨迹数据输入到分层多层图中,得到序列;采用深度聚类方法对序列进行聚类,得到异常节点。
5.优选的,构建结构嵌入的过程包括:获取道路节点集和道路路段集,根据道路节点集和道路路段集构建有向无环图g=(v,l),其中v为道路节点集,其表达式为v={v1,v2,

,vn},vn为第n个道路节点;l为道路路段集,其表达式为l={l1,l2,

,l
n-1
},l
n-1
为第n个道路节点与第n-1个道路节点的路段;该有向无环图还包括监测节点,监测节点用于对节点进行数据监测;该有向无环图为结构嵌入。
6.优选的,采用随机游走方法构建分层多层图的过程包括:
7.步骤1:采用skipgram模块获取有向无环图中每个节点的潜在表示;其中有向无环图为结构嵌入;skip-gram的目标是最大化其上下文在序列中的可能性,其中潜在表示方式指的是节点之间的距离与结构相似性强相关;
8.步骤2:根据潜在表示计算图中的每个顶点对之间的结构相似性;
9.步骤3:根据结构相似性使用偏置随机游走方法计算归一化因子,并根据归一化因子以及结构相似性构建随机游走概率;
10.步骤4:各个节点根据随机游走概率进行随机游走,构建分层多层图。
11.进一步的,顶点对之间的结构相似性计算公式为:
12.fk(x,y)=f
k-1
(x,y)+g(s(tk(x)),s(tk(y))),k≥0,|tk(x)|,|tk(y)|》0
13.其中,k表示距离长度,g(.)表示s(tk(x))和s(ty(x))之间的距离,s(.)表示一组有序度序列的节点,tk(x)表示距离k节点x的邻居节点。
14.优选的,设置随机游走概率的表达式为:
[0015][0016][0017]
其中,pk(x,y)表示k层中从节点u到节点v的概率,x和y均表示有向无环图的顶点,fk(x,y)表示顶点对之间的结构相似性,zk(x)表示k层顶点u的归一化因子。
[0018]
优选的,节点轨迹数据为节点的序列,该序列为一段时间间隔内有序的点(p1,p2,

,pn),其中,pn表示节点经过的第n个点的地理位置。
[0019]
优选的,将轨迹数据输入到分层多层图中得到序列的过程包括:
[0020]
步骤1:获取节点集的有序度序列,通过比较轨迹节点x和y的有序度序列,建立一个图层来衡量节点的结构相似性;
[0021]
步骤2:使用动态时间规划方法测量两个有序度序列之间的距离;
[0022]
步骤3:将节点与节点之间的距离设置为图中的边,并根据得到边构建多层图;
[0023]
步骤4:根据生成的多层图将图结构数据以序列方式进行存储,得到序列。
[0024]
优选的,采用深度聚类方法对序列进行聚类的过程包括:
[0025]
步骤1:获取序列,判断序列是否符合聚类条件,若满足聚类条件,则执行步骤2,否则聚类结束;
[0026]
步骤2:初始化聚类参数,该参数包括样本控制参数u(λ)和l(λ)、轨迹数、嵌入大小、每批实例数以及聚类程度λ;
[0027]
步骤3:从轨迹原始数据库中选取训练样本;
[0028]
步骤4:采用平均法计算训练样本中轨迹的平均嵌入;
[0029]
步骤5:计算输入序列与平均嵌入的相似性;
[0030]
步骤6:根据lstm模型得到节点相似性阈值;将计算出的相似性与节点相似性阈值进行对比,若所有轨迹节点的相似性的值大于节点相似性阈值,则表示该测试数据不存在异常节点,回到步骤2重新进行样本选择,否则执行步骤7;
[0031]
步骤7:根据相似性采用梯度下降算法对λ进行更新;
[0032]
步骤8:使用argmax方法根据训练得到节点相似性来获得最终预测测试样本输出偏差点的聚类,以此来获得异常节点。
[0033]
进一步的,通过argmax方法得到节点中的中心节点,同时得到中心节点的拟合函数值最大化对应坐标,再根据相似性将节点分配至其对应中心节点,最后将中心节点设置为所有节点坐标的平均;以此得到节点聚类标签,实现节点的聚类,以及节点异常检测。
[0034]
进一步的,根据lstm模型得到节点相似性阈值的过程包括:
[0035]
步骤1:获取训练样本中的各节点相似性,将各个节点相似性的值输入到lstm编码层中,提取不同维度的特征;
[0036]
步骤2:采用自注意力机制对不同维度的节点特征进行特征感知;
[0037]
步骤3:将经过特征感知后的特征输入到lstm解码层中进行解码,并采用多层conv1d网络对解码后的复杂特征进行降维处理,得到节点相似性阈值。
[0038]
优选的,对λ进行更新的公式为:
[0039]
λ=λ
0-ηf

(λ0)
[0040]
其中,η表示步长,f

(λ0)是函数在λ0的梯度;f(-)是一个泰勒展开式函数,λ0是为聚类程度的初始值。
[0041]
本发明的有益效果:
[0042]
本发明利用有用和衍生的模式来检测群轨迹离群点或提取个体和群轨迹离群点的偏差点,提高了检测结果的准确性;本发明首先根据各个轨迹节点之间的结构关系构建了一个分层多层图,并采用分层多层图对待检测轨迹进行嵌入表示处理,使得待检测的轨迹数据符合深度聚类的标准,提高了输入数据的表示精准度;本发明采用深度聚类的方法对输入的数据进行聚类处理,在深度聚类处理过程中,首先通过lstm模型构建一个相似性阈值,再选取的训练样本得到一个平均嵌入,并计算输入序列与平均嵌入的相似性,将相似性与相似性阈值进行对比,通过上述方式,提高了检测结果精确度。
附图说明
[0043]
图1为基于轨迹偏差点嵌入和深度聚类的异常点检测方法的总体结构图;
[0044]
图2为协同智慧交通系统图;
[0045]
图3为基于轨迹嵌入的深度聚类算法流程图。
具体实施方式
[0046]
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0047]
一种基于轨迹偏差点嵌入和深度聚类的异常节点检测方法,该方法包括:构建交通轨迹检测网络结构,并初始化网络结构;根据网络结构中各个节点之间的关系构建结构嵌入;根据结构嵌入采用随机游走方法构建分层多层图;获取待检测节点的轨迹数据,将轨迹数据输入到分层多层图中,得到序列;采用深度聚类方法对序列进行聚类,得到异常节点。
[0048]
构建结构嵌入的过程包括:获取道路节点集和道路路段集,根据道路节点集和道路路段集构建有向无环图g=(v,l),其中v为道路节点集,其表达式为v={v1,v2,

,vn},vn为第n个道路节点;l为道路路段集,其表达式为l={l1,l2,

,l
n-1
},l
n-1
为第n个道路节点与第n-1个道路节点的路段;该有向无环图还包括检测节点,监测节点用于对节点进行数据监测;该有向无环图为结构嵌入。
[0049]
采用随机游走方法构建分层多层图的过程包括:
[0050]
步骤1:采用skipgram模块获取有向无环图中每个节点的潜在表示;其中有向无环图为结构嵌入;
[0051]
步骤2:根据潜在表示计算图中的每个顶点对之间的结构相似性;计算公式为:
[0052]fk
(x,y)=f
k-1
(x,y)+g(s(tk(x)),s(tk(y))),k≥0,|tk(x)|,|tk(y)|》0
[0053]
其中,k表示距离长度,g(.)表示s(tk(x))和s(ty(x))之间的距离,s(.)表示一组有序度序列的节点,tk(x)表示距离k节点x的邻居节点。
[0054]
步骤3:根据结构相似性使用偏置随机游走方法计算归一化因子,并根据归一化因子以及结构相似性构建随机游走概率;其公式为:
[0055][0056][0057]
其中,pk(x,y)表示k层中从节点u到节点v的概率,x和y均表示有向无环图的顶点,fk(x,y)表示顶点对之间的结构相似性,zk(x)表示k层顶点u的归一化因子。
[0058]
步骤4:各个节点根据随机游走概率进行随机游走,构建分层多层图。
[0059]
将轨迹数据输入到分层多层图中得到序列的过程包括:
[0060]
步骤1:获取节点集的有序度序列,通过比较轨迹节点x和y的有序度序列,建立一个图层来衡量节点的结构相似性;在节点记录的时候,规定行程起始位置最小,随着轨迹变化节点越来越大,因此记录的节点为有序度序列;二分法主要是根据阈值进行划分的:大于阈值就为1,小于阈值就为-1。
[0061]
步骤2:使用动态时间规划方法测量两个有序度序列之间的距离;计算的公式为:
[0062][0063]
其中,x和y分别表示两个有序度序列。
[0064]
步骤3:将节点与节点之间的距离设置为图中的边,并根据得到边构建多层图;
[0065]
步骤4:根据生成的多层图将图结构数据以序列方式进行存储,得到序列。
[0066]
采用深度聚类方法对序列进行聚类的过程包括:
[0067]
步骤1:获取序列,判断序列是否符合聚类条件,若满足聚类条件,则执行步骤2,否则聚类结束;聚类条件为判断选择的测试样本是否属于当前行程构建的图结构内,若属于,则满足聚类条件,否则不满足聚类条件。
[0068]
步骤2:初始化聚类参数,该参数包括样本控制参数u(λ)和l(λ)、轨迹数、嵌入大小、每批实例数以及聚类程度λ;
[0069]
步骤3:从轨迹原始数据库中选取训练样本;
[0070]
步骤4:采用平均法计算训练样本中轨迹的平均嵌入;
[0071]
步骤5:计算输入序列与平均嵌入的相似性;
[0072]
步骤6:根据lstm模型得到节点相似性阈值;将计算出的相似性与节点相似性阈值进行对比,若所有轨迹节点的相似性的值大于节点相似性阈值,则表示该测试数据不存在
异常节点,回到步骤2重新进行样本选择,否则执行步骤7;
[0073]
步骤7:根据相似性采用梯度下降算法对λ进行更新;
[0074]
λ=λ
0-ηf

(λ0)
[0075]
其中,η表示步长,f

(λ0)是函数在λ0的梯度;f(-)是一个泰勒展开式函数,f

(λ0)是一阶泰勒展开式,λ0是λ的初始值。
[0076]
步骤8:使用argmax方法根据训练得到节点相似性来获得最终预测测试样本输出偏差点的聚类,以此来获得异常节点。
[0077]
通过argmax方法得到节点中的中心节点,同时得到中心节点的拟合函数值最大化对应坐标,再根据相似性将节点分配至其对应中心节点,最后将中心节点设置为所有节点坐标的平均;以此得到节点聚类标签,实现节点的聚类,以及节点异常检测。
[0078]
根据lstm模型得到节点相似性阈值的过程包括:
[0079]
步骤61:获取训练样本中的各节点相似性,将各个节点相似性的值输入到lstm编码层中,提取不同维度的特征;
[0080]
步骤62:采用自注意力机制对不同维度的节点特征进行特征感知;
[0081]
步骤63:将经过特征感知后的特征输入到lstm解码层中进行解码,并采用多层conv1d网络对解码后的复杂特征进行降维处理,得到节点相似性阈值。
[0082]
一种基于轨迹偏差点嵌入和深度聚类的异常节点检测方法的具体实施方式,如图1所示,该方法包括:
[0083]
s101:首先输入未标记的轨迹数据,为提取有价值的关于节点及边缘的信息,采用基于多跳环结构的方法来保留节点的结构表示;
[0084]
s102:实现一种学习道路网络结构中偏离点的潜在表示的方法。再对提取出的轨迹进行训练结构和偏差点,为两两分类模型生成特征标签;
[0085]
s103:再计算余弦相似度,并为每个行程分配一个标签;
[0086]
s104:对每批进行了训练样本的选择和省略,同时利用带标记的数据来建立二元两两分类模型,以减少模型的误差;
[0087]
s105:对迭代样本进行模型训练,最后聚类倾向于具有结构相似性和相同偏差点的行程特征的标签。
[0088]
一种协同智慧交通系统的具体实施方式,如图2所示,该交通系统包括:路网为有向无环图g=(v,l),其中车辆的轨迹通过跟踪路段进行监测,v={v1,v2,v3,v4,v5,v6}、l={l1,l2,l3,l4,l5}分别为道路节点集、路段集;有些节点采用摄像头网络进行监测,称为监测节点η;当节点沿着路段出发产生轨迹时,偏差点轨迹在d中进行监控,使用η=4个监测节点,分别得到不同行程的轨迹d={d1,d2,d3,d4},当轨迹lj相对于节点vk,其偏移点可以被di进行监控;再标记它们的路线关系li∈di和vk∈di,定义轨迹是一个序列有向无环图g,其位置点表示空间和时间;在本文中,排除了往返路程,每个节点之间的边表示中间点;以此来利用图结构生成序列集。
[0089]
如图3所示,采用深度聚类方法对轨迹嵌入进行聚类分类的过程包括:
[0090]
s301:首先从原始轨迹数据库中输入行程、节点信息、λ、u(λ)、ω、l(λ)以及n和m,其中λ为聚类程度,u(λ)和l(λ)为样本控制参数,n为轨迹数,m为每批的实例数,ω表示嵌入的大小;
[0091]
s302:判断选择的图层是否符合图层要求,符合就继续从原始数据集中选择训练样本,否则结束整个流程;
[0092]
s303:选择训练样本后采用平均法进行结构嵌入;再进行相似性计算,得到行程的标签;相似性计算的公式为余弦相似度计算公式。
[0093]
s304:利用梯度下降算法更新λ;
[0094]
s305:最后使用argmax方法来获得最终预测测试样本输出偏差点的聚类。
[0095]
一种采用偏差点表示距离方法对学习道路网格结构中偏离点进行表示具体实施方式,该方法包括:
[0096]
s11:初始化网络结构和节点的邻居,通过保留节点之间的关系来构造一个结构嵌入;
[0097]
s111:轨迹是表示点的序列,表示为地理位置(经度、维度和时间),轨迹数据库,原始轨迹集合的一个数据库,表示为t={t1,t2,

,tm},每个轨迹ti是一组序列,表示为一个时间有序的点(p1,p2,

,pn),每个点表示地理位置,在图的构建中被认为是一个节点;
[0098]
s112:地图轨迹数据库,一个集合代表时空区域的序列λ={λ1,

,λm},其中每个映射轨迹λi代表一个区域,(r1,r2,

,rn)可以通过ti中的每个点到它最近的区域ri来检索,以映射的轨迹为实例训练嵌入向量。
[0099]
s113:不同轨迹,给定图中的两条轨迹d(λi,λj),采用基于学习的方法进行度量。轨迹候选是一个有向图,它代表了一组轨迹异常值的潜在候选。这些轨迹是用不同的测量方法测量的,使用平均方法来计算出现在轨迹中的节点组的结构;
[0100]
s114:轨迹候选,为轨迹异常点检测算法提供了一组参考图,记为s114:轨迹候选,为轨迹异常点检测算法提供了一组参考图,记为表示第l条时空区域参考序列。
[0101]
s115:群轨迹异常点检测,在g中提取出代表起始点x至少有一条轨迹偏离的轨迹集,x对g中所有剩余的起始点进行高排序;g表示有序度序列之间的距离。
[0102]
s116:输入未标记的轨迹数据,为提取有价值的关于节点及边缘的信息,采用基于多跳环结构的方法来保留节点的结构表示;
[0103]
s117:实现一种学习道路网络结构中偏离点的潜在表示的方法。再对提取出的轨迹进行训练结构和偏差点,为两两分类模型生成特征标签。
[0104]
s12:设计一个分层多层图,利用有偏随机游走生成序列集,实现这个序列是为了优化节点嵌入。
[0105]
s121:路网为有向无环图g=(v,l),其中车辆的轨迹通过跟踪路段进行监测,v={v1,v2,v3,v4,v5,v6}、l={l1,l2,l3,l4,l5}分别为道路节点集、路段集;有些节点采用摄像头网络进行监测,称为监测节点η;
[0106]
s122:当节点沿着路段出发产生轨迹时,偏差点轨迹在d中进行监控,使用η=4个监测节点,分别得到不同行程的轨迹d={d1,d2,d3,d4},当轨迹lj相对于节点vk,其偏移点可以被di进行监控;再标记它们的路线关系li∈di和vk∈di,定义轨迹是一个序列有向无环图g,其位置点表示空间和时间;在本文中,排除了往返路程,每个节点之间的边表示中间点;以此来利用图结构生成序列集。
[0107]
利用轨迹偏差点嵌入得到行程嵌入,并通过lstm的两两分类法对嵌入进行分类的过程包括:
[0108]
s21:求节点的嵌入值的平均值,得到行程嵌入;
[0109]
s211:使用节点集的有序度序列,设tk(x)节点表示g中距离k的顶点x的邻居集,例如t1(x)表示距离为1的顶点x的邻居集,tk(x)表示节点在距离k处的轨迹增长。通过比较来自x和y(节点网络中的两个节点)的轨迹节点的有序度序列,引入一个图层来衡量结构相似性,并用学习函数fk(x,y)表示x和y之间的轨迹结构距离。考虑它们的邻居k,所有道路网络节点在一定距离小于等于k,函数定义如式(1)所示:
[0110]fk
(x,y)=f
k-1
(x,y)+g(s(tk(x)),s(tk(y))),
[0111]
k≥0,|tk(x)|,|tk(y)|》0
ꢀꢀꢀꢀ
(1)
[0112]
其中,如果节点u和v的k-hop领域是同构的,当节点u映射到v上f
k-1
(x,y)=0,k表示距离长度,g(.)表示s(tk(x))和s(ty(x))之间的距离,s(.)表示一组有序度序列的节点,tk(x)表示距离k节点x的邻居节点。
[0113]
s212:fk(x,y)函数只有仅当x或y的边都在k处时才定义。有序度序列之间的距离可以通过fk(x,y)来测量,利用k计算距离x和y相同的节点的度序列;
[0114]
s213:使用动态时间规整算法计算两个有序度序列之间的距离;该方法有助于提取有效距离,可以更好地处理不同大小的序列,并对序列模式进行松散压缩。动态时间规整有助于在x和y的轨迹增长序列之间找到最优对齐,给定序列中每个元素的距离函数d(x,y),动态时间规整以匹配元素之间的距离之和最小化的方式匹配序列;
[0115]
s214:由于轨迹增长有节点与邻居的度序列表示,因此使用距离函数d(x,y)如式(2)所示:
[0116][0117]
其中,d(x,y)表示序列x和序列y的距离。
[0118]
s215:两个序列相同的节点之间的距离为零(x=y,d(x,y)=0)。为了构造上下文,多层加权图将节点编码为偏离点轨迹;
[0119]
s216:g=(v,l)是k
*
跳直径处连接的路网,使用节点的k跳领域来定义多层图,并通过式(2)来分配节点的权值,图每层的条边的权值如式(3)所示;其中为矩阵,n为节点的数量。
[0120][0121]
其中,ωk(x,y)表示节点x和节点y边的权重。
[0122]
对于加权边,有nk
*
个顶点最多是
[0123]
s217:多层图生成轨迹偏差点的上下文信息,基于轨迹偏差点节点的结构相似度完全不需要标签信息;使用带有随机选择和加权序列的有偏差随机游走,随机游走首先决定在每一层移动或停留,q》0随机游走停留在当前层;在第k层中,节点u到节点v停留在当前层的概率由式(4)所示:
[0124][0125]
其中zk(x)是k层顶点x的归一化因子,如式(5)所示:
[0126][0127]
s218:随机游走方法倾向于只对基于轨迹偏差点的结构相似的节点进行不进,这将导致节点u在结构上相似的节点中,没有它们的标签信息和在网络中的位置。v层中的节点x在其对应的0层顶点开始游走,且游走有一个固定的较短的长度(步数),这一过程会重复一定的次数,并产生多个独立的遍历(节点有多个上下文);
[0128]
s219:使用skip gram方法进行表示学习,并使用生成的序列(多层图中的偏置随机游动),skip gram方法的目的是最大化序列中的上下文,其中一个节点的上下文是由窗口大小为ω中心给出的,使用softmax归一化函数,条件符号概率被二叉树分类器使用。每个节点由v中的分类树中的一条特定路径分配。在这种情况下,定义如式(6)给出,其中c是一个二分类器,在树中的每个节点都有;
[0129][0130]
其中,表示路径权重,h表示树的高度,c(.)表示二分类器,n(v
x
,k)表示表示树节点。
[0131]
s22:基于lstm的两两分类方法,利用基于相似度的度量对嵌入进行聚类s221:为了将表示为行程的轨迹序列聚类,进行二元成对深度神经网络训练,采用带有门控单元的递归神经网络(rnn),lstm网络既保留了远距离信息的记忆.在设计的模型中使用了元素平均法。然后式(7)确定关系r的学习函数f,如果v
x
,vy满足r则f(v
x
,vy)为1,否则f(v
x
,vy)为-1;
[0132][0133]
s223:变量r表示基于偏差点的轨迹,如果行程遵循正常轨迹,则将它们分组,否则被归类为异常。在本文中,每个行程由不同的节点组成,得到的行程嵌入,使用嵌入平均方法将节点集合表示为每次行程的单趟。二元两两分类模型利用轨迹平均的标记特征,然后再利用余弦相似度,并选择结构上更相似的余弦相似行程。使用基于度的优化方法来减少搜索空间,运行一个更大的网络。g(v
x
,vy,w)是一个二元分类器,分别由式(8)和式(9)表示:
[0134]
g(v
x
,vy,w)=f(v
x
,vy;w)
·
f(vy;w)
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(8)
[0135][0136]
其中,λ为聚类程度,在聚类过程中λ逐渐增大;i
x
、iy表示标签集中第x个标签值;none表示省略的训练样本(v
x
,vy,r
xy
)。
[0137]
s224:通过抽取一批难处理的样本,逐步进行rnn进程查找优化的行程特征标签。在聚类过程中,λ逐渐增大。如果所有样本都用于训练,则满足u(λ)=l(λ);再使用argmax方法来获得最终预测测试样本输出偏差点的聚类。
[0138]
以上所举实施例,对本发明的目的、技术方案和优点进行了进一步的详细说明,所应理解的是,以上所举实施例仅为本发明的优选实施方式而已,并不用以限制本发明,凡在本发明的精神和原则之内对本发明所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1