专利名称:轨迹生成模型训练方法、轨迹生成方法及装置
专利类型:发明专利
专利申请号:CN202110928066.7
专利申请(专利权)人:清华大学
权利人地址:北京市海淀区双清路30号清华大学
专利发明(设计)人:王寰东,李勇,张启钟,金德鹏
专利摘要:本发明提供一种轨迹生成模型训练方法、轨迹生成方法及装置,该训练方法包括:将历史移动数据输入到逆向生成模型,得到对应的隐含移动特征;将隐含移动特征输入到轨迹生成模型,分别得到时间维度的指数分布和空间维度的多项式分布;训练并优化由逆向生成模型和轨迹生成模型共同构成的变分时间点过程模型,得到轨迹生成模型。本发明提供的轨迹生成模型训练方法、轨迹生成方法及装置,在保留了神经网络模型的强大建模能力、捕获了序列数据中的不确定性的同时提升了其可解释性,且能够通过基于概率模型的数据交互机制有效的引入专家知识,有更强的灵活性、建模能力,对不均衡数据的高度适应性和鲁棒性,在移动数据生成问题上具有巨大的潜力。
主权利要求:
1.一种轨迹生成模型训练方法,其特征在于,包括:
将历史移动数据输入到逆向生成模型,得到对应所述历史移动数据的隐含移动特征;
将所述隐含移动特征输入到轨迹生成模型,分别得到时间维度的指数分布和空间维度的多项式分布;
训练并优化由所述逆向生成模型和所述轨迹生成模型共同构成的变分时间点过程模型,训练结束后,得到用于轨迹生成的所述轨迹生成模型;
所述历史移动数据包括用户静态信息、地点信息、进入地点的时间、进入地点后的停留时间以及地点POI信息;
所述将历史移动数据输入到逆向生成模型,得到对应所述历史移动数据的隐含移动特征,包括:将所述进入地点的时间输入到位置编码网络,得到经过位置编码的进入地点的时间;
将所述停留时间、所述用户静态信息、所述地点信息及所述地点POI信息分别输入到嵌入式编码网络,得到经过嵌入式编码的停留时间、用户静态信息、地点信息及地点POI信息;
将所述经过位置编码的进入地点的时间、所述经过嵌入式编码的停留时间、用户静态信息、地点信息及地点POI信息输入到全连接层,拼接得到第二向量;
将所述第二向量输入到LSTM神经网络,得到第三隐状态变量;
将所述第三隐状态变量分别输入到均值编码器和方差编码器,得到对应所述历史移动数据的隐含移动特征;
所述将所述隐含移动特征输入到轨迹生成模型,分别得到时间维度的指数分布和空间维度的多项式分布,包括:将所述隐含移动特征、所述经过嵌入式编码的用户静态信息及所述经过位置编码的进入地点的时间输入到LSTM神经网络,得到第四隐状态变量;
将所述第四隐状态变量输入到时间解码器,得到强度函数,根据所述强度函数得到所述时间维度的指数分布;其中,所述时间解码器包括全连接层,并且最后一层全连接层的输出经由指数函数处理;
将所述第四隐状态变量输入到第二地点解码器,得到基于时间点过程的多项式分布,将所述第四隐状态变量输入到第三地点解码器,得到基于区域功能考量的多项式分布,将所述基于时间点过程的多项式分布和所述基于区域功能考量的多项式分布进行加权求和,得到所述空间维度的多项式分布;其中,所述第二地点解码器包括全连接层,并且最后一层全连接层的输出维度设置为经过编号后的区域总数;所述第三地点解码器包括全连接层,且其中一个全连接层的输出维度等于POI数据维度。
2.根据权利要求1所述的轨迹生成模型训练方法,其特征在于,所述历史移动数据包括用户静态信息、地点信息、进入地点的时间以及进入地点后的停留时间;
所述将历史移动数据输入到逆向生成模型,得到对应所述历史移动数据的隐含移动特征,包括:将所述进入地点的时间输入到位置编码网络,得到经过位置编码的进入地点的时间;
将所述停留时间、所述用户静态信息和所述地点信息分别输入到嵌入式编码网络,得到经过嵌入式编码的停留时间、用户静态信息和地点信息;
将所述经过位置编码的进入地点的时间、所述经过嵌入式编码的停留时间、用户静态信息和地点信息输入到全连接层,拼接得到第一向量;
将所述第一向量输入到LSTM神经网络,得到第一隐状态变量;
将所述第一隐状态变量分别输入到均值编码器和方差编码器,得到对应所述历史移动数据的隐含移动特征。
3.根据权利要求2所述的轨迹生成模型训练方法,其特征在于,所述将所述隐含移动特征输入到轨迹生成模型,分别得到时间维度的指数分布和空间维度的多项式分布,包括:将所述隐含移动特征、所述经过嵌入式编码的用户静态信息及所述经过位置编码的进入地点的时间输入到LSTM神经网络,得到第二隐状态变量;
将所述第二隐状态变量输入到时间解码器,得到强度函数,根据所述强度函数得到所述时间维度的指数分布;其中,所述时间解码器包括全连接层,并且最后一层全连接层的输出经由指数函数处理;
将所述第二隐状态变量输入到第一地点解码器,得到基于时间点过程的多项式分布,根据所述基于时间点过程的多项式分布得到所述空间维度的多项式分布;其中,所述第一地点解码器包括全连接层,并且最后一层全连接层的输出维度设置为经过编号后的区域总数。
4.根据权利要求2或3所述的轨迹生成模型训练方法,其特征在于,所述训练并优化由所述逆向生成模型和所述轨迹生成模型共同构成的变分时间点过程模型,包括:计算所述隐含移动特征的近似分布和后验分布的KL散度,并将所述KL散度作为损失函数;
利用重参数化技巧消除所述KL散度中的证据下界ELBO的积分计算;
基于所述损失函数,利用反向传播算法优化得到模型网络参数。
5.一种基于权利要求1至4任一所述轨迹生成模型训练方法的轨迹生成方法,其特征在于,包括:对到达前一区域的时间进行位置编码,得到位置编码向量;从标准正态分布中进行抽样得到隐藏状态向量;将所述位置编码向量、所述隐藏状态向量及经过嵌入式编码的用户静态信息输入到轨迹生成模型,得到时间维度的指数分布和空间维度的多项式分布;
对所述空间维度的多项式分布进行抽样得到所述前一区域的信息,对所述时间维度的指数分布进行抽样得到在所述前一区域的停留时间;
根据所述到达前一区域的时间和所述在所述前一区域的停留时间得到到达下一区域的时间;
循环执行上述过程,直至所述停留时间的和达到预设值;其中,在循环执行上述过程时,将所述到达前一区域的时间的值更新为所述到达下一区域的时间的值。
6.一种轨迹生成模型训练装置,其特征在于,包括:
编码处理模块,用于:将历史移动数据输入到逆向生成模型,得到对应所述历史移动数据的隐含移动特征;
解码处理模块,用于:将所述隐含移动特征输入到轨迹生成模型,分别得到时间维度的指数分布和空间维度的多项式分布;
训练模块,用于:训练并优化由所述逆向生成模型和所述轨迹生成模型共同构成的变分时间点过程模型,训练结束后,得到用于轨迹生成的所述轨迹生成模型;
所述历史移动数据包括用户静态信息、地点信息、进入地点的时间、进入地点后的停留时间以及地点POI信息;编码处理模块100具体用于:将所述进入地点的时间输入到位置编码网络,得到经过位置编码的进入地点的时间;将所述停留时间、所述用户静态信息、所述地点信息及所述地点POI信息分别输入到嵌入式编码网络,得到经过嵌入式编码的停留时间、用户静态信息、地点信息及地点POI信息;将所述经过位置编码的进入地点的时间、所述经过嵌入式编码的停留时间、用户静态信息、地点信息及地点POI信息输入到全连接层,拼接得到第二向量;将所述第二向量输入到LSTM神经网络,得到第三隐状态变量;将所述第三隐状态变量分别输入到均值编码器和方差编码器,得到对应所述历史移动数据的隐含移动特征;
所述解码处理模块具体用于:将所述隐含移动特征、所述经过嵌入式编码的用户静态信息及所述经过位置编码的进入地点的时间输入到LSTM神经网络,得到第四隐状态变量;
将所述第四隐状态变量输入到时间解码器,得到强度函数,根据所述强度函数得到所述时间维度的指数分布;其中,所述时间解码器包括全连接层,并且最后一层全连接层的输出经由指数函数处理;将所述第四隐状态变量输入到第二地点解码器,得到基于时间点过程的多项式分布,将所述第四隐状态变量输入到第三地点解码器,得到基于区域功能考量的多项式分布,将所述基于时间点过程的多项式分布和所述基于区域功能考量的多项式分布进行加权求和,得到所述空间维度的多项式分布;其中,所述第二地点解码器包括全连接层,并且最后一层全连接层的输出维度设置为经过编号后的区域总数;所述第三地点解码器包括全连接层,且其中一个全连接层的输出维度等于POI数据维度。
7.一种基于权利要求1至4任一所述轨迹生成模型训练方法的轨迹生成装置,其特征在于,包括:分布信息获取模块,用于:对到达前一区域的时间进行位置编码,得到位置编码向量;
从标准正态分布中进行抽样得到隐藏状态向量;将所述位置编码向量、所述隐藏状态向量及经过嵌入式编码的用户静态信息输入到轨迹生成模型,得到时间维度的指数分布和空间维度的多项式分布;
地点和停留时间信息获取模块,用于:对所述空间维度的多项式分布进行抽样得到所述前一区域的信息,对所述时间维度的指数分布进行抽样得到在所述前一区域的停留时间;
下一区域的到达时间获取模块,用于:根据所述到达前一区域的时间和所述在所述前一区域的停留时间得到到达下一区域的时间;
循环处理模块,用于:循环执行上述过程,直至所述停留时间的和达到预设值;其中,在循环执行上述过程时,将所述到达前一区域的时间的值更新为所述到达下一区域的时间的值。
8.一种电子设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现如权利要求1至4任一项所述轨迹生成模型训练方法的步骤或如权利要求5所述轨迹生成方法的步骤。
9.一种非暂态计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至4任一项所述轨迹生成模型训练方法的步骤或如权利要求5所述轨迹生成方法的步骤。 说明书 : 轨迹生成模型训练方法、轨迹生成方法及装置技术领域[0001] 本发明涉及计算机技术领域,尤其涉及一种轨迹生成模型训练方法、轨迹生成方法及装置。背景技术[0002] 移动生成(TrajectoryGeneration)是指对人类在未来一段时间内(通常以X天为单位)的移动轨迹进行估计,典型的应用场景是在移动自组织网络或蜂窝网络中,基于合成轨迹模拟网络用户的移动和通信,以对网络进行可靠的性能分析。早期的方法基于统计模型或概率模型对人类移动过程进行建模。然而,这些模型对人类移动行为进行了过度的简化假设,从而导致它们在建模高维时空轨迹之间的复杂关系时存在缺陷。[0003] 深度学习的兴起为解决这一问题提供了有力的解决方案。在早期尝试中,已有工作利用标准RNN以自回归方式对人类移动轨迹进行建模和生成。然而,由于这些模型的自回归训练生成方式,导致其在生成长时间的移动轨迹时会受到曝光偏差(exposurebias)的影响,使得误差随长度积累,最终导致生成结果性能劣化。近些年来,生成对抗网络(GenerativeAdversarialNetworks,GAN)在图像生成、自然语言生成等方面取得了巨大的成功。已有方法已将GAN与CNN和RNN结合在一起来生成人类移动数据。但是,这些方法对输入建模的移动数据具有长度限制、时间间隔限制等一系列要求,往往通过数据预处理来满足这些要求。而这样的做法忽略了移动行为在时间域的连续分布特性,从而无法建模用户的细粒度移动行为,同时仅仅针对定长轨迹的建模也影响对移动行为长时间的关联性的充分挖掘,进而严重影响基于其生成数据的模型准确性。[0004] 综上,现有的相关工作存在以下几点局限:(1)知识驱动的方法常常会对移动数据的产生过程做出过分简化的假设,导致其建模能力不足;(2)而基于数据的方法往往要求格式整齐的输入输出数据形式,因此无法很好的解决移动轨迹行为的不均衡性,同时也对建模人类移动的细粒度行为和长时关联性有很大影响。发明内容[0005] 为解决现有技术中的问题,本发明提供一种轨迹生成模型训练方法、轨迹生成方法及装置。[0006] 本发明提供一种轨迹生成模型训练方法,包括:将历史移动数据输入到逆向生成模型,得到对应所述历史移动数据的隐含移动特征;将所述隐含移动特征输入到轨迹生成模型,分别得到时间维度的指数分布和空间维度的多项式分布;训练并优化由所述逆向生成模型和所述轨迹生成模型共同构成的变分时间点过程模型,训练结束后,得到用于轨迹生成的所述轨迹生成模型。[0007] 本发明还提供一种轨迹生成方法,包括:对到达前一区域的时间进行位置编码,得到位置编码向量;从标准正态分布中进行抽样得到隐藏状态向量;将所述位置编码向量、所述隐藏状态向量及经过嵌入式编码的用户静态信息输入到轨迹生成模型,得到时间维度的指数分布和空间维度的多项式分布;对所述空间维度的多项式分布进行抽样得到所述前一区域的信息,对所述时间维度的指数分布进行抽样得到在所述前一区域的停留时间;根据所述到达前一区域的时间和所述在所述前一区域的停留时间得到到达下一区域的时间;循环执行上述过程,直至所述停留时间的和达到预设值;其中,在循环执行上述过程时,将所述到达前一区域的时间的值更新为所述到达下一区域的时间的值。[0008] 本发明还提供一种轨迹生成模型训练装置,包括:编码处理模块,用于:将历史移动数据输入到逆向生成模型,得到对应所述历史移动数据的隐含移动特征;解码处理模块,用于:将所述隐含移动特征输入到轨迹生成模型,分别得到时间维度的指数分布和空间维度的多项式分布;训练模块,用于:训练并优化由所述逆向生成模型和所述轨迹生成模型共同构成的变分时间点过程模型,训练结束后,得到用于轨迹生成的所述轨迹生成模型。[0009] 本发明还提供一种轨迹生成装置,包括:分布信息获取模块,用于:对到达前一区域的时间进行位置编码,得到位置编码向量;从标准正态分布中进行抽样得到隐藏状态向量;将所述位置编码向量、所述隐藏状态向量及经过嵌入式编码的用户静态信息输入到轨迹生成模型,得到时间维度的指数分布和空间维度的多项式分布;地点和停留时间信息获取模块,用于:对所述空间维度的多项式分布进行抽样得到所述前一区域的信息,对所述时间维度的指数分布进行抽样得到在所述前一区域的停留时间;下一区域的到达时间获取模块,用于:根据所述到达前一区域的时间和所述在所述前一区域的停留时间得到到达下一区域的时间;循环处理模块,用于:循环执行上述过程,直至所述停留时间的和达到预设值;其中,在循环执行上述过程时,将所述到达前一区域的时间的值更新为所述到达下一区域的时间的值。[0010] 本发明还提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如上述任一种所述轨迹生成模型训练方法的步骤或所述轨迹生成方法的步骤。[0011] 本发明还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如上述任一种所述轨迹生成模型训练方法的步骤或所述轨迹生成方法的步骤。[0012] 本发明提供的轨迹生成模型训练方法、轨迹生成方法及装置,通过将历史移动数据输入到逆向生成模型,得到对应历史移动数据的隐含移动特征,将隐含移动特征输入到轨迹生成模型,分别得到时间维度的指数分布和空间维度的多项式分布,训练并优化由逆向生成模型和轨迹生成模型共同构成的模型,训练结束后,得到用于轨迹生成的轨迹生成模型,基于由逆向生成模型和轨迹生成模型构成的变分时间点过程模型进行训练,得到轨迹生成模型,在保留了神经网络模型的强大建模能力、捕获了序列数据中的不确定性的同时提升了其可解释性,且能够通过基于概率模型的数据交互机制有效的引入专家知识,有更强的灵活性、建模能力,对不均衡数据的高度适应性和鲁棒性,在移动数据生成问题上具有巨大的潜力。附图说明[0013] 为了更清楚地说明本发明或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。[0014] 图1是本发明提供的轨迹生成模型训练方法的流程示意图;[0015] 图2是本发明提供的轨迹生成模型训练方法中逆向生成模型的示意图;[0016] 图3是本发明提供的轨迹生成模型训练方法中轨迹生成模型的示意图;[0017] 图4是本发明提供的轨迹生成模型训练方法中的变分时间点过程模型的示意图;[0018] 图5是本发明提供的轨迹生成方法的流程示意图之一;[0019] 图6是本发明提供的轨迹生成方法中的轨迹生成模型的示意图;[0020] 图7是本发明提供的轨迹生成方法的流程示意图之二;[0021] 图8是本发明提供的轨迹生成模型训练装置的结构示意图;[0022] 图9是本发明提供的轨迹生成装置的结构示意图;[0023] 图10示例了一种电子设备的实体结构示意图。具体实施方式[0024] 为使本发明的目的、技术方案和优点更加清楚,下面将结合本发明中的附图,对本发明中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。[0025] 下面结合图1‑图10描述本发明的轨迹生成模型训练方法、轨迹生成方法及装置。[0026] 图1是本发明提供的轨迹生成模型训练方法的流程示意图。如图1所示,所述方法包括:[0027] 步骤101、将历史移动数据输入到逆向生成模型,得到对应所述历史移动数据的隐含移动特征;[0028] 步骤102、将所述隐含移动特征输入到轨迹生成模型,分别得到时间维度的指数分布和空间维度的多项式分布;[0029] 步骤103、训练并优化由所述逆向生成模型和所述轨迹生成模型共同构成的模型,训练结束后,得到用于轨迹生成的所述轨迹生成模型。[0030] 本发明的目标基于变分时间点过程模型构建基于变分时间点过程的轨迹生成模型,变分时间点过程模型是时间点过程与变分推断(VariationalInference)技术的有机结合,具体为轨迹生成模型和逆向生成模型的结合。其中,轨迹生成模型是基于时间点过程的模型,逆向生成模型是基于变分推断框架的模型。[0031] 本发明通过结合变分推断框架、经典的时间点过程与强有力的神经网络模型,在保留了神经网络模型的强大建模能力、捕获了序列数据中的不确定性的同时提升了其可解释性,且能够通过基于概率模型的数据交互机制有效的引入专家知识,克服其他模型对时间序列时间间隔、序列长度等数据均衡性的要求。因而,变分时间点过程模型拥有更强的灵活性、建模能力,对不均衡数据的高度适应性和鲁棒性,在移动数据生成问题上具有巨大的潜力。[0032] 在轨迹生成模型训练过程中,神经网络模型将负责挖掘历史移动轨迹中蕴含的移动特征,并且建模其演化过程,最终将其映射为描述后续移动行为概率分布的参数,包括时间维度的指数分布和空间维度的多项式分布。其中的概率分布基于时间点过程框架进行构建,通过这些经典的概率分布,能有效引入专家知识,提升模型的可解释性。[0033] 引入了时间点过程的序列生成神经网络模型(轨迹生成模型)不能像传统的神经网络一样采用基于交叉熵等损失函数的反向传播算法进行优化。为了解决这一问题,采用变分推断的手段来优化模型参数。基于该方法,定义额外的神经网络(逆向生成模型)进行生成模型的逆向过程估计,即从生成结果反推隐含特征,可以结合贝叶斯公式导出衡量生成结果好坏的指标,最终实现对整个变分时间点过程模型的参数训练。[0034] 训练的具体过程为:将历史移动数据输入到逆向生成模型,得到对应历史移动数据的隐含移动特征;将隐含移动特征输入到轨迹生成模型,分别得到时间维度的指数分布和空间维度的多项式分布;训练并优化由逆向生成模型和轨迹生成模型共同构成的模型,训练结束后,得到用于轨迹生成的轨迹生成模型。[0035] 对人类未来一段时间内的移动数据进行预测的问题可以表示为如下形式:已知对于任意属于总体集合U的用户u,其长度为Nu历史轨迹数据定义为其中 是一个三维的坐标点,分别依次记录了人类在时间点 时到达地点并在该地停留了 个单位时间。移动数据生成的任务是根据已有的历史移动轨迹来生成全新而可用的移动数据,即后续移动在时间和空间上的概率分布。[0036] 基于对轨迹特征与移动数据之间相关性的分析,最终对于每个样本(即一个数据点)筛选用于移动数据生成的特征可以包括:[0037] {“User_ID”,//每个个体的编号,整数[0038] “Location_ID”,//个体所在位置依经纬度划分得到的直径约10km的地理区域的编号,整数[0039] “Time_Begin”,//个体到达某一位置的时刻,实数[0040] “Time_Last”,//个体在该位置停留的时间,实数}[0041] 为了过滤掉原始数据中的噪声与减少模型的复杂度,每个有效的数据点可以经由如下的预处理得到:[0042] 1)合并空间距离相近的相邻数据点[0043] 认为经纬度差值均在一定范围内的地点属于同一个区域。若某个体一段时间内的移动数据均显示其在某一特定区域内,则可视为个体停留在该区域并仅在区域内部活动,以达到初始数据在空间维度的简化。[0044] 2)过滤掉停留时间过短的数据点[0045] 为了更精简地建模个体的移动,研究的重点是哪些个体频繁、长期、长时间停留的区域,反之,停留时间较短的区域则可视为该个体在移动过程中记录下的次要数据,对模型建立不起决定作用。[0046] 3)对筛选出的个体及地点全体按自然数依小到大编号[0047] 为便于之后的模型操作(如独热编码等),需要建立自然数集 与个体和区域之间的映射。[0048] 本发明提供的轨迹生成模型训练方法,通过将历史移动数据输入到逆向生成模型,得到对应历史移动数据的隐含移动特征,将隐含移动特征输入到轨迹生成模型,分别得到时间维度的指数分布和空间维度的多项式分布,训练并优化由逆向生成模型和轨迹生成模型共同构成的模型,训练结束后,得到用于轨迹生成的轨迹生成模型,基于由逆向生成模型和轨迹生成模型构成的变分时间点过程模型进行训练,得到轨迹生成模型,在保留了神经网络模型的强大建模能力、捕获了序列数据中的不确定性的同时提升了其可解释性,且能够通过基于概率模型的数据交互机制有效的引入专家知识,有更强的灵活性、建模能力,对不均衡数据的高度适应性和鲁棒性,在移动数据生成问题上具有巨大的潜力。[0049] 根据本发明提供的一种轨迹生成模型训练方法,所述历史移动数据包括用户静态信息、地点信息、进入地点的时间以及进入地点后的停留时间;所述将历史移动数据输入到逆向生成模型,得到对应所述历史移动数据的隐含移动特征,包括:将所述进入地点的时间输入到位置编码网络,得到经过位置编码的进入地点的时间;将所述停留时间、所述用户静态信息和所述地点信息分别输入到嵌入式编码网络,得到经过嵌入式编码的停留时间、用户静态信息和地点信息;将所述经过位置编码的进入地点的时间、所述经过嵌入式编码的停留时间、用户静态信息和地点信息输入到全连接层,拼接得到第一向量;将所述第一向量输入到LSTM神经网络,得到第一隐状态变量;将所述第一隐状态变量分别输入到均值编码器和方差编码器,得到对应所述历史移动数据的隐含移动特征。[0050] 可以先通过预处理得到历史移动数据。比如,若使用者希望通过过去5年较为稀疏的历史移动数据来生成之后一年的移动轨迹以供数据分析。在根据历史移动数据训练时,首先进行训练数据的构建。由于历史数据较为稀疏、有利于提取出更多的信息从而使模型达到更好的效果,所以在对原始数据进行预处理时可以选择采用更为粗糙的处理原则。具体而言,在空间层面,合并相邻数据点时,以两点经纬度的十分位与百分位是否相同作为其处于一个地理区域的判断依据,后续的区域编号亦基于此进行;在时间层面,由于数据呈现出局部稠密、总体稀疏的特征,一天中有数据记录的时长占比较低,所以在过滤时可以适当将时间间隔的阈值调高,如10分钟,以保留轨迹的主要特征,即每次停留的时长。经过以上的操作,能够得到模型所需的移动数据特征。[0051] 历史移动数据包括用户静态信息、地点信息、进入地点的时间以及进入地点后的停留时间,对于第i条移动数据记录,可以分别表示为u,li,ti,τi。其中,用户静态信息可以为个体编号。[0052] 逆向生成模型可以视为编码器。在将历史移动数据输入到逆向生成模型,得到对应历史移动数据的隐含移动特征时,首先,将进入地点的时间输入到位置编码网络,得到经过位置编码的进入地点的时间 将停留时间、用户静态信息和地点信息分别输入到嵌emb入式编码网络,得到经过嵌入式编码的停留时间 用户静态信息u 和地点信息emb为了优化模型效果,可以将得到的各个向量 u 的维数按照64:256:256:128的比例设置,以凸显出建模的主要对象,即个体停留的每个区域以及在到达该区域和在该区域停留的时间,同时弱化个体之间的区别。[0053] 将经过位置编码的进入地点的时间、经过嵌入式编码的停留时间、用户静态信息和地点信息输入到全连接层,经由全联接层拼接为一个完整的向量并输入至编码器LSTM神经网络以提取序列数据的特征,而为了能够充分地掌握个体移动轨迹的各个特征,第一隐状态变量的维度可以设置为512。此时,轨迹因个体和时间而异的各项特征都集中在得到的第一隐状态变量中。[0054] 为了能够将这些特征建模为相互独立的正态随机变量以供生成模型,即解码器(轨迹生成模型),进行随机采样,并对不同个体未来的移动轨迹进行模拟,可以将第一隐状态变量输入至分别由二层全联接层构成的均值编码器和方差编码器,从而确定各个轨迹特征的分布。具体而言,可以将第一层全连接层的输出维度均设为256,将第二层全连接层的输出维度均设置为512,也即隐藏状态空间的维数。另外,各激活函数可以均设置为ReLu。[0055] 对于由编码器编码得到的隐藏空间,从中随机抽样一定数量的特征向量,即抽样获得Lxn的矩阵。该矩阵的每一行均为维数为n(此例中n=512)的特征向量,代表着着轨迹中一个数据点的全部信息,而矩阵整体则将经由解码器生成一条长度为L(此例中L与模型输入数据的长度相同)的移动数据。其中,在将第一隐状态变量分别输入到均值编码器和方差编码器,得到对应历史移动数据的隐含移动特征时,已经实现了上述随机抽样过程。[0056] 本发明提供的轨迹生成模型训练方法,通过设置包括用户静态信息、地点信息、进入地点的时间以及进入地点后的停留时间的历史移动数据,并通过逆向生成模型进行编码得到编码向量后,通过全连接层拼接为一个完整向量,将拼接得到的完整向量通过LSTM网络输出第一隐状态变量,将第一隐状态变量分别输入到均值编码器和方差编码器,得到对应历史移动数据的隐含移动特征,实现了隐含移动特征的可靠获取。[0057] 根据本发明提供的一种轨迹生成模型训练方法,所述将所述隐含移动特征输入到轨迹生成模型,分别得到时间维度的指数分布和空间维度的多项式分布,包括:将所述隐含移动特征、所述经过嵌入式编码的用户静态信息及所述经过位置编码的进入地点的时间输入到LSTM神经网络,得到第二隐状态变量;将所述第二隐状态变量输入到时间解码器,得到强度函数,根据所述强度函数得到所述时间维度的指数分布;其中,所述时间解码器包括全连接层,并且最后一层全连接层的输出经由指数函数处理;将所述第二隐状态变量输入到第一地点解码器,得到基于时间点过程的多项式分布,根据所述基于时间点过程的多项式分布得到所述空间维度的多项式分布;其中,所述第一地点解码器包括全连接层,并且最后一层全连接层的输出维度设置为经过编号后的区域总数。[0058] 轨迹生成模型可以视为解码器。在将隐含移动特征输入到轨迹生成模型,分别得到时间维度的指数分布和空间维度的多项式分布时,将隐含移动特征、经过嵌入式编码的用户静态信息及经过位置编码的进入地点的时间输入到LSTM神经网络,得到第二隐状态变量。而为了进一步强调个体的独特性以及移动数据在时间上的周期性,解码器的输入除了抽样得到的移动特征(隐含移动特征)以外,还有与编码器完全相同的个体编号嵌入(经过嵌入式编码的用户静态信息)以及位置编码(位置编码后的进入地点的时间),三组向量可以经由全联接层拼合为一个整体,然后输入LSTM神经网络,得到第二隐状态变量。其中,第二隐状态变量与编码器(逆向生成模型)的LSTM神经网络的输入向量具有相同的维数,而得到的第二隐状态向量则可视为包含全部移动轨迹信息的特征向量,需进一步分别解码为时间维度的指数分布以及空间维度的多项式分布。[0059] 将第二隐状态变量输入到时间解码器,得到强度函数,根据强度函数得到时间维度的指数分布。具体而言,时间解码器可以由三层全联接层组成,其输出维度可以分别为64,64,1,且其中前两层可以使用ReLu作为激活函数,最后一层的输出可以经由指数函数处理以保证其非负性。最终得到的L维向量即确定了后续生成轨迹中各次停留时间的概率分布,即指数分布的强度函数。[0060] 将第二隐状态变量输入到地点解码器,地点解码器包括第一地点解码器,得到基于时间点过程的多项式分布,根据基于时间点过程的多项式分布得到空间维度的多项式分布,可以直接将基于时间点过程的多项式分布作为空间维度的多项式分布。第一地点解码器的结构与时间解码器相似,可以为处理LSTM隐状态变量的三层全联接层。为了保证能够充分提取出隐状态变量中地理区域相关的轨迹特征,其输出维度可以设置得稍大,如分别为128,128,N,其中N为经过编号后所有区域的总数,在此例中取值为10000。同时,其激活函数可以为SeLu函数,为了得到非负性的多项式概率分布,最后一层全联接层的输出可以经由SoftMax函数处理。[0061] 本发明提供的轨迹生成模型训练方法,通过将隐含移动特征、经过嵌入式编码的用户静态信息及经过位置编码的进入地点的时间输入到LSTM神经网络,得到第二隐状态变量,将第二隐状态变量输入到时间解码器,得到强度函数,根据强度函数得到时间维度的指数分布,将第二隐状态变量输入到第一地点解码器,得到基于时间点过程的多项式分布,根据基于时间点过程的多项式分布得到空间维度的多项式分布,实现了时间维度的指数分布和空间维度的多项式分布的可靠获取。[0062] 根据本发明提供的一种轨迹生成模型训练方法,所述历史移动数据包括用户静态信息、地点信息、进入地点的时间、进入地点后的停留时间以及地点POI信息;所述将历史移动数据输入到逆向生成模型,得到对应所述历史移动数据的隐含移动特征,包括:将所述进入地点的时间输入到位置编码网络,得到经过位置编码的进入地点的时间;将所述停留时间、所述用户静态信息、所述地点信息及所述地点POI信息分别输入到嵌入式编码网络,得到经过嵌入式编码的停留时间、用户静态信息、地点信息及地点POI信息;将所述经过位置编码的进入地点的时间、所述经过嵌入式编码的停留时间、用户静态信息、地点信息及地点POI信息输入到全连接层,拼接得到第二向量;将所述第二向量输入到LSTM神经网络,得到第三隐状态变量;将所述第三隐状态变量分别输入到均值编码器和方差编码器,得到对应所述历史移动数据的隐含移动特征。[0063] 可以先通过预处理得到历史移动数据。比如,若使用者希望通过过去一周较为精确的历史移动数据与详细的区域功能属性,即POI信息来生成未来一周的移动轨迹以供数据分析。在根据历史移动数据训练时,首先进行训练数据的构建。由于历史数据较为完善、有利于提取出更多的信息从而使模型达到更好的效果,所以在对原始数据进行预处理时可以选择采用更为精细的处理原则。具体而言,在空间层面,由于在得到POI数据的过程中常常已经对地理区域进行了划分,所以在合并相邻数据点时,不再依据两点之间的距离,而是根据经纬度判断该两点是否同处于一个地理区域中,后续的区域编号亦基于POI数据进行;在时间层面,由于数据量更大,一天中有数据记录的时长占比较高,所以在过滤时可以适当将时间间隔的阈值调低,如5分钟,以保留部分移动过程中的数据点,从而能对个体具体的移动轨迹更好地建模,避免后续生成的移动曲线为简单的折线段。经过以上的操作,能够得到模型所需的移动数据特征。[0064] 图2是本发明提供的轨迹生成模型训练方法中逆向生成模型的示意图。本发明提出的神经网络时间点过程序列生成模型的输出通过概率分布生成数据,而概率分布本身是不可导的,因此无法利用反向传播算法直接训练得到模型参数。为了解决这一问题,采用变分推断的方法对模型进行优化。基于变分推断技术,采用额外的神经网络从进行生成网络的逆向过程估计,即从生成结果反推隐含特征,称其为近似分布。近似分布通过结合贝叶斯公式从而导出衡量生成结果好坏的指标,最终实现对整个变分时间点过程模型的参数训练。[0065] 在本发明提出的神经网络时间点过程生成模型中,基于随机移动特征z1:i生成(下一条)移动数据ri;而在近似分布中将基于历史移动轨迹r1:i估计用户当前的隐含移动特征zi,将该神经网络定义为qφ(zi|r1:i),其示意图展示在图2中。可以看到,其利用LSTM网络建模序列的时间演化,具体表达式如下:[0066][0067] 其中 和 表示了第i条移动记录的绝对时间和其与上一条记录时间差,即相对时间,上角标PE表示对其进行了位置编码。为了保证该编码能够刻画用户行为的时间周期性和连续性,提出了如下基于傅里叶变换的位置编码。对于长度为2K的编码向量,其2k位和2k+1位分别可以表述如下:[0068][0069] 其中γ表示该编码的基准频率,PE表示位置编码,PE2k(t)表示偶数项关于自变量t的函数,PE2k+1(t)表示奇数项关于自变量t的函数,t表示时间。[0070] 另一方面,同时也对停留时间、用户移动记录的地点信息、用户静态特征、访问地点的语义POI特征做嵌入式编码,分别表示为[0071] 基于该LSTM网络的输出,最终zi的分布被建模为参数是hi的函数的高斯分布,这一过程表示如下:[0072][0073] 其中g是非线性映射函数,可以尝试不同形式的g函数来提升模型的建模能力。[0074] 因此,本实施例中,历史移动数据包括用户静态信息、地点信息、进入地点的时间、进入地点后的停留时间以及地点POI信息。在将历史移动数据输入到逆向生成模型,得到对应历史移动数据的隐含移动特征时,首先,将进入地点的时间输入到位置编码网络,得到经过位置编码的进入地点的时间 将停留时间、用户静态信息、地点信息及地点POI信息分emb别输入到嵌入式编码网络,得到经过嵌入式编码的停留时间 用户静态信息u 、地点信息 和地点POI信息 地点POI信息可以经过线性编码得到经过嵌入式编码的POI信息 线性编码是嵌入式编码的一种。[0075] 为了优化模型效果,可以将得到的各个向量 的维数按照64:256:256:128:64的比例设置,以凸显出建模的主要对象,即个体停留的每个区域以及在到达该区域和在该区域停留的时间,同时弱化个体之间的区别,并将区域的功能属性(地点POI信息)作为输入后续长短期记忆网络的附加特征以使得模型性能得到进一步的优化。[0076] 将经过位置编码的进入地点的时间、经过嵌入式编码的停留时间、用户静态信息、地点信息和地点POI信息输入到全连接层,经由全联接层拼接为一个完整的向量并输入至编码器LSTM神经网络以提取序列数据的特征,而为了能够充分地掌握个体移动轨迹的各个特征,第三隐状态变量的维度可以设置为512。此时,轨迹因个体和时间而异的各项特征都集中在得到的第三隐状态变量中。[0077] 为了能够将这些特征建模为相互独立的正态随机变量以供生成模型,即解码器(轨迹生成模型),进行随机采样,并对不同个体未来的移动轨迹进行模拟,可以将第三隐状态变量输入至分别由二层全联接层构成的均值编码器和方差编码器,从而确定各个轨迹特征的分布。具体而言,可以将第一层全连接层的输出维度均设为256,将第二层全连接层的输出维度均设置为512,也即隐藏状态空间的维数。另外,各激活函数可以均设置为ReLu。[0078] 对于由编码器编码得到的隐藏空间,从中随机抽样一定数量的特征向量,即抽样获得Lxn的矩阵。该矩阵的每一行均为维数为n(此例中n=512)的特征向量,代表着着轨迹中一个数据点的全部信息,而矩阵整体则将经由解码器生成一条长度为L(此例中L与模型输入数据的长度相同)的移动数据。其中,在将第三隐状态变量分别输入到均值编码器和方差编码器,得到对应历史移动数据的隐含移动特征时,已经实现了上述随机抽样过程。[0079] 本发明提供的轨迹生成模型训练方法,通过设置包括用户静态信息、地点信息、进入地点的时间、进入地点后的停留时间及地点POI信息的历史移动数据,并通过逆向生成模型进行编码得到编码向量后,通过全连接层拼接为一个完整向量,将拼接得到的完整向量通过LSTM网络输出第三隐状态变量,将第三隐状态变量分别输入到均值编码器和方差编码器,得到对应历史移动数据的隐含移动特征,进一步实现了隐含移动特征的可靠获取,并且丰富了隐含移动特征的信息。[0080] 根据本发明提供的一种轨迹生成模型训练方法,所述将所述隐含移动特征输入到轨迹生成模型,分别得到时间维度的指数分布和空间维度的多项式分布,包括:将所述隐含移动特征、所述经过嵌入式编码的用户静态信息及所述经过位置编码的进入地点的时间输入到LSTM神经网络,得到第四隐状态变量;将所述第四隐状态变量输入到时间解码器,得到强度函数,根据所述强度函数得到所述时间维度的指数分布;其中,所述时间解码器包括全连接层,并且最后一层全连接层的输出经由指数函数处理;将所述第四隐状态变量输入到第二地点解码器,得到基于时间点过程的多项式分布,将所述第四隐状态变量输入到第三地点解码器,得到基于区域功能考量的多项式分布,将所述基于时间点过程的多项式分布和所述基于区域功能考量的多项式分布进行加权求和,得到所述空间维度的多项式分布;其中,所述第二地点解码器包括全连接层,并且最后一层全连接层的输出维度设置为经过编号后的区域总数;所述第三地点解码器包括全连接层,且其中一个全连接层的输出维度等于POI数据维度。[0081] 利用神经网络时间点过程模型来建模移动序列数据。时间点过程是一类用来描述含有时间信息的事件序列的随机过程。最常用的时间点过程包括Poisson过程和Hawkes过程。具体而言,在时间点过程模型中,事件发生强度函数λ(t)被用来描述时间t附近不同事件发生的概率密度大小,事件发生强度函数简称为强度函数。举例来说,在Poisson过程中,强度函数为一个固定的值,即λ(t)=λ0;在Hawkes过程中,已经发生的事件会对后续发生的事件起到激励或者抑制作用,于是有 其中ti为过去发生的事件所发生的时间,φ为描述事件的激励或者抑制关系的函数,α表示过去事件对强度函数的当前值的影响,μ0表示强度的预期、可预测或确定性部分。然而真实世界中的事件发生的密度函数是否符合这些模型的表达式没有办法得到保证,进而无法保证移动时间序列得到有效鲁棒的建模。[0082] 图3是本发明提供的轨迹生成模型训练方法中轨迹生成模型的示意图。为了克服这些问题,本发明采用神经网络建模的时间点过程,即使用神经网络建模其强度函数,同时将访问不同的地点的用户选择也由神经网络所拟合给出,轨迹生成模型即采用神经网络建模的时间点过程模型。训练过程中轨迹生成模型的示意图展示在图3中。[0083] 具体而言,更为一般的情况下,强度函数应该拥有更为灵活的表达式,但是考虑到因果性,时刻t附近的强度函数只能受到过去发生的事件的影响,所以将其符号定义为λ(t|r1:i‑1),其中r1:i‑1表示历史移动轨迹。进一步,下一个移动行为即第i个移动记录发生的概率密度可以被表示如下:[0084][0085] 采用分段强度函数,即在第i次移动发生前事件发生强度不变,其在第i次移动发生之后会根据发生的事件产生变化。于是积分项 可以被计算为λ(t|r1:i‑1),ti‑ti‑1]。更进一步,采用长短期记忆网络(LongShort‑TermMemory,LSTM)来对其进行建模,其过程表示如下:[0086] hi=LSTMθ(zi,hi‑1,uemb)[0087] 其中,hi为第i条移动记录对应的LSTM的隐状态变量,,hi‑1为第i‑1条移动记录对应的LSTM的隐状态变量,zi为描述用户移动状态特征的随机变量,对数据生成过程的随机emb性进行了建模。u 表示用户不随移动发生变化的属性特征。θ表示网络参数。进一步,隐状态hi被非线性神经网络f映射到强度函数和事件类型的相关参数,于是有:[0088] [η,Ψloc,ξPOI]=fθ(hi)[0089] 其中η即为强度函数值,所以有λ(t|r1:i‑1)=η。神经网络f的构建有很多种选择,可以使用最为经典的多层感知机模型,也可以使用卷积神经网络、图卷积神经网络等有效的网络结构。[0090] 与此同时,移动的地点将综合地点分布的直接拟合结果Ψloc和意图分布ξPOI两部分给出。采用POI信息刻画用户的意图分布,POI表示城市范围内不同功能兴趣点的分布(如|C|×|L|餐馆、住宅等),定义POI分布矩阵I∈R ,其中C为POI类型的集合,L为空间区域的集合。POIξ 为长度为|C|的向量,描述了用户访问不同类型地点的意图,将其转换为访问不同地点的选择,通过如下矩阵相乘操作:[0091] ΨPOI=(ξPOI)T·I[0092] 用户下一次移动的地点选择被建模为Ψloc与ΨPOI的加权和:[0093] Ψ(z1:i)=αΨloc+βΨPOI[0094] 最终得到的向量Ψ(z1:i)表示了用户访问|L|个地点的倾向,下一个地点将从以Ψ(z1:i)为参数的多项式分布中选取。[0095] 通过结合基于强度函数值λ(t|r1:i‑1)=η的指数分布与参数为Ψ(z1:i)的多项式分布所构建的时间点过程模型,得以生成移动用户的下一条访问记录,进一步基于LSTM网络进行循环迭代,从而产生用户移动序列。[0096] 在将隐含移动特征输入到轨迹生成模型,分别得到时间维度的指数分布和空间维度的多项式分布时,将隐含移动特征、经过嵌入式编码的用户静态信息及经过位置编码的进入地点的时间输入到LSTM神经网络,得到第四隐状态变量。而为了进一步强调个体的独特性以及移动数据在时间上的周期性,解码器的输入除了抽样得到的移动特征(隐含移动特征)以外,还有与编码器完全相同的个体编号嵌入(经过嵌入式编码的用户静态信息)以及位置编码(位置编码后的进入地点的时间),三组向量可以经由全联接层拼合为一个整体,然后输入LSTM神经网络,得到第四隐状态变量。其中,第四隐状态变量与编码器(逆向生成模型)的LSTM神经网络的输入向量具有相同的维数,而得到的第四隐状态向量则可视为包含全部移动轨迹信息的特征向量,需进一步分别解码为时间维度的指数分布以及空间维度的多项式分布。[0097] 将第四隐状态变量输入到时间解码器,得到强度函数,根据强度函数得到时间维度的指数分布。具体而言,时间解码器可以由三层全联接层组成,其输出维度可以分别为64,64,1,且其中前两层可以使用ReLu作为激活函数,最后一层的输出可以经由指数函数处理以保证其非负性。最终得到的L维向量即确定了后续生成轨迹中各次停留时间的概率分布,即指数分布的强度函数。[0098] 为了使得区域功能特征,即POI数据得到充分的利用,地点解码器相比时间解码器更为复杂。地点解码器包括第二地点解码器和第三地点解码器。将第四隐状态变量输入到第二地点解码器,得到基于时间点过程的多项式分布。第二地点解码器的结构与时间解码器相似,可以为处理LSTM隐状态变量的三层全联接层。为了保证能够充分提取出隐状态变量中地理区域相关的轨迹特征,其输出维度可以设置得稍大,如分别为128,128,N,其中N为经过编号后所有区域的总数,在此例中取值为10000。同时,其激活函数可以为SeLu函数,为了得到非负性的多项式概率分布,最后一层全联接层的输出可以经由SoftMax函数处理。[0099] 将第四隐状态变量输入到第三地点解码器,得到基于区域功能考量的多项式分布。第四隐状态变量输入到第三地点解码器,可以先经过全连接层得到输出(一层或两层独立的全连接层,或直接利用第二地点编码器第一或第二全连接层的输出),然后将输出向量经过输出维度等于POI数据维度(M维)的全联接层,将上述M维全联接层的输出视作个体偏好,其后通过另一个输出为1维的全联接层以及紧接着的SoftMax函数,得到基于区域功能考量的个体轨迹特征,即基于区域功能考量的多项式分布。此时,分别得到了基于时间点过程和区域功能考量的多项式分布,最后将二者以预设比例如9:1(可以是基于时间点过程的多项式分布为9,基于区域功能考量的多项式分布为1)的比例进行加权求和来进行加权求和,并以得到的向量作为后续生成轨迹中各次停留地点的概率分布,即空间维度的多项式分布。[0100] 本发明提供的轨迹生成模型训练方法,通过将隐含移动特征、经过嵌入式编码的用户静态信息、经过位置编码的进入地点的时间输入到LSTM神经网络,得到第四隐状态变量,将第四隐状态变量输入到时间解码器,得到强度函数,根据强度函数得到时间维度的指数分布,将第四隐状态变量输入到第二地点解码器和第三地点解码器,然后通过加权求和,得到空间维度的多项式分布,实现了时间维度的指数分布和空间维度的多项式分布的可靠获取,并且丰富了时间维度的指数分布和空间维度的多项式分布的信息。[0101] 根据本发明提供的一种轨迹生成模型训练方法,所述训练并优化由所述逆向生成模型和所述轨迹生成模型共同构成的变分时间点过程模型,包括:计算所述隐含移动特征的近似分布和后验分布的KL散度,并将所述KL散度作为损失函数;利用重参数化技巧消除所述KL散度中的证据下界ELBO的积分计算;基于所述损失函数,利用反向传播算法优化得到模型网络参数。[0102] 图4是本发明提供的轨迹生成模型训练方法中的变分时间点过程模型的示意图。本发明通过训练并优化由逆向生成模型和轨迹生成模型共同构成的变分时间点过程模型,训练结束后,得到用于轨迹生成的轨迹生成模型。[0103] 基于上述近似分布的神经网络模型,进一步导出模型的优化目标,通过贝叶斯公式可以从生成模型p(R|Z)中导出Z的后验证分布p(Z|R)=p(R|Z)p(Z)/p(R),通过比较该后验分布与近似分布的KL散度,可以得到:[0104][0105] 其中p(R)为观测移动数据发生的概率,R表示显状态空间上的研究对象(一系列随机变量),其样本为观测数据;Z表示隐状态空间上的研究对象(一个随机变量),其样本为z,z为Z的抽样结果,为zi的集合。p(Z|R)表示R关于Z的条件概率分布,p(R|Z)表示Z关于R的条件概率分布,p(Z)表示Z的概率分布,q(Z)表示一个跟隐状态变量相关的随机变量的概率分布,可以为待优化函数的自变量。[0106] 由于其不随模型参数发生改变,所以最小化p(Z)与p(Z|R)二者间的KL散度,也即最小 化q (Z) 与 p (Z| R) 二 者间 的K L 散度 ,可 以通 过 最大 化 剩余 项而实现,这一项被称作证据下界(Evidence LowerBound,ELBO)。然而ELBO中含有的积分依然难以处理,为了解决这个问题,采用重参数化技巧对其进行数值求解。具体而言,通过从如下分布中采样得到z的样本:[0107][0108] 利用公式 将该采样样本带入ELBO(变分推断中的证据下界)界中,即可达到消除积分计算的目的,同时也能够保证得到的优化目标依然为网络参数φ和θ的函数,进一步可以采用反向传播的算法优化得到网络参数。[0109] 式中, 是一个随机变量,服从标准正态分布; 表示标准正态分布; 表示隐状态的第i个采样,上端的折线表示参数化技巧的Z与原始的Z的区别;上标u表示跟用户u有关。f(Z)表示与Z有关的任意函数,q(Z)表示一个概率密度函数,自变量为Z;表示一个服从以q(Z)为概率密度函数的随机变量,或者更进一步说是这个随机变量的采样,即一个样本,也即实际应用中的——用户当前的隐含移动特征zi。 表示一个可积的函数,其定义域包含了 的值域。[0110] 通过ELBO损失训练并优化模型,得到的模型则将用于其后的移动数据生成。在模型经过一定数量的epoch完成训练之后,各系数基本收敛。[0111] 本发明提供的轨迹生成模型训练方法,采用以上述ELBO为目标进行优化的变分框架,通过协同优化生成模型(轨迹生成模型)与近似分布模型(逆向生成模型),从而解决基于神经网络时间点过程模型中概率分布层不可导的问题,最终实现对其网络参数的训练;该模型通过结合经典概率分布有效的引入了专家知识,同时对于连续时间分布、不定长轨迹都能够很好的建模,从而有效克服了移动轨迹的不均衡,大大提升了模型的鲁棒性和泛用性。[0112] 图5是本发明提供的轨迹生成方法的流程示意图之一。如图5所示,所述方法包括:[0113] 步骤S1、对到达前一区域的时间进行位置编码,得到位置编码向量;从标准正态分布中进行抽样得到隐藏状态向量;将所述位置编码向量、所述隐藏状态向量及经过嵌入式编码的用户静态信息输入到轨迹生成模型,得到时间维度的指数分布和空间维度的多项式分布;[0114] 步骤S2、对所述空间维度的多项式分布进行抽样得到所述前一区域的信息,对所述时间维度的指数分布进行抽样得到在所述前一区域的停留时间;[0115] 步骤S3、根据所述到达前一区域的时间和所述在所述前一区域的停留时间得到到达下一区域的时间;[0116] 步骤S4、循环执行上述过程,直至所述停留时间的和达到预设值;其中,在循环执行上述过程时,将所述到达前一区域的时间的值更新为所述到达下一区域的时间的值。[0117] 本发明提供的轨迹生成方法可以基于前述轨迹生成模型训练方法训练得到的轨迹生成模型进行轨迹生成。其中,轨迹生成模型是基于历史移动数据构建的。利用轨迹生成模型生成轨迹,可以用于实现基于历史移动数据的轨迹预测。[0118] 图6是本发明提供的轨迹生成方法中的轨迹生成模型的示意图。使用解码器(轨迹生成模型)进行模拟轨迹的生成,解码器的单次运行过程如前所述,而训练与生成时的不同主要在于:输入数据的产生、输出数据进一步转化为移动轨迹、模型的循环使用。[0119] 首先,输入数据中从隐藏状态空间随机抽样得到的向量z是逆向生成模型输入的,逆向生成模型是用于训练轨迹生成模型的,训练成功后,可以只利用轨迹生成模型进行轨迹生成。在利用轨迹生成模型进行轨迹生成时,输入数据中从隐藏状态空间随机抽样得到的向量z将从标准正态分布中抽样得到,因为在理论情况下,标准正态分布是从隐藏状态空间随机抽样得到的向量z的收敛极限,此外,输入数据中的位置编码不再由历史数据编码得到,而是在生成过程中一步步产生的;其次,轨迹生成模型的输出数据仅通过必要参数确定了时间点序列模型的概率分布,而非真正的具体数据点,所以在移动数据生成时,将从总体中进行抽样,以实现模拟轨迹的随机生成。[0120] 最后,解码器(轨迹生成模型)在生成过程中需要循环使用。利用轨迹生成模型生成轨迹的示例如下:设置一条轨迹的开始时间为0,则该时刻经过位置编码得到长度为一的编码向量,再加上同维数的个体编号嵌入向量(经过嵌入式编码的用户静态信息)以及隐藏状态向量,即可作为解码器的初始输入。经过解码与抽样,可以得到停留的第一个区域以及在该区域停留的时间,而将后者与到达该区域的时间相加,即可得到区域变更,即到达下一区域的时间。此时,将新增的时刻进行位置编码,即可得到长度为二的编码向量,只需再从标准正态分布中抽样一次,即可得到第二次循环所需的输入数据。而经过循环解码与抽样,则可将各输出向量的最后一项视为停留的第二个区域以及在该区域停留的时间。以此类推,不断循环,便能生成任意长度的轨迹,此处只需要求在轨迹的时间跨度达到预设时间(如要生成一周的轨迹,则预设时间设置为一周)时停止生成,便能得到最终需要的移动数据。[0121] 本发明提供的轨迹生成方法,通过采用循环迭代的方法基于历史移动数据构建的轨迹生成模型进行轨迹生成,轨迹生成模型克服了对于数据时间序列时间间隔、序列长度等数据均衡性的要求,拥有更强的灵活性、建模能力,对不均衡数据的高度适应性和鲁棒性,从而实现了更加准确的轨迹生成。[0122] 图7是本发明提供的轨迹生成方法的流程示意图之二。如图7所示,通过历史移动数据得到样本信息(各项历史移动数据),进行样本特征筛选(即对历史移动数据进行位置编码、嵌入编码),然后经过编码器编码,得到隐藏状态抽样结果(逆向生成模型的处理)。通过解码器解码,得到时间和地点的概率分布(轨迹生成模型的处理)。基于历史移动数据逐步训练由逆向生成模型和轨迹生成模型构建的变分时间点过程模型,训练结束后,得到用于轨迹生成的所述轨迹生成模型。利用轨迹生成模型进行移动数据生成,从而模拟移动数据。其中,中间模拟轨迹是指根据当前区域的到达时间及停留时间得到下一区域的到达时间。将下一区域的到达时间进行位置编码后,同隐藏状态抽样结果(从标准正态分布中抽样)以及经过嵌入编码的用户静态信息共同作为轨迹生成模型(解码器)的输入,得到下一输出结果。[0123] 本发明提供的轨迹生成模型训练方法及轨迹生成方法,基于由逆向生成模型和轨迹生成模型构成的变分时间点过程模型进行训练,得到轨迹生成模型,在保留了神经网络模型的强大建模能力、捕获了序列数据中的不确定性的同时提升了其可解释性,且能够通过基于概率模型的数据交互机制有效的引入专家知识,有更强的灵活性、建模能力,对不均衡数据的高度适应性和鲁棒性,在移动数据生成问题上具有巨大的潜力。[0124] 下面对本发明提供的轨迹生成模型训练装置进行描述,下文描述的轨迹生成模型训练装置与上文描述的轨迹生成模型训练方法可相互对应参照。[0125] 图8是本发明提供的轨迹生成模型训练装置的结构示意图。如图8所示,该装置包括编码处理模块100、解码处理模块200及训练模块300,其中:编码处理模块100用于:将历史移动数据输入到逆向生成模型,得到对应所述历史移动数据的隐含移动特征;解码处理模块200用于:将所述隐含移动特征输入到轨迹生成模型,分别得到时间维度的指数分布和空间维度的多项式分布;训练模块300用于:训练并优化由所述逆向生成模型和所述轨迹生成模型共同构成的变分时间点过程模型,训练结束后,得到用于轨迹生成的所述轨迹生成模型。[0126] 本发明提供的轨迹生成模型训练装置,通过将历史移动数据输入到逆向生成模型,得到对应历史移动数据的隐含移动特征,将隐含移动特征输入到轨迹生成模型,分别得到时间维度的指数分布和空间维度的多项式分布,训练并优化由逆向生成模型和轨迹生成模型共同构成的模型,训练结束后,得到用于轨迹生成的轨迹生成模型,基于由逆向生成模型和轨迹生成模型构成的变分时间点过程模型进行训练,得到轨迹生成模型,在保留了神经网络模型的强大建模能力、捕获了序列数据中的不确定性的同时提升了其可解释性,且能够通过基于概率模型的数据交互机制有效的引入专家知识,有更强的灵活性、建模能力,对不均衡数据的高度适应性和鲁棒性,在移动数据生成问题上具有巨大的潜力。[0127] 根据本发明提供的一种轨迹生成模型训练装置,所述历史移动数据包括用户静态信息、地点信息、进入地点的时间以及进入地点后的停留时间;编码处理模块100具体用于:将所述进入地点的时间输入到位置编码网络,得到经过位置编码的进入地点的时间;将所述停留时间、所述用户静态信息和所述地点信息分别输入到嵌入式编码网络,得到经过嵌入式编码的停留时间、用户静态信息和地点信息;将所述经过位置编码的进入地点的时间、所述经过嵌入式编码的停留时间、用户静态信息和地点信息输入到全连接层,拼接得到第一向量;将所述第一向量输入到LSTM神经网络,得到第一隐状态变量;将所述第一隐状态变量分别输入到均值编码器和方差编码器,得到对应所述历史移动数据的隐含移动特征。[0128] 本发明提供的轨迹生成模型训练装置,通过设置包括用户静态信息、地点信息、进入地点的时间以及进入地点后的停留时间的历史移动数据,并通过逆向生成模型进行编码得到编码向量后,通过全连接层拼接为一个完整向量,将拼接得到的完整向量通过LSTM网络输出第一隐状态变量,将第一隐状态变量分别输入到均值编码器和方差编码器,得到对应历史移动数据的隐含移动特征,实现了隐含移动特征的可靠获取。[0129] 根据本发明提供的一种轨迹生成模型训练装置,解码处理模块200具体用于:将所述隐含移动特征、所述经过嵌入式编码的用户静态信息及所述经过位置编码的进入地点的时间输入到LSTM神经网络,得到第二隐状态变量;将所述第二隐状态变量输入到时间解码器,得到强度函数,根据所述强度函数得到所述时间维度的指数分布;其中,所述时间解码器包括全连接层,并且最后一层全连接层的输出经由指数函数处理;将所述第二隐状态变量输入到第一地点解码器,得到基于时间点过程的多项式分布,根据所述基于时间点过程的多项式分布得到所述空间维度的多项式分布;其中,所述第一地点解码器包括全连接层,并且最后一层全连接层的输出维度设置为经过编号后的区域总数。[0130] 本发明提供的轨迹生成模型训练装置,通过将隐含移动特征、经过嵌入式编码的用户静态信息及经过位置编码的进入地点的时间输入到LSTM神经网络,得到第二隐状态变量,将第二隐状态变量输入到时间解码器,得到强度函数,根据强度函数得到时间维度的指数分布,将第二隐状态变量输入到第一地点解码器,得到基于时间点过程的多项式分布,根据基于时间点过程的多项式分布得到空间维度的多项式分布,实现了时间维度的指数分布和空间维度的多项式分布的可靠获取。[0131] 根据本发明提供的一种轨迹生成模型训练装置,所述历史移动数据包括用户静态信息、地点信息、进入地点的时间、进入地点后的停留时间以及地点POI信息;编码处理模块100具体用于:将所述进入地点的时间输入到位置编码网络,得到经过位置编码的进入地点的时间;将所述停留时间、所述用户静态信息、所述地点信息及所述地点POI信息分别输入到嵌入式编码网络,得到经过嵌入式编码的停留时间、用户静态信息、地点信息及地点POI信息;将所述经过位置编码的进入地点的时间、所述经过嵌入式编码的停留时间、用户静态信息、地点信息及地点POI信息输入到全连接层,拼接得到第二向量;将所述第二向量输入到LSTM神经网络,得到第三隐状态变量;将所述第三隐状态变量分别输入到均值编码器和方差编码器,得到对应所述历史移动数据的隐含移动特征。[0132] 本发明提供的轨迹生成模型训练装置,通过设置包括用户静态信息、地点信息、进入地点的时间、进入地点后的停留时间及地点POI信息的历史移动数据,并通过逆向生成模型进行编码得到编码向量后,通过全连接层拼接为一个完整向量,将拼接得到的完整向量通过LSTM网络输出第三隐状态变量,将第三隐状态变量分别输入到均值编码器和方差编码器,得到对应历史移动数据的隐含移动特征,进一步实现了隐含移动特征的可靠获取,并且丰富了隐含移动特征的信息。[0133] 根据本发明提供的一种轨迹生成模型训练装置,解码处理模块200具体用于:将所述隐含移动特征、所述经过嵌入式编码的用户静态信息及所述经过位置编码的进入地点的时间输入到LSTM神经网络,得到第四隐状态变量;将所述第四隐状态变量输入到时间解码器,得到强度函数,根据所述强度函数得到所述时间维度的指数分布;其中,所述时间解码器包括全连接层,并且最后一层全连接层的输出经由指数函数处理;将所述第四隐状态变量输入到第二地点解码器,得到基于时间点过程的多项式分布,将所述第四隐状态变量输入到第三地点解码器,得到基于区域功能考量的多项式分布,将所述基于时间点过程的多项式分布和所述基于区域功能考量的多项式分布进行加权求和,得到所述空间维度的多项式分布;其中,所述第二地点解码器包括全连接层,并且最后一层全连接层的输出维度设置为经过编号后的区域总数;所述第三地点解码器包括全连接层,且其中一个全连接层的输出维度等于POI数据维度。[0134] 本发明提供的轨迹生成模型训练装置,通过将隐含移动特征、经过嵌入式编码的用户静态信息、经过位置编码的进入地点的时间输入到LSTM神经网络,得到第四隐状态变量,将第四隐状态变量输入到时间解码器,得到强度函数,根据强度函数得到时间维度的指数分布,将第四隐状态变量输入到第二地点解码器和第三地点解码器,然后通过加权求和,得到空间维度的多项式分布,实现了时间维度的指数分布和空间维度的多项式分布的可靠获取,并且丰富了时间维度的指数分布和空间维度的多项式分布的信息。[0135] 根据本发明提供的一种轨迹生成模型训练装置,训练模块300在用于训练并优化由所述逆向生成模型和所述轨迹生成模型共同构成的变分时间点过程模型时,具体用于:计算所述隐含移动特征的近似分布和后验分布的KL散度,并将所述KL散度作为损失函数;利用重参数化技巧消除所述KL散度中的证据下界ELBO的积分计算;基于所述损失函数,利用反向传播算法优化得到模型网络参数。[0136] 本发明提供的轨迹生成模型训练装置,采用以上述ELBO为目标进行优化的变分框架,通过协同优化生成模型与近似分布模型,从而解决基于神经网络时间点过程模型中概率分布层不可导的问题,最终实现对其网络参数的训练;该模型通过结合经典概率分布有效的引入了专家知识,同时对于连续时间分布、不定长轨迹都能够很好的建模,从而有效克服了移动轨迹的不均衡,大大提升了模型的鲁棒性和泛用性。[0137] 下面对本发明提供的轨迹生成装置进行描述,下文描述的轨迹生成装置与上文描述的轨迹生成方法可相互对应参照。[0138] 图9是本发明提供的轨迹生成装置的结构示意图。如图9所示,该装置包括分布信息获取模块100、地点和停留时间信息获取模块200、下一区域的到达时间获取模块300及循环处理模块400,其中:分布信息获取模块100用于:对到达前一区域的时间进行位置编码,得到位置编码向量;从标准正态分布中进行抽样得到隐藏状态向量;将所述位置编码向量、所述隐藏状态向量及经过嵌入式编码的用户静态信息输入到轨迹生成模型,得到时间维度的指数分布和空间维度的多项式分布;地点和停留时间信息获取模块200用于:对所述空间维度的多项式分布进行抽样得到所述前一区域的信息,对所述时间维度的指数分布进行抽样得到在所述前一区域的停留时间;下一区域的到达时间获取模块300用于:根据所述到达前一区域的时间和所述在所述前一区域的停留时间得到到达下一区域的时间;循环处理模块400用于:循环执行上述过程,直至所述停留时间的和达到预设值;其中,在循环执行上述过程时,将所述到达前一区域的时间的值更新为所述到达下一区域的时间的值。[0139] 本发明提供的轨迹生成装置,通过采用循环迭代的方法基于历史移动数据构建的轨迹生成模型进行轨迹生成,轨迹生成模型克服了对于数据时间序列时间间隔、序列长度等数据均衡性的要求,拥有更强的灵活性、建模能力,对不均衡数据的高度适应性和鲁棒性,从而实现了更加准确的轨迹生成。[0140] 图10示例了一种电子设备的实体结构示意图,如图10所示,该电子设备可以包括:处理器(processor)1010、通信接口(CommunicationsInterface)1020、存储器(memory)1030和通信总线1040,其中,处理器1010,通信接口1020,存储器1030通过通信总线1040完成相互间的通信。处理器1010可以调用存储器1030中的逻辑指令,以执行轨迹生成模型训练方法,该方法包括:将历史移动数据输入到逆向生成模型,得到对应所述历史移动数据的隐含移动特征;将所述隐含移动特征输入到轨迹生成模型,分别得到时间维度的指数分布和空间维度的多项式分布;训练并优化由所述逆向生成模型和所述轨迹生成模型共同构成的变分时间点过程模型,训练结束后,得到用于轨迹生成的所述轨迹生成模型;或执行轨迹生成方法,该方法包括:对到达前一区域的时间进行位置编码,得到位置编码向量;从标准正态分布中进行抽样得到隐藏状态向量;将所述位置编码向量、所述隐藏状态向量及经过嵌入式编码的用户静态信息输入到轨迹生成模型,得到时间维度的指数分布和空间维度的多项式分布;对所述空间维度的多项式分布进行抽样得到所述前一区域的信息,对所述时间维度的指数分布进行抽样得到在所述前一区域的停留时间;根据所述到达前一区域的时间和所述在所述前一区域的停留时间得到到达下一区域的时间;循环执行上述过程,直至所述停留时间的和达到预设值;其中,在循环执行上述过程时,将所述到达前一区域的时间的值更新为所述到达下一区域的时间的值。[0141] 此外,上述的存储器1030中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read‑OnlyMemory)、随机存取存储器(RAM,RandomAccessMemory)、磁碟或者光盘等各种可以存储程序代码的介质。[0142] 另一方面,本发明还提供一种计算机程序产品,所述计算机程序产品包括存储在非暂态计算机可读存储介质上的计算机程序,所述计算机程序包括程序指令,当所述程序指令被计算机执行时,计算机能够执行上述各方法所提供的轨迹生成模型训练方法,该方法包括:将历史移动数据输入到逆向生成模型,得到对应所述历史移动数据的隐含移动特征;将所述隐含移动特征输入到轨迹生成模型,分别得到时间维度的指数分布和空间维度的多项式分布;训练并优化由所述逆向生成模型和所述轨迹生成模型共同构成的变分时间点过程模型,训练结束后,得到用于轨迹生成的所述轨迹生成模型;或执行轨迹生成方法,该方法包括:对到达前一区域的时间进行位置编码,得到位置编码向量;从标准正态分布中进行抽样得到隐藏状态向量;将所述位置编码向量、所述隐藏状态向量及经过嵌入式编码的用户静态信息输入到轨迹生成模型,得到时间维度的指数分布和空间维度的多项式分布;对所述空间维度的多项式分布进行抽样得到所述前一区域的信息,对所述时间维度的指数分布进行抽样得到在所述前一区域的停留时间;根据所述到达前一区域的时间和所述在所述前一区域的停留时间得到到达下一区域的时间;循环执行上述过程,直至所述停留时间的和达到预设值;其中,在循环执行上述过程时,将所述到达前一区域的时间的值更新为所述到达下一区域的时间的值。[0143] 又一方面,本发明还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现以执行上述各提供的轨迹生成模型训练方法,该方法包括:将历史移动数据输入到逆向生成模型,得到对应所述历史移动数据的隐含移动特征;将所述隐含移动特征输入到轨迹生成模型,分别得到时间维度的指数分布和空间维度的多项式分布;训练并优化由所述逆向生成模型和所述轨迹生成模型共同构成的变分时间点过程模型,训练结束后,得到用于轨迹生成的所述轨迹生成模型;或执行轨迹生成方法,该方法包括:对到达前一区域的时间进行位置编码,得到位置编码向量;从标准正态分布中进行抽样得到隐藏状态向量;将所述位置编码向量、所述隐藏状态向量及经过嵌入式编码的用户静态信息输入到轨迹生成模型,得到时间维度的指数分布和空间维度的多项式分布;对所述空间维度的多项式分布进行抽样得到所述前一区域的信息,对所述时间维度的指数分布进行抽样得到在所述前一区域的停留时间;根据所述到达前一区域的时间和所述在所述前一区域的停留时间得到到达下一区域的时间;循环执行上述过程,直至所述停留时间的和达到预设值;其中,在循环执行上述过程时,将所述到达前一区域的时间的值更新为所述到达下一区域的时间的值。[0144] 以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。[0145] 通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。[0146] 最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
专利地区:北京
专利申请日期:2021-08-12
专利公开日期:2024-07-26
专利公告号:CN113761395B