APP下载

Twitter社交网络用户行为理解及个性化服务推荐算法研究

2020-07-18于亚新张宏宇

计算机研究与发展 2020年7期
关键词:耦合矩阵区域

于亚新 刘 梦 张宏宇

(东北大学计算机科学与工程学院 沈阳 110169)(医学影像智能计算教育部重点实验室(东北大学) 沈阳 110169)

随着互联网的快速发展,社交网成为了人们生活中不可或缺的工具,同时,无线通信与位置采集技术使得社交网的发展更为全面.例如Twitter、微博等,用户不仅可以发表tweets、微博等来分享他们的观点、日常生活,还可以在兴趣点(如娱乐场所、餐厅、商场等)发表带有地理位置的状态,展示具体的活动.这些信息不仅真实展现了人们的生活,也从侧面反映了他们的兴趣习惯以及生活需求.如何利用社交网的用户数据发现用户行为规律,同时根据用户行为理解用户需求从而为用户推荐满足需求的服务地点,已成为当前的研究热点之一.

由于用户发布的信息大多带有时间戳、地理位置、文本等信息,导致了“4W”的信息布局,即某个用户(who)在某个时间(when)、某个地点(where)产生了某种行为(what),对应4个不同层次的信息[1].这些信息反映了用户的行为模式和需求.基于用户需求为用户进行个性化的服务推荐,这方面的研究还较少.

目前社交网个性化推荐面临着一些新的挑战.

1) 短文本下主题难于捕捉.社交网数据由于文本长度短、关键特征非常稀疏,导致主题挖掘困难.传统的主题挖掘方法直接应用到短文本上效果不佳.

2) 地理位置过于稀疏.一方面用户发布的带有地理位置的文本数据较少;另一方面1条文本仅带有1个地理位置,导致用户地理位置数据稀疏,造成了用户活动区域挖掘困难.

3) 行为要素间依赖关系缺少融合.用户的行为要素包括活动时间、内容和区域,不同用户在不同时间段有不同的活动区域和内容,四者间存在依赖关系.缺少对依赖关系的融合将导致用户行为理解的片面性.

4) 服务地点属性间的耦合性考虑不足.传统推荐算法假设地点属性间、地点属性内部不存在相互影响关系,属性值服从独立同分布.但实际上属性间、属性内部存在相互影响的关系,是非独立同分布的.对属性间耦合性的忽略导致了推荐结果不准确.

基于上述问题,本文重点研究社交网用户行为理解并完成了服务地点的推荐,主要贡献有4个方面:

1) 利用社交网目标用户的文本时间戳、内容,提出了用户-时间-活动模型(user-time-activity model, UTAM),挖掘用户活动时间和内容,解决了短文本下主题难于捕捉的问题;利用目标用户的文本时间戳、地理标签提出了用户-时间-区域模型(user-time-region model, UTRM),挖掘用户活动时间和区域,解决了地理位置过于稀疏导致的活动区域难以挖掘的问题.

2) 利用社交网中大众数据的文本内容和签到服务地点,提出了挖掘活动和服务对应关系的ASTM.

3) 将用户的活动区域与服务地点间的距离以及地点属性间的耦合性融合到矩阵分解中,提出了基于耦合和距离的矩阵分解(matrix factorization based on couple & distance, MFCD),旨在实现精准个性化服务场所推荐.

4) 使用真实的tweets数据集进行大量的实验评估推荐效果,实验表明优于传统推荐算法.

1 相关工作

社交网用户行为理解是当前研究热点之一,大量关于行为理解的模型和方法被提出.通常社交网用户行为理解包括4个方面:用户、活动时间、活动区域和活动内容.

基于文本语义(活动内容)和基于位置(活动区域)等是研究用户行为理解的主要手段.基于语义的用户行为理解主要是通过对用户的文本信息进行研究,从文本中提取出用户的行为;基于位置的用户行为理解主要是根据用户的位置信息,将位置轨迹相似的用户聚成一簇.然而,由于用户的信息中有用的信息相比于庞大的数据量过于稀疏,并且仅仅针对于上述的方法来对用户行为进行分析会有很大的片面性,使得这些方法在对用户进行行为理解的效果难以有更好的突破.

文献[2-3]仅利用时间和地理位置2个方面,研究社交网用户移动性和时间的关系;文献[4-5]考虑了用户、位置、内容3个方面,文献[4]基于LDA(latent Dirichlet allocation),提出了1个考虑位置坐标和语义信息的模型,假设每一个文档的内容主题和活动区域分别基于全局的和用户特定的主题、区域分布进行抽取;文献[6]提出了基于CRF(Chinese restaurant franchise)的模型研究用户的活动区域;文献[7]从4个方面进行用户行为理解,但是没有考虑到短文本、地理位置稀疏等对模型带来的影响.

目前,在用户行为理解后进行服务等推荐的研究较少.个性化推荐方法主要有基于内容推荐、基于协同过滤推荐、基于隐语义推荐、基于关联规则推荐、基于效用推荐、基于知识推荐和组合推荐.

2 问题定义

表1给出了本文使用的符号列表和描述.

1) 非独立同分布.在概率论中,非独立同分布指随机过程中,随机变量X1和X2服从同一分布,但X1的取值会影响X2的取值,同样X2的取值也会影响X1的取值.这种变量取值间互相影响的关系称为耦合性.图1描述了推荐系统中用户、项目属性间的耦合关系.其中,I代表项目集合,A代表属性集合,Z代表项目的属性值集合.在一个属性Aj内部,不同的属性值Zlj和Zkj存在依赖关系,同时属性Ai的属性值Zli也受另外的属性Aj的属性值影响[8].

2)LDA主题模型.LDA是一种文档主题生成模型,由参数α和β确定,α反映了文档集合中隐含主题间的相对强弱,β刻画所有隐含主题自身的概率分布.图2给出了LDA模型的生成过程[9].其中θm表示文档主题的概率分布,φk表示特定主题下特征词的概率分布.wm,n代表第m篇文档中的第n个词语,Zm,n代表wm,n所属的主题.

Table 1 Symbol List表1 符号列表

Fig. 1 Attributes coupling of items图1 项目属性耦合关系

Fig. 2 Structure of LDA图2 LDA结构图

定义1.推荐地点属性空间.F=I,H,Z表示推荐地点的属性空间.其中I={I1,I2,…,Io}是推荐地点集合,H={H1,H2,…,Ho}是地点的非空属性集合,Z表示所有服务地点的属性值集合,Zi,j表示地点i在属性j上的值.

(1)

其中,|gj(x)={oi|Zi,j=x,1≤j≤M,1≤i≤N}|是属性Hj对应属性值为x的所有服务的个数.

定义3.属性耦合相似度ECLS.表示2个服务地点在某个属性下的耦合相似度(coupled location similarity, CLS),即在某个属性所有取值下的属性内耦合相似度:

(2)

问题1.行为理解.给定用户U发布的tweets集合D,得到用户的4W行为模式(u,s,z,r),表示用户u在时间段s的活动内容集合和活动区域集合.

问题2.个性化服务地点推荐.给定用户行为模式(u,s,z,r)、服务场所集合Pl、为用户推荐满足其兴趣的场所列表c.

3 用户行为理解模型

利用携带时间戳、地理位置的短文本数据,能够挖掘出用户的行为模式[1],即用户在某个时间段的活动内容和区域.该模式存在一定规律:1) 活动位置具有相对聚簇性[10].2)活动区域和内容具有时效性.比如图3揭示了某个用户访问过的位置具有相对聚簇性,图4则揭示了某个用户访问过的区域具有时效性.在图3中,白色的点表示用户在工作日访问过的位置,黑色的点表示用户周末访问过的位置,通过图3中的聚簇性可以发现该用户在不同时间段有频繁访问的活动区域.在图4中,工作日被划分成3个时间段,可以看出该用户在工作日的不同时段,访问过的活动区域不同,因此时间对用户活动区域确有一定影响.

Fig. 3 Visited locations of a user图3 某用户访问过的位置

Fig. 4 Visited time of locations in weekdays图4 某用户在工作日访问过的位置

根据上述分析,用户、时间、行为、地理位置4个方面存在依赖关系,为此,本文提出了2种行为理解模型:1)用户-时间-活动模型(user-time-activity model, UTAM);2)用户-时间-区域模型(user-time-region model, UTRM).前者理解用户的活动内容,后者主要理解用户的活动区域.下面,分别对这2个模型加以详细阐述.

3.1 用户时间活动模型UTAM

3.1.1 UTAM结构

用户活动内容与时间存在依赖关系.例如一个上班族周末可能会有更多的娱乐活动,看电影逛街等,而工作日更多的是与工作相关的行为如中午购买咖啡.所以,将用户活动时间分成4类:T1(周末),T2(工作日06:00—12:00),T3(工作日12:00—18:00)和T4(工作日18:00—06:00).针对目标用户数据集D,将相同用户在相同时间段发布的tweets放到同一个文档Du,t中.

LDA主题模型适合处理长文本,由于Du,t的长度较短,传统LDA不再适用,因此本文对此进行改进,对于Du,t中的每1条tweet采样自同一个主题,提出了UTAM行为理解模型,该模型的Du,t服从Dirchlet分布、其主题服从Multi分布,图5给出了UATM的结构图.其中,v是已知词条,表示u在时间段t发布的第i条文本中的第n个词语;Zu,t,j表示用户u在时间段t的第j个主题;φm,θu,t分别表示潜在主题m的词语分布和u在时间段t的主题分布.通过φm可以计算出u在Du,t中各个潜在主题的概率,通过θu,t可以计算出v在主题m下出现的概率.

Fig. 5 The graphical model of UTAM图5 用户-时间-活动模型结构图

3.1.2 参数估计

给定Du,s,并根据经验设定Dirchlet分布、Multi分布的先验参数α和β,则根据Gibbs采样[11]可以计算出变Z,φ,θ:

(3)

(4)

3.2 用户时间区域模型(UTRM)

3.2.1 UTRM结构

用户活动区域与时间存在依赖关系.与UTAM对时间处理的方式相同,将时间划分成4类,将用户u在时间段t访问过的地理位置放到同一个Gu,t中.由于tweets中地理位置信息相对比较稀疏,因此Gu,t短文本特性更加明显,不适合使用传统主题模型解决,因此本文提出了基于位置对组合的用户-时间-区域模型UTRM.

文献[12]提出词对主题模型(biterm topic model, BTM)用于文本单词的主题挖掘,本文借鉴该模型对地理位置进行处理.UTRM的结构如图6所示,该模型是3层结构,分别对应位置对、区域和位置,位置对-区域假设为Dirichlet分布,区域-位置假设为Multi分布.生成位置对的过程是将Gu,t中无序的2个位置作为一个共现位置对,|L|个位置共生成|LB|个共现位置对.li,lj是位置对中的2个不同位置,ϑ是所有位置对共享的区域分布,φ是每个区域对应的位置分布,另外γ和λ都是Dirichlet先验分布的超参数.

Fig. 6 The graphical model of UTRM图6 用户-时间-区域模型结构图

UTRM模型生成位置对的过程:

1) 选择ϑ~Dir(λ);

2) 对于每一个区域r∈R:选择φr~Dir(γ);

3) 对于每一个位置对l=(li,lj)∈LB:

① 选择1个区域r~Multi(θ);

② 选择2个位置li,lj~Multi(φr).

UTRM模型生成语料库中位置对的过程如上所示.对于位置对集合Lb中的每一个位置对l=(li,lj),先从整个位置对集合共享的ϑ中抽取1个区域r,r~Multi(θ),然后从区域r下抽取2个位置li,lj,即li,lj~Multi(φr).

由于该模型是对整个语料库进行建模,所以不能直接得出Gu,t的区域概率分布.为了推理出该分布,假设Gu,t的区域概率分布等于从该文档中生成位置对的区域概率的期望值.其中p(r|b,d)表示位置对b采样自主题r的概率.

(5)

3.2.2 UTRM参数估计

给定Gu,t,根据经验设定Dirchlet分布的先验参数λ和γ,根据Gibbs采样推断隐含变量ϑ和φ:

(6)

根据区域下位置对出现的次数,可以估计出区域-位置的分布和语料库的区域分布:

(7)

(8)

从大众文本挖掘出来的活动内容能够反映出大众的兴趣、需求,从而影响了服务的选择[13].所以大众活动与服务间存在对应关系,且这种对应关系具有客观性[14].如活动是吃饭,与之对应的服务是餐馆而不是商场,那么推荐的服务地点应是具体的餐馆.通过分析大众tweets文本及签到地点数据,能够挖掘出这种对应关系[14].

大众发布的tweets词语能组成语义相关的活动,服务能组成功能相关的主题.为了得到活动和服务地点间的对应关系,本文提出了活动-服务主题模型(activity-to-service topic model, ASTM).

4.1 ASTM结构

ASTM生成大众文本、地点的过程:

对于集合Pu中的每一个用户u:

1) 选择ψu~Dir(ξ).

2) 对于Pd中的每一个词w,选择活动x~Mul(ψu),选择词分布χx~Dir(μ),选择词语w~Mul(χx).

3) 对于Pg中的每一个服务地点c,选择活动y~Mul(ψu),选择活动-主题分布πy~Dir(μ),选择主题e~Mul(πy),选择服务地点分布δe~Dir(ε),选择服务地点c~Mul(δe).

Fig. 7 The graphical model of ASTM图7 活动服务主题模型结构图

对大众Pu发布的tweets数据集,将大众u发布的所有tweets放到文档Pd中,所有签到地点c放到Pg中.ASTM结构图如图7所示.假设文档Pd的活动服从Dirchlet分布,活动x的词服从Dirchlet分布,主题z的服务服从Dirchlet分布.其中,w是Pd中已知词条,c是Pg中已知服务地点,ψu表示Pd的活动分布,χx表示活动x的词分布,πy表示活动y对应的主题分布,δt表示主题t的服务地点分布.μ,ξ,η,ε是模型的超参数.

对于大众Pu发布的数据集,ASTM执行图7所示的生成过程.对于Pd中的每一个词条,从活动的多项式分布ψu中生成活动x,在x下采样一个词w;对于Pg中的每一个服务地点,先采样一个活动y,根据πy采样生成主题e,在e下采样一个服务地点c.

4.2 ASTM参数估计

同样采用Gibbs采样进行模型参数估计.具体来说,由3个方程来更新主题x,y,t.首先:

p(xi=a|x,y,e,w,c)=
p(xi=a|x,y,wi=w)∝

(9)

p(yj=a|y,x,e,w,c)=
p(yj=a|y,x,tj=d)∝

(10)

p(ej=d|e,x,y,w,c)=
p(ej=d|e,yj=a,cj=c)∝

(11)

当Markov链得到收敛状态之后,通过式(12)~(15)进行参数更新.

(12)

(13)

(14)

(15)

5 个性化服务推荐算法MFCD

在实际生活中,用户更偏向于访问与自己活动区域较近或在自己活动区域内的地点,所以服务地点与用户活动区域的物理距离影响了用户访问该服务的可能性.另外,传统推荐算法忽略了服务属性内的耦合性,导致推荐结果不准确.基于此,本文将用户活动区域与服务地点间物理距离、服务属性内耦合性融合到推荐算法中,提出了MFCD推荐算法.首先利用UTAM和UTRM模型得到了用户4W元组,其中包括某用户在某个时间段的活动区域向量和活动内容向量;然后,利用ASTM模型得到的大众活动内容向量和服务地点之间的关系,计算得到用户在某个时间段的活动向量和服务地点之间的关系,构成用户-服务地点矩阵;最后,在用户-服务矩阵的基础上,融合用户活动区域与服务地点之间的距离以及服务地点属性间的耦合性,形成了MFCD推荐算法.

5.1 用户服务矩阵

通过UTAM和UTRM这2个模型可以得到用户u的4W元组(u,s,z,r),其中u∈U,s∈S,z表示长度为|L|的活动向量,向量元素为u参加对应活动的概率;r表示长度为|R|的区域向量,向量元素为u在对应区域的概率.由于每个用户不可能参加所有活动,因此给定一个阈值th,则z中活动其概率均≥th,由此构成用户-活动矩阵A|U|×|L|.通过类似方法,还可以构成用户-区域矩阵B|U|×|R|.

根据用户活动和大众活动的词分布和φ,χ,使用JS(Jensen-Shannon)距离[15]和KL(Kullback-Leibler )距离[16]利用式(16)计算出|L|个用户活动和|PL|个大众活动间的相似度,并取概率值大于th的活动构成活动相似度矩阵C|L|×|PL|.

(16)

通过ASTM模型中的活动-主题分布πy及主题-服务分布δt,由于一个活动不能涵盖所有主题,同样一个主题不能涵盖所有服务,因此取分布中概率大的构成活动-服务矩阵M.

通过上述4个矩阵A,B,C,M的乘积运算,最终得到稀疏的用户-服务矩阵R.

5.2 服务活动区域间物理距离计算

用户活动区域是由一系列地理位置组成,该活动区域与服务的物理距离D会影响用户访问该服务地点的可能性S.一般而言,D越大则S越小;反之,D越小S越大.基于此,将服务-活动区域距离D纳入矩阵分解,于是S=|1-D|.

对于推荐服务地点集合Pl中的每一个地点,计算其与用户区域中多个地点间的距离,并将其进行归一化,得到距离差D.

5.3 服务属性耦合相似性计算

大多数推荐算法假设用户、项目的属性服从独立同分布,即属性间以及属性值间是相互独立的,不存在互相影响的关系[8,17-19].但实际上大多属性都是或多或少的互相影响,彼此间存在耦合性.

本文假设服务属性服从非独立同分布,属性值存在相互影响的耦合关系,并将这种耦合关系整合到矩阵分解算法中,进而提高推荐质量.

5.4 个性化服务推荐MFCD

矩阵分解模型常用形式是:N=PQT.将矩阵N转化为了2个浅层因子P,Q的乘积,其中N|U|×|PL|,P|U|×d,Q|PL|×d,d是浅层因子的维度[20].

由于距离的影响以及耦合性的存在,为了提高推荐准确度,本文提出了MFCD方法.

(17)

其中,Su i表示用户u的活动区域与签到地点i的距离1-Du i,N′(i)表示与签到地点i相似度较高的前T个.该模型在优化过程中加入了另外2项规则化因子来筛选预测相似度较高的用户和服务地点.采样用梯度下降法进行优化更新,进而计算出最优的P和Q:

(18)

(19)

其中,Iu,i标识用户u对签到地点是否有过概率,Su,i表示用户u和签到地点i之间的距离,ECLS(i,j)表示签到地点i和j的耦合相似度,N′(i)则表示与签到地点i相似的地点集合,可通过设置阈值等方式选择前T个.

最后,得到矩阵R,对于每一个用户u,即矩阵R中的每一行,将结果排序,取值较大的前M个服务组成列表c推荐给该用户.

6 实验与分析

本节将在真实的Twitter数据集上验证本次研究提出模型的参数敏感性、推荐有效性及推荐质量.介绍了实验环境及实验数据,介绍了实验的评估标准,给出了相关实验结果及对实验结果的分析.

6.1 实验环境及数据

本文采用真实的Twitter数据集,共6 058个用户,137 830条文本.Twitter支持第3方的位置共享服务如Foursquare.Foursquare上的用户可以在Twitter上分享签到.利用Foursquare将在真实POI有过签到且次数大于10次的用户作为大众用户,进行数据清理,去除被访问次数少于10次的POI及用户,同时采集POI的属性信息.其他用户作为目标用户,去除发布文本数量少于3次的用户-数据的统计如表2所示:

Table 2 Statistics of Twitter Datasets表2 Twitter数据集统计

6.2 评价指标

由于用户行为理解模型UTAM,UTRM是基于LDA主题模型的,故采用2个常用的LDA评价指标,即困惑度(perplexity)和平均余弦相似性(average cosine similarity,ACS),分别记为per和QACS.

1) 困惑度[21].perplexity是当前最常用的度量语言模型性能好坏的评测指标,困惑度越小意味着模型效果越好.其中,p(wd)表示文档d中的词汇的生成概率,Nd表示为文档d中所有的词汇.

2) 平均余弦相似性ACS[22].ACS是所有主题向量之间的余弦相似性的平均值,该值越小,模型效果越好,其计算为

(20)

(21)

另外,为了评估MFCD算法的效果,本文采用推荐系统常用的2个指标[23]:平均绝对误差(mean absolute error,MAE)和均方根误差(root mean squared error,RMSE).其中MAE记为JMAE,RMSE记为IRMSE:

(22)

(23)

最后在我们的对比方法中,采用2种指标精确率Precision@K和召回率Recall@K来评估服务地点推荐的质量.其定义为:

(24)

(25)

其中,U是用户集合,K是推荐给用户的服务地点的数量;R(u)是推荐给用户的top-k列表;T(u)是用户实际访问的服务地点数量.

6.3 实验结果

6.3.1节测试了UTAM,UTRM模型和MFCD算法的参数,确定了模型最优的参数.6.3.2节测试了MFCD模型推荐效果,实验结果表明MFCD优于传统的推荐算法.6.3.3节测试了本文提出推荐方法的质量.

6.3.1 参数敏感性测试

1) 用户行为理解模型参数

采用困惑度和ACS两个评价指标查找最优的活动数目K和区域数目R.

UTAM模型的困惑度和ACS随活动数目选择的变化趋势如图8所示:

Fig. 8 The influence of activity number on USAM图8 活动主题数目对USAM模型的影响

在图8(a)中,随着活动数目的增加,困惑度呈现先降低后升高的趋势,在K=50时困惑度最低.产生这种现象的原因是:当活动数目较少时,很多潜在的活动并没有挖掘出;当活动数目较大时,出现过拟合现象,即有一部分活动是重复的.在图8(b)中刚开始ACS呈现下降的趋势,当活动数k=50时,ACS达到最低,之后ACS呈现上升趋势.综合看图8(a)和图8(b),当活动数k=50时,USAM模型最稳定.

USRM模型的困惑度和ACS随区域数目的变化趋势如图9所示.在图9(a)中,开始困惑度较高,随着区域数目的增加,困惑度下降较明显,当R=150时,困惑度最低,之后缓慢增加.产生这种现象的原因是:当区域数目R<150时,很多潜在的区域并没有发现;当R>150时,有一部分重合,出现过拟合现象.在图9(b)中,ACS随区域数目的增加,变化不明显,但也呈现出先降后升的趋势,当R=150时ACS最低.综合考虑,当R=150时,困惑度和ACS都是最低的,这时UTRM模型的结构最稳定.

Fig. 9 The influence of regions number on USRM图9 区域数目对USRM模型的影响

2) 活动-服务模型参数

为了得到最优的活动主题数和服务主题数,同样采用perplexity和ACS指标.

图10展示了主题数的变化对活动模型的影响,当活动主题数为70、服务主题数为130时,困惑度的值最低;当活动主题数为80,70,服务数为50,80,130,ACS的值较低,在图10中使用了颜色最深的(红色)柱形进行标注.图11展示了主题数对服务模型的影响,当活动主题数为80,70且服务主题数为50,130时,困惑度值较低;当活动数为70时,ACS的值较低,如图11中颜色最深的(红色)柱形所示.综合考虑,当活动主题数为60、服务主题数为130时模型效果较优.

Fig. 10 The influence of topic number on behavior model图10 活动、服务主题数对活动模型的影响

Fig. 11 The influence of topic number on service model图11 活动、服务主题数对服务模型的影响

参数ρ是耦合项正则化权重,作用是调整地点间耦合性对预测结果的影响.为了选取合适的参数,观察在不同取值下的推荐效果.这里仅展示ρ在0~1之间的变化.图12展示了RMSE变化情况.由图12可知,参数ρ的取值会影响矩阵分解的性能,在实际应用中要根据实际情况选择合适的参数,因为当我们推荐一些服务地点给用户后,用户的主观评价可能占据着主导的作用,也可能用户更看重它近邻的参考意见或者选择跟自己需求最大的服务地点更相似的地点.

Fig. 12 RMSE of CDMF by changing parameter ρ图12 调整ρ算法RMSE变化情况

另外一个参数是通过耦合相似度得到某地点的相似集合,选取相似度较高的前T个,参数T对算法有一定影响.图13可以看出在当前数据集下,随着T的数目增加,RMSE逐渐降低,当T=30时RMSE最小,之后达到饱和趋于平稳.

Fig. 13 RMSE of CDMF by changing parameter T图13 调整T算法RMSE变化情况

6.3.2 推荐系统性能测试

本文使用了地理位置的类型特征,如Coffee Shop,Park,Restaurant等,利用用户活动区域计算距离,地点属性信息计算相似度,训练MFCD完成推荐.

为了评价MFCD的有效性,将该模型和基础矩阵分解(Basic MF)、带偏差的矩阵分解(With Biases MF)模型进行比较.对于每个方法都设置了不同的浅层因子维度,分别是5,10,50,梯度下降步长因子设置为0.001,正则化权重ν=0.005,ρ=0.1.从图14,15可以看出,随着浅层因子维度d的增加,RMSE,MAE呈减小趋势,且MFCD的结果优于Basic MF和With Biases MF.d并不是越大越好,过大容易产生过拟合现象.

Fig. 14 The result of RMSE图14 RMSE评价结果

Fig. 15 The result of MAE图15 MAE评价结果

6.3.3 推荐质量测试

本节采用准确率及召回率2个指标对推荐质量进行测试.分别测试了当为用户推荐的服务地点数量为10,30,50这3种情况时,对应的准确率和召回率变化情况.图16展示了随着推荐数量d的增加,准确率呈现下降趋势.由于用户实际访问的服务地点是固定的,所以随着推荐数量的增加,准确率会呈现下降趋势.图17展示了随着推荐数量的增加,召回率呈现上升趋势.从图16和图17中可以看出,MFCD的推荐质量都是优于传统的矩阵分解推荐算法.

Fig. 16 The result of Precision@K图16 Precision@K评价结果

Fig. 17 The result of Recall@K图17 Recall@K评价结果

7 结束语

为了理解用户的行为规律,基于LDA主题模型,综合考虑用户行为发生的时间、活动内容、活动区域提出了UTAM,UTRM模型.其中UTAM解决了短文本导致的活动内容难于捕捉的问题;UTRM模型解决了地理位置稀疏导致的活动区域难于挖掘的问题.另外将距离和服务地点耦合性融合到矩阵分解算法中,改进目标函数,提高了推荐算法的有效性.下一步的研究工作中,我们将把用户的属性信息,如年龄、居住地等信息,融合到矩阵分解推荐算法中,考虑用户属性间的耦合相似性,进一步提高推荐质量.

猜你喜欢

耦合矩阵区域
基于增强注意力的耦合协同过滤推荐方法
擎动湾区制高点,耦合前海价值圈!
复杂线束在双BCI耦合下的终端响应机理
分割区域
基于BM3D的复杂纹理区域图像去噪
基于磁耦合的高效水下非接触式通信方法研究
多项式理论在矩阵求逆中的应用
区域发展篇
矩阵
矩阵