CN114741614A - 一种基于位置编码器和时空嵌入的位置推荐方法 - Google Patents

一种基于位置编码器和时空嵌入的位置推荐方法 Download PDF

Info

Publication number
CN114741614A
CN114741614A CN202210240378.3A CN202210240378A CN114741614A CN 114741614 A CN114741614 A CN 114741614A CN 202210240378 A CN202210240378 A CN 202210240378A CN 114741614 A CN114741614 A CN 114741614A
Authority
CN
China
Prior art keywords
user
attention
sequence
poi
check
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.)
Pending
Application number
CN202210240378.3A
Other languages
English (en)
Inventor
王爽
王伯伟
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Northeastern University China
Original Assignee
Northeastern University China
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Northeastern University China filed Critical Northeastern University China
Priority to CN202210240378.3A priority Critical patent/CN114741614A/zh
Publication of CN114741614A publication Critical patent/CN114741614A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/953Querying, e.g. by the use of web search engines
    • G06F16/9537Spatial or temporal dependent retrieval, e.g. spatiotemporal queries
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/953Querying, e.g. by the use of web search engines
    • G06F16/9535Search customisation based on user profiles and personalisation

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)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明提供的一种基于位置编码器和时空嵌入的位置推荐方法,涉及用户位置推荐技术领域;通过位置编码器和注意力将空间地理坐标编码成向量缓解了空间地理坐标的稀疏性,加强坐标之间的关联性。一方面,使用基于位置编码器的时空嵌入自注意力模型取代了传统的循环神经网络和卷积神经网络,在计算方式上可以并行,显著提高了位置预测模型的训练速度;另一方面,基于位置编码器和时空嵌入的位置推荐方法融合了POI的地理坐标和签到时间戳这些重要轨迹信息,充分地提取了绝对时空信息和相对时空信息,弥补了传统模型很难考虑到多方面轨迹信息对于预测模型的影响。在预测精度方面相比传统模型获得了重大的性能提升。

Description

一种基于位置编码器和时空嵌入的位置推荐方法
技术领域
本发明涉及用户位置推荐技术领域,具体涉及一种基于位置编码器和时空嵌入的位置推荐方法。
背景技术
近年来,数字技术的快速发展使得人类行为轨迹的数字化变得更加容易,这导致了基于位置的社交网络(LBSNs)的流行,如Foursquare和Gowalla。这些数据集使研究人员很容易预测人类的行为模式。人类的流动性和流动模式并不总是可预测的,因为它们具有高度的自由度和多样性,捕捉人类的轨迹同样也是一项挑战。
作为一种传统的位置预测方法,马尔可夫链(MC)模型的主要思想是将个体的运动轨迹表示为马尔可夫模型。然后计算状态转移矩阵,并根据历史信息预测下一个位置。它只对短期时间序列进行建模,预测能力有限。近年来,递归神经网络及其变体在提取长期序列信息方面取得了良好的效果。STRNN使用RNN模型结合时空信息预测下一个位置。该模型能够自动捕获时空信息的内部表示,并对人体运动模式进行建模。RNN模型处理长序列数据的能力较差,最近提出了RNN变体(LSTM,GRU)来处理梯度消失问题。HST-LSTM模型使用编码器和解码器,并在LSTM中嵌入时空向量来预测下一个位置。提出了学习序列间长期相关性的注意事项。DeepMove使用注意力增强RNN来了解用户的移动性。VANext充分利用CNN和注意力,了解历史轨迹的规律并预测下一个位置。
专利“CN111400620A基于时空嵌入Self-Attention的用户轨迹位置预测方法”计算所有POI之间的空间距离成本并基于用户历史轨迹建立时空嵌入。它仅仅考虑了相对时空信息并没有考虑绝对时空信息。而本申请提供的模型通过计算POI之间的空间距离和时间间隔来获取相对时空信息,通过位置编码器和用户访问时间信息来获取绝对时空信息,并让位置预测的精度更高。
发明内容
本发明要解决的技术问题是针对上述现有技术的不足,提供一种基于位置编码器和时空嵌入的位置推荐方法,同时考虑POI的地理位置信息和用户历史访问POI的时间信息对于用户下一次访问行为的影响,通过用户历史轨迹信息预测出用户下一次要访问地点。
本发明所采取的技术方案是:
一种基于位置编码器和时空嵌入的位置推荐方法,包括以下步骤:
步骤1:进行数据预处理并获得每个用户的签到序列,签到序列按照访问时间逐个排序,
步骤2:对用户轨迹信息进行筛选并对每个用户历史签到序列进行处理,
将签到序列少于a的用户移除掉,将访问次数小于b的位置移除,将输入的序列从左向右切分转变成固定长度的序列,固定长度设置为L,当输入序列长度小于L,向右添加padding;当输入序列长度大于L时,对其进行切分;
步骤3:将每个经纬度坐标映射为一个数字序列,通过滑动窗口和自注意力网络计算数字序列的编码表示;
步骤4:基于用户历史签到记录建立时空嵌入自注意力模型,得到用户下一个访问点概率分布;
步骤5:将处理好的用户历史签到记录数据输入时空嵌入自注意力模型中,模型给出用户下一次访问地点的概率分布,根据概率分布的top-k值对用户进行位置推荐。
所述签到包括POI标识、POI种类、访问时间信息和POI地理坐标信息。
所述历史签到包括POI标识,POI种类,POI地理坐标和用户访问时间信息。
所述S3具体过程,包括以下步骤:
步骤3.1:采用墨卡托投影将整个世界映射成网格,不同等级的网格所代表的数字序列的粗细粒度不同;在给定序列长度等级m的情况下,使用墨卡托投影将经纬度坐标转换成笛卡尔坐标的计算如式(1)和式(2)所示:
Figure BDA0003541312140000021
Figure BDA0003541312140000022
x为笛卡尔横坐标,y为笛卡尔纵坐标,可以将地理坐标映射为网格;由于网格划分类似于四叉树,所有网格可以由一个0-3的数字序列来表示;
步骤3.2:采用滑动窗口和子注意力网络对数字序列进行进一步编码,使用长度为l步长度为s的滑动窗口将数字序列转化为n个子序列,依次将子序列进入嵌入层生成向量,采用自注意力网络和全连接层获取序列之间关系,通过池化层来生成编码向量。
所述S4具体过程,包括以下步骤:
步骤4.1:对用户的签到记录进行嵌入;
步骤4.2:使用签到记录的嵌入表示计算用户签到的绝对时空注意力值;
步骤4.3:使用空间距离函数计算签到序列的POI之间的空间距离矩阵并计算相对空间注意力值;
步骤4.4:计算签到序列的各个POI的访问时间间隔矩阵以及计算相对时间注意力值;
步骤4.5:将用户签到序列的绝对时空注意力值和相对空间注意力值以及相对时间注意力值使用线性函数连接,计算出用户轨迹的总注意力值,得到用户前L个轨迹点编码的特征矩阵;
步骤4.6:将时空嵌入Self-Attention的用户轨迹表示输入到前馈神经网络,通过Softmax激活函数得到用户下一个访问点概率分布。
所述S4.1具体过程,包括以下步骤:
对一个长度为L的用户签到记录,使用word2vec将第i个POI的POI标识的one-hot表示vi,POI种类的one-hot表示ci和数字序列编码后的向量qi分别嵌入到低维向量中,如式(3)-式(5)所示:
Figure BDA00035413121400000310
Figure BDA00035413121400000311
Figure BDA00035413121400000312
式(3)-式(5)相应的嵌入矩阵,如式(6)-式(8)所示:
Figure BDA0003541312140000031
Figure BDA0003541312140000032
Figure BDA0003541312140000033
其中,|v|表示POI标识;|c|表示POI种类;|q|为坐标编码表示的总数;将嵌入后的向量拼接成
Figure BDA0003541312140000034
将访问时间戳ti进行编码并加入到qi中来区分序列的前后顺序,如式(9)和式(10)所示:
Figure BDA0003541312140000035
Figure BDA0003541312140000036
其中,
Figure BDA0003541312140000037
表示对时间戳进行编码后的向量,d是编码向量的维度,将pi重写成
Figure BDA0003541312140000038
Figure BDA0003541312140000039
使用嵌入后的向量对序列数据进行表示,第u个用户的表示为Iu={i1,...,ii,...,iL}.其中ii={pi,{lat,lon}i.ti}。{lat,lon}i表示序列中第i个POI的经纬度坐标,ti表示访问第i个POI的时间戳。
所述S4.2具体过程,包括以下步骤:
通过自注意力网络将查询query,键key和值value投射到同一空间上来获取嵌入向量的绝对时空关系,如式(11)-式(13)所示:
Query=ReLU(PuWQ) (11)
Key=ReLU(PuWK) (12)
Value=ReLU(PuWV) (13)
其中,Pu=[p1,...,pL]表示第u个用户的签到序列的编码矩阵,
Figure BDA0003541312140000041
Figure BDA0003541312140000042
分别是query,key和value的权重矩阵,dQ=dK=dV=d表示权重矩阵的维度;RELU表示激活函数;计算绝对注意力值,如式(14)所示:
Figure BDA0003541312140000043
其中,
Figure BDA0003541312140000044
表示绝对时空注意力;pi仅仅表示当前POI的绝对时间和绝对地理坐标信息,并没有考虑到其它签到的时空信息,因此它是以一种局部的视角来进行时空信息的提取。
所述S4.3具体过程,包括以下步骤:
计算每个POI和其它POI之间的相对空间距离并把它保存在矩阵Dis中;
分别给定两个POI为pi和pj,它们之间的距离dis(pi,pj)可以通过式(15)计算:
Figure BDA0003541312140000045
其中,αi,αj分别表示pi和pj的纬度坐标;Δβ表示两个POI之间的经度的差值。
Figure BDA0003541312140000046
R表示地球的半径;
通过输入Iu来计算Disu,如式(16)所示:
Disu=Dis[Iu] (16)
Figure BDA0003541312140000047
表示Disu中第i行第j列的元素,它的值表示pi和pj的空间距离;Disu表示用户u的相对空间注意力矩阵。
所述S4.4具体过程,包括以下步骤:
给定用户访问时间序列Tu=[t1,...,tL]T,计算每个POI和其它POI之间的访问时间间隔并把它保存在矩阵
Figure BDA0003541312140000048
中,如式(17)-(19)所示:
Figure BDA0003541312140000049
Figure BDA00035413121400000410
Figure BDA00035413121400000411
其中,
Figure BDA00035413121400000412
为用户的时间注意力值矩阵;MinMaxNorm(·)是一个将输入矩阵映射到[0.1]区间的函数。FT(Tu)是将Tu映射到
Figure BDA00035413121400000413
的函数。
所述S4.5具体过程,包括以下步骤:
使用参数β,γ聚合用户的相对时间注意力矩阵和相对空间注意力矩阵并和绝对时空注意力矩阵连接,如式(20)所示:
Figure BDA0003541312140000051
Su聚合了绝对时空注意力信息和相对时空注意力信息。然后对Su采用Softmax函数并和Value进行点积,如式(21)所示:
Au=softmax(Su)·Value (21)
其中,Au是用户u前L个签到编码的特征矩阵。
所述S4.6具体过程,包括以下步骤:
将签到编码的特征矩阵Au进入到全连接网络和softmax中,最终输出下一个位置的概率分布,如式(22)所示:
Figure BDA0003541312140000052
其中,
Figure BDA0003541312140000053
表示对L+1个签到进行预测的概率分布;通过概率分布选取top-k个位置来对用户进行位置推荐。
有益技术效果
本发明提供的基于位置编码器和时空嵌入的位置推荐方法,通过位置编码器和注意力将空间地理坐标编码成向量缓解了空间地理坐标的稀疏性,将抢了坐标之间的关联性。时空嵌入自注意力模型对用户签到记录进行深入挖掘,提取用户签到特征向量再通过全连接神经网络去预测用户下一次要访问的POI。一方面,使用基于位置编码器的时空嵌入自注意力模型取代了传统的循环神经网络和卷积神经网络,在计算方式上可以并行,显著提高了位置预测模型的训练速度,为将其实际应用提供了可能。另一方面,基于位置编码器和时空嵌入的位置推荐方法创新式的融合了POI的地理坐标和签到时间戳这些重要轨迹信息,充分地提取了绝对时空信息和相对时空信息,弥补了传统模型很难考虑到多方面轨迹信息对于预测模型的影响。最后,在预测精度方面相比之前模型获得了重大的性能提升。
附图说明
图1为本发明实施例提供的一种基于位置编码器和时空嵌入的位置推荐方法流程图。
图2为本发明实施例提供的一种基于位置编码器和时空嵌入的位置推荐方法位置编码器图。
图3为本发明实施例提供的位置预测方法的一种基于位置编码器和时空嵌入的位置推荐方法架构图。
具体实施方式
下面结合附图和实施例,对本发明的具体实施方式作进一步详细描述;
本实施例以Foursquare签到数据为例,提出了一种基于位置编码器和时空嵌入的位置推荐方法;对用户位置进行推荐,如图1和图2所示,包括以下步骤:
步骤1:进行原始签到数据预处理并获得每个用户的签到序列,签到序列是由一个个签到按照访问时间来排序的,每个签到包括POI标识、POI种类、访问时间和POI的地理坐标信息;
本实施例中,Foursquare签到数据集收集某市用户日常签到行为,每一条记录包括用户名,签到时间,签到地点、地点名称、地点种类及所在经纬度坐标等地理位置信息;
本实施例中,将签到用户集合表示成U={u1,u2,...,u|U|},|U|是用户集合大小,表示签到用户个数,POI集合表示成S={s1,s2,...,s|S|},|S|是POI集合大小,表示POI的总数;
本实施例中,POI是坐标系统中的一个地点,包括位置标识ν,位置种类c(餐馆,学校等)和地理经纬度坐标信息l;
本实施例中,将一个签到记录表示为一个元组rtu=<u,s,t>,表示用户u在时间戳为t的时候访问了位置s;
用户签到序列是用户签到按照访问时间排序的一个集合
Figure BDA0003541312140000065
Lu表示用户签到序列的长度,
Figure BDA0003541312140000062
表示用户签到序列中的第i个签到记录;
本实施例中,位置推荐问题为:对于给定用户集U,POI集5和任意一个用户u和其轨迹
Figure BDA0003541312140000063
该问题是给用户推荐在时间步Lu+1可能会访问的
Figure BDA0003541312140000064
步骤2:对用户轨迹信息进行筛选并对每个用户历史签到序列进行处理,每个历史签到包括POI标识,POI种类,POI地理坐标和用户访问时间信息;
本实施例中,对数据集中数据进行筛选,将历史签到序列少于20的用户移除掉,然后将访问次数小于5的位置移除掉,将输入的用户历史签到序列从左向右切分转变成固定长度的序列,固定长度设置为L,当输入序列长度小于L,向右添加padding;当大于L时,对其进行切分;其中,L为可设定的阈值,根据实际情况进行调整;
步骤3:将每个经纬度坐标映射为一个数字序列,通过滑动窗口和自注意力网络计算数字序列的编码表示,使用位置编码器对地理经纬度坐标进行编码;
本实施例中,包括以下步骤:
步骤3.1:首先采用墨卡托投影将整个世界映射成网格,而且不同等级的网格所代表的数字序列的粗细粒度不同,每一个经纬度坐标都能映射成一个网格的数字序列;在给定序列长度等级m的情况下,使用墨卡托投影将经纬度坐标转换成笛卡尔坐标的计算如下:
Figure BDA0003541312140000071
Figure BDA0003541312140000072
x为笛卡尔横坐标,y为笛卡尔纵坐标,可以将地理坐标映射为网格;由于网格划分类似于四叉树,所有网格可以由一个0-3的数字序列来表示;
同时,没有位置的网格会被忽略,缓解了数据稀疏性问题;
步骤3.2:采用滑动窗口和子注意力网络对数字序列进行进一步编码,首先使用滑动窗口将数字序列转化为n个子序列,以8级数字序列01220211为例,经过了长度为5步长为1的滑动窗口之后生成的子序列为01220->12202->22021->20211,长度为4;然后一次将子序列进入嵌入层生成向量,:采用自注意力网络和全连接层来获取序列之间关联,再通过池化层来聚合向量表示;
在本实例中,最终生成的向量用qi表示;qi表示了用户的签到序列中的第i个POI经过位置编码器处理后得到的向量;
步骤4:基于用户历史签到记录建立时空嵌入自注意力模型,如图3所示,得到用户下一个访问点概率分布,具体方法为:
步骤4.1:对用户的签到记录进行嵌入;
对一个长度为L的用户签到记录,使用word2vec将第i个POI的POI标识的one-hot表示vi,POI种类的one-hot表示ci和数字序列编码后的向量qi分别嵌入到低维向量中,如式(3)-式(5)所示:
Figure BDA0003541312140000073
Figure BDA0003541312140000074
Figure BDA0003541312140000075
式(3)-式(5)相应的嵌入矩阵,如式(6)-式(8)所示:
Figure BDA0003541312140000076
Figure BDA0003541312140000077
Figure BDA0003541312140000078
其中,|v|表示POI标识;|c|表示POI种类;|q|为坐标编码表示的总数;将嵌入后的向量拼接成
Figure BDA0003541312140000079
将访问时间戳ti进行编码并加入到qi中来区分序列的前后顺序,如式(9)和式(10)所示:
Figure BDA0003541312140000081
Figure BDA0003541312140000082
其中,
Figure BDA0003541312140000083
表示对时间戳进行编码后的向量,d是编码向量的维度,将pi重写成
Figure BDA0003541312140000084
Figure BDA0003541312140000085
使用嵌入后的向量对序列数据进行表示,第u个用户的表示为Iu={i1,...,ii,...,iL}.其中ii={pi,{lat,lon}i.ti};{lat,lon}i表示序列中第i个POI的经纬度坐标,ti表示访问第i个POI的时间戳;
步骤4.2:使用签到记录的嵌入表示计算用户签到的绝对时空注意力值;
通过自注意力网络将查询query,键key和值value投射到同一空间上来获取嵌入向量的绝对时空关系,如式(11)-式(13)所示:
Query=ReLU(PuWQ) (11)
Key=ReLU(PuWK) (12)
Value=ReLU(PuWV) (13)
其中,Pu=[p1,...,pL]表示第u个用户的签到序列的编码矩阵,
Figure BDA0003541312140000086
Figure BDA0003541312140000087
分别是query,key和value的权重矩阵,dQ=dK=dV=d表示权重矩阵的维度;RELU表示激活函数;计算绝对注意力值,如式(14)所示:
Figure BDA0003541312140000088
其中,
Figure BDA0003541312140000089
表示绝对时空注意力;pi仅仅表示当前POI的绝对时间和绝对地理坐标信息,并没有考虑到其它签到的时空信息,因此它是以一种局部的视角来进行时空信息的提取;
步骤4.3:使用空间距离函数计算签到序列的POI之间的空间距离矩阵并计算相对空间注意力值;
计算每个POI和其它POI之间的相对空间距离并把它保存在矩阵Dis中;
分别给定两个POI为pi和pj,它们之间的距离dis(pi,pj)可以通过式(15)计算:
Figure BDA00035413121400000810
其中,αi,αj分别表示pi和pj的纬度坐标;Δβ表示两个POI之间的经度的差值;
Figure BDA00035413121400000811
R表示地球的半径;
通过输入Iu来计算Disu,如式(16)所示:
Disu=Dis[Iu] (16)
Figure BDA0003541312140000091
表示Disu中第i行第j列的元素,它的值表示pi和pj的空间距离;Disu表示用户u的相对空间注意力矩阵;
步骤4.4:计算签到序列的各个POI的访问时间间隔矩阵以及计算相对时间注意力值;
给定用户访问时间序列Tu=[t1,...,tL]T,计算每个POI和其它POI之间的访问时间间隔并把它保存在矩阵
Figure BDA0003541312140000092
中,如式(17)-(19)所示:
Figure BDA0003541312140000093
Figure BDA0003541312140000094
Figure BDA0003541312140000095
其中,
Figure BDA0003541312140000096
为用户的时间注意力值矩阵;MinMaxNorm(·)是一个将输入矩阵映射到[0.1]区间的函数;FT(Tu)是将Tu映射到
Figure BDA0003541312140000097
的函数;
步骤4.5:将用户签到序列的绝对时空注意力值和相对空间注意力值以及相对时间注意力值使用线性函数连接,计算出用户轨迹的总注意力值,进而得到用户前L个轨迹点编码的特征矩阵;
将签到编码的特征矩阵Au进入到全连接网络和softmax中,最终输出下一个位置的概率分布,如式(22)所示:
Figure BDA0003541312140000098
其中,
Figure BDA0003541312140000099
表示对L+1个签到进行预测的概率分布;通过概率分布选取top-k个位置来对用户进行位置推荐;
步骤4.6:将时空嵌入Self-Attention的用户轨迹表示输入到前馈神经网络,再通过Softmax激活函数得到用户下一个访问点概率分布;
将签到编码的特征矩阵Au进入到全连接网络和softmax中,最终输出下一个位置的概率分布,如式(22)所示:
Figure BDA00035413121400000910
其中,
Figure BDA00035413121400000911
表示对L+1个签到进行预测的概率分布;通过概率分布选取top-k个位置来对用户进行位置推荐;
在本实施例中,构建基于自注意力的位置推荐模型包含三个部分:嵌入层,时空自注意力层,预测层;
所述嵌入层:在本实例中,对于一个长度为L的用户签到记录,使用word2vec将第i个POI的POI标识的one-hot表示vi,POI种类的one-hot表示ci和经过位置编码器处理后的向量qi分别嵌入到低维向量中;为了清晰地模拟轨迹中位置之间的相对访问时间差,将访问时间戳ti进行编码并加入到qi中来区分序列的前后顺序;
对于一个长度为L用户签到序列,使用嵌入后的向量对序列数据进行表示,第u个用户的表示为Iu={i1,...,ii,...,iL}.其中ii={pi,{lat,lon}i.ti};{lat,lon}i表示序列中第i个POI的经纬度坐标,ti表示访问第i个POI的时间戳;
所述时空自注意力层:时空自注意力层分为绝对时空自注意力,相对空间自注意力层和相对时间自注意力层;
所述绝对时空自注意力:自注意力的本质可以描述为一个查询(query)到一系列键值对(key-value)的映射,其中自注意力的key和value相同;自注意力机制能处理更长的序列,因此使用自注意力机制捕捉绝对时空嵌入向量之间的关系;
本实施例中,输入的签到序列的长度统一为L,因此绝对时空自注意力的输入为一个L×d的矩阵Pu=[p1,...,pL]T,其中d为pi的维度;
通过权重参数
Figure BDA0003541312140000101
和非线性激活函数relu(·)分别计算Query,Key和Value;计算绝对注意力值
Figure BDA0003541312140000102
意义是学习绝对时空的相互依赖关系;pi仅仅表示当前POI的绝对时间和绝对地理坐标信息,并没有考虑到其它签到的时空信息,因此它是以一种局部的视角来进行时空信息的提取;
所述相对空间注意力:在本实施例中,空间坐标信息和时间信息之间的相对间隔也是一种语义描述信息;通过间隔来学习用户的运动时间规律以及移动距离规律;
本实施例中,为了弥补绝对时空注意力的缺点我们提出从一个全局的视角来学习空间注意力;计算每个POI和其它POI之间的相对空间距离并把它保存在矩阵Dis中;
所述相对时间注意力:本实施例中,为了捕获用户对时间的偏好以及为了弥补绝对时空注意力的缺点我们提出使用时间间隔来学习时间注意力;给定用户访问时间序列Tu=[t1,...,tL]T,计算每个POI和其它POI之间的访问时间间隔并把它保存在矩阵
Figure BDA0003541312140000103
中;
引入绝对时空注意力,相对空间注意力和相对空间注意力后,自注意力模型不仅能学习到当前访问的POI的信息,而且还能学习到当前POI与其它POI的关联信息以及时间间隔的关联,因此学习能力得到了加强;
使用参数β,γ聚合用户的相对时间注意力矩阵和相对空间注意力矩阵并和绝对时空注意力矩阵连接,
所述预测层:在本实例中,预测层主要是将自注意力的用户签到数据表示Au输入到全连接神经网络层中,再通过Softmax激活函数得到用户下一个访问点概率分布;
将签到编码的特征矩阵Au进入到全连接网络和softmax中,最终输出下一个位置的概率分布;
模型参数训练:在本实例中,采用二元交叉熵作为损失函数对模型进行训练;二元交叉熵损失函数包含一个正样本和一个随机负样本;
步骤5:将某用户历史签到记录数据进行编码处理后,输入时空嵌入自注意力模型中,模型给出用户下一次访问地点的概率分布,然后根据概率分布的top-k值对用户进行位置推荐;
在本实施例中,在模型中输入用户u的签到序列数据
Figure BDA0003541312140000111
从而得到关系位置的一系列排序得分,然后从排名在前的k个位置给用户u进行推荐。

Claims (10)

1.一种基于位置编码器和时空嵌入的位置推荐方法,其特征在于:包括以下步骤:
步骤1:进行数据预处理并获得每个用户的签到序列,签到序列按照访问时间逐个排序,
步骤2:对用户轨迹信息进行筛选并对每个用户历史签到序列进行处理,
将签到序列少于a的用户移除掉,将访问次数小于b的位置移除,将输入的序列从左向右切分转变成固定长度的序列,固定长度设置为L,当输入序列长度小于L,向右添加padding;当输入序列长度大于L时,对其进行切分;
步骤3:将每个经纬度坐标映射为一个数字序列,通过滑动窗口和自注意力网络计算数字序列的编码表示;
步骤4:基于用户历史签到记录建立时空嵌入自注意力模型,得到用户下一个访问点概率分布;
步骤5:将处理好的用户历史签到记录数据输入时空嵌入自注意力模型中,模型给出用户下一次访问地点的概率分布,根据概率分布的top-k值对用户进行位置推荐。
2.如权利要求1所述的基于位置编码器和时空嵌入的位置推荐方法,其特征在于:所述签到包括POI标识、POI种类、访问时间信息和POI地理坐标信息;
所述历史签到包括POI标识,POI种类,POI地理坐标和用户访问时间信息。
3.如权利要求1所述的基于位置编码器和时空嵌入的位置推荐方法,其特征在于:
所述S3具体过程,包括以下步骤:
步骤3.1:采用墨卡托投影将整个世界映射成网格,不同等级的网格所代表的数字序列的粗细粒度不同;在给定序列长度等级m的情况下,使用墨卡托投影将经纬度坐标转换成笛卡尔坐标的计算如式(1)和式(2)所示:
Figure FDA0003541312130000011
Figure FDA0003541312130000012
x为笛卡尔横坐标,y为笛卡尔纵坐标,可以将地理坐标映射为网格;由于网格划分类似于四叉树,所有网格可以由一个0-3的数字序列来表示;
步骤3.2:采用滑动窗口和子注意力网络对数字序列进行进一步编码,使用长度为l步长度为s的滑动窗口将数字序列转化为n个子序列,依次将子序列进入嵌入层生成向量,采用自注意力网络和全连接层获取序列之间关系,通过池化层来生成编码向量。
4.如权利要求1所述的基于位置编码器和时空嵌入的位置推荐方法,其特征在于:
所述S4具体过程,包括以下步骤:
步骤4.1:对用户的签到记录进行嵌入;
步骤4.2:使用签到记录的嵌入表示计算用户签到的绝对时空注意力值;
步骤4.3:使用空间距离函数计算签到序列的POI之间的空间距离矩阵并计算相对空间注意力值;
步骤4.4:计算签到序列的各个POI的访问时间间隔矩阵以及计算相对时间注意力值;
步骤4.5:将用户签到序列的绝对时空注意力值和相对空间注意力值以及相对时间注意力值使用线性函数连接,计算出用户轨迹的总注意力值,得到用户前L个轨迹点编码的特征矩阵;
步骤4.6:将时空嵌入Self-Attention的用户轨迹表示输入到前馈神经网络,通过Softmax激活函数得到用户下一个访问点概率分布。
5.如权利要求1所述的基于位置编码器和时空嵌入的位置推荐方法,其特征在于:
所述S4.1具体过程,包括以下步骤:
对一个长度为L的用户签到记录,使用word2vec将第i个POI的POI标识的one-hot表示vi,POI种类的one-hot表示ci和数字序列编码后的向量qi分别嵌入到低维向量中,如式(3)-式(5)所示:
Figure FDA0003541312130000021
Figure FDA0003541312130000022
Figure FDA0003541312130000023
式(3)-式(5)相应的嵌入矩阵,如式(6)-式(8)所示:
Figure FDA0003541312130000024
Figure FDA0003541312130000025
Figure FDA0003541312130000026
其中,|v|表示POI标识;|c|表示POI种类;|q|为坐标编码表示的总数;将嵌入后的向量拼接成
Figure FDA0003541312130000027
将访问时间戳ti进行编码并加入到qi中来区分序列的前后顺序,如式(9)和式(10)所示:
Figure FDA0003541312130000028
Figure FDA0003541312130000029
其中,
Figure FDA00035413121300000210
表示对时间戳进行编码后的向量,d是编码向量的维度,将pi重写成
Figure FDA00035413121300000211
Figure FDA00035413121300000212
使用嵌入后的向量对序列数据进行表示,第u个用户的表示为Iu={i1,...,ii,...,iL}.其中ii={pi,{lat,lon}i.ti};{lat,lon}i表示序列中第i个POI的经纬度坐标,ti表示访问第i个POI的时间戳。
6.如权利要求1所述的基于位置编码器和时空嵌入的位置推荐方法,其特征在于:
所述S4.2具体过程,包括以下步骤:
通过自注意力网络将查询query,键key和值value投射到同一空间上来获取嵌入向量的绝对时空关系,如式(11)-式(13)所示:
Query=ReLU(PuWQ) (11)
Key=ReLU(PuWK) (12)
Value=ReLU(PuWV) (13)
其中,Pu=[p1,...,pL]表示第u个用户的签到序列的编码矩阵,
Figure FDA0003541312130000031
Figure FDA0003541312130000032
分别是query,key和value的权重矩阵,dQ=dK=dV=d表示权重矩阵的维度;RELU表示激活函数;计算绝对注意力值,如式(14)所示:
Figure FDA0003541312130000033
其中,
Figure FDA0003541312130000034
表示绝对时空注意力;pi仅仅表示当前POI的绝对时间和绝对地理坐标信息,并没有考虑到其它签到的时空信息,因此它是以一种局部的视角来进行时空信息的提取。
7.如权利要求1所述的基于位置编码器和时空嵌入的位置推荐方法,其特征在于:
所述S4.3具体过程,包括以下步骤:
计算每个POI和其它POI之间的相对空间距离并把它保存在矩阵Dis中;
分别给定两个POI为pi和pj,它们之间的距离dis(pi,pj)可以通过式(15)计算:
Figure FDA0003541312130000035
其中,αij分别表示pi和pj的纬度坐标;Δβ表示两个POI之间的经度的差值;
Figure FDA0003541312130000036
R表示地球的半径;
通过输入Iu来计算Disu,如式(16)所示:
Disu=Dis[Iu] (16)
Figure FDA0003541312130000037
表示Disu中第i行第j列的元素,它的值表示pi和pj的空间距离;Disu表示用户u的相对空间注意力矩阵。
8.如权利要求1所述的基于位置编码器和时空嵌入的位置推荐方法,其特征在于:
所述S4.4具体过程,包括以下步骤:
给定用户访问时间序列Tu=[t1,...,tL]T,计算每个POI和其它POI之间的访问时间间隔并把它保存在矩阵
Figure FDA0003541312130000041
中,如式(17)-(19)所示:
Figure FDA0003541312130000042
Figure FDA0003541312130000043
Figure FDA0003541312130000044
其中,
Figure FDA0003541312130000045
为用户的时间注意力值矩阵;MinMaxNorm(·)是一个将输入矩阵映射到[0.1]区间的函数;FT(Tu)是将Tu映射到
Figure FDA0003541312130000046
的函数。
9.如权利要求1所述的基于位置编码器和时空嵌入的位置推荐方法,其特征在于:
所述S4.5具体过程,包括以下步骤:
使用参数β,γ聚合用户的相对时间注意力矩阵和相对空间注意力矩阵并和绝对时空注意力矩阵连接,如式(20)所示:
Figure FDA0003541312130000047
Su聚合了绝对时空注意力信息和相对时空注意力信息;对Su采用Softmax函数并和Value进行点积,如式(21)所示:
Au=softmax(Su)·Value (21)
其中,Au是用户u前L个签到编码的特征矩阵。
10.如权利要求1所述的基于位置编码器和时空嵌入的位置推荐方法,其特征在于:
所述S4.6具体过程,包括以下步骤:
将签到编码的特征矩阵Au进入到全连接网络和softmax中,最终输出下一个位置的概率分布,如式(22)所示:
Figure FDA0003541312130000048
其中,
Figure FDA0003541312130000049
表示对L+1个签到进行预测的概率分布;通过概率分布选取top-k个位置来对用户进行位置推荐。
CN202210240378.3A 2022-03-10 2022-03-10 一种基于位置编码器和时空嵌入的位置推荐方法 Pending CN114741614A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210240378.3A CN114741614A (zh) 2022-03-10 2022-03-10 一种基于位置编码器和时空嵌入的位置推荐方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210240378.3A CN114741614A (zh) 2022-03-10 2022-03-10 一种基于位置编码器和时空嵌入的位置推荐方法

Publications (1)

Publication Number Publication Date
CN114741614A true CN114741614A (zh) 2022-07-12

Family

ID=82275058

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210240378.3A Pending CN114741614A (zh) 2022-03-10 2022-03-10 一种基于位置编码器和时空嵌入的位置推荐方法

Country Status (1)

Country Link
CN (1) CN114741614A (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116129330A (zh) * 2023-03-14 2023-05-16 阿里巴巴(中国)有限公司 基于视频的图像处理、行为识别、分割、检测方法及设备
CN117216614A (zh) * 2023-09-22 2023-12-12 哈尔滨工业大学 一种基于时空信息提取的轨迹表征挖掘方法

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116129330A (zh) * 2023-03-14 2023-05-16 阿里巴巴(中国)有限公司 基于视频的图像处理、行为识别、分割、检测方法及设备
CN116129330B (zh) * 2023-03-14 2023-11-28 阿里巴巴(中国)有限公司 基于视频的图像处理、行为识别、分割、检测方法及设备
CN117216614A (zh) * 2023-09-22 2023-12-12 哈尔滨工业大学 一种基于时空信息提取的轨迹表征挖掘方法
CN117216614B (zh) * 2023-09-22 2024-03-08 哈尔滨工业大学 一种基于时空信息提取的轨迹表征挖掘方法

Similar Documents

Publication Publication Date Title
CN111460249B (zh) 一种基于学习者偏好建模的个性化学习资源推荐方法
CN111400620B (zh) 基于时空嵌入Self-Attention的用户轨迹位置预测方法
CN111612066B (zh) 基于深度融合的卷积神经网络的遥感图像分类方法
CN114741614A (zh) 一种基于位置编码器和时空嵌入的位置推荐方法
CN112364238B (zh) 一种基于深度学习的用户兴趣点推荐方法与系统
CN115240425A (zh) 一种基于多尺度时空融合图网络的交通预测方法
CN112598165B (zh) 基于私家车数据的城市功能区转移流量预测方法及装置
CN113139140B (zh) 基于时空感知gru并结合用户关系偏好的旅游景点推荐方法
CN113780665B (zh) 一种基于增强循环神经网络的私家车停留位置预测方法和系统
CN111461455B (zh) 一种基于关联周期注意力机制的行为预测方法
CN111339449A (zh) 一种用户运动轨迹的预测方法、装置、设备及存储介质
CN113068131B (zh) 一种用户移动方式和轨迹的预测方法、装置、设备及存储介质
CN117194763A (zh) 基于用户偏好与时空上下文信息的下一个poi推荐方法
CN114461931A (zh) 一种基于多关系融合分析的用户轨迹预测方法和系统
CN117271899A (zh) 一种基于时空感知的兴趣点推荐方法
CN117371571A (zh) 一种基于多尺度动态同步图机制的区域空气质量预测模型
CN116665482A (zh) 一种基于智慧停车的停车位推荐方法及装置
CN112650949B (zh) 基于多源特征融合协同过滤的区域poi需求识别方法
CN116150511A (zh) 一种基于时空上下文和类别偏好的下一个位置推荐方法
CN113032688B (zh) 针对社交网络用户在未来给定时间的访问位置预测方法
CN115795182A (zh) 一种基于图卷积网络的下一个poi推荐方法
CN115510333A (zh) 一种基于时空感知并结合局部和全局偏好的poi预测方法
CN114021721A (zh) 一种基于学习过程片段的时空注意力知识追踪方法
CN114021011A (zh) 一种基于自注意力机制的下一个兴趣点推荐方法
CN115359437A (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