基于GCN-LSTM的个体位置预测方法转让专利

申请号 : CN202011142144.2

文献号 : CN112270349B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 赵志远张宇吴升李代超

申请人 : 福州大学

摘要 :

本发明涉及一种基于GCN‑LSTM的个体位置预测方法,包括以下步骤:步骤S1:采集用户的轨迹数据;步骤S2:度量用户轨迹的相似性;步骤S3:根据得到的用户轨迹的相似性,利用图卷积网络提取用户的相似性特征;步骤S4:构建改进的GCN‑LSTM模型;步骤S5:基于相似性特征,采用改进的GCN‑LSTM模型提取用户轨迹的时间特征,得到预测结果。本发明顾及了用户轨迹相似度,利用图卷积模型对用户轨迹的相似性特征建模,有效地提取了用户间的相似性特征,更好地利用用户相似性提高个体位置预测的正确率。

权利要求 :

1.一种基于GCN‑LSTM的个体位置预测方法,其特征在于,包括以下步骤:步骤S1:采集用户的轨迹数据;

步骤S2:度量用户轨迹的相似性;

步骤S3:根据得到的用户轨迹的相似性,利用图卷积网络提取用户的相似性特征;

步骤S4:构建改进的GCN‑LSTM模型;

步骤S5:基于相似性特征,采用改进的GCN‑LSTM模型提取用户轨迹的时间特征,得到预测结果;

所述步骤S2具体为:

步骤S21:对用户的轨迹数据进行预处理,去除异常值和缺失值;

步骤S22:设定网格单元在垂直方向和水平方向的尺寸,分别以研究区域左侧边界和下侧边界为起始,向右和向上将研究区域进行网格划分,并对网格进行编码;

步骤S23:根据用户的位置信息,计算对应的网格单元,用网格编号替换位置坐标序列,将原始的用户轨迹转化为网格轨迹;

步骤S24:计算两个用户在相同时刻位于相同网格的数量,然后计算该数量占总时刻数的比值作为两个用户间的相似性;

所述步骤S24采用基于轨迹点相似性度量,计算方法如下:其中,R,S分别表示两个用户的网格轨迹,rt和st分别表示t时刻的网格位置编码,两个用户的记录点数均为n,dist(rt,st)表示如果两个用户在t时刻在同一网格中记为1,否则记为0;Eu(R,S)为两个用户在相同时刻位于相同网格的总个数,sim(R,S)表示两者的相似性度量;

所述步骤S3具体为:

步骤S31:利用用户间的相似性构建相似性图矩阵;

步骤S32:根据得到的相似性图矩阵,采用图卷积网络对相似性特征建模来提取用户的相似性特征;

所述步骤S31具体为:筛选出与要预测用户相似性超过设定阈值δ的用户,然后计算这些用户之间的相似性,并进一步构建相似性图矩阵式中,simr,s表示用户r和用户s之间的相似性;

所述图卷积网络具体为:

Relu(x)=max(0,x)     (7)式中,X表示当前时刻要预测用户和与其相似性超过阈值的用户的位置构成的矩阵,A为用户的相似性图矩阵, 为度矩阵,Relu为激活函数,max为取最大值函数,W为权重矩阵;

改进的GCN‑LSTM模型具体为:设置阈值δ,基于该阈值,对于待预测的用户,如果在数据集中能找到与之相似程度超过该阈值的用户时,采用GCN‑LSTM进行提取轨迹的时间特征,否则采用LSTM提取轨迹的时间特征。

2.根据权利要求1所述的基于GCN‑LSTM的个体位置预测方法,其特征在于,所述采用LSTM提取轨迹的时间特征,具体如下:(a)输入t时刻的用户位置xt,利用t‑1时刻的输出ht‑1和当前t时刻的输入xt计算遗忘门ft式中,ht‑1表示t‑1时刻的输出,Wf为输入层的权重矩阵,bf为输入层偏执项,通过模型训练获得最优值,σ为sigmoid函数;

(b)利用t‑1时刻的输出ht‑1和当前t时刻的输入xt计算输入门it,利用t‑1时刻的输出ht‑1和当前t时刻的输入xt生成一个单元状态更新值式中,Wi、WC分别表示输入层和状态更新层中的权重矩阵,而bi、bc为则为对应的偏执项,tanh为激活函数;

(c)更新细胞状态,即将Ct‑1更新为Ct;将遗忘门ft与存储历史位置信息的旧的细胞状态Ct‑1相乘,遗忘部分历史位置信息,然后将输入门it与单元状态更新值 相乘,存储当前时刻的部分位置信息,最后将两个结果相加,确定新的细胞状态(d)利用t‑1时刻的输出ht‑1和当前t时刻的输入xt计算输出门ot,然后利用tanh函数对细胞状态Ct处理,并将处理后的值与输出门ot相乘得到输出值ht=ot*tanh(Ct)    (15)

式中Wo和bo分别为输出层的权重矩阵和偏执项,通过模型训练获得最优值。

3.根据权利要求1所述的基于GCN‑LSTM的个体位置预测方法,其特征在于,所述采用GCN‑LSTM进行提取轨迹的时间特征,具体如下:v

(a)输入要预测用户和其相似性用户的位置信息Xt∈R其中,v代表要预测用户和其相似性用户的总数;

v

(b)通过图卷积网络提取用户的相似性特征得到矩阵X′t∈R;

(c)从矩阵X′t取出要预测用户的值x′t作为LSTM模型的输入,然后将t‑1时刻的隐藏层ht‑1和x′t放入LSTM模型提取时间特征,最终得到预测结果x′t←X′t=f(A,Xt)     (16)yt=LSTM(x′t)      (17)。

说明书 :

基于GCN‑LSTM的个体位置预测方法

技术领域

[0001] 本发明属于空间信息技术领域,具体涉及一种基于GCN‑LSTM的个体位置预测 方法。

背景技术

[0002] 目前,我国正在经历快速城镇化过程,人口在城市中的大量聚集对城市资源 配置提出了更高的要求,而相对滞后的城市发展水平带来了一系列的城市问题(如 交通拥堵、人群踩踏等公共安全事件)。人的移动模式与城市资源分布息息相关, 理解人的移动规律,预测个体未来活动位置,能够支撑城市资源的合理配置,从 而更科学地应对有关城市问题。

发明内容

[0003] 有鉴于此,本发明的目的在于提供一种基于GCN‑LSTM的个体位置预测方法, 能够有效地提高个体位置预测的正确率。
[0004] 为实现上述目的,本发明采用如下技术方案:
[0005] 一种基于GCN‑LSTM的个体位置预测方法,包括以下步骤:
[0006] 步骤S1:采集用户的轨迹数据;
[0007] 步骤S2:度量用户轨迹的相似性;
[0008] 步骤S3:根据得到的用户轨迹的相似性,利用图卷积网络提取用户的相似性特征;
[0009] 步骤S4:构建改进的GCN‑LSTM模型;
[0010] 步骤S5:基于相似性特征,采用改进的GCN‑LSTM模型提取用户轨迹的时间特征, 得到预测结果。
[0011] 进一步的,所述步骤S2具体为:
[0012] 步骤S21:对用户的轨迹数据进行预处理,去除异常值和缺失值;
[0013] 步骤S22:设定格网单元在垂直方向和水平方向的尺寸,分别以研究区域左侧边 界和下侧边界为起始,向右和向上将研究区域进行网格划分,并对网格进行编码;
[0014] 步骤S23:根据用户的位置信息,计算对应的格网单元,用网格编号替换位置坐 标序列,将原始的用户轨迹转化为格网轨迹;
[0015] 步骤S24:计算两个用户在相同时刻位于相同格网的数量,然后计算该数量占总 时刻数的比值作为两个用户间的相似性。
[0016] 进一步的,所述步骤S24采用基于轨迹点相似性度量,计算方法如下:
[0017]
[0018]
[0019]
[0020] 其中,R,S分别表示两个用户的格网轨迹,rt和st分别表示t时刻的格网位置编 码,记录点数均为n,dist(rt,st)表示如果两个用户在t时刻在同一格网中记为1,否 则记为0;Eu(R,S)为两个用户在相同时刻位于相同格网的总个数,sim(R,S)表示两 者的相似性度量。
[0021] 进一步的,所述步骤S3具体为:
[0022] 步骤S31:利用用户间的相似性构建的相似性图矩阵;
[0023] 步骤S32:根据得到的相似性图矩阵,采用图卷积网络对相似性特征建模来提取用 户的相似性特征。
[0024] 进一步的,所述步骤S31具体为:筛选出与要预测用户相似性超过设定阈值δ的 用户,然后计算这些用户之间的相似性,并进一步构建相似性图矩阵
[0025]
[0026] 式中,simr,s表示用户r和用户s之间的相似性。
[0027] 进一步的,所述图卷积模型具体为:
[0028]
[0029]
[0030] Relu(x)=max(0,x)   (7)
[0031] 式中,X表示当前时刻要预测用户和与其相似性超过阈值的用户的位置构成 的矩阵,A为用户的相似性图矩阵, 为度矩阵,Relu为激活函数,max为取最 大值函数,W为权重矩阵。
[0032] 进一步的,改进的GCN‑LSTM模型具体为:设置阈值α,基于该阈值,对于待预 测的用户,如果在数据集中能找到与之相似程度超过该阈值的用户时,采用 GCN‑LSTM进行提取轨迹的时间特征,否则采用LSTM提取轨迹的时间特征。
[0033] 进一步的,所述采用LSTM提取轨迹的时间特征,具体如下:
[0034] (a)输入t时刻的用户位置xt,利用t‑1时刻的输出ht‑1和当前t时刻的输入xt计 算遗忘门ft
[0035] ft=σ(Wf·[ht‑1,xt]+bf)   (8)
[0036]
[0037] 式中,ht‑1表示t‑1时刻的输出,xt表示t时刻的预测用户的位置信息,ft表示t 时刻忘记门函数,Wf为输入层的权重矩阵,bf为输入层偏执项,通过模型训练获得 最优值,σ为sigmoid函数;
[0038] (b)利用t‑1时刻的输出ht‑1和当前t时刻的输入xt计算输入门it,利用t‑1时刻的 输出ht‑1和当前t时刻的输入xt生成一个候选向量
[0039] it=σ(Wi·[ht‑1,xt]+bi)   (10)
[0040]
[0041]
[0042] 式中,Wi、WC分别表示输入和状态更新层中的权重矩阵,而bi、bc为则为对应 的偏执项,tanh为激活函数;
[0043] (c)更新细胞状态,即将Ct‑1更新为Ct。将遗忘门的值ft与存储历史位置信息 的旧的细胞状态Ct‑1相乘,遗忘部分历史位置信息,然后将输入门值it与候选向量  相乘,存储当前时刻的部分位置信息,最后将两个结果相加,确定新的细胞状 态
[0044]
[0045] (d)利用t‑1时刻的输出ht‑1和当前t时刻的输入xt计算输出门ot,然后利用tanh 函数对细胞状态Ct处理,并将处理后的值与输出门值ot相乘得到输出值
[0046] ot=σ(Wo·[ht‑1,xt]+bo)   (14)
[0047] ht=ot*tanh(Ct)   (15)
[0048] 式中Wo和bo分别为输入出层的权重矩阵和偏执项,通过模型训练获得最优值。
[0049] 进一步的,采用GCN‑LSTM进行提取轨迹的时间特征,具体如下:
[0050] (a)输入要预测用户和其相似性用户的位置信息Xt∈Rv
[0051] 其中,v代表要预测用户和其相似性用户的总数
[0052] (b)通过GCN模型提取用户的相似性特征得到矩阵X′t∈Rv;
[0053] (c)从矩阵X′t取出要预测用户的值x′t作为LSTM模型的输入,然后将t‑1时刻的隐藏 层ht‑1和x′t放入LSTM模型提取时间特征,最终得到预测结果
[0054] x′t→X′t=f(A,Xt)   (16)
[0055] yt=LSTM(x′t)   (17)
[0056] 本发明与现有技术相比具有以下有益效果:
[0057] 1、本发明顾及了用户轨迹相似度,利用图卷积模型对用户轨迹的相似性特征 建模,有效地提取了用户间的相似性特征,更好地利用用户相似性提高个体位置 预测的正确率;
[0058] 2、本发明在构建用户相似性特征矩阵时设置阈值,保留大于阈值的相似性值, 有效地减小了模型的计算量;
[0059] 3、本发明提出了确定用户相似性对个人位置预测有帮助的阈值的方法,并基 于此改进了GCN‑LSTM模型,有效的提升了正确率。

附图说明

[0060] 图1是本发明一实施例中个人位置预测示意图;
[0061] 图2是本发明原理示意图;
[0062] 图3是本发明一实施例中用户轨迹投影;
[0063] 图4是本发明一实施例中卷积模型提取用户相似性过程图;
[0064] 图5是本发明一实施例中长短期记忆模型;
[0065] 图6是本发明一实施例中GCN‑LSTM模型;
[0066] 图7是本发明一实施例中改进的GCN‑LSTM模型。

具体实施方式

[0067] 下面结合附图及实施例对本发明做进一步说明。
[0068] 请参照图2,本发明提供一种基于GCN‑LSTM的个体位置预测方法,包括以下 步骤:
[0069] 步骤S1:采集用户的轨迹数据;
[0070] 步骤S2:度量用户轨迹的相似性;
[0071] 步骤S3:根据得到的用户轨迹的相似性,利用图卷积网络提取用户的相似性特征;
[0072] 步骤S4:构建改进的GCN‑LSTM模型;
[0073] 步骤S5:基于相似性特征,采用改进的GCN‑LSTM模型提取用户轨迹的时间特征, 得到预测结果。
[0074] 参考图3,在本实施例中,所述步骤S2具体为,所述步骤S2具体为:
[0075] 步骤S21:对用户的轨迹数据进行预处理,去除异常值和缺失值;
[0076] 步骤S22:设定格网单元在垂直方向和水平方向的尺寸,分别以研究区域左侧边 界和下侧边界为起始,向右和向上将研究区域进行网格划分,并对网格进行编码;
[0077] 步骤S23:根据用户的位置信息,计算对应的格网单元,用网格编号替换位置坐 标序列,将原始的用户轨迹转化为格网轨迹;
[0078] 步骤S24:计算两个用户在相同时刻位于相同格网的数量,然后计算该数量占总 时刻数的比值作为两个用户间的相似性。
[0079] 优选的,采用基于轨迹点相似性度量,计算方法如下:
[0080]
[0081]
[0082]
[0083] 其中,R,S分别表示两个用户的格网轨迹,rt和st分别表示t时刻的格网位置编 码,记录点数均为n,dist(rt,st)表示如果两个用户在t时刻在同一格网中记为1,否 则记为0;Eu(R,S)为两个用户在相同时刻位于相同格网的总个数,sim(R,S)表示两 者的相似性度量。
[0084] 在本实施例中,用图结构对用户间的相似性建模,构建用户间的相似性图GS= V*V(V,A),v代表用户的集合,A∈R 代表图矩阵,具体步骤如下:
[0085] 步骤S31:筛选出与要预测用户相似性超过设定阈值δ的用户,然后计算这 些用户之间的相似性,并进一步构建相似性图矩阵
[0086]
[0087] 式中,simr,s表示用户r和用户s之间的相似性。
[0088] 步骤S32:根据得到的相似性图矩阵,采用图卷积网络对相似性特征建模来提取用 户的相似性特征。
[0089] 参考图4,s1为预测的用户,图卷积模型就可以获得要预测的用户和与相似用 户的相似性特征。优选的,在本实施例中,图卷积模型具体为:
[0090]
[0091]
[0092] Relu(x)=max(0,x)   (7)
[0093] 式中,X表示当前时刻要预测用户和与其相似性超过阈值的用户的位置构成的 矩阵,A为用户的相似性图矩阵, 为度矩阵,计算公式如公式(6),Relu为激 活函数,即如果输入数值为负,将其转为0,否则,维持原数值,计算方式见公式 (7),其中max为取最大值函数,W为权重矩阵,通过模型训练获得最优值。
[0094] 参考图7,在本实施例中,改进的GCN‑LSTM模型具体为:设置阈值α,基于该 阈值,对于待预测的用户,如果在数据集中能找到与之相似程度超过该阈值的用 户时,采用GCN‑LSTM进行提取轨迹的时间特征,否则采用LSTM提取轨迹的时间 特征。
[0095] 阈值α获取具体流程如下:
[0096] (a)将训练数据中的用户,根据能找到阈值最相似用户的相似性程度进行分 组,对于不同分组,分别用GCN‑LSTM和原始LSTM进行预测
[0097] (b)对比实验结果。通过GCN‑LSTM模型预测正确率和LSTM模型预测正确率, 将GCN‑LSTM表现开始优于原生LSTM分组对应的相似性作为阈值α。
[0098] 参考图5,在本实施例中,所述采用LSTM提取轨迹的时间特征,具体如下:
[0099] (a)输入t时刻的用户位置xt,利用t‑1时刻的输出ht‑1和当前t时刻的输入xt计 算遗忘门ft
[0100] ft=σ(Wf·[ht‑1,xt]+bf)   (8)
[0101]
[0102] 式中ht‑1表示t‑1时刻的输出,经过迭代循环计算获得,具体可参见此流程最 后一步中的公式(15),xt表示t时刻的预测用户的位置信息,ft表示t时刻忘记门 函数,Wf为输入层的权重矩阵,通过模型训练获得最优值,bf为输入层偏执项,通 过模型训练获得最优值,σ为sigmoid函数,计算方法如公式(9)。
[0103] (b)利用t‑1时刻的输出ht‑1和当前t时刻的输入xt计算输入门it,利用t‑1时刻的 输出ht‑1和当前t时刻的输入xt生成一个候选向量
[0104] it=σ(Wi·[ht‑1,xt]+bi)   (10)
[0105]
[0106]
[0107] 式中Wi、Wc分别表示输入和状态更新层中的权重矩阵,而bi、bc为则为对应 的偏执项,均通过模型训练获得最优值,tanh为激活函数,计算方法如公式(12)。
[0108] (c)更新细胞状态,即将Ct‑1更新为Ct。将遗忘门的值ft与存储历史位置信息 的旧的细胞状态Ct‑1相乘,遗忘部分历史位置信息,然后将输入门值it与候选向量  相乘,存储当前时刻的部分位置信息,最后将两个结果相加,确定新的细胞状 态[0109]
[0110] (d)利用t‑1时刻的输出ht‑1和当前t时刻的输入xt计算输出门ot,然后利用tanh 函数对细胞状态Ct处理,并将处理后的值与输出门值ot相乘得到输出值
[0111] ot=σ(Wo·[ht‑1,xt]+bo)   (14)
[0112] ht=ot*tanh(Ct)   (15)
[0113] 式中Wo和bo分别为输入出层的权重矩阵和偏执项,通过模型训练获得最优值。
[0114] 参考图6,在本实施例中,采用GCN‑LSTM进行提取轨迹的时间特征,具体如下:
[0115] (a)输入要预测用户和其相似性用户的位置信息Xt∈Rv
[0116] 其中,v代表要预测用户和其相似性用户的总数
[0117] (b)通过GCN模型提取用户的相似性特征得到矩阵X′t∈Rv;
[0118] (c)从矩阵X′t取出要预测用户的值x′t作为LSTM模型的输入,然后将t‑1时刻的隐藏 层ht‑1和x′t放入LSTM模型提取时间特征,最终得到预测结果
[0119] x′t→X′t=f(A,Xt)   (16)
[0120] yt=LSTM(x′t)   (17)
[0121] 以上所述仅为本发明的较佳实施例,凡依本发明申请专利范围所做的均等变 化与修饰,皆应属本发明的涵盖范围。