CN116186358A - 一种深度轨迹聚类方法、***及存储介质 - Google Patents
一种深度轨迹聚类方法、***及存储介质 Download PDFInfo
- Publication number
- CN116186358A CN116186358A CN202310100602.3A CN202310100602A CN116186358A CN 116186358 A CN116186358 A CN 116186358A CN 202310100602 A CN202310100602 A CN 202310100602A CN 116186358 A CN116186358 A CN 116186358A
- Authority
- CN
- China
- Prior art keywords
- track
- vector
- loss
- coding
- model
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/906—Clustering; Classification
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/907—Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually
- G06F16/909—Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using geographical or spatial information, e.g. location
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D30/00—Reducing energy consumption in communication networks
- Y02D30/70—Reducing energy consumption in communication networks in wireless communication networks
Landscapes
- Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Library & Information Science (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
- Image Analysis (AREA)
Abstract
本发明提供一种深度轨迹聚类方法、***及存储介质,包括:得到第一增广数据集合和第二增广数据集合;将第一增广数据集合输入到训练好的轨迹编码模型中得到轨迹编码向量,将第二增广数据集合输入到轨迹动量编码模型中得到轨迹动量编码向量;确定聚类中心、第一类别概率分布和第二类别概率分布,并计算第一目标分布和第二目标分布;计算KL散度对比学习损失;确定第一投影向量和第二投影向量,计算轨迹投影向量对比损失;确定第一轨迹预测向量和第二轨迹预测向量,计算轨迹类别对比损失;确定总模型损失,迭代更新轨迹编码模型和聚类中心,基于最后一次迭代过程中获得的轨迹编码向量及聚类中心对待聚类轨迹数据进行聚类。该方法轨迹数据聚类效果好。
Description
技术领域
本发明涉及大数据挖掘技术领域,尤其涉及一种深度轨迹聚类方法、***及存储介质。
背景技术
轨迹数据是城市中人、车、物移动过程中相关传感器设备(如手机)产生的具有时间、空间双重属性的数据。轨迹数据可以揭示人、车、物的移动规律,近年来被广泛应用于交通流量预测、实时人口统计分析、疫情密接人员挖掘等智慧城市的各个领域。轨迹聚类是轨迹模式挖掘的常用技术,可用于对不同的轨迹模式进行识别和区分,例如周期性轨迹模式识别、频繁轨迹模式识别等。早期的轨迹聚类技术主要是基于原始轨迹相似度度量,计算结果受噪声干扰较大。随着深度学习技术的应用,学者们利用深度学习模型对原始轨迹序列进行表征学习,得到相同长度的轨迹表示向量,再利用K-means等聚类算法实现轨迹聚类。例如,Fang等人提出了一种端到端的深度轨迹聚类技术,利用序列到序列模型学习轨迹表示向量,再基于K-means对轨迹表示向量进行聚类,并把聚类损失和序列到序列模型解码器利用轨迹表示向量重构原始轨迹序列的轨迹重构损失进行同步优化。
然而,现有基于深度学习的轨迹聚类方法对聚类过程的优化只是通过强化轨迹表征向量距离各个聚类中心的距离分布来实现,而未探索相同和不相同类型轨迹之间的关系,以及各个轨迹类别之间的关系,因此使得轨迹聚类性能受限。此外,现有方法只是将轨迹看作空间转移序列,而忽略了每个轨迹点的访问时间特征,导致无法基于海量无标注数据挖掘精细的轨迹时空移动模式特征,比如群体伴随移动模式等。因而,现有的轨迹聚类方法虽然可实现轨迹的聚类,但其存在着轨迹聚类效果差的缺点;因此,如何提高轨迹聚类的效果是亟待解决的技术问题。
发明内容
有鉴于此,本发明提供了一种深度轨迹聚类方法、***及存储介质,以解决现有技术中存在的一个或多个问题。
根据本发明的一个方面,本发明公开了一种深度轨迹聚类方法,所述方法包括:
获取待聚类轨迹数据,对所述待聚类轨迹数据进行数据增广得到第一增广数据集合和第二增广数据集合;其中,各待聚类轨迹数据包括多个轨迹点,各所述轨迹点包括时间信息和位置信息;
将所述第一增广数据集合输入到训练好的轨迹编码模型中得到轨迹编码向量,将所述第二增广数据集合输入到轨迹动量编码模型中得到轨迹动量编码向量;
基于所述轨迹编码向量确定聚类中心,基于各所述轨迹编码向量以及所述聚类中心确定所述第一增广数据集合中各轨迹数据对应的第一类别概率分布,基于所述第一增广数据集合中各轨迹数据对应的第一类别概率分布计算第一目标分布,基于各所述轨迹动量编码向量以及所述聚类中心确定所述第二增广数据集合中各轨迹数据对应的第二类别概率分布,基于所述第二增广数据集合中各轨迹数据对应的第二类别概率分布计算第二目标分布;
基于所述第一类别概率分布、第一目标分布、第二类别概率分布以及第二目标分布计算KL散度对比学习损失;
基于第一前馈神经网络分别确定所述轨迹编码向量和所述轨迹动量编码向量对应的第一投影向量和第二投影向量,基于所述第一投影向量和第二投影向量计算轨迹投影向量对比损失;
基于第二前馈神经网络分别确定所述轨迹编码向量和所述轨迹动量编码向量对应的第一轨迹预测向量和第二轨迹预测向量,基于所述第一轨迹预测向量和第二轨迹预测向量计算轨迹类别对比损失;
基于轨迹编码模型损失、所述KL散度对比学习损失、轨迹投影向量对比损失以及轨迹类别对比损失确定总模型损失,基于所述总模型损失迭代更新所述轨迹编码模型和聚类中心;
基于最后一次迭代过程中获得的所述轨迹编码向量及聚类中心对所述待聚类轨迹数据进行聚类。
在本发明的一些实施例中,所述方法还包括:
构建初始轨迹编码模型;
基于交叉熵损失函数计算轨迹编码模型的空间位置预测损失和被遮蔽轨迹点时间预测损失,基于所述空间位置预测损失和被遮蔽轨迹点时间预测损失确定所述轨迹编码模型损失;
基于所述轨迹编码模型损失更新所述初始轨迹编码模型的模型参数得到训练好的轨迹编码模型。
在本发明的一些实施例中,所述数据增广包括:
对所述待聚类轨迹数据进行稀疏化操作;或
为所述待聚类轨迹数据添加位置噪声或时间噪声;或
对所述待聚类轨迹数据进行插值操作。
在本发明的一些实施例中,所述轨迹编码模型和所述轨迹动量编码模型均为BERT模型;
其中,所述轨迹动量编码模型的参数基于所述轨迹编码模型的参数进行动量更新,且所述轨迹动量编码模型的参数计算公式为:
θ2=mθ2+(1-m)θ1;
θ1、θ2分别为轨迹编码模型和轨迹动量编码模型的模型参数,m为动量参数。
在本发明的一些实施例中,第一目标分布或第二目标分布的计算公式为:
其中,pi,j表示第一目标分布或第二目标分布,qi,j表示轨迹i属于类别j的概率,fj=∑iqi,j,qi,j′表示轨迹i属于类别j′的概率,fj′表示各轨迹属于类别j′的概率之和,fj′=∑iqi,j′,其中j′表示任意类别,j′=1,2…N,i表示当前计算的特定轨迹,i=1,2…M,j表示当前计算的特定类别,j=1,2…N,N表示类别总数量,M表示轨迹总数量。
在本发明的一些实施例中,所述KL散度对比学习损失的计算公式为:Lkl=(KL(P2||Q1)+KL(P1||Q2))/2;其中,P1表示第一类别概率分布,Q1表示第一目标分布,P2表示第二类别概率分布,Q2表示第二目标分布。
在本发明的一些实施例中,基于所述第一投影向量和第二投影向量计算轨迹投影向量对比损失,包括:
基于所述第一投影向量和第二投影向量通过InfoNCE损失函数计算轨迹投影向量对比损失;
基于所述第一轨迹预测向量和第二轨迹预测向量计算轨迹类别对比损失,包括:
基于所述第一轨迹预测向量和第二轨迹预测向量通过InfoNCE损失函数计算轨迹类别对比损失。
在本发明的一些实施例中,总模型损失为:
L=ω1Lbert+ω2Lkl+ω3Lnce_traj+ω4Lnce_clus;
其中,Lbert为轨迹编码模型损失,Lkl为KL散度对比学习损失,Lnce_traj为轨迹投影向量对比损失,Lnce_clus为轨迹类别对比损失,ω1、ω3、ω4均为1,ω2为2。
根据本发明的另一方面,还公开了一种深度轨迹聚类***,该***包括处理器和存储器,所述存储器中存储有计算机指令,所述处理器用于执行所述存储器中存储的计算机指令,当所述计算机指令被处理器执行时该***实现如上任一实施例所述方法的步骤。
根据本发明的再一方面,还公开了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如上任一实施例所述方法的步骤。
本发明实施例所公开的深度轨迹聚类方法、***及存储介质,基于对比学习实现轨迹表征和轨迹聚类的联合优化,并使得相似轨迹在向量空间是相近的,不相似轨迹在向量空间是远离的,从而有效提高了轨迹聚类的效果,也提高了轨迹聚类的精确度。
本发明的附加优点、目的,以及特征将在下面的描述中将部分地加以阐述,且将对于本领域普通技术人员在研究下文后部分地变得明显,或者可以根据本发明的实践而获知。本发明的目的和其它优点可以通过在书面说明及其权利要求书以及附图中具体指出的结构实现到并获得。
本领域技术人员将会理解的是,能够用本发明实现的目的和优点不限于以上具体所述,并且根据以下详细说明将更清楚地理解本发明能够实现的上述和其他目的。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,并不构成对本发明的限定。附图中的部件不是成比例绘制的,而只是为了示出本发明的原理。为了便于示出和描述本发明的一些部分,附图中对应部分可能被放大,即,相对于依据本发明实际制造的示例性装置中的其它部件可能变得更大。在附图中:
图1为本发明一实施例的深度轨迹聚类方法的流程示意图。
图2为本发明一实施例的深度轨迹聚类***的框架结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚明白,下面结合附图对本发明实施例做进一步详细说明。在此,本发明的示意性实施例及其说明用于解释本发明,但并不作为对本发明的限定。
在此,需要说明的是,为了避免因不必要的细节而模糊了本发明,在附图中仅仅示出了与根据本发明的方案密切相关的结构和/或处理步骤,而省略了与本发明关系不大的其他细节。
应该强调,术语“包括/包含/具有”在本文使用时指特征、要素、步骤或组件的存在,但并不排除一个或更多个其它特征、要素、步骤或组件的存在或附加。
在下文中,将参考附图描述本发明的实施例。在附图中,相同的附图标记代表相同或类似的部件,或者相同或类似的步骤。
图1为本发明一实施例的深度轨迹聚类方法的流程示意图,如图1所示,该深度轨迹聚类方法至少包括步骤S10至步骤S70。
步骤S10:获取待聚类轨迹数据,对所述待聚类轨迹数据进行数据增广得到第一增广数据集合和第二增广数据集合;其中,各待聚类轨迹数据包括多个轨迹点,各所述轨迹点包括时间信息和位置信息。
在该步骤中,利用轨迹预处理技术对待聚类轨迹数据进行数据增广,即基于一条原始轨迹,构建出若干条与原始轨迹具有相似的时空移动模式特征的新轨迹。示例性的,原始轨迹T=(p1,p2,…,pi,…pn),其中n代表该条轨迹所有的轨迹点数量,pi表示第i个轨迹点,各轨迹点通常包含时间信息和位置信息;如pi可表示为(ti,loci),ti代表该轨迹点对应的时间信息,即该轨迹点被记录的具体时间;loci表示该轨迹点对应的位置ID,loci对应的经纬度坐标位置为lati,lngi。
在一实施例中,数据增广包括:对所述待聚类轨迹数据进行稀疏化操作;或为所述待聚类轨迹数据添加位置噪声或时间噪声;或对所述待聚类轨迹数据进行插值操作。示例性的,轨迹数据增广过程表示为f,D表示原始轨迹数据集合,则增广后的第一增广数据集合和第二增广数据集合分别表示为:D1=f(D),D2=f(D)。D1和D2中具有相同编码的轨迹互为正样本,而除正样本之外的其他样本的则可视为负样本。
示例性的,对待聚类轨迹数据进行稀疏化操作以进行数据增广,其具体的操作可为按照预设的比例r1随机丢掉原始轨迹中的一些轨迹点,如随机丢掉待聚类的原始轨迹中的10%的轨迹点。对待聚类轨迹数据进行噪声化时,具体的操作可为按照预设的比例r2随机选择一些轨迹点添加位置噪声或时间噪声;例如,为一个轨迹点添加时间噪声的方法是对其轨迹点记录时间ti添加偏移量Δt,Δt的取值范围设为(-300,300),单位是秒;而为一个轨迹点添加位置噪声的方法是以其原始轨迹点的经纬度坐标lati,lngi为圆心,在以40米为半径的圆内随机选择一对经纬度坐标代替其原始值。其中,当原始轨迹点对应的经纬度坐标未知的情况下,则可以根据已知轨迹数据集统计出与该轨迹点的位置ID在所有轨迹中共现频次最高的5个位置ID,并从中随机选择一个用以代替该轨迹点的原始位置ID。除了对待聚类轨迹数据进行稀疏化和噪声化完成数据增广之外,还可对待聚类轨迹数据进行插值操作以实现数据增广,例如,按照预设的比例r3随机选择一些位置添加轨迹点,添加的轨迹点位置ID设为其前一个轨迹点的位置ID,而添加的轨迹点的时间戳设为其前后轨迹点时间戳的均值。
可以理解的是,上述所列举的数据增广的方式仅是几种较优示例,而在实际应用时,可根据实际需要选择具体所应用的数据增广的方法。
步骤S20:将所述第一增广数据集合输入到训练好的轨迹编码模型中得到轨迹编码向量,将所述第二增广数据集合输入到轨迹动量编码模型中得到轨迹动量编码向量。
在该步骤中,是通过采用深度学习模型对增广后的轨迹数据进行编码,从而将不均匀的时空序列数据编码为固定长度的数值向量。其中,轨迹动量编码模型和轨迹编码模型的架构可相同,但轨迹动量编码模型和轨迹编码模型的模型参数不同。示例性的,轨迹编码模型和轨迹动量编码模型均可为BERT模型,此时第一BERT模型(轨迹编码模型)和第二BERT模型(轨迹动量编码模型)的参数不同,并且在后续步骤中的迭代更新过程中,第一BERT模型基于总模型损失进行参数的迭代更新,而第二BERT模型的模型参数仅基于第一BERT模型的模型参数进行动量更新。
当轨迹动量编码模型和轨迹编码模型均为BERT模型时,则将第一增广数据集合输入至训练好的第一BERT模型中,则可将第一BERT模型最后一层输出的CLS的表示向量作为第一增广数据集合对应的轨迹编码向量H1,除此之外,也可将第一BERT模型最后一层所有位置的表示向量的均值作为第一增广数据集合对应的轨迹编码向量H1。而对于轨迹动量编码模型,则将第二增广数据集合输入到第二BERT模型中,则可将第二BERT模型最后一层输出的CLS的表示向量作为第二增广数据集合对应的轨迹编码向量H2,或也可将第二BERT模型最后一层所有位置的表示向量的均值作为第二增广数据集合对应的轨迹编码向量H2。在该实施例中,H1维度大小设为256,而H2维度大小也设为256。
在一实施例中,轨迹动量编码模型的参数基于轨迹编码模型的参数进行动量更新,且轨迹动量编码模型的参数计算公式为:
θ2=mθ2+(1-m)θ1;
θ1、θ2分别为轨迹编码模型和轨迹动量编码模型的模型参数,m为动量参数,示例性的m可取值为0.999。
在本发明一实施例中,深度轨迹聚类方法还包括如下步骤:构建初始轨迹编码模型;基于交叉熵损失函数计算轨迹编码模型的空间位置预测损失和被遮蔽轨迹点时间预测损失,基于所述空间位置预测损失和被遮蔽轨迹点时间预测损失确定所述轨迹编码模型损失;基于所述轨迹编码模型损失更新所述初始轨迹编码模型的模型参数得到训练好的轨迹编码模型。
例如,当轨迹编码模型采用BERT模型时,则BERT模型的dropout比例可设置为0.1,Transformer编码器层数可设置为6,注意力头数可设置为6。假设所有轨迹的轨迹点去重后的位置ID数量为V,则将所有位置ID设为Vxd大小的可训练向量,从而将每条轨迹的空间位置信息转换为可计算的嵌入向量E1。另外,将一天的时间按照t的区间平均划分,则每个轨迹点的访问时间戳可转换为时间索引ID,同样将时间索引ID设置为(86400/t)xd的可训练向量,则将每条轨迹的访问时间信息转换为可计算的嵌入向量E2。此外,根据BERT模型中的位置编码可以获得嵌入向量E3;则最终得到轨迹的嵌入向量E=E1+E2+E3。
进一步的,改进BERT模型的训练目标函数,原始的遮蔽语言模型的交叉熵损失只计算了空间位置ID的预测损失,本申请在此基础上,添加被遮蔽轨迹点时间索引的预测损失(用交叉熵损失进行计算),对BERT模型进行训练。在该实施例中,用于轨迹编码的BERT模型输出的H1维度大小设为256,d的大小为256,t大小为10秒,并且模型学习率设置为0.0001,迭代次数设置为20,则在预训练过程中,基于上述参数对轨迹编码模型的参数进行迭代更新就可得到训练好的轨迹编码模型。
在上述实施例中,轨迹编码模型损失为空间位置预测损失和被遮蔽轨迹点时间预测损失之和,即Lbert=CrossEntropyLoss(loc)+CrossEntropyLoss(time),Lbert为轨迹编码模型损失,CrossEntropyLoss(loc)为空间位置预测损失,CorssEntropyLoss(time)为被遮蔽轨迹点时间预测损失。
步骤S30:基于所述轨迹编码向量确定聚类中心,基于各所述轨迹编码向量以及所述聚类中心确定所述第一增广数据集合中各轨迹数据对应的第一类别概率分布,基于所述第一增广数据集合中各轨迹数据对应的第一类别概率分布计算第一目标分布,基于各所述轨迹动量编码向量以及所述聚类中心确定所述第二增广数据集合中各轨迹数据对应的第二类别概率分布,基于所述第二增广数据集合中各轨迹数据对应的第二类别概率分布计算第二目标分布。
在该步骤中,首先进行轨迹类别中心初始化,即可利用K-Means算法对轨迹编码向量H1进行聚类,得到K个聚类中心向量,利用这K个数值初始化聚类中心参数。进一步的,基于确定的K个类别中心分别对第一增广数据集合和第二数据增广集合中的轨迹数据进行聚类,即确定第一增广数据集合和第二数据增广集合中的各轨迹属于各类别的概率。
示例性的,第一类别概率分布记为Q1,则具体的利用学生氏分布模型计算D1中每个轨迹编码向量H1和各个聚类中心的相似度,即可得到每个样本属于任意类别的概率分布其中/>表示第一增广数据集合中轨迹i属于类别j的概率。类似的,第二类别概率分布可记为Q2,则利用学生氏分布模型计算D2中每各轨迹动量编码向量H2和各个聚类中心的相似度,即可得到第二增广数据集合中的每条轨迹属于任意类别的概率分布其中/>表示第二增广数据集合中的轨迹i属于类别j的概率。
进一步的,为了提高样本类别分布置信度,则基于第一类别概率分布可确定第一目标分布,而基于第二类别概率分布可确定第二目标分布。示例性的,第一目标分布或第二目标分布的计算公式可为:
其中,pi,j表示第一目标分布或第二目标分布,qi,j表示轨迹i属于类别j的概率,fj=∑iqi,j,qi,j′表示轨迹i属于类别j′的概率,fj′表示各轨迹属于类别j′的概率之和,fj′=∑iqi,j′,其中j′表示任意类别,j′=1,2…N,i表示当前计算的特定轨迹,i=1,2…M,j表示当前计算的特定类别,j=1,2…N,N表示类别总数量,M表示轨迹总数量。
进一步的,第一目标分布可记为P1,此时基于第一类别概率分布Q1计算得到第一目标分布P1,如:其中,/> 表示第一增广数据集合中轨迹i属于类别j的概率,/>表示第一增广数据集合中轨迹i属于类别j′的概率,fj′在此处表示第一增广数据集合中各轨迹属于类别j′的概率之和,j′表示任意类别,j′=1,2…N,i=1,2…M,j=1,2…N,N表示类别总数量,M在此处表示第一增广数据中的轨迹总数量,i表示当前计算的特定轨迹,j代表当前计算的特定类别。类似的,第二目标分布可记为P2,此时基于第二类别概率分布Q2计算得到第一目标分布P2,如/>其中,/> 表示第二增广数据集合中轨迹i属于类别j的概率,/>表示第二增广数据集合中轨迹i属于类别j′的概率,fj′在此处表示第二增广数据集合中各轨迹属于类别j′的概率之和,j′表示任意类别,j′=1,2…N,i=1,2…M,j=1,2…N,N表示类别总数量,M在此处表示第二增广数据中的表示轨迹总数量,。可以理解的,在一次计算中,i和j均取特定值,而j′取1,2…N。
步骤S40:基于所述第一类别概率分布、第一目标分布、第二类别概率分布以及第二目标分布计算KL散度对比学习损失。
在该步骤中,基于所述第一类别概率分布、第一目标分布、第二类别概率分布以及第二目标分布完成轨迹所属类别概率分布对比学习。此时分别利用轨迹编码向量类别概率分布和轨迹动量编码向量类别概率分布、以及轨迹动量编码向量目标分布和轨迹编码向量目标分布进行对比,利用KL散度衡量其对比学习损失。KL散度对比学习损失的计算公式为:Lkl=(KL(P2||Q1)+KL(P1||Q2))/2;其中,P1表示第一类别概率分布,Q1表示第一目标分布,P2表示第二类别概率分布,Q2表示第二目标分布。
步骤S50:基于第一前馈神经网络分别确定所述轨迹编码向量和所述轨迹动量编码向量对应的第一投影向量和第二投影向量,基于所述第一投影向量和第二投影向量计算轨迹投影向量对比损失。
在该步骤中,首先构建第一前馈神经网络FFN1,该第一前馈神经网络FFN1可确定轨迹编码向量和轨迹动量编码向量对应的第一投影向量和第二投影向量。第一投影向量可记为Z1,第二投影向量可记为Z2,则Z1=FFN1(H1),Z2=FFN1(H2)。
示例性的,第一前馈神经网络FFN1可包括第一全连接层,一个Relu激活函数层以及Relu激活函数层之后的第二全连接层,并且FFN1输出的轨迹投影向量维度大小可为128。进一步的,基于所述第一投影向量和第二投影向量计算轨迹投影向量对比损失,包括:基于所述第一投影向量和第二投影向量通过InfoNCE损失函数计算轨迹投影向量对比损失。在该实施例中,计算轨迹投影向量对比损失时利用经典的InfoNCE损失函数进行计算,则轨迹投影向量对比损失具体可为Lnce_traj=InfoNCE(Z1,Z2)。
步骤S60:基于第二前馈神经网络分别确定所述轨迹编码向量和所述轨迹动量编码向量对应的第一轨迹预测向量和第二轨迹预测向量,基于所述第一轨迹预测向量和第二轨迹预测向量计算轨迹类别对比损失。
在该步骤中,首先构建第二前馈神经网络FFN2,该第二前馈神经网络FFN2可确定轨迹编码向量和轨迹动量编码向量对应的第一轨迹预测向量和第二轨迹预测向量。第一轨迹预测向量可记为O1,第二轨迹预测向量可记为O2,则O1=FFN2(H1),02=FFN2(H2)。
示例性的,第二前馈神经网络FFN2也可包括第一全连接层,一个Relu激活函数层以及Relu激活函数层之后连接的第二全连接层,并且FFN2输出的轨迹预测向量维度大小可为K。进一步的,基于第一轨迹预测向量和第二轨迹预测向量计算轨迹类别对比损失,包括:基于所述第一轨迹预测向量和第二轨迹预测向量通过InfoNCE损失函数计算轨迹类别对比损失。
在该实施例中,计算轨迹预测向量的对比损失时也可利用经典的InfoNCE损失函数进行计算。具体的,首先对当前批次所有轨迹的预测向量O1和O2进行行列转置分别得到K个向量,K个向量可以认为是轨迹的聚类类别的特征向量,进而采用InfoNCE损失函数计算轨迹类别对比损失:Lnce_clus=InfoNCE(O1 T,O2 T)。
步骤S70:基于轨迹编码模型损失、所述KL散度对比学习损失、轨迹投影向量对比损失以及轨迹类别对比损失确定总模型损失,基于所述总模型损失迭代更新所述轨迹编码模型和聚类中心,并基于最后一次迭代过程中获得的所述轨迹编码向量及聚类中心对所述待聚类轨迹数据进行聚类。
在该步骤中,首先确定总模型损失,总模型损失包括轨迹编码模型损失、KL散度对比学习损失、轨迹投影向量对比损失以及轨迹类别对比损失。
在一实施例中,总模型损失具体的为:
L=ω1Lbert+ω2Lkl+ω3Lnce_traj+ω4Lnce_clus;
其中,Lbert为轨迹编码模型损失,Lkl为KL散度对比学习损失,Lnce_traj为轨迹投影向量对比损失,Lnce_clus为轨迹类别对比损失,ω1、ω3、ω4均为1,ω2为2。当轨迹编码模型为第一BERT模型时,则Lbert为轨迹编码模型中的BERT的自监督训练损失。
进一步的,当确定了总模型损失之后,则基于Adam优化器对总模型损失进行反向传播,梯度更新优化轨迹编码器模型参数和轨迹聚类中心。而可以理解的,每一次模型迭代,根据第一类别概率分布Q1均可得到当前迭代过程中的轨迹所属类别,即轨迹i的类别是其所属概率最大的类别,如:
示例性的,Adam优化器可包括第一优化器Op1和第二优化器Op2,则通过第一优化器Op1可对预训练的轨迹编码模型进行微调;而通过第二优化器Op2可对轨迹聚类模型进行优化,即更新类别中心。其中,第一优化器Op1学习率可设置为0.0001,而第二优化器Op2学习率可设置为0.0006,且模型迭代训练次数均可设置为30。不难理解的,在轨迹聚类过程中,轨迹的聚类结果会随着模型的迭代更新而变化,则当迭代结束后,则可获得精确地轨迹聚类结果。因而,通过采用最后一次迭代过程中获得的所述轨迹编码向量及聚类中心即可对待聚类轨迹数据进行聚类。
相应的,本发明还提供了一种深度轨迹聚类***,该***包括处理器和存储器,所述存储器中存储有计算机指令,所述处理器用于执行所述存储器中存储的计算机指令,当所述计算机指令被处理器执行时该***实现如上任一实施例所述方法的步骤。
示例性的,图2为本发明一实施例的深度轨迹聚类***的框架结构示意图,如图2所述,该深度轨迹聚类***包括轨迹数据增广模块、轨迹编码器模块、轨迹动量编码器模块、轨迹样本间对比学习模块、轨迹类别间对比学习模块。轨迹数据增广模块利用轨迹预处理技术对待预测轨迹数据进行增广,即基于一条原始轨迹,构建出若干条与原始轨迹具有相似的时空移动模式特征的新轨迹。轨迹编码器模块利用深度学习模型对轨迹数据进行编码,将变长的、不均匀的时空序列数据编码为固定长度的数值向量。轨迹动量编码器模块所应用的编码模型与轨迹编码器模块应用的编码模型结构相同,但模型参数不同;并且轨迹动量编码模型的模型参数不根据梯度进行更新,而是利用轨迹编码模型的模型参数进行动量更新。
轨迹样本间对比学习模块包括只考虑正样本的轨迹所属类别概率分布对比学习和考虑正负样本的轨迹表征向量对比学习两部分。其中,只考虑正样本的轨迹所属类别概率分布对比学习将一条轨迹样本分别经过轨迹编码模型和轨迹动量编码模型进行编码后的轨迹向量进行对比;考虑正负样本的轨迹表征向量对比学习则是将轨迹向量进一步输入至第一前馈神经网络FFN1得到轨迹投影向量后,基于轨迹投影向量进行各个正负样本的对比。
轨迹类别间对比学习模块用于将轨迹表征向量输入至第二前馈神经网络FFN2,得到大小为K的预测向量,其中K为预设的轨迹类别数量。并且对全部轨迹的预测向量形成的矩阵进行行列转置得到K个聚类中心向量,基于聚类中心向量进行正负样本的对比。
通过上述实施例可以发现,本发明所公开的深度轨迹聚类方法、***及存储介质首先利用对比学习技术实现轨迹表征和轨迹聚类的联合优化;并且基于对比学习,使得相似轨迹在向量空间是相近的,不相似轨迹在向量空间是远离的,从而有效提高轨迹聚类效果;另外,该方法及***构建了轨迹类别间的对比学习,使得不同轨迹类别互相分离,降低了轨迹类别间的耦合性。除上述之外,本发明所公开的深度轨迹聚类方法、***及存储介质还可以从海量无监督数据中挖掘精细的时空移动模式特征,从而适用于解决伴随移动模式挖掘等问题。
另外,该发明还公开了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如上任一实施例所述方法的步骤。
本领域普通技术人员应该可以明白,结合本文中所公开的实施方式描述的各示例性的组成部分、***和方法,能够以硬件、软件或者二者的结合来实现。具体究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。当以硬件方式实现时,其可以例如是电子电路、专用集成电路(ASIC)、适当的固件、插件、功能卡等等。当以软件方式实现时,本发明的元素是被用于执行所需任务的程序或者代码段。程序或者代码段可以存储在机器可读介质中,或者通过载波中携带的数据信号在传输介质或者通信链路上传送。“机器可读介质”可以包括能够存储或传输信息的任何介质。机器可读介质的例子包括电子电路、半导体存储器设备、ROM、闪存、可擦除ROM(EROM)、软盘、CD-ROM、光盘、硬盘、光纤介质、射频(RF)链路,等等。代码段可以经由诸如因特网、内联网等的计算机网络被下载。
还需要说明的是,本发明中提及的示例性实施例,基于一系列的步骤或者装置描述一些方法或***。但是,本发明不局限于上述步骤的顺序,也就是说,可以按照实施例中提及的顺序执行步骤,也可以不同于实施例中的顺序,或者若干步骤同时执行。
本发明中,针对一个实施方式描述和/或例示的特征,可以在一个或更多个其它实施方式中以相同方式或以类似方式使用,和/或与其他实施方式的特征相结合或代替其他实施方式的特征。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明实施例可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (10)
1.一种深度轨迹聚类方法,其特征在于,所述方法包括:
获取待聚类轨迹数据,对所述待聚类轨迹数据进行数据增广得到第一增广数据集合和第二增广数据集合;其中,各待聚类轨迹数据包括多个轨迹点,各所述轨迹点包括时间信息和位置信息;
将所述第一增广数据集合输入到训练好的轨迹编码模型中得到轨迹编码向量,将所述第二增广数据集合输入到轨迹动量编码模型中得到轨迹动量编码向量;
基于所述轨迹编码向量确定聚类中心,基于各所述轨迹编码向量以及所述聚类中心确定所述第一增广数据集合中各轨迹数据对应的第一类别概率分布,基于所述第一增广数据集合中各轨迹数据对应的第一类别概率分布计算第一目标分布,基于各所述轨迹动量编码向量以及所述聚类中心确定所述第二增广数据集合中各轨迹数据对应的第二类别概率分布,基于所述第二增广数据集合中各轨迹数据对应的第二类别概率分布计算第二目标分布;
基于所述第一类别概率分布、第一目标分布、第二类别概率分布以及第二目标分布计算KL散度对比学习损失;
基于第一前馈神经网络分别确定所述轨迹编码向量和所述轨迹动量编码向量对应的第一投影向量和第二投影向量,基于所述第一投影向量和第二投影向量计算轨迹投影向量对比损失;
基于第二前馈神经网络分别确定所述轨迹编码向量和所述轨迹动量编码向量对应的第一轨迹预测向量和第二轨迹预测向量,基于所述第一轨迹预测向量和第二轨迹预测向量计算轨迹类别对比损失;
基于轨迹编码模型损失、所述KL散度对比学习损失、轨迹投影向量对比损失以及轨迹类别对比损失确定总模型损失,基于所述总模型损失迭代更新所述轨迹编码模型和聚类中心,并基于最后一次迭代过程中获得的所述轨迹编码向量及聚类中心对所述待聚类轨迹数据进行聚类。
2.根据权利要求1所述的深度轨迹聚类方法,其特征在于,所述方法还包括:
构建初始轨迹编码模型;
基于交叉熵损失函数计算轨迹编码模型的空间位置预测损失和被遮蔽轨迹点时间预测损失,基于所述空间位置预测损失和被遮蔽轨迹点时间预测损失确定所述轨迹编码模型损失;
基于所述轨迹编码模型损失更新所述初始轨迹编码模型的模型参数得到训练好的轨迹编码模型。
3.根据权利要求1所述的深度轨迹聚类方法,其特征在于,所述数据增广包括:
对所述待聚类轨迹数据进行稀疏化操作;或
为所述待聚类轨迹数据添加位置噪声或时间噪声;或
对所述待聚类轨迹数据进行插值操作。
4.根据权利要求1所述的深度轨迹聚类方法,其特征在于,所述轨迹编码模型和所述轨迹动量编码模型均为BERT模型;
其中,所述轨迹动量编码模型的参数基于所述轨迹编码模型的参数进行动量更新,且所述轨迹动量编码模型的参数计算公式为:
θ2=mθ2+(1-m)θ1;
θ1、θ2分别为轨迹编码模型和轨迹动量编码模型的模型参数,m为动量参数。
6.根据权利要求2所述的深度轨迹聚类方法,其特征在于,所述KL散度对比学习损失的计算公式为:Lkl=(KL(P2||Q1)+KL(P1||Q2))/2;其中,P1表示第一类别概率分布,Q1表示第一目标分布,P2表示第二类别概率分布,Q2表示第二目标分布。
7.根据权利要求1所述的深度轨迹聚类方法,其特征在于,基于所述第一投影向量和第二投影向量计算轨迹投影向量对比损失,包括:
基于所述第一投影向量和第二投影向量通过InfoNCE损失函数计算轨迹投影向量对比损失;
基于所述第一轨迹预测向量和第二轨迹预测向量计算轨迹类别对比损失,包括:
基于所述第一轨迹预测向量和第二轨迹预测向量通过InfoNCE损失函数计算轨迹类别对比损失。
8.根据权利要求7所述的深度轨迹聚类方法,其特征在于,总模型损失为:
L=ω1Lbert+ω2Lkl+ω3Lnce_traj+ω4Lnce_clus;
其中,Lbert为轨迹编码模型损失,Lkl为KL散度对比学习损失,Lnce_traj为轨迹投影向量对比损失,Lnce_clus为轨迹类别对比损失,ω1、ω3、ω4均为1,ω2为2。
9.一种深度轨迹聚类***,该***包括处理器和存储器,其特征在于,所述存储器中存储有计算机指令,所述处理器用于执行所述存储器中存储的计算机指令,当所述计算机指令被处理器执行时该***实现如权利要求1至8中任意一项所述方法的步骤。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现如权利要求1至8中任意一项所述方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310100602.3A CN116186358B (zh) | 2023-02-07 | 2023-02-07 | 一种深度轨迹聚类方法、***及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310100602.3A CN116186358B (zh) | 2023-02-07 | 2023-02-07 | 一种深度轨迹聚类方法、***及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN116186358A true CN116186358A (zh) | 2023-05-30 |
CN116186358B CN116186358B (zh) | 2023-08-15 |
Family
ID=86443892
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310100602.3A Active CN116186358B (zh) | 2023-02-07 | 2023-02-07 | 一种深度轨迹聚类方法、***及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116186358B (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116956098A (zh) * | 2023-09-21 | 2023-10-27 | 四川吉利学院 | 一种基于感知分布式对比学习框架的长尾轨迹预测方法 |
CN117688257A (zh) * | 2024-01-29 | 2024-03-12 | 东北大学 | 一种面向异构用户行为模式的长期轨迹预测方法 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113378074A (zh) * | 2021-06-10 | 2021-09-10 | 电子科技大学 | 一种基于自监督学习的社交网络用户轨迹分析方法 |
WO2022156333A1 (zh) * | 2021-01-25 | 2022-07-28 | 浙江师范大学 | 基于自编码器的多模态自适应融合深度聚类模型及方法 |
CN115374375A (zh) * | 2022-10-24 | 2022-11-22 | 北京数业专攻科技有限公司 | 基于深度学习的轨迹聚类方法、***及存储介质 |
CN115544070A (zh) * | 2022-09-27 | 2022-12-30 | 沈阳航空航天大学 | 一种基于轨迹表示学习的相似度查询优化方法 |
-
2023
- 2023-02-07 CN CN202310100602.3A patent/CN116186358B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2022156333A1 (zh) * | 2021-01-25 | 2022-07-28 | 浙江师范大学 | 基于自编码器的多模态自适应融合深度聚类模型及方法 |
CN113378074A (zh) * | 2021-06-10 | 2021-09-10 | 电子科技大学 | 一种基于自监督学习的社交网络用户轨迹分析方法 |
CN115544070A (zh) * | 2022-09-27 | 2022-12-30 | 沈阳航空航天大学 | 一种基于轨迹表示学习的相似度查询优化方法 |
CN115374375A (zh) * | 2022-10-24 | 2022-11-22 | 北京数业专攻科技有限公司 | 基于深度学习的轨迹聚类方法、***及存储介质 |
Non-Patent Citations (1)
Title |
---|
李小昌;陈贝;董启文;陆雪松;: "基于自编码器的旅行同伴挖掘", 华东师范大学学报(自然科学版), no. 05 * |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116956098A (zh) * | 2023-09-21 | 2023-10-27 | 四川吉利学院 | 一种基于感知分布式对比学习框架的长尾轨迹预测方法 |
CN117688257A (zh) * | 2024-01-29 | 2024-03-12 | 东北大学 | 一种面向异构用户行为模式的长期轨迹预测方法 |
CN117688257B (zh) * | 2024-01-29 | 2024-07-05 | 东北大学 | 一种面向异构用户行为模式的长期轨迹预测方法 |
Also Published As
Publication number | Publication date |
---|---|
CN116186358B (zh) | 2023-08-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN116186358B (zh) | 一种深度轨迹聚类方法、***及存储介质 | |
CN111400620B (zh) | 基于时空嵌入Self-Attention的用户轨迹位置预测方法 | |
CN110889546B (zh) | 一种基于注意力机制的交通流量模型训练方法 | |
CN109086805B (zh) | 一种基于深度神经网络和成对约束的聚类方法 | |
CN113792113A (zh) | 视觉语言模型获得及任务处理方法、装置、设备及介质 | |
CN115374375B (zh) | 基于深度学习的轨迹聚类方法、***及存储介质 | |
Jin et al. | Transformer-based map-matching model with limited labeled data using transfer-learning approach | |
CN110795522B (zh) | 一种移动用户轨迹位置的预测方法及装置 | |
CN115730637A (zh) | 多模态车辆轨迹预测模型训练方法、装置及轨迹预测方法 | |
CN117475038B (zh) | 一种图像生成方法、装置、设备及计算机可读存储介质 | |
CN111027681B (zh) | 时序数据处理模型训练方法、数据处理方法、装置及存储介质 | |
CN116776014B (zh) | 多源轨迹数据表示方法及装置 | |
Zhang et al. | Mode recognition of multifunction radars for few-shot learning based on compound alignments | |
CN108122613B (zh) | 基于健康预测模型的健康预测方法和装置 | |
CN117892181A (zh) | 一种基于联合时空网格映射和Transformer编码器的跨社交网络用户匹配方法 | |
CN114582448A (zh) | 基于预训练语言模型的疫情病例信息抽取框架构建方法 | |
CN116611442A (zh) | 一种基于深度语义提取的兴趣点推荐方法 | |
CN114998731A (zh) | 智能终端导航场景感知识别的方法 | |
CN114885293A (zh) | 一种基于深度学习的信令轨迹恢复方法、***及存储介质 | |
CN114116692A (zh) | 一种基于mask和双向模型的缺失POI轨迹补全方法 | |
Gök | Semantic and goal-oriented signal processing: semantic extraction | |
CN111506691A (zh) | 一种基于深度匹配模型的轨迹匹配方法和*** | |
CN115512693A (zh) | 音频识别方法、声学模型训练方法、装置和存储介质 | |
Reichhuber et al. | Evolving Gaussian Mixture Models for Classification. | |
CN114328791B (zh) | 一种基于深度学习的地图匹配算法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |