基于改进的双极Slope One算法的农业信息推荐模型研究

来源 :安徽农业科学 | 被引量 : 0次 | 上传用户:dadiguilai
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
  摘要 为了在海量信息中为用户提供有价值的信息,个性化在线推荐系统是农业信息化综合服务平台的重要组成部分。Slope One算法因简单高效被许多在线推荐系统使用。对Slope One算法进行研究,并结合农业信息化综合服务平台的特点,提出了农业信息推荐模型。该模型按资源类别把用户评分矩阵划分为评分子矩阵,在此基础上采用杰卡德统一算子距离相似度算法建立用户类别近邻用户,采用改进的双极Slope One算法和Item user average算法相结合的方式对未访问资源进行评分预测,有效降低计算量,并提高了评分预测精度,既适合稠密数据集,又适合稀疏数据集。
  关键词 杰卡德统一算子距离相似度算法;双极Slope one算法;Item user average算法;农业信息;个性化推荐
  中图分类号S126文献标识码A文章编号0517-6611(2014)29-10394-03
  基金项目山东省自主创新专项(2012CX90204)。
  作者简介张启宇(1977- ),男,山东荣成人,讲师,硕士,从事计算机科学与技术研究。*通讯作者,从事农业信息化研究。
  农业信息化综合服务平台利用现代信息网络技术,为农村、农民、中小型企业及更多用户提供海量的农业相关信息,农业新闻、科技动态、市场信息等等为用户提供便捷的信息通道。但面对众多信息,如何给用户准确提供所需信息是要解决的一个重要问题。个性化在线推荐系统是众多网站的选择。协同过滤技术是应用最为广泛的个性化推荐技术,是推荐系统的一个重要组成部分。协同过滤通过参考与活动用户具有相似兴趣和需求的其他用户的选择来决定如何为该用户进行信息过滤[1]。Slope One算法是基于评分的协同过滤算法[2],被许多在线推荐系统使用,如Hitflip DVD推荐系统、inDiscover MP3推荐系统、Value Investing News股票新闻网站、AllTheBests购物推荐引擎等[3]。
  Slope One算法族[2]包括Slope One算法、加权Slope One算法和双极Slope One算法,是基于项目的评分预测算法,采用线性模型进行评分预测,简单易实现、高效、准确度高、支持在线查询和动态更新。Slope One算法族主要有3个方面的缺陷[4-5]:没有考虑用户之间的相似性;没有考虑项目之间的相似性;在数据稀疏的情况下,推荐效果不如传统协同过滤算法好。为了解决上述问题,一些学者提出了改良办法。如王小亮把K均值聚类算法和加权Slope One算法相结合[6],李文刚把基于用户协同过滤算法和加权Slope One算法相结合[7],孙丽梅等提出了一种动态K近邻和Slope One相结合的算法[3],这3种方法都是对用户寻找邻居用户群,再利用近邻用户的评分数据生成项目之间的平均偏差,进行评分预测。杨晶提出了基于用户兴趣模型的 Slope one算法,利用用户兴趣模型计算目标的相似用户群,以缩小预测目标项目评分时的数据搜索范围,提出改进的基于用户相似度的项目评分平均差值公式,提高相似用户在评分平均差值计算中的贡献[8]。王毅等提出一种基于项目语义相似度的改进Slope One算法,但WordNet语义相似度只适合英文[9]。宋晗为Slope One算法引入了一种相似度权重[10]。林德军提出了基于用户兴趣局部相似性的Slope One算法、基于Kmeans项目聚类的Slope One算法以及基于奇异值分解的Slope One算法[4]。董丽等对5种协作过滤算法Userbased(近邻数为20)、Itembased、Item average、Item user average和Slope One进行测试,结果Item user average算法无论在稠密还是稀疏数据集上都有良好的表现[5]。
  为建设农业信息化综合服务平台,推进农村社会服务信息化,笔者按资源类别把用户评分矩阵划分为评分子矩阵,采用杰卡德统一算子距离相似度算法建立用户类别近邻用户,采用改进的双极Slope One 算法和Item user average算法相结合的方式建立个性化农业信息推荐模型,能够有效解决Slope One算法族3个主要缺陷。
  1Slope One算法族
  1.1Slope One算法Lemire等于2005年提出的Slope One算法族[2]是对项目评分进行预测的算法,该算法不会计算用户或项目之间的相似度。依据Slope One算法,对如表1所示的用户评分表中用户B项目2进行评分预测。预测结果为:2+(1.5-1)/1=2.5。即Slope One算法的原理是基于线性回归进行预测,预测器采用f(x)=x+b的形式,b为常数,表示用户对两个项目评分的平均偏差。
  1.2加权Slope One算法在推荐系统中,用户的评分项目数一般大于2,为了均衡每个项目对目标项目的影响,产生了加权Slope One算法。如通过用户A对项目J和K的评分预测用户A对项目L的评分,其中2 000用户对项目J和L评分、20用户对项目K和L评分、用户A对项目L的评分采用用户A对项目J的评分比项目K的评分进行预测更好一些。因此Daniel Lemire等提出加权Slope One预测评分公式:
  1.3双极Slope One算法双极Slope One算法考虑用户对项目的喜好,将用户u的评分分为两组:S1(u)={i∈S(u)|ui>}(喜欢)和S2(u)={i∈S(u)|ui<}(不喜欢)。对项目i和j,评分集合T分为两组:S1ji={u∈T|i,j∈S1(u)}(喜欢)和S2ji={u∈T|i,j∈S2(u)}(不喜欢)。用户喜欢和不喜欢的项目评分分别计算喜欢偏差dev1ji和不喜欢偏差dev2ji,再加权平均进行预测:
  2改进的双极Slope One协同过滤算法   改进的双极Slope One协同过滤算法主要有4个步骤:评分表示、邻居形成、评分预测和推荐生成。其流程图如图1所示。
  2.1评分表示用户评分数据可以用1个m×n阶矩阵R表示,其中m行代表m个用户,n列代表n个项目,第i行第j列的元素Rij代表用户i对项目j的评分。评分方式一般有2种:①用0和1来表示用户的偏好(喜欢/不喜欢)、购买状态(已购买/未购买)或访问状态(访问/未访问);②用数字分级表示用户对项目的喜好值,如MovieLens中用户对电影的评分以从 0~5的整数来表示用户的喜好,0表示没有评分,数值越大表示用户偏爱程度越大[11]。
  第1种评分方式比较简单,不能表现出用户的兴趣。而让用户对资源进行显式评分,不一定能够得到真实的评分,因此在农业信息化综合服务平中,用户对资源的评价采用隐式方式。该研究中,借鉴网络上流行的点赞和分享的功能进行用户对资源的打分。在每一个资源的页面,参照点赞的形式,设置喜欢和不喜欢的点击功能,参照分享的形式,设置分享到百度贴吧、QQ空间、豆瓣网、新浪微博、腾讯微博、网易微博和人人网等7个目前国内比较常用的信息平台。通过对用户行为的监测,来统计用户对资源的评分。具体的评分规则为:①若用户只访问资源,+1;②若用户点喜欢,访问+1,喜欢+1,每分享一个+1;③若用户点不喜欢,访问-1,不喜欢-1,每分享一个-1;④若用户直接分享,访问+1,每分享一个+1;⑤没有访问的资源,评分为null。
  2.2邻居形成度量用户之间相似性的方法[12-13]有余弦相似性、相关相似性、修正余弦相似性、修正相关相似性等。孙慧峰提出了杰卡德统一算子距离相似度算法(Jaccard Uniform Operator Distance Similarity Measurement,简记为JacUOD)进行相似度计算,并与上述4种方法进行对比验证,表明JacUOD效果最好[13]。采用JacUOD对两个用户u、v进行相似度计算公式为:
  计算用户相似度的目的是求出近邻用户集,通过近邻用户集对未访问项目进行评分预测,提高预测精度。在农业信息化综合服务平台中包含很多类别的页面(项目),若是把全部项目用于计算用户相似度,得到的近邻用户集不一定准确。因为用户一般有多种兴趣爱好,不同的用户之间在一种兴趣上相似而在另外一种兴趣上可能相异,若共同计算相似度,必然导致计算结果不准确。利用项目类别把用户评分矩阵划分为m个子矩阵(m为类别个数),对每一个子矩阵利用公式(2)进行相似度的计算,这样得到的近邻用户集更准确。
  为了获取近邻用户集,设定一个阈值c。满足simt(u,v)≥c的用户v加入到用户u的近邻用户集中。
  2.3评分预测用户之间是否有共同评分项将评分预测方法分为2种。当用户之间有共同评分项时,可利用改进的双极Slope One算法预测评分,重点利用JacUOD进行相似度计算,求邻近用户集,利用双极Slope One算法计算获得用户评分;当用户之间没有共同评分项时,利用Item user average算法求资源用户平均值,获得预测评分,流程图如图2所示。
  双极Slope One算法要求用户之间有共同评分项才能进行预测。若预测用户u对项目i的评分,而项目i对应的类别评分子矩阵计算的近邻用户集中没有用户和用户u有共同评分项,那么无法进行评分预测。此时需要寻找其他的方法进行预测。因此选择Item user average算法在双极Slope One算法不能预测评分情况下进行预测评分。
  Item user average算法[5]即资源用户平均值算法,预测用户ui对资源tj的评分时,综合考虑所有用户对资源tj的评分均值rj(t),用户ui对所有资源的评分均值ri(u),以及所有用户对所有资源的评分均值,即:
  对用户未访问过即评分为null的项目进行评分预测,采用改进的双极Slope One算法预测其评分;若改进的双极Slope One算法不能预测,采用Item user average算法预测其评分。
  2.4推荐生成对用户的每一个未访问项目进行评分预测,取预测分值最高的N项作为用户的推荐项。
  3结语
  该研究根据农业信息化综合服务平台的特点,按资源类别把用户评分矩阵划分为评分子矩阵,在此基础上采用杰卡德统一算子距离相似度算法建立用户类别近邻用户,采用改进的双极Slope One算法和Item user average算法相结合的方式对未访问资源进行评分预测。该方法可降低计算量,并提高评分预测精度,既适合稠密数据集,又适合稀疏数据集。
  参考文献
  [1] 孙小华.协同过滤系统的稀疏性与冷启动问题研究[D].杭州:浙江大学,2005.
  [2] LEMIRE D,MACLACHLAN A.Slope One predictors for online ratingbased collaborative ffiltering[C]//Proceedings of SIAM Data Mining Conference.Newport Beach,California,2005:471-475.
  [3] 孙丽梅,李晶皎,孙焕良.基于动态k近邻的Slope One协同过滤推荐算法[J].清华大学学报:自然科学版,2011,5(9):857-864.
  [4] 林德军.基于Slope One改进算法推荐模型的设计与实现[D].北京:北京邮电大学,2012.
  [5] 董丽,邢春晓,王克宏.基于不同数据集的协作过滤算法评测[J].清华大学学报:自然科学版,2009,49(4):590-594.
  [6] 王小亮.基于协同过滤的个性化推荐算法 的优化和应用[D].杭州:浙江工商大学,2010.
  [7] 李文刚.奢侈品电子商务推荐的协同过滤算法研究与应用[D].上海:复旦大学,2012.
  [8] 杨晶.用户兴趣模型及实时个性化推荐算法研究[D].南京:南京邮电大学,2013.
  [9] 王毅,楼恒越.一种改进的Slope One协同过滤算法[J].计算机科学,2011,38(S1):192-194.
  [10] 宋晗.基于加权偏差表的Slope One改进算法研究[D].昆明:云南大学,2013.
  [11] 杨芳,潘一飞,李杰,等.一种改进的协同过滤推荐算法[J].河北工业大学学报,2010,39(3):82-87.
  [12] 王辉,高利军,王听忠.个性化服务中基于用户聚类的协同过滤推荐[J].计算机应用,2007,27(5):1225-1227.
其他文献
一面面鲜红的党旗,一枚枚跃动闪亮的党徽,在一座座巍峨铁塔、一根根电网银线的衬托下,构成了八桂大地上最美的图画。
摘要 [目的]对枯草芽孢杆菌BS11抗真菌活性物质进行研究,为该菌株的进一步开发应用提供参考。[方法]比较了枯草芽孢杆菌BS11在LB和NB培养基上的生长情况,比较了3种方法提取该菌株活性物质的效果,并探讨了该菌株的最佳培养条件。[结果]以香蕉枯萎病菌为指示菌,发现拮抗菌在LB和NA 2种不同培养基中有很明显的差别,LB培养基中生长繁殖速度快,但上清液活性很低,NA培养基中繁殖速度较慢,上清液活性
谈心是思想政治丁作的重要内容,也是企业领导和政工干部必备的领导艺术和工作方法。开展谈心活动是企业管理中经常性思想政治工作的一种有效方法,是密切干群关系、增进同事情谊
在分析物联网应用于设施农业的关键作用的基础上,设计了一套基于物联网技术的智能温室大棚监控方案,简述了其系统架构以及功能。针对农产品质量安全追溯的需求,利用物联网技术(如RFID)、二维码等信息感应技术实现了对农产品质量的安全监督。
D.A.Towers在“Elementary lie Algebras”一文中论证了基本李代数的结构定理。本文在此基础上,给出了基本李代数的一个充分必要条件。
目的:探讨培美曲塞单药或联合顺铂二线治疗晚期复发或进展的非小细胞肺癌(NSCLC)的临床疗效及不良反应。方法:经病理学或细胞学确诊,一线化疗后出现复发或进展的晚期非小细胞肺癌
本文分析了目前各种电力电缆绝缘故障在线监测方法的利弊,提出基于差频法的在线监测方案,并进行模拟试验和分析,验证了该方案的合理性和试验装置的实用性,为电力电缆绝缘故障在线
摘要 在调查农林院校大学生人生价值观特征状况的基础上,对在校大学生人生价值观进行实证调研与分析,呈现大学生现实的人生价值观取向,分析不同群体的大学生人生价值观的差异,以期帮助农林院校大学生获得更好的生存和发展空间。并为培养大学生正确的人生价值观提出可行性建议与引导对策。  关键词 农林类大学生;人生价值观;特征状况;引导对策  中图分类号 S-01 文献标识码 A 文章编号 0517-6611(2
巨龙昂首,高山出平湖;银线飞架,天堑变通途!作为西部大开发和西电东送的标志性工程,龙滩电站工程自2001年7月1日正式开工建设,于今年5月第一台70万千瓦机组投入试运行。六载的风雨