欢迎来到天天文库
浏览记录
ID:32636970
大小:56.32 KB
页数:5页
时间:2019-02-14
《基于用户实时行为的slopeone模型与算法》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、基于用户实时行为的SlopeOne模型与算法摘要:以技术创新平台为背景,针对原有协同过滤算法推荐滞后以及算法可扩展性差的问题,根据用户的实时反馈,在SlopeOne算法的基础上,提出了更新增量机制,分解出固定因子以及增量因子,当用户对项目的评分改变时,只需更新增量因子,提高了算法的可扩展性,更精确地反应了用户的兴趣变化。经算例验证,该算法在保证推荐精度的同时可以有效地缩短推荐时间。关键词:管理科学与工程;增量更新机制;SlopeOne算法;用户行为;实时推荐中图分类号:TP311文章标识码:A文章编号:1007-3221
2、(2015)01-0089-04引言随着互联网技术的迅速发展,技术创新平台日益成为目前的研究热点之一。其中技术推荐模块通过学习用户的偏好属性,将适当的技术推荐给用户,这样的个性化推荐也日益成为各学科研究的焦点。然而,随着用户的不断增多,原有的协同过滤算法存在可扩展性差的问题。并且,个性化推荐的耍求越来越高,耍求实时反映用户的兴趣变化,因为用户的历史兴趣并不代表其当前兴趣。SlopeOne算法是基于已有评分的协同过滤算法,该算法假设两个项目之间的评分满足线性y=x+6的关系,通过对这两个项目评分过的评分数据拟合该线性函数,
3、获得参数b的估计值,从而估计目标项目的评分。因此,该算法简单、高效,可扩展性强,常被用来做实时推荐。目前,针对反应用户兴趣变化的问题,文献借鉴了心理学遗忘规律,提出了线性逐步遗忘过滤算法,依据评价时间线性逐步减小每项评分的重要性,但是线性逐步减小比较粗糙。在此基础上,文献提出了在预测评分的过程中增加指数时间函数,数据越新,指数时间函数值越人,但依然没有解决数据的实时更新问题。文献提出的基于项目的协同过滤增量更新机制以及文献提岀的基于用户实时反馈的协同过滤算法解决了数据的在线实时更新问题,但是由于该算法计算相似性时涉及到整
4、个User-Item矩阵,时间和空间的复杂度较大。鉴于此,木文在已有的SlopeOne算法的基础上,根据用户的实时评分行为,分解出固定因子以及随评分改变的增量因子,改变了原有的推荐更新吋需要对整个数据空间进行重新计算的做法,只对增量因子做出改动,提高了算法的可扩展性。1SlopeOne算法首先对模型符号进行描述,X表示用户对技术项目的评分集合;ui表用户u对技术项目i的评分;Si,j(x)表示同时对技术项目i和技术项目j评分过的用户集合;card(S)为集合S中的元素个数。则技术项目i和jZ间的平均差异度为:根据用戸u对
5、技术项目i的评分预测用户对技术项目j的评分:其中Ri是所有技术项目j目关的项目集合,表示用户u评价过的技术项2基于用户实时反馈的增量更新机制2.1基于用户实时反馈的增量更新机制推荐模型当用户对技术项目进行进行评分时,需要触发相应的增量因子,以达到数据实时更新的目的。图1为增量更新机制推荐模型。2.2基于用户实时反馈的增量更新机制描述当用戸对技术项目提交了评分或者重新评分时,系统需要触发更新机制来更新技术项目之间的平均差异度,从而更新用户对技术项目的预测评分。(1)用户u对技术项目i进行了重新评分,则新的评分数据为,(2)
6、用户对技术项冃ni进行了初次评分,此时耍分两种情况:①目标用户对技术项目进行了初次评分则新评分技术项目与预测技术项目之间的差异度为:②其他用户k对技术项目in进行了初次评分a)目标用户未对该技术项目进行评分,则不会触动增量更新机制b)冃标用户已对该技术项冃进行评分,贝山2.3基于用户实时反馈的增量更新机制实现Rm,n为用户评分矩阵步骤1若用户对技术项目i进行重新评分,则计算并使用公式(7)计算用户对技术项目j的预测评分;步骤2若用户对技术项冃m进行初次评分,则判断该用户是冃标用户还是其他用户,若该用户为目标用户,则转向步
7、骤3;若该用户为其他用户,则转向步骤4;步骤3通过计算dm,j来更新五,使用公式(9)计算用户对技术项目j的预测评分;步骤4判断目标用户是否己对该技术项目进行评分,若目标用户己对该技术项目进行评分,则转向步骤5;否则不触动增量更新机制;步骤5计算,使用公式(12)计算用户对技术项目j的预测评分。3算例本文拟用创新驿站数据库中的技术供需方一技术对接项评分数据。将从其中随机选取300个用户对272个技术项目的25340个评分记录,分值为1〜5,分数越高,表示用户对该技术项冃越偏好。对于算法的评估,本文采用了平均绝对误差(Me
8、anAbsoluteTime,MAE)以及平均评估时间(MeanAssessTime,MAT)作为度量标准。将实验数据分为训练集以及测试集。设预测的用户评分集合表示为{pl,P2,K,pN},对应的实际用户评分集合为{ql,q2,…,qN},则平均绝对偏差MAE定义为:设用戸i发出请求时间为Tis用户得到推荐结果时间
此文档下载收益归作者所有