APP下载

融入用户长短期兴趣的推荐算法多样性优化

2021-10-24夏瑞玲李国平王国中

计算机时代 2021年10期
关键词:推荐系统多样性准确度

夏瑞玲 李国平 王国中

摘要: 多数传统的推荐算法在追求准确度时,忽略了多样性也是衡量推荐效果不可或缺的指标之一。而一味地提升多样性又势必会造成准确度的极大损失。由此提出依据用户兴趣度和兴趣变化度,在计算出用户兴趣值的基础上,分析不同用户的兴趣偏好情况。再将用户的长期与短期兴趣相结合进行推荐,保障个性化的同时确定用户的多样化程度,生成最终的推荐列表,很好地平衡了推荐结果的准确度与和多样性。

关键词: 长短期兴趣; 准确度; 多样性; 推荐系统

中图分类号:TP391          文献标识码:A     文章编号:1006-8228(2021)10-44-05

Diversity optimization of recommendation algorithm integrating

user's long-short-term interest

Xia Ruiling1, Li Guoping2, Wang Guozhong2

(1. College of Electrical and Electronic Engineering, Shanghai University of Engineering Science, Shanghai 201620, China;

2. Key Laboratory of Artificial Intelligence Application State Administration of Radio and Television)

Abstract: In the pursuit of accuracy, most traditional recommendation algorithms ignore diversity, which is also one of the indispensable indicators to measure the recommendation effect. However, increasing diversity desperately is bound to result in a great loss of accuracy. Presented on considering user interest and interest changes, on the basis of calculating user interest value, analyze the different user interest preference. Then combining the user's long-term and short-term interest to recommend, guaranteeing the diversification of personalized determine a user at the same time, produce the final recommendation list, reached a good balance between accuracy and diversity of recommendations.

Key words: long-short-term interest; precision; diversity; recommendation system

0 引言

在網络信息蜂拥而至的今天,推荐系统的诞生,无疑为信息的生产者和消费者提供了一套解决信息过载问题的双赢方案[1]。推荐列表需要覆盖的不单是某一种兴趣领域,对不同的场景,所应用的推荐方式不尽相同,但就其推荐目标来说都具有根本的一致性:提升用户体验,吸引并留住用户。而多样性是衡量推荐列表中物品属性、种类的差异性程度[2]。也就是推荐列表中的物品单调与否。多样而丰富的推荐结果会让用户更满意,推荐内容多样性越好,用户的长期留存的概率越大。

基于用户的协同过滤算法通过同类用户分析,对目标用户进行推荐,一定程度上提升了多样性但推荐结果趋于热门化[3]。从长远看,要发掘用户的长期需求,也要精准满足短期需求,覆盖用户绝大多数的兴趣。因此,人们一直都在利用推荐系统的种种优势探索和拓展用户兴趣,在保证准确率的前提下,尽量提升推荐内容的多样性。

Arda[4]等人采用最小成本网络流方法优化推荐系统子图,在基于协同过滤的评分系统中不断增加多样性。Lee[5]等人提出同时考虑多样性和准确性,在目标函数中利用贪婪求得近似解的方式来优化用户的偏好和推荐k项的多样性。Jiang[6]等人使用选择概率来衡量推荐列表的整体质量,统一了在生成推荐平衡相关性和多样性,开发了一种高效的贪心算法求得最优。Adomavicius[7]等人探索了一些条目排名技术,在用户中产生更多不同推荐,同时尽量保持推荐准确性。

为了更好地满足推荐多样化的需求,本文提出一种划分用户短期兴趣与长期兴趣的融合推荐算法。综合考虑不同用户两种兴趣分类情况,在尽量不损失个性化的同时帮助推荐系统避免内容窄化,提升内容多样性。

1 融合用户长短期兴趣的推荐策略

在推荐系统中,多样性指的是对于某一位用户,返回与其兴趣爱好高度相关同时覆盖范围广,物品种类尽可能多的推荐结果[8]。在改进传统推荐模式的基础上,考虑到不同用户兴趣往往具有不同的偏好和变化性,本文提出将用户不易变的长期兴趣与易变的短期兴趣进行分类,再将二者相融合,生成兼顾个性化,保证准确度,同时又具有多样化的推荐列表。整体推荐结构流程如图1所示。

1.1 用户长短期兴趣分析

用户的短期兴趣是指,用户过去某一小段时间内所发生的兴趣取向变化,不是用户长期固有的兴趣爱好。短期兴趣比较容易受环境因素的影响,尤其是热门物品的影响。短期兴趣比重高的用户兴趣变化性较大且兴趣范围相对广泛。而用户的长期兴趣则是指用户在过去一段时间内具有较恒定的兴趣取向。具有长期兴趣的用户,其兴趣变化性不大,而且范围相对较窄。

1.2 用户兴趣值计算

首先对推荐算法中所使用的符号定义说明如下:[U={u1,u2,…,un}]为所有用户的集合,[I={i1,i2,…,in}]为所有项目的集合,项目[i]所属种类集为[Li=l1,l2,…,ln],用户[U]对项目[i]的评分为[ru,i],用户[U]产生过评分行为的所有项目集定义为用户的兴趣项目集[Cu],基于用户历史评分数据定义其对项目类别的兴趣概率集为[Pu],针对数据集中某一个项目类别[l],用户[U]对其兴趣度为[Pu,l]。

[Pu,l=i∈Cu,l∈Ii1∣Ii∣∣Cu∣]  ⑴

其中,[Pu,l∈Pu].若某一项目[i]仅属于项目类别[l],认为[i]对于项目类别[l]的权值为1,若[i]同时属于[n]个项目类别,则认为[i]对其所属的每一个项目类别权值为[1n].[Pu,l]值越大,说明用户对该项目类别兴趣程度越高,反之越低。针对用户所有兴趣类别,根据公式⑴进行逐一求值并累加。得到用户对于某一项目类别的具体兴趣程度后对用户的兴趣度分类。如果某一用户在大部分项目类别上都有评分记录,则说明该用户兴趣范围较广;用户若仅对少数几个项目类别有评分记录,则说明该用户兴趣范围本身较窄。用户兴趣度计算方法如下:

[Du=i=1Pu,llog∣l∣Pu]  ⑵

对[Du]归一化处理。用户兴趣度值越高说明用户对较多类别项目都有一定兴趣,其值较低表明用户只对少数类别项目感兴趣。

兴趣变化与否是决定长短期兴趣划分的主要因素,用项目类别余弦相似度衡量用户评分项类别[l]与项目种类集[L]间的相似性。通过计算二者相似度确定用户兴趣变化情况。

[Sim(l,L)=][cosl,L=i=1n(l*L)i=1nli2*i=1nL2]  ⑶

设定相似度阈值,超过阈值的项目类别[l]为[i]个.定义用户兴趣变化度由[C]表示。

[C=in-i]  ⑷

由于用户的长期与短期兴趣主要由兴趣度高低以及一定时间内兴趣的变化度二者共同决定。设定常量系数[α(0<α<1)]平衡主次权重影响,本文将用户短期兴趣与长期兴趣列为同等影响地位,故取为0.5。[T]为用户总体兴趣值,用来表示该用户接纳新项目的能力。计算公式如下。

[T=αDu+1-αC]  ⑸

设定[T]值域划分情况对用户兴趣取向偏好进行分类,例如,选择兴趣值低的用户认为是偏向长期兴趣的用户群体,这类用户评分项目类别集中且变化度不高;兴趣度高的用户认为是偏向短期兴趣的用户群体,此类用户评分项目类别离散且变化度较高。

2 融合推荐

融合推荐就是融合用户长短期兴趣,在推荐新项目时,综合考虑新项目类别是否与用户评分历史类别相关联,新项目类别是否为用户乐意接纳。对于不同兴趣偏向的用户进行分类考虑。

由于每一个项目可能不单单属于某一个项目类别,公式⑺给出了任意两个项目所属公共类别与总类别的比例。对于新项目[i]与用户历史兴趣项目列表的相似度的计算,本文采用了Jaccard相似度。计算公式如下:

[simi,j=∣Ii∩Ij∣∣Ii∩Ij∣]  ⑹

[simi,R=j∈Rsim(i,j)∣R∣]  ⑺

基于用戶对于历史项目的所有评分数据,首先预测用户对某一项目[l]的预测评分,项目[l]所属类别与用户历史兴趣项目类别集交集非空,为关联项目类别。预测评分的计算公式如下:

[Ug,l=i∈Cu,Ii∩Il≠?C∈,Ii∩Ilru,i∣Ii∣i∈Cu,Ii∩Il≠?1]  ⑻

其中,[ru,i∣Ii∣]为用户对于项目[i]的评分与总类别个数之比,代表评分比例。

在公式⑸中,通过使用[T]表示用户总兴趣值高低。若该用户为偏向长期兴趣的用户,则[T]权重赋予较低,若该用户倾向短期兴趣爱好,而且推荐项目为新项目种类,则赋予[T]值较大的权重影响力,保障了个性化。用户总体预测评分由公式⑼给出。

[Rg=λUgMG+(1-λ) TDiv(i,R)]  ⑼

最大评分(MG)为所有用户对某一个项目的最高评分,在这里为了将相关性项目得分进行规范化,用[Ug]与其相除。[λ](0[≤λ≤1])参数用来平衡项目类别的相关与多样程度占比[9]。[λ]为0时表示相关度最低,多样性最高;[λ]为1时表示相关度最高,多样性最低。[simi,R]表示项目[i]与用户项目列表的相似性,相似性越高则表明项目[i]于用户项目列表而言多样性越小。多样性计算方法如公式⑽。

[Difi,R=1-simi,R]  ⑽

融合推荐模块通过[Ug]与[T]的相互调节,在保障个性化,维持了一定准确度的同时,对推荐列表进行多样性的优化。

3 实验过程与结果

3.1 评价标准

采用由石近平等人[10]改进的衡量用户推荐列表多样性的方法,该方法在公式⑾基础上增加了项目类别覆盖度的影响,使推荐多样性更加完整化。改进后的多样性计算方法DisCoverDiv如公式⑿。

[Div=][1N(N-1)i∈R(u)j∈Ru,i≠j(1-sim(i,j))]  ⑾

[DisCoverDiv=DisRu*CoverRu]  ⑿

其中,[DisRu]为用户[U]列表中任意两物品间的不相似度,由公式⑾计算,覆盖度Cover表示类别数占总类别数的比例。由如下公式计算:

[Cover=C(Ru)∣Ru∣×100%]  ⒀

准确率Precision作为衡量推荐结果准确度的标准。

[Precision=∣Ru∩Ut∣∣Ru∣]  ⒁

平均绝对误差(Mean Absolute Error)衡量推荐方法的质量,即用户评分预测值与用户评分真实值间误差绝对值的平均值。

[MAE=∣u,irui-rui∣M]  ⒂

3.2 实验数据

在数据集Movielens上进行测试,选取1M大小的数据源,该数据集包含了大约一百万条用户的电影评分记录[11],评分从1-5不等。另包含用户职业、电影分类与时长、时间戳标记。将数据划分为80%的训练集与20%的测试集,随机选择用户。

3.3 实验过程

[λ]参数决定了项目预测得分的相关性与多样性权重,故首先将[λ]从0-1进行逐步调参,选出最符合本文要求的权值系数。推荐准确度随[λ]参数变化如图2所示。

由图2可见,推荐项目的MAE随[λ]参数增大而先减后增,而[λ]在大于0.6之后,不再对推荐效果有好的影响。由此可知,一味地增加相似物品的推荐比重并不总能带来良好的推荐收益。为了在提升多样性时最大化保证一定的推荐准确度,取[λ=0.6]为后续实验最佳参数取值。对比实验部分说明如下:

UBCF(User Based Collaborative Filtering):基于用户的协同过滤算法;UCB(User Clustering Based Collaborative Filtering):基于用户聚类协同过滤算法[12];IUIT(Items-Users Inversion Table Introduced Collaborative Filtering):引入项目用户倒查表后的协同过滤算法[13]。

按式⒁计算准确度。在不同TOP-N下的推荐准确度计算结果对比如表1所示。

四种算法准确度结果具体对比图如图3所示。

由图3可以看出,UBCF算法准确度最差,其余三种算法在推荐准确度上都有优势。其中,UCB,IUIT,MLSI算法在N为10时的推荐准确度效果相差不大,但MLSI算法略微领先。需要说明的是,由于推荐列表长度本身过短或过长都对推荐准确率效果有影响,在N为5和25时,MLSI算法相较于IUIT,有准确度的轻微损失,但在N为10,15,20时,MLSI均领先于其他算法。

按式⑿计算四种算法推荐结果的多样性。不同TOP-N下的推荐多样性计算结果如表2所示。

二者多样性结果具体对比图如图4所示。

由图4可以看出,MLSI算法是明显优越于其他三种算法的。UBCF和UCB由于未做过多多样性方面的改进,二者推荐多样性结果较差,而MLSI多样性效果最好。

综合准确度与多样性来看,MLSI算法在N=5和25时准确度上相比IUIT有所损失,但损失程度较小,大体上准确度有小幅提升,保证了一定的推荐准确度;MLSI算法在多样性上相比其余算法均有显著的提升,提升效果远大于损失的准确度程度。权衡考虑准确度与多样性的结果,可以看出在N=15和N=20时两方面取得了最优的结果。

4 结束语

考虑到不同用户的兴趣偏好也不同,本文提出了一种分类用户长短期兴趣并将其融合的推荐算法,改进了原有的基于用户的协同过滤算法,并在真实的数据集上验证了其有效性。用户的长短期兴趣在一定时间后可能会发生消失或更替,后期可在本文研究的基础上引入时间影响因子,深入分析不同时间段后用户长短期兴趣变化情况,从而使推荐列表与时俱进,更好地呈现多样化结果。

参考文献(References):

[1] Sun Zhoubao, Han Lixin, Huang Weiliang,et al.Recommender systems based on social networks[J]. Journal of Systems & Software,2015.99(C):109-119

[2] Castells P,Vargas S,Wang J. Novelty and diversity metrics for recommender systems:Choice, discoveryandrelevance[C]//Proceedings of International Workshop on Diversity. Chicago,USA,2013:29-37

[3] 姜书浩,张立毅,张志鑫.基于个性化的多样性优化算法[J].天津大学学报:自然科学与工程技术版,2018.51(10):1042-1049

[4] Antikacioglu A, Ravi R. Post Processing Recommender Systems for Diversity[C]//ACM SIGKDD International Conference. ACM,2017:707-716

[5] Lee S C, Kim S W, Park S, et al. A Single-Step Approach  to Recommendation Diversification[C]//the 26th International Conference. International World Wide Web Conferences Steering Committee,2017:809-810

[6] Jiang H, Qi X, Sun H. Choice-Based Recommender Systems: A Unified Approach to Achieving Relevancy and Diversity[J].Social Science Electronic Publishing,2014.62(5):973-993

[7] AdomaviciusG.Improving Aggregate Recommendation Diversity Using Ranking-Based Techniques[J].IEEE Transactions on Knowledge & Data Engineering,2012.24(5):896-911

[8] Vargas S. Novelty and diversity enhancement and evaluation in recommender systems[C]//International ACMSIGIR Conferenceon Research. Golden Coast,Australia,2014:1281

[9] 孫金扬,刘柏嵩,任豪等.NHRec:一种基于长短期兴趣的神经混合推荐模型[J].小型微型计算机系统,2020.11:2298-2302

[10] 石进平,李劲,和凤珍.基于社交关系和用户偏好的多样性图推荐方法[J].计算机科学,2018.45(6A):423-427

[11] F, MAXWELL, HARPER, et al. The MovieLens Datasets: History and Context[J].Acm Transactions on Interactive Intelligent Systems,2016.5(4):1911-1919

[12] 查文琴,梁昌勇,曹镭.基于用户聚类的协同过滤推荐方法[J].计算机技术与发展,2009.19(6):69-75

[13] 王成,朱志刚,张玉侠.基于用户的协同过滤算法的推荐效率和个性化改进[J].小型微型计算机系统,2016.3:428-432

猜你喜欢

推荐系统多样性准确度
幕墙用挂件安装准确度控制技术
基于用户偏好的信任网络随机游走推荐模型
基于个性化的协同过滤图书推荐算法研究
个性化推荐系统关键算法探讨
浅谈新时期群文辅导工作的特征
浅谈Mahout在个性化推荐系统中的应用
海洋微生物次生代谢的生物合成机制
舞蹈表演的表现形式多样性研究
水磨地区蕨类植物多样性调查分析
动态汽车衡准确度等级的现实意义