基于轨迹相似度和深度学习的轨迹GPS坐标恢复方法及框架

文档序号:34723644发布日期:2023-07-07 18:57阅读:52来源:国知局
基于轨迹相似度和深度学习的轨迹GPS坐标恢复方法及框架

本发明涉及坐标轨迹恢复,特别涉及一种基于轨迹相似度和深度学习的轨迹gps坐标恢复方法及框架。


背景技术:

1、随着各种移动通讯、车载导航设备的广泛使用,轨迹数据也迅速激增,而此类数据中所蕴含的丰富的时空信息对于诸如路径规划、poi(兴趣点)推荐等基于位置的应用服务至关重要。但实际中,受设备功耗限制、信号缺失等原因的影响,许多轨迹数据本来就是以低采样率的方式记录,或者缺失了部分空间信息,导致轨迹不完整。并且采样间隔过大的两个轨迹点之间详细空间信息的丢失,会使得轨迹数据本身存在很大的不确定性,这对下游的应用有着极其负面的影响。因此,填补不完整轨迹中的缺失空间信息,以减小轨迹数据本身的不确定性也成为一种迫切需求。

2、基于上述情况,目前采用的轨迹恢复方法主要分为位置轨迹恢复和坐标轨迹恢复两个大方向。位置轨迹恢复,即利用人们在不同位置之间的时空转移模式来预测用户轨迹中缺失的位置信息。这里的位置一般指某个场所、地点或poi的id,此类任务本质上是一种分类任务,一般需要预测某个较长时间段内用户的所在地。例如专利公开号:cn114885293a就提供了一种位置轨迹恢复方案,其依赖于基站信息,恢复用户在某个时间段内的大致位置(用基站位置代替)。需要说明的是,这种位置轨迹恢复并不会转化为具体的坐标信息。

3、坐标轨迹恢复是指利用不完整的轨迹数据,恢复精确时刻下对应的精确地理坐标。这里的地理坐标一般指gps坐标或者路网系统中的路段id和通过率,此类任务本质上是一种回归任务。例如专利公开号:cn115017250a就提供了一种应用于路段id和通过率的坐标轨迹恢复方案,其依赖于路网数据来恢复精确的路网坐标,但不能用于自由空间场景下轨迹的恢复。

4、现有的轨迹gps坐标恢复方案主要分为基于序列填补的技术和基于单元格的技术。基于序列填补的技术直接将轨迹数据看作二维时间序列数据,然后利用诸如基于rnn、基于vae和基于attention等一些序列填补技术来恢复轨迹。此类技术方案充分利用了轨迹数据中精确的时空信息,在缺失轨迹数据比例不高时效果尚可,但在轨迹空间信息缺失严重时,效果明显变差,无法适用于稀疏轨迹数据。并且,采用rnn的计算得到每个轨迹点必须用到上一个轨迹点的状态向量,而轨迹点是一个一个被计算出来的,即串行计算,而无论是训练还是恢复轨迹时,这种串行计算相对于并行计算均需要耗费更多的时间,因而效率很低。例如上述所述的cn115017250a就采用了以rnn为基础模型块构建seq2seq模型的计算方案。

5、基于单元格的技术通常先将整个空间化为离散且不相交的单元格,再恢复由一个个单元格组成的模糊轨迹,最后通过不同的校准算法得出精确轨迹坐标。这类方法将坐标轨迹恢复任务先从无限连续空间转化到了有限离散空间,降低了模型预测的复杂性,提高了模型的建模能力,在一定程度上可以缓解数据稀疏问题。但由于是在由单元格组成的模糊轨迹上进行建模,便不可避免地引入了噪声和不准确的空间信息,并且在将模糊轨迹转化为精确轨迹坐标时,一般没有比较有价值的参照信息可以利用。

6、因此,上述两种方案仅仅利用了待恢复不完整轨迹本身的空间信息,并没有充分利用到来自相似轨迹的信息,使得稀疏数据的恢复受到了较大的限制。


技术实现思路

1、本发明的目的在于提供一种基于轨迹相似度和深度学习的轨迹gps坐标恢复方法及框架,解决现有方案难以很好地适用于稀疏轨迹数据的恢复问题。

2、为实现上述目的,本发明采用的技术方案如下:

3、一种基于轨迹相似度和深度学习的轨迹gps坐标恢复方法,包括以下步骤:

4、(1)原始相似轨迹输出

5、(1-1)将待恢复的不完整轨迹分割成若干缺失轨迹段,每个缺失轨迹段的两端均为记录点,中间为缺失点;且该不完整轨迹的头尾则一边是记录点,另一边是缺失点;

6、(1-2)对于每个缺失轨迹段,用与其最相似的轨迹段中相应记录点的位置坐标将缺失轨迹段缺失点的位置坐标初步填充补全,找不到相关轨迹段的缺失轨迹段将不会被填充;

7、(1-3)将初步填充后的轨迹段进行拼接,同时,采用线性插值方式对找不到相关轨迹段的缺失轨迹段缺失点进行位置坐标填充,最终获得不完整轨迹的原始相似轨迹;

8、(2)完整轨迹恢复

9、(2-1)采用以下编码策略对原始相似轨迹进行编码:

10、xrs=eidx+conv1d(lrs)

11、其中,eidx为位置编码,conv1d(·)为无偏置的卷积核大小为1的一维卷积操作,lrs为原始相似轨迹;

12、同时,采用以下编码策略对不完整轨迹进行编码:

13、x=eidx+etime+egps

14、其中,etime为时间编码,egps为坐标编码;

15、(2-2)采用深度编码器根据编码策略输出深度相似轨迹,该深度编码器由b个网络块组成,每个网络块均依次由多头注意力机制、拼接线性层、加和标准化层、前向传播层以及加和标准化层组成;

16、每个网络块的过程为:

17、oa1=mha(xrs,x,x)

18、oa2=mha(xrs,xrs,xrs)

19、oc=cl(oa1,oa2)

20、oa=ln(xrs+dropout(oc))

21、xrs=ln(oa+dropout(ffn(oa)))

22、其中,oa1,oa2为拼接线性层的输入,oc为拼接线性层的输出,oa为加和标准化的过程;最后一个编码器网络块的输出结果即为深度相似轨迹xs;

23、(2-3)采用深度解码器根据编码策略输出完整轨迹,该深度解码器同样由b个网络块组成,每个网络块均依次由多头注意力机制、加和标准化层、多头注意力机制、加和标准化层、前向传播层以及拼接线性层组成;

24、每个网络块的过程为:

25、oa1=mha(x,x,x)

26、oa1=ln(x+dropout(oa1))

27、oa2=mha(oa1,xs,xs)

28、oa2=ln(oa1+dropout(oa2))

29、x=ln(oa2+dropout(ffn(oa2)))

30、其中,将最后一个解码器网络块的输出结果记为xp;

31、(2-4)采用一个线性变换将高维向量变为二维向量,最终得到恢复好的完整轨迹lpre:

32、lpre=xpw+b

33、其中,w,b分别表示线性变换矩阵和偏置向量。

34、具体地,所述步骤(1-2)中,缺失轨迹段缺失点的初步填充过程如下:

35、(a)利用网格索引,将缺失轨迹段的记录点由轨迹点坐标序列表示的形式转换成单元格序列表示的形式,将该单元格序列作为关键单元格序列,其对应的轨迹点作为关键轨迹点;

36、(b)利用网格索引和取交集操作,找到经过关键单元格序列的轨迹的id以及这些轨迹落于关键单元格序列的轨迹点的id,若能找得到,则执行步骤(c);否则,判断当下关键单元格序列中单元格的数量,若只有一个单元格,则不进行任何填补;若至少还有两个单元格,则执行步骤(e);

37、(c)对步骤(b)得到的经过关键单元格序列的轨迹进行筛选,只保留与缺失轨迹段经过关键单元格序列顺序相同或者相反的轨迹id及其相应轨迹点id,获得相关轨迹段;然后确定是否存在同时符合顺序相同或完全相反、以及有可用空间信息两个条件的相关轨迹段,是,则执行步骤(d),否则判断当下关键单元格序列中单元格的数量,若只有一个单元格,则不进行任何填补;若至少还有两个单元格,则执行步骤(e);

38、(d)将各个相关轨迹段根据其与缺失轨迹段之间的相关度进行排序,然后选择与缺失轨迹段最相似的相关轨迹段,按照时间比例相近的原则,将缺失轨迹段缺失点的位置坐标填补为相关轨迹段原始填充点的位置坐标;

39、(e)在关键单元格序列中,剔除顺序上离缺失点最远的一个单元格,并最大程度保留原关键单元格序列空间特征,然后返回执行步骤(b)。

40、进一步地,所述步骤(d)中,将缺失轨迹段缺失点的位置坐标填补为相关轨迹段原始填充点的位置坐标后,还判断位置坐标是否符合常理,是,则将填充后的缺失轨迹段输出;否,则选择次相似的相关轨迹段重新进行坐标填补;若不符合常理且之后没有次相似的相关轨迹段,则不进行任何填补。

41、具体地,所述步骤(1-3)中,采用线性插值方式对找不到相关轨迹段的缺失轨迹段缺失点进行位置坐标填充的过程为:对于被记录点夹在中间的缺失点,分别用经度和纬度的一维线性插值进行填充;如果在不完整轨迹的起点和终点有缺失点,则使用起点之后/终点之前最近的记录点来填充。

42、具体地,所述步骤(2-1)中,eidx采用如下方式获得:

43、

44、其中,i表示不完整轨迹的第i个点,j表示高维向量的第j维,所有高维向量的维度均为d维。

45、进一步地,所述步骤(2-1)中,etime采用如下方式获得:

46、

47、其中,concat(·)代表横向拼接矩阵,为wtime的转置,tmin和tsec分别表示不完整轨迹数据当前时间戳处于第几分钟和第几秒。

48、再进一步地,所述步骤(2-1)中,egps采用如下方式获得:

49、egps=conv1d(l)

50、其中,l代表不完整轨迹的位置坐标。

51、基于上述方法,本发明还提供了一种基于轨迹相似度和深度学习的轨迹gps坐标恢复框架,包括空间信息提取器、轨迹编码层、深度编码器和深度解码器,其中:

52、空间信息提取器,用于选择与待恢复的不完整轨迹相似的轨迹段,并对其缺失位置坐标进行初步填补,然后将初步填充后的轨迹段进行拼接,并采用线性插值方式对找不到相关轨迹段的缺失轨迹段缺失点进行位置坐标填充,最终输出不完整轨迹的原始相似轨迹;

53、轨迹编码层,用于将二维的轨迹序列编码为高维向量,并通过位置编码、时间编码和坐标编码分别对原始相似轨迹和不完整轨迹进行编码;

54、深度编码器,用于对编码后的原始相似轨迹进行整理,输出不完整轨迹的深度相似轨迹;

55、深度解码器,用于对编码后的不完整轨迹进行整理,并结合深度相似轨迹,最终得到恢复的完整轨迹。

56、进一步地,所述空间信息提取器中,通过轨迹点填充模块对缺失位置坐标进行初步填补。

57、再进一步地,所述轨迹点填充模块包括网格索引器、序列筛选器、坐标选择器和单元格序列选择器,其中:

58、网格索引器,用于将缺失轨迹段的记录点由轨迹点坐标序列表示的形式转换成单元格序列表示的形式,获得关键单元格序列及与其对应的关键轨迹点,然后将关键单元格序列所对应的轨迹集合取交集,找到经过关键单元格序列的轨迹的id以及这些轨迹落于关键单元格序列的轨迹点的id;

59、序列筛选器,用于对得到的经过关键单元格序列的轨迹进行筛选,得到与缺失轨迹段经过关键单元格序列顺序相同或者相反的轨迹id及其相应轨迹点id,进而得到相关轨迹段以及可用于填充缺失轨迹段缺失点的原始填充点;

60、坐标选择器,用于将各个相关轨迹段根据其与缺失轨迹段之间的相关度进行排序,然后选择与缺失轨迹段最相似的相关轨迹段,按照时间比例相近的原则,将缺失轨迹段缺失点的位置坐标填补为相关轨迹段原始填充点的位置坐标;

61、单元格序列选择器,用于在关键单元格序列中,剔除顺序上离缺失点最远的一个单元格,并最大程度保留原关键单元格序列的空间特征,以便网格索引继续将关键单元格序列所对应的轨迹集合取交集,找到经过关键单元格序列的轨迹的id以及这些轨迹落于关键单元格序列的轨迹点的id。

62、本发明的主要设计原理如下:

63、为了利用不同轨迹之间的相似性来对不完整轨迹复杂的移动规律进行建模,本发明提出了一个新颖的轨迹gps坐标恢复框架。为了应对数据稀疏问题,本发明设计了一个基于规则的空间信息提取器,利用数据集里其它不完整轨迹中与待恢复不完整轨迹相似部分的空间信息,提取出一条位置填补完整的相似轨迹,即原始相似轨迹。由于轨迹数据诸如空间偏差、时间偏差、时间偏移等本身性质的存在,两条轨迹数据即使都是采集自同一个物体的同一段运动过程,它们也会有很大不同。所以,考虑到轨迹本身性质的影响,本发明设计了一个基于注意力机制和深度网络的编码器,用于以待恢复的不完整轨迹为参考,梳理出一条为其量身定做的、实际上不存在但与待恢复轨迹最为切合的相似轨迹,即深度相似轨迹。为了最终输出恢复的完整轨迹,本发明又设计了一个基于注意力机制深度网络解码器,用于以深度相似轨迹为参考,将不完整轨迹恢复成完整轨迹。所有操作均在无限连续空间中进行,没有引入任何噪声或者不准确信息。

64、与现有技术相比,本发明具有以下有益效果:

65、(1)本发明将缺失轨迹分割成若干缺失轨迹段,每个缺失轨迹段用一条或多条相似的轨迹段的gps坐标进行填充;考虑到轨迹固有的性质(例如空间偏差、时间偏差、时间偏移等),本发明先以整条缺失轨迹为参考,利用深度编码器获得一条实际不存在但又与缺失轨迹最为契合的深度相似轨迹,然后将深度相似轨迹作为参考,来恢复缺失轨迹。如此一来,在提取相关的空间信息时,利用来自不同轨迹的多条相似轨迹段对整条缺失轨迹的不同部分分别进行填补,这种轨迹段对轨迹段式的填补相对于用整条相似轨迹做参考,不仅可以利用更多的相似空间信息,而且所有操作均在连续空间上进行,更好地避免了噪声和不准确信息的引入;同时,本发明采用程序化的提取工作代替预训练模型,不需要随着新数据的加入而重新训练预训练模型,充分考虑到了轨迹数据本身的性质,进而为恢复完整轨迹提供了良好的保障。

66、(2)本发明以注意力机制和前馈神经网络作为基础模型块构建seq2seq模型,模型并行计算每个轨迹点,一次性输出整条轨迹,相比以rnn为基础模型块构建seq2seq模型的计算方案,本发明的计算时间更短,模型构建效率更高。

67、(3)与现有技术相比,本发明恢复后的轨迹与实际轨迹之间空间距离更小,也更加适用于稀疏轨迹数据场景下不完整轨迹的恢复。例如在波尔图出租车数据集的实验中,当不完整轨迹中缺失点比例达到30%、50%、70%时,现有技术最先进的方案dhtr恢复的轨迹与真实轨迹之间的平均rmse距离为0.126km、0.215km、0.301km,而本发明仅有0.0822km、0.1343km、0.1821km,恢复精度得到了较大的提高。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1