CN111241419A - 一种基于用户关系嵌入模型的下一个兴趣点推荐方法 - Google Patents

一种基于用户关系嵌入模型的下一个兴趣点推荐方法 Download PDF

Info

Publication number
CN111241419A
CN111241419A CN202010022487.9A CN202010022487A CN111241419A CN 111241419 A CN111241419 A CN 111241419A CN 202010022487 A CN202010022487 A CN 202010022487A CN 111241419 A CN111241419 A CN 111241419A
Authority
CN
China
Prior art keywords
user
model
relationship
vector
interest
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
Application number
CN202010022487.9A
Other languages
English (en)
Other versions
CN111241419B (zh
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.)
Liaoning Technical University
Original Assignee
Liaoning Technical University
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 Liaoning Technical University filed Critical Liaoning Technical University
Priority to CN202010022487.9A priority Critical patent/CN111241419B/zh
Publication of CN111241419A publication Critical patent/CN111241419A/zh
Application granted granted Critical
Publication of CN111241419B publication Critical patent/CN111241419B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

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/9536Search customisation based on social or collaborative filtering
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q50/00Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
    • G06Q50/01Social networking
    • YGENERAL 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
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Databases & Information Systems (AREA)
  • General Health & Medical Sciences (AREA)
  • General Engineering & Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • Business, Economics & Management (AREA)
  • Computing Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Biophysics (AREA)
  • Economics (AREA)
  • Evolutionary Computation (AREA)
  • Biomedical Technology (AREA)
  • Molecular Biology (AREA)
  • Artificial Intelligence (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Computational Linguistics (AREA)
  • Human Resources & Organizations (AREA)
  • Marketing (AREA)
  • Primary Health Care (AREA)
  • Strategic Management (AREA)
  • Tourism & Hospitality (AREA)
  • General Business, Economics & Management (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Machine Translation (AREA)

Abstract

本发明公开了一种基于用户关系嵌入模型的下一个兴趣点推荐方法,步骤为:根据朋友关系和用户历史签到记录数据分别建立朋友关系表和偏好相似关系表,通过这两个表建立用户关系图;根据建立的用户关系图采用随机游走算法得到用户关系序列,用户关系序列经过Word2Vec词嵌入模型得到每个用户的低纬嵌入向量;利用用户的低纬嵌入向量对神经网络的用户嵌入层参数进行初始化,使用门控循环单元给出下一个兴趣点推荐。本发明的基于用户关系嵌入模型的下一个兴趣点推荐方法将偏好相似关系引入到推荐模型中,增强了用户关系的表示,解决了现有方法只考虑用户朋友关系的片面性导致推荐模型的局限性问题,有效提高了推荐模型的准确率。

Description

一种基于用户关系嵌入模型的下一个兴趣点推荐方法
技术领域
本发明属于神经网络和推荐系统的技术领域,尤其涉及一种基于用户关系嵌入模型的下一个兴趣点推荐方法。
背景技术
随着基于位置的社交网络软件(如gowalla,foursquare等)的普遍应用,大量的签到信息已经被收集,利用这些丰富的签到数据给推荐用户感兴趣的下一个兴趣点(如景点,宾馆,饭店等)将会提升用户的服务体验和用户的忠诚度,同时也会给企业提升巨大的利润。现有的推荐方法只考虑用户的社交关系(即朋友关系),这些研究是基于这种假设“在社交网络中,朋友经常具有相同或相似的品味”。然而,朋友关系不能很好的表示用户偏好,利用朋友关系进行推荐存在以下缺陷,比如(1)社交软件上的朋友关系不能准确表示现实生活中的朋友关系,由于种种原因,在生活中为朋友关系的用户可能并没有在社交软件中互加好友,并且社交软件中两个好友也存在彼此并不认识或者完全没有联系的情况;(2)两个用户为朋友关系他们可能具有不同的偏好,因此在推荐用户访问下一个兴趣点的时候可能会受到朋友关系的负面影响。而且现有的研究都忽略非朋友关系,实际上,非朋友关系也能在一定程度上反应用户相似的偏好。比如美食爱好者通常会访问一些相同或者相似的兴趣点,因此他们在历史签到兴趣点中通常具有更多相同的访问兴趣点。
发明内容
针对现有技术无法对用户关系进行有效的建模,忽略了偏好相似关系,本发明所解决的技术问题在于提供一种基于用户关系嵌入模型的下一个兴趣点推荐方法,能够有效的对用户关系进行建模,考虑复杂的用户关系,通过利用本发明来整合用户关系能够有效提升推荐系统的准确率。
为了解决上述技术问题,本发明通过以下技术方案来实现:
本发明提供一种基于用户关系嵌入模型的下一个兴趣点推荐方法,包括以下步骤:
步骤S1:根据朋友关系和用户历史签到记录数据分别建立朋友关系表和偏好相似关系表,通过这两个表建立用户关系图;
步骤S2:根据建立的用户关系图采用随机游走算法得到用户关系序列,用户关系序列经过Word2Vec词嵌入模型得到每个用户的低纬嵌入向量;
步骤S3:利用用户的低纬嵌入向量对神经网络的用户嵌入层参数进行初始化,使用门控循环单元给出下一个兴趣点推荐。
可选的,所述步骤S1的具体步骤为:
S11、建立朋友关系表,朋友关系表由数据集提供的用户朋友关系数据集建立;
S12、建立偏好相似关系表,偏好相似关系表由数据集中每个用户历史访问过得兴趣点的记录建立,如果用户访问过某一个兴趣点,那么偏好关系表中相应位置的数值为1,否则为0;
S13、建立用户关系图,用户关系图根据步骤S11中的朋友关系表和步骤S12中的偏好相似表得到。
进一步的,S21、根据用户关系图,首先从图中的任意一个节点开始,利用n次随机游走算法在此节点上进行随机游走,随机游走的步长为c,通过随机游走算法,最终能够得到n条序列长度为c的用户关系序列;
S22、利用Word2Vec词嵌入技术对用户关系序列进行预训练,通过将用户关系序列中的用户看成是语言模型中的词,对用户关系序列进行预训练,得到每一个用户的低纬嵌入向量,利用Skip-gram语言模型对用户关系序列进行预训练。
可选的,所述步骤S3的具体步骤如下:
S31、GRU模型训练,GRU模型的每步输入对应着用户签到序列中的每次签到,用户的嵌入向量和签到兴趣点的嵌入向量分别由神经网络对应的不同的嵌入层得到,其中用户的嵌入层参数是由步骤S22中预训练用户的嵌入向量初始化得到;
S32、利用GRU模型进行下一个兴趣点推荐,得到用户历史签到序列,将序列数据送入训练后的GRU模型后会得到一个输出向量,通过得到的输出向量与每一个兴趣点的嵌入向量内积的方式得到用户下一步访问每一个兴趣点可能性;
S33、推荐准确率计算,选择Acc@N评价方法作为模型准确率的标准。
进一步的,所述步骤S21中计算图中一个节点到另一个节点的随机游走算法的公式如下:
Figure BDA0002361297960000031
其中,probability(ui|uj)表示图中节点i到节点j的转移概率,f(ui,uj)表示从ui到uj边的权值,um表示与ui有边相连的节点。
所述步骤S22中利用Skip-gram对用户关系进行训练的过程为:
使用基于Hierarchical Softmax的Skip-gram语言模型学习用户的嵌入向量,基于Hierarchical Softmax的Skip-gram语言模型的每个输入样本形式为(u,context(u)),其中u表示序列中的一个用户,context(u)是序列中与u邻近的用户,u的嵌入向量表示为xu,根节点到u所在的叶子节点的总路径长度表示为lu
Figure BDA0002361297960000041
表示用户u在路径中相应的哈夫曼树编码,在此基础上,用户u预测context(u)的可能性表示为:
Figure BDA0002361297960000042
其中p(w|u)可表示为:
Figure BDA0002361297960000043
其中,xu T表示xu的转置操作,之后,用对数似然形式得到语料库中所有用户的联合概率为:
Figure BDA0002361297960000044
其中σ(·)是sigmoid函数,
Figure BDA0002361297960000045
是对应于
Figure BDA0002361297960000046
的参数,为了得到用户u的最优向量表示,需要将上述目标L最大化,因此,需要用函数L对
Figure BDA0002361297960000047
和xu分别求偏导:
Figure BDA0002361297960000048
Figure BDA0002361297960000049
用户的嵌入向量xu的更新公式可以写成:
Figure BDA00023612979600000410
至此,可以得到用户低维嵌入向量表示,其中,η为模型训练时的学习率,被设置为0.025,滑动窗口大小设置为5,用户关系嵌入向量的长度设置为64维,通过以上嵌入过程,每个用户可以用1个64维的向量表示。
进一步的,所述步骤S31中一个用户签到序列可定义为S={(u,p1,t1),(u,p2,t2),(u,p3,t3)...},其中p表示签到兴趣点,t表示签到时间,
在t时刻,GRU的状态更新由以下公式计算得到:
Figure BDA0002361297960000051
Figure BDA0002361297960000052
Figure BDA0002361297960000053
Figure BDA0002361297960000054
其中,{U1,U2,U3,W1,W2,W3}∈Rd×d和{b1,b2,b3}∈Rd是神经网络需要训练的参数矩阵,ht-1表示前一时刻的隐层状态,rt和zt分别为重置门和更新门,
Figure BDA0002361297960000055
为候选状态,ht表示隐藏层输出向量,向量
Figure BDA0002361297960000056
表示用户在t时刻用户签到的输入向量。
进一步的,所述步骤S32中给用户推荐下一步将要访问的兴趣点的计算公式如下:
Figure BDA0002361297960000057
其中,
Figure BDA0002361297960000058
表示兴趣点p的嵌入向量,T表示向量转置,
Figure BDA0002361297960000059
表示用户u在t+1时刻将会访问兴趣点p的可能性。
可选的,所述步骤S33中Acc@N的计算公式如下:
Figure BDA00023612979600000510
其中,|L|表示测试集中总的测试实例个数,#hit@N表示整个测试集中推荐成功的次数,所有测试实例的平均值作为最终准确率的计算结果。
由上,本发明的基于用户关系嵌入模型的下一个兴趣点推荐方法将偏好相似关系引入到推荐模型中,增强了用户关系的表示,解决了现有方法只考虑用户朋友关系的片面性导致推荐模型的局限性问题,有效提高了推荐模型的准确率。
上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其他目的、特征和优点能够更明显易懂,以下结合优选实施例,并配合附图,详细说明如下。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例的附图作简单地介绍。
图1为本发明的基于用户关系嵌入模型的下一个兴趣点推荐方法的模型图;
图2为本发明的基于用户关系嵌入模型的下一个兴趣点推荐方法的用户关系图;
图3为本发明的实验模型对比图;其中,(a)为在Gowalla数据集上模型准确率对比图;(b)为在CA数据集上模型准确率对比图。
具体实施方式
下面结合附图详细说明本发明的具体实施方式,其作为本说明书的一部分,通过实施例来说明本发明的原理,本发明的其他方面、特征及其优点通过该详细说明将会变得一目了然。在所参照的附图中,不同的图中相同或相似的部件使用相同的附图标号来表示。
本事实例中,为了测试本发明利用两类用户关系对下一个兴趣点的推荐的准确性,本发明在Gowalla数据集和CA数据集上进行实验,说明本发明的准确性。其中,Gowalla数据集和CA数据集是全世界计算机领域英文文献数据集。CA数据集包括生活在美国加利福尼亚州的4163名使用者在Foursquare应用上的签到记录,包括483813个签到信息、121142个不同的兴趣点。Gowalla数据集包括2009年2月至2010年10月期间的196591个用户的6442890条签到记录,本发明提取在加利福尼亚州和内华达州两个地点的签到数据用于实验,因为这两个相邻的地区没有显著的文化差异。两个数据集都包括用户朋友关系数据,用户朋友关系在两个数据集中以一对无向边表示。
对于数据集的预处理,我们移除不活跃的用户和兴趣点,保留至少被10个不同用户访问过的兴趣点和至少有10次签到记录的用户。表1给出了处理后的数据集信息。在实验评价中,每个用户签到记录的前70%作为训练集,最后20%作为测试集,其余的10%作为验证集数据用于模型调参。
表1:实验数据集统计信息(数据处理后)
数据集 用户数 兴趣点数 签到数
CA 2248 3092 109280
Gowalla 5762 8028 274476
如图1至图3所示,本发明的基于用户关系嵌入模型的下一个兴趣点推荐方法,主要应用于当前热门的基于位置的服务(LBS)系统和空间兴趣点推荐领域,其整体处理流程包括如下步骤:
步骤1:根据朋友关系和用户历史签到记录数据分别建立朋友关系表和偏好相似关系表,通过这两个表建立用户关系图,具体步骤如下:
步骤1.1:建立朋友关系表,朋友关系表由数据集提供的用户朋友关系数据集建立。用户关系表中的每行表示两个用户在社交软件中为朋友关系。朋友关系表如表2所示:
表2:朋友关系表
User ID User ID
1 2
2 1
1 4
4 1
说明:表中User ID表示用户的编号,如表中第一行数值表示User ID=1的朋友是User ID=2。
步骤1.2:建立偏好相似关系表,偏好相似关系表由数据集中每个用户历史访问过得兴趣点的记录建立。如果用户访问过某一个兴趣点,那么偏好关系表中相应位置的数值为1,否则为0。偏好关系表如表3所示:
表3:偏好相似关系表
POI User1 User2 User3 User4 User5
P1 1 0 1 1 1
P2 0 1 0 1 0
P3 1 1 0 1 0
说明:表中User1-User5表示不同的用户编号,P1-P 3表示不同的兴趣点,图中的数值表示用户是否访问过该兴趣点。
步骤1.3:建立用户关系图,用户关系图根据步骤1.1中的朋友关系表和步骤1.2中的偏好相似表得到。用户关系图为无向图,图中的不同的节点表示不同的用户,边上的权值表示用户关系的强弱。根据用户朋友关系表(表2),如果两个用户是朋友关系,我们就将图中相应的两个用户节点之间的边的权重增加1。需要注意的是:用户朋友表中如果两个用户是朋友关系(如user1-user2,user2-user1),他们在朋友关系中表示两条不同的数据,我们也只在用户关系图相应的边的权值加1。根据偏好相似关系表(表3),如果任意两个用户访问过同一个地点,那么图中相应边的权值也增加1。最终能够得到两类用户关系的用户关系图。用户关系图如图2所示。
步骤2:根据建立的用户关系图采用随机游走算法得到用户关系序列。通过用户关系序列,利用Word2Vec词嵌入技术中的Skip-gram语言模型对用户关系序列进行预训练学习,从而得到每一个用户的低纬嵌入向量。具体步骤如下:
步骤2.1:得到用户关系序列。根据用户关系图,首先从图中的任意一个节点开始,利用n次随机游走算法在此节点上进行随机游走,随机游走的步长为c。通过随机游走算法,最终能够得到n条序列长度为c的用户关系序列。
进一步地,所述步骤2.1中计算图中一个节点到另一个节点的随机游走算法的公式如下:
Figure BDA0002361297960000091
其中,probability(ui|uj)表示图中节点i到节点j的转移概率,f(ui,uj)表示从ui到uj边的权值,um表示与ui有边相连的节点。需要注意的是,f(ui,uj)与f(uj,ui)不一定相同。
步骤2.2:利用Word2Vec词嵌入技术对用户关系序列进行预训练。通过将用户关系序列中的用户看成是语言模型中的词,这样就能对用户关系序列进行预训练,得到每一个用户的低纬嵌入向量。利用Skip-gram语言模型对用户关系序列进行预训练。
进一步地,所述步骤2.2中利用Skip-gram对用户关系进行训练的过程可描述如下:本发明使用基于Hierarchical Softmax的Skip-gram语言模型学习用户的嵌入向量表示。Skip-gram模型用当前的用户预测序列中当前用户周围的用户。用户嵌入向量的训练过程是在用户关系序列中最大化预测其邻近用户的概率。通过这样的过程,用户关系将被引入到嵌入向量中。基于Hierarchical Softmax的Skip-gram语言模型的每个输入样本形式为(u,context(u)),其中u表示序列中的一个用户,context(u)是序列中与u邻近的用户,u的嵌入向量表示为xu,根节点到u所在的叶子节点的总路径长度表示为lu
Figure BDA0002361297960000101
表示用户u在路径中相应的哈夫曼树编码,在此基础上,用户u预测context(u)的可能性表示为:
Figure BDA0002361297960000102
其中p(w|u)可表示为:
Figure BDA0002361297960000103
其中,xu T表示xu的转置操作。之后,用对数似然形式得到语料库中所有用户的联合概率为:
Figure BDA0002361297960000104
其中U表示数据集中所有用户的集合,σ(·)是sigmoid函数,
Figure BDA0002361297960000105
是对应于
Figure BDA0002361297960000106
的参数,为了得到用户u的最优向量表示,需要将上述目标L最大化,因此,需要用函数L对
Figure BDA0002361297960000107
和xu分别求偏导:
Figure BDA0002361297960000108
Figure BDA0002361297960000109
用户的嵌入向量xu的更新公式可以写成:
Figure BDA0002361297960000111
至此,可以得到用户低维嵌入向量表示,其中,η为模型训练时的学习率,被设置为0.025,滑动窗口大小设置为5,用户关系嵌入向量的长度设置为64维,通过以上嵌入过程,每个用户可以用1个64维的向量表示。
步骤3:利用门控循环单元(Gated Recurrent Unit,GRU)结合步骤2.2得到的每一个用户的低纬嵌入向量以及用户的签到历史序列进行下一个兴趣点推荐。根据得到的用户嵌入向量对模型的用户嵌入层参数进行初始化,通过GRU模型对用户的历史签到记录进行训练,利用训练后的GRU模型给出用户最终的下一个兴趣点推荐结果列表,具体步骤如下:
步骤3.1:GRU模型训练。GRU模型的每步输入对应着用户签到序列中的每次签到。用户的嵌入向量和签到兴趣点的嵌入向量分别由神经网络对应的不同的嵌入层得到。其中用户的嵌入层参数是由步骤2.2中预训练用户的嵌入向量初始化得到,并且用户嵌入层参数在神经网络模型的训练中无法进行训练。
进一步地,所述步骤3.1中一个用户签到序列可定义为S={(u,p1,t1),(u,p2,t2),(u,p3,t3)..,其中u表示用户,p表示签到兴趣点,t表示签到时间。下面我们对GRU模型的进行介绍:
GRU是循环神经网络(Recurrent Neural Network,RNN)的一种变体,可以解决RNN网络中的长依赖问题,包括重置门(rt)和更新门(zt)两种类型的门控单元,没有存储单元,它们共同控制信息在神经网络中的流动状态。在t时刻,GRU的状态更新由以下公式计算得到:
Figure BDA0002361297960000112
Figure BDA0002361297960000121
Figure BDA0002361297960000122
Figure BDA0002361297960000123
其中,{U1,U2,U3,W1,W2,W3}∈Rd×d和{b1,b2,b3}∈Rd是神经网络需要训练的参数矩阵,ht-1表示前一时刻的隐层状态,
Figure BDA0002361297960000124
为候选状态,ht表示隐藏层输出向量,向量
Figure BDA0002361297960000125
表示用户在t时刻用户签到的输入向量。
步骤3.2:利用GRU模型进行下一个兴趣点推荐,得到用户历史签到序列,将序列数据送入训练后的GRU模型后会得到一个输出向量,通过得到的输出向量与每一个兴趣点的嵌入向量内积的方式我们可以得到用户下一步访问每一个兴趣点可能性(分数)。然后(根据得到的分数)按排名顺序给出一个包含用户下一步将要访问的前10个兴趣点列表。
进一步地,所述步骤3.2中给用户推荐下一步将要访问的兴趣点的计算公式如下:
Figure BDA0002361297960000126
其中ht表示GRU模型中t时刻隐藏层的输出,
Figure BDA0002361297960000127
表示兴趣点p的嵌入向量,T表示向量转置,
Figure BDA0002361297960000128
表示用户u在t+1时刻将会访问兴趣点p的可能性。
步骤3.3:推荐准确率计算。Acc@N评价方法经常用于评价推荐任务或者预测任务的准确率,因此我们选择Acc@10作为本发明模型准确率的标准。只要用户下一个访问的兴趣点出现在含有top-10个兴趣点的列表中,我们就认为做出正确推荐,结果为1。
进一步地,所述步骤3.3中Acc@N的计算公式如下:
Figure BDA0002361297960000129
其中,|L|表示测试集中总的测试实例个数,#hit@N表示整个测试集中推荐成功的次数(数量),所有测试实例的平均值作为最终准确率的计算结果。
下面我们介绍模型参数更新的训练过程:我们应用广泛使用的贝叶斯个性化排序(Bayesian Personalized Ranking,BPR)和时序反向传播算法(Back PropagationThrough Time,BPTT)来训练我们的模型参数。BPR算法是一种矩阵因式分解方法,它使用成对排序损失。BPR的基本假设是用户倾向于选择的项目比未选择的项目。在BPR算法中,给定一个用户访问过的兴趣点p和一个用户未访问过的兴趣点
Figure BDA0002361297960000131
可以给出成对偏好概率为:
Figure BDA0002361297960000132
其中θ表示所有需要学习的参数的集合,σ(·)是sigmoid函数,可以定义为:y=1/(1+e-x)。结合负对数似然,我们可以求解下列目标函数:
Figure BDA0002361297960000133
其中λ是正则化系数。此外,利用BPTT算法可以进一步学习GRU中的参数。根据公式(11),给出推导
Figure BDA0002361297960000134
即可计算出隐藏层中所有参数对应的梯度。
本实施例中,我们将不采用用户关系嵌入的模型作为基线,与本发明中利用两类用户关系的嵌入模型的推荐算法进行对比,推荐用户的top-10个下一个兴趣点作为准确率计算的结果。其中模型的参数设置如下,GRU神经网络隐藏层具有80个神经元,用户嵌入向量的维度和地点嵌入向量的维度都为64维,学习率为0.001。两个模型实验准确率对比结果如图3所示。图中横坐标表示模型训练的迭代次数,纵坐标显示的是模型的准确率。
从图3可以看出,结合用户关系嵌入模型的下一个兴趣点推荐算法明显优于基线算法,说明本发明的模型能够充分学习到复杂的用户关系,进而利用结合用户关系给用户提供更为准确的下一个兴趣点推荐。同时,从图3中可以看出,应用本发明的模型能够使GRU具有更快的收敛速度,在很少的迭代次数情况下就能达到较优的推荐效果,因此能够节省大量的时间成本,更具有现实的商业应用价值。
在推荐系统中,一些研究已经证明社交关系/朋友关系可以有效提高推荐系统的准确率,现有的推荐系统方法只考虑用户的社交关系(即在社交软件中两个用户为朋友关系)。然而,在现实生活中,即使两个用户不是朋友关系,他们(如美食爱好者,运动爱好者)也分别具有相同的偏好,本发明把这种关系称为偏好相似关系。由于现有的推荐方法对用户关系考虑不充分,本发明提出了一个新颖的用户关系嵌入模型,该模型能够充分考虑这两类用户关系。为了有效的对用户关系建模,该模型首先对两类用户关系分别建立用户关系表,然后整合这两类用户关系表建立用户关系图。之后,根据建立的用户关系图,利用重启动随机游走算法得到用户关系序列,通过用户关系序列用Word2Vec词嵌入技术来学习用户低纬嵌入向量的表示。如果两个用户的用户关系很紧密,那么这两个用户对应的低纬嵌入向量在嵌入空间中也具有更近的距离。为了评价本发明提出的用户关系嵌入模型的有效性,本发明应用循环神经网络模型结合本发明提出的用户关系模型在两个公开的数据集上进行实验,实验结果表明,结合本发明提出的用户关系嵌入模型,在一定程度上提高了推荐系统的准确率和神经网络的收敛速度。
以上所述是本发明的优选实施方式而已,当然不能以此来限定本发明之权利范围,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和变动,这些改进和变动也视为本发明的保护范围。

Claims (9)

1.一种基于用户关系嵌入模型的下一个兴趣点推荐方法,其特征在于,包括以下步骤:
步骤S1:根据朋友关系和用户历史签到记录数据分别建立朋友关系表和偏好相似关系表,通过这两个表建立用户关系图;
步骤S2:根据建立的用户关系图采用随机游走算法得到用户关系序列,用户关系序列经过Word2Vec词嵌入模型得到每个用户的低纬嵌入向量;
步骤S3:利用用户的低纬嵌入向量对神经网络的用户嵌入层参数进行初始化,使用门控循环单元给出下一个兴趣点推荐。
2.如权利要求1所述的基于用户关系嵌入模型的下一个兴趣点推荐方法,其特征在于,所述步骤S1的具体步骤为:
S11、建立朋友关系表,朋友关系表由数据集提供的用户朋友关系数据集建立;
S12、建立偏好相似关系表,偏好相似关系表由数据集中每个用户历史访问过得兴趣点的记录建立,如果用户访问过某一个兴趣点,那么偏好关系表中相应位置的数值为1,否则为0;
S13、建立用户关系图,用户关系图根据步骤S11中的朋友关系表和步骤S12中的偏好相似表得到。
3.如权利要求2所述的基于用户关系嵌入模型的下一个兴趣点推荐方法,其特征在于,所述步骤S2的具体步骤如下:
S21、根据用户关系图,首先从图中的任意一个节点开始,利用n次随机游走算法在此节点上进行随机游走,随机游走的步长为c,通过随机游走算法,最终能够得到n条序列长度为c的用户关系序列;
S22、利用Word2Vec词嵌入技术对用户关系序列进行预训练,通过将用户关系序列中的用户看成是语言模型中的词,对用户关系序列进行预训练,得到每一个用户的低纬嵌入向量,利用Skip-gram语言模型对用户关系序列进行预训练。
4.如权利要求1所述的基于用户关系嵌入模型的下一个兴趣点推荐方法,其特征在于,所述步骤S3的具体步骤如下:
S31、GRU模型训练,GRU模型的每步输入对应着用户签到序列中的每次签到,用户的嵌入向量和签到兴趣点的嵌入向量分别由神经网络对应的不同的嵌入层得到,其中用户的嵌入层参数是由步骤S22中预训练用户的嵌入向量初始化得到;
S32、利用GRU模型进行下一个兴趣点推荐,得到用户历史签到序列,将序列数据送入训练后的GRU模型后会得到一个输出向量,通过得到的输出向量与每一个兴趣点的嵌入向量内积的方式得到用户下一步访问每一个兴趣点可能性;
S33、推荐准确率计算,选择Acc@N评价方法作为模型准确率的标准。
5.如权利要求3所述的基于用户关系嵌入模型的下一个兴趣点推荐方法,其特征在于,所述步骤S21中计算图中一个节点到另一个节点的随机游走算法的公式如下:
Figure FDA0002361297950000021
其中,probability(ui|uj)表示图中节点i到节点j的转移概率,f(ui,uj)表示从ui到uj边的权值,um表示与ui有边相连的节点。
6.如权利要求3所述的基于用户关系嵌入模型的下一个兴趣点推荐方法,其特征在于,所述步骤S22中利用Skip-gram对用户关系进行训练的过程为:
使用基于Hierarchical Softmax的Skip-gram语言模型学习用户的嵌入向量,基于Hierarchical Softmax的Skip-gram语言模型的每个输入样本形式为(u,context(u)),其中u表示序列中的一个用户,context(u)是序列中与u邻近的用户,u的嵌入向量表示为xu,根节点到u所在的叶子节点的总路径长度表示为lu
Figure FDA00023612979500000310
表示用户u在路径中相应的哈夫曼树编码,在此基础上,用户u预测context(u)的可能性表示为:
Figure FDA0002361297950000031
其中p(w|u)可表示为:
Figure FDA0002361297950000032
其中,xu T表示xu的转置操作,之后,用对数似然形式得到语料库中所有用户的联合概率为:
Figure FDA0002361297950000033
其中σ(·)是sigmoid函数,
Figure FDA0002361297950000034
是对应于
Figure FDA0002361297950000035
的参数,为了得到用户u的最优向量表示,需要将上述目标L最大化,因此,需要用函数L对
Figure FDA0002361297950000036
和xu分别求偏导:
Figure FDA0002361297950000037
Figure FDA0002361297950000038
用户的嵌入向量xu的更新公式可以写成:
Figure FDA0002361297950000039
至此,可以得到用户低维嵌入向量表示,其中,η为模型训练时的学习率,被设置为0.025,滑动窗口大小设置为5,用户关系嵌入向量的长度设置为64维,通过以上嵌入过程,每个用户可以用1个64维的向量表示。
7.如权利要求4所述的基于用户关系嵌入模型的下一个兴趣点推荐方法,其特征在于,所述步骤S31中一个用户签到序列可定义为S={(u,p1,t1),(u,p2,t2),(u,p3,t3)...},其中p表示签到兴趣点,t表示签到时间,
在t时刻,GRU的状态更新由以下公式计算得到:
Figure FDA0002361297950000041
Figure FDA0002361297950000042
Figure FDA0002361297950000043
Figure FDA0002361297950000044
其中,{U1,U2,U3,W1,W2,W3}∈Rd×d和{b1,b2,b3}∈Rd是神经网络需要训练的参数矩阵,ht -1表示前一时刻的隐层状态,rt和zt分别为重置门和更新门,
Figure FDA0002361297950000045
为候选状态,ht表示隐藏层输出向量,向量
Figure FDA0002361297950000046
表示用户在t时刻用户签到的输入向量。
8.如权利要求4所述的基于用户关系嵌入模型的下一个兴趣点推荐方法,其特征在于,所述步骤S32中给用户推荐下一步将要访问的兴趣点的计算公式如下:
Figure FDA0002361297950000047
其中,
Figure FDA0002361297950000048
表示兴趣点p的嵌入向量,T表示向量转置,
Figure FDA0002361297950000049
表示用户u在t+1时刻将会访问兴趣点p的可能性。
9.如权利要求4所述的基于用户关系嵌入模型的下一个兴趣点推荐方法,其特征在于,所述步骤S33中Acc@N的计算公式如下:
Figure FDA0002361297950000051
其中,|L|表示测试集中总的测试实例个数,#hit@N表示整个测试集中推荐成功的次数,所有测试实例的平均值作为最终准确率的计算结果。
CN202010022487.9A 2020-01-09 2020-01-09 一种基于用户关系嵌入模型的下一个兴趣点推荐方法 Active CN111241419B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010022487.9A CN111241419B (zh) 2020-01-09 2020-01-09 一种基于用户关系嵌入模型的下一个兴趣点推荐方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010022487.9A CN111241419B (zh) 2020-01-09 2020-01-09 一种基于用户关系嵌入模型的下一个兴趣点推荐方法

Publications (2)

Publication Number Publication Date
CN111241419A true CN111241419A (zh) 2020-06-05
CN111241419B CN111241419B (zh) 2023-11-24

Family

ID=70872491

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010022487.9A Active CN111241419B (zh) 2020-01-09 2020-01-09 一种基于用户关系嵌入模型的下一个兴趣点推荐方法

Country Status (1)

Country Link
CN (1) CN111241419B (zh)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111949865A (zh) * 2020-08-10 2020-11-17 杭州电子科技大学 基于图神经网络与用户长短期偏好的兴趣点推荐方法
CN112380426A (zh) * 2020-10-23 2021-02-19 南京邮电大学 一种基于图嵌入与用户长短期兴趣融合的兴趣点推荐方法、系统
CN113139140A (zh) * 2021-05-17 2021-07-20 辽宁工程技术大学 基于时空感知gru并结合用户关系偏好的旅游景点推荐方法
CN113486237A (zh) * 2021-06-07 2021-10-08 海南太美航空股份有限公司 一种航班信息的推荐方法、系统、存储介质和电子设备
CN113626697A (zh) * 2021-08-05 2021-11-09 辽宁工程技术大学 一种基于anchor-LDA和卷积神经网络的兴趣点推荐方法
CN113763014A (zh) * 2021-01-05 2021-12-07 北京沃东天骏信息技术有限公司 物品共现关系确定方法和装置及判定模型获得方法和装置
CN113901319A (zh) * 2021-10-18 2022-01-07 桂林电子科技大学 一种基于序列语义与属性图特征学习的地点推荐方法
WO2023015658A1 (zh) * 2021-08-13 2023-02-16 浙江大学 一种基于类脑时空感知表征的兴趣点推荐方法及系统

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9857177B1 (en) * 2012-06-20 2018-01-02 Amazon Technologies, Inc. Personalized points of interest for mapping applications
CN108804689A (zh) * 2018-06-14 2018-11-13 合肥工业大学 面向问答平台的融合用户隐连接关系的标签推荐方法
CN109062962A (zh) * 2018-06-27 2018-12-21 华南理工大学 一种融合天气信息的门控循环神经网络兴趣点推荐方法
CN109726336A (zh) * 2018-12-21 2019-05-07 长安大学 一种结合出行兴趣与社交偏好的poi推荐方法
CN109800350A (zh) * 2018-12-21 2019-05-24 中国电子科技集团公司信息科学研究院 一种个性化新闻推荐方法及系统、存储介质
CN110119475A (zh) * 2019-01-29 2019-08-13 成都信息工程大学 一种poi推荐方法及推荐系统
CN110287335A (zh) * 2019-06-17 2019-09-27 桂林电子科技大学 基于知识图谱和用户长短期偏好的个性化景点推荐方法及装置
CN110399565A (zh) * 2019-07-29 2019-11-01 北京理工大学 基于时空周期注意力机制的递归神经网络兴趣点推荐方法

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9857177B1 (en) * 2012-06-20 2018-01-02 Amazon Technologies, Inc. Personalized points of interest for mapping applications
CN108804689A (zh) * 2018-06-14 2018-11-13 合肥工业大学 面向问答平台的融合用户隐连接关系的标签推荐方法
CN109062962A (zh) * 2018-06-27 2018-12-21 华南理工大学 一种融合天气信息的门控循环神经网络兴趣点推荐方法
CN109726336A (zh) * 2018-12-21 2019-05-07 长安大学 一种结合出行兴趣与社交偏好的poi推荐方法
CN109800350A (zh) * 2018-12-21 2019-05-24 中国电子科技集团公司信息科学研究院 一种个性化新闻推荐方法及系统、存储介质
CN110119475A (zh) * 2019-01-29 2019-08-13 成都信息工程大学 一种poi推荐方法及推荐系统
CN110287335A (zh) * 2019-06-17 2019-09-27 桂林电子科技大学 基于知识图谱和用户长短期偏好的个性化景点推荐方法及装置
CN110399565A (zh) * 2019-07-29 2019-11-01 北京理工大学 基于时空周期注意力机制的递归神经网络兴趣点推荐方法

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
唐浩然;曾骏;李烽;文俊浩;: "结合地点类别和社交网络的兴趣点推荐", 重庆大学学报, no. 07 *
夏永生;王晓蕊;白鹏;李梦梦;夏阳;张凯;: "基于时序和距离的门控循环单元兴趣点推荐算法", 计算机工程, no. 01 *
张进;孙福振;王绍卿;王帅;鹿祥志;: "融合社交关系与地理信息的兴趣点推荐模型", 计算机工程与应用, no. 05 *
李全;许新华;刘兴红;陈琦;: "融合时空感知GRU和注意力的下一个地点推荐", 计算机应用, no. 03 *

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111949865A (zh) * 2020-08-10 2020-11-17 杭州电子科技大学 基于图神经网络与用户长短期偏好的兴趣点推荐方法
CN112380426A (zh) * 2020-10-23 2021-02-19 南京邮电大学 一种基于图嵌入与用户长短期兴趣融合的兴趣点推荐方法、系统
CN112380426B (zh) * 2020-10-23 2023-10-13 南京邮电大学 一种基于图嵌入与用户长短期兴趣融合的兴趣点推荐方法、系统
CN113763014A (zh) * 2021-01-05 2021-12-07 北京沃东天骏信息技术有限公司 物品共现关系确定方法和装置及判定模型获得方法和装置
CN113139140A (zh) * 2021-05-17 2021-07-20 辽宁工程技术大学 基于时空感知gru并结合用户关系偏好的旅游景点推荐方法
CN113139140B (zh) * 2021-05-17 2024-01-16 辽宁工程技术大学 基于时空感知gru并结合用户关系偏好的旅游景点推荐方法
CN113486237A (zh) * 2021-06-07 2021-10-08 海南太美航空股份有限公司 一种航班信息的推荐方法、系统、存储介质和电子设备
CN113486237B (zh) * 2021-06-07 2023-06-27 海南太美航空股份有限公司 一种航班信息的推荐方法、系统、存储介质和电子设备
CN113626697A (zh) * 2021-08-05 2021-11-09 辽宁工程技术大学 一种基于anchor-LDA和卷积神经网络的兴趣点推荐方法
WO2023015658A1 (zh) * 2021-08-13 2023-02-16 浙江大学 一种基于类脑时空感知表征的兴趣点推荐方法及系统
CN113901319A (zh) * 2021-10-18 2022-01-07 桂林电子科技大学 一种基于序列语义与属性图特征学习的地点推荐方法
CN113901319B (zh) * 2021-10-18 2024-03-26 桂林电子科技大学 一种基于序列语义与属性图特征学习的地点推荐方法

Also Published As

Publication number Publication date
CN111241419B (zh) 2023-11-24

Similar Documents

Publication Publication Date Title
CN111241419B (zh) 一种基于用户关系嵌入模型的下一个兴趣点推荐方法
Liu et al. GNN-based long and short term preference modeling for next-location prediction
Zhao et al. Where to go next: A spatio-temporal LSTM model for next POI recommendation
CN111949865A (zh) 基于图神经网络与用户长短期偏好的兴趣点推荐方法
Wang et al. Towards real-time demand-aware sequential POI recommendation
Cui et al. Sequential-knowledge-aware next POI recommendation: A meta-learning approach
CN109635204A (zh) 基于协同过滤和长短记忆网络的在线推荐系统
Chen et al. A learning-based POI recommendation with spatiotemporal context awareness
Lu et al. GLR: A graph-based latent representation model for successive POI recommendation
CN113139140B (zh) 基于时空感知gru并结合用户关系偏好的旅游景点推荐方法
Zhou et al. Deepmove: Learning place representations through large scale movement data
CN110737730B (zh) 基于无监督学习的用户分类方法、装置、设备及存储介质
Seyedhoseinzadeh et al. Leveraging social influence based on users activity centers for point-of-interest recommendation
CN109948066A (zh) 一种基于异构信息网络的兴趣点推荐方法
CN111651671A (zh) 用户对象推荐方法、装置、计算机设备和存储介质
Shi et al. Attentional memory network with correlation-based embedding for time-aware POI recommendation
CN111428127A (zh) 融合主题匹配与双向偏好的个性化事件推荐方法及系统
CN116244513B (zh) 随机群组poi推荐方法、系统、设备及存储介质
Ma et al. Exploring multiple spatio-temporal information for point-of-interest recommendation
CN109684561B (zh) 基于用户签到行为变化的深层语义分析的兴趣点推荐方法
Lai et al. Multi-view spatial-temporal enhanced hypergraph network for next poi recommendation
Xu et al. Deep convolutional recurrent model for region recommendation with spatial and temporal contexts
CN113590976A (zh) 一种空间自适应图卷积网络的推荐方法
CN117271899A (zh) 一种基于时空感知的兴趣点推荐方法
Shi et al. Next point-of-interest recommendation by sequential feature mining and public preference awareness

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