当前位置:文档之家› 基于时间的推荐系统方法研究

基于时间的推荐系统方法研究

2019年1月基于时间的推荐系统方法研究江蔚(山东省枣庄市第八中学,山东枣庄277000)【摘要】近年来,推荐系统的研究已经取得了突飞猛进的发展。

一般来说,用户兴趣会随时间产生差异,许多学者针对这一问题进行了研究,这些研究多是由整体角度进行分析,很少考虑用户具体时间段的兴趣变化,忽视了不同时间段对用户兴趣所造成的影响。

我们根据不同时间段用户兴趣的差异进行分析,在本文基于时间的推荐算法中,将时间分为工作日和非工作日,总结出用户兴趣变化趋势来进行用户间的交互,降低了时间差异对用户兴趣变化的影响,下一步,本文将对时间吻合度进行更深入的研究。

【关键词】时间;推荐系统;交互;用户兴趣【中图分类号】TP393.08【文献标识码】A【文章编号】1006-4222(2019)01-0192-021引言在互联网信息交错复杂的时期,用户很难确定哪一信息对自己是有用的,从而降低了办事效率,为提高用户找到满足自己兴趣的对象的速度,推荐系统应运而生。

但随着时代的变化,原有的推荐方法逐渐暴露出许多问题,其中最突出的问题是:由于用户的兴趣会随着年龄,潮流的变化而变化,而原有的推荐系统则并不能满足用户这一需求,且常用的协同过滤的潜在假设是:如果用户过去有相似的爱好那么他们未来也会有相似的偏好,用户偏好不会随时间而变化。

然而通过对用户偏好进行分析,本文发现,用户的偏好都与时间存在某种必然的联系,由此,本文对基于时间的推荐方法展开研究。

本文以时间为变量对原有的推荐系统进行完善和补充,从而使其更能适应用户的需求。

文献[1]中分析了时间与社会化网络之间的关系,当今世界是个快节奏的世界,善于抓住用户不断变化的兴趣才是王道,如果仅仅根据最初的推荐方法提供的推荐对象,并不能满足用户需求,反而会使用户对推荐系统的信任度降低,由此我们将用户最为关注的时间作为变量插入到推荐算法中,时间的变化也导致了推荐对象的改变,就使得整个推荐系统具有更大的灵活性,能够随时间变化而不断更新,从而满足用户猎奇感,也能进而满足用户对扩展新兴趣,发现新的,有趣的事物的需求。

文章考虑到如何在客户端与推荐对象端之间插入时间这一变量,将原本固定模式的推荐方法与时间系统相连,并根据不同时间段所流行的与用户可能的兴趣变化所对应,提取他们之间的潜在联系,比如用户之前喜欢听流行乐曲,而现在又有许多民谣特别流行,可以在流行歌曲推荐中插入个别民谣,后根据用户反映再次进行调整,这需要将时间这一第四维度函数进行压缩,并灵活运用,还要与用户最近一次兴趣调查所反映出的兴趣有较高的相似度但又不完全相同的个体相联系,推荐对象一部分为相似度非常高的,另一部分为有一定相似度但又不完全相同的,从而不至于使推荐系统僵化,为其注入新的信息和能量,对用户兴趣可能的变化趋势和研究与对时间这一多维度变量的压缩便为本文的研究难点。

本题做出的贡献主要在于对插入了时间变量的推荐系统进行研究,从而使推荐对象及矩阵具有更大的灵活性和可变性,更能够适应时代的变化和时间变化所带来的用户兴趣的变化。

之前许多对推荐系统的研究多是针对用户要么就是更好的对推荐对象进行选取,很少有引入一个新的变量的,我们这里引入时间这一变量,也许不仅能用于解决用户兴趣变化这一问题,随着对时间研究的深入,我们可以更好的将时间中的各类特征插入到推荐算法之中,从而对其进行完善。

除此之外,考虑时间变量的推荐系统对用户兴趣变化做出了合理的预测,并与时间相对应,如果用户上一次给出评价所隔时间过长,便可根据用户最近一次的兴趣调查与当前的时代背景进行结合,从而提高预测精准度。

2基于时间的推荐系统概述2.1传统推荐系统传统推荐系统主要分为基于内容的推荐,协同过滤推荐和基于知识的推荐。

其中,基于内容的推荐主要通过提取物品的特征描述和属性信息来进行对应的推荐,这类推荐的优点在于可以有效利用物品信息,但却不能与其他用户进行更好的交流,协同过滤推荐则更充分的应用了其他用户的信息和集体协作的思想,但在内容方面又有所欠缺。

基于知识的推荐则利用因果关系完善了传统推荐系统,这类推荐考虑到了人们的生活常识,但同样没有与其他用户进行交互。

近年来,传统推荐系统发展迅速,而推荐过程中的用户偏好获取这一环节也在显式偏好获取和隐式偏好获取上取得了较大的突破。

推荐方法上也有许多出色的研究,比如:文献[2]中基于时间的移动推荐,通过分析用户白天,晚上的行动变化来利用时间上下文对移动用户偏好进行准确获取,但其主要对用户每日的行为随时间的变化进行研究,未注意到用户兴趣的长期变化,这种变化虽然缓慢,但在推荐过程中也是不可忽视的一点。

2.2基于时间的推荐系统概述时间是一个多维度的量,在将时间代入推荐系统进行分析这一方面中,也有学者进行过许多优秀的研究,文献[3]中引入了艾宾浩斯遗忘曲线,提出了基于用户兴趣的项目关联度计算方法,由此推断用户兴趣随时间变化而衰减,并提出了引入时间推算用户兴趣变化的良好方式,但时间与记忆不同,不只有兴趣的衰减,还有多种因素影响下的兴趣变化,仅用记忆来分析太过片面。

而文献[4]则创新的引用惩罚因子,防止模型产生过度拟合,引入时间因素对评分进行完善,更好的获取用户兴趣偏好,但未能在用户兴趣的计算方面引入时间,导致结果不够彻底。

许多新型推荐方法,如组推荐,上下文感知推荐,移动推荐中也纷纷引入时间进行研究,文献[5]在组推荐中还研究了许多偏好融合的方法但多为范围较广的概述,并未对如何引入时间进行辩证的分析,基于这一问题,我们将在下一节中提出解决方法。

2.3基于时间的推荐系统应用场景2.3.1音乐电影推荐音乐、电影随时间变化,热度也相应的有所不同,所以需要根据时间变化及时推出新的推荐,以适应用户不断变化的需求。

音乐的推荐可根据用户情绪随时间变化来决定,早晨可以适当的推荐一些快节奏的歌曲来为一天的开始做好准备,晚上则相反,应推荐柔和的乐曲来缓解用户一天的疲劳心情。

另一方面,工作日用户大多不会接触新歌曲,而是选择听之前论述1922019年1月收藏过的乐曲,而节假日,用户的心情一般比较轻松,这时应适当推荐的种类多一些以适应用户新奇度的需求。

电影的推荐则要更复杂一些,工作日的繁忙,决定了工作日最好推荐相对较短的电影,而把时间长的电影放在节假日作为推荐,根据得出的用户偏好再代入时间的框架进行梳理,从而达到更好的提高推荐系统准确度的目的。

2.3.2旅游推荐在旅游方面,基于时间的推荐显得尤为重要,随着季节的变化,各旅游景点的热度有所不同,主要是因为景观特征随季节变化,如枫树林、冰雕。

还有温度的差异,例如每到夏天,各大水乐园就极为火爆。

其次,除季节外,节假日也是必要时间因素,根据节假日的时间长短进行符合用户时间安排的推荐更是再合适不过。

2.3.3餐饮推荐餐饮推荐是一个最基本的引入时间进行推荐的话题,每一个正宗的“吃货”都知道什么时候该吃什么,什么时候不该吃什么,更要根据季节,温度,天气对用户兴趣进行正确的评估,早饭一般吃的比较少,多为油条,稀饭,面条等食品,午饭和晚饭则多为较丰盛的大餐。

夏季多吃清凉的食品而冬季可以推荐火锅等较暖的食品,以满足用户不同的需求。

2.3.4移动推荐移动推荐应用广泛,文献[6]中便对时间进行了分析,在变化更快的移动数据中,时间自然是必不可少的,可利用移动推荐设备寻找最适合的方法进行推荐,利用移动软件能够能便捷的找到与时间的匹配关系,从而满足移动推荐的实时性,顺应发展趋势。

3基于时间的推荐系统关键技术3.1用户兴趣随时间变化趋势我们将时间划分为工作日和非工作日进行研究,因为工作繁忙,多数上班族没有时间逛街,购物,要买什么东西大多会采纳身边同事,亲友的意见,这时协同过滤就显得尤为重要,需要在推荐方法上对协同过滤加大权重,而与此相反,非工作日和节假日,人们有更多时间,也有更多选择的余地,这时基于内容的推荐方法便能起到更好的效果。

文献[7]中通过权重不同,推荐结果也有差异,所以工作日时在用户交互方面增加权重,非工作日时则在个人信息方面增加权重。

我们还要关注用户兴趣的变化,文献[8]中便对用户兴趣进行了研究,但单一的认为用户兴趣只是衰减是不全面的,其中工作日由于封闭的工作环境,用户兴趣受外界影响小,变化也不是很明显,多会延续前一天的兴趣,而鲜有精力去拓宽新的领域,非工作日则恰恰相反,休息过后,用户更想要崭新的体验,与人交往增多,受外界影响程度也同时提高,特别是旅游时更会因经历不同的文化,用户兴趣很容易潜移默化的收到影响,兴趣变化更大一些,于是就形成了两种不同的趋势,构成分段函数模型,对此,我们将在下一节中讲到。

3.2基于时间的推荐系统的关键技术3.2.1偏好获取方法文献[9]中通过用户认知行为研究了上下文环境中的偏好获取方法,由于我们仅仅通过时间进行研究,所以与其有所不同,通过显式偏好获取和隐式偏好获取的传统推荐方法获取用户偏好和历史偏好后,将时间作为标签代入,构建时间-用户偏好函数模型,整理出用户兴趣受时间影响趋势。

基于时间的偏好获取与传统推荐系统不同之处在于其更关注时间点以及时间与用户偏好之间的关系。

3.2.2模型构建由上一节分析,基于时间的推荐系统大致可分为两个方向进行研究,其中工作日用户兴趣受外界影响小,但因工作繁忙同事意见决定多,所以Time{x,y}=∑time{x workday,y},其中x为[1,5],其方法大致与传统推荐算法相同,但因为工作日用户多采纳其他同事的意见,所以通过分析近段时间与用户关系较为紧密且相似度高的用户兴趣进行推荐,而用户自身兴趣变化则由于工作关系变化较小,取上一次的兴趣就可以。

非工作日,由上一节分析可知,更多的由用户自身偏好决定,问题关键在于用户自身偏好并不是一成不变的,所以设用户偏好变量为s,则x取[6,7]时Time{x,y}=∑time{x weekend, y+s},由于s的取值为用户偏好变量取值,用户偏好又受天气、地域、文化、时间等多种因素的影响,而本文中s为用户周末兴趣变化,也就是受时间影响的偏好变量。

通过类似协同过滤的方法,分析有过相似偏好的其他用户偏好演变可得,用户偏好变化最大的作为S max,用户偏好变化最小的作为S min,S取S max与S min间的任意值代入到上式进行计算。

则x取[1,5时, time{x,y}=∑time{x workday,y},当x取[6,7]时,time{x,y}=∑time{x weekend,y+s},其他特殊情况如节假日归入第二种情况。

3.3小结通过传统方法对用户偏好进行提取,将显式偏好获取和隐式偏好获取所得用户偏好与相应的时间点连接起来,然后分类代入上述公式。

不论是工作日还是非工作日,基于时间的推荐算法都与用户交互密不可分,要想更精确的算出s的取值,并对用户进行推荐,就必须要对用户偏好与时间的关系进行更为详尽的解释,构建时间———用户偏好趋势便成了绝佳的选择,趋势大致应为上节所推断,即非工作日活动量小,变化缓慢,工作日活动量大,变化快。

相关主题