基于二分网络双向扩散的个性化推荐方法技术

技术编号:12019094 阅读:152 留言:0更新日期:2015-09-09 16:09
本发明专利技术公开了一种基于二分网络双向扩散的个性化推荐方法,针对Top-N的个性化推荐,主要解决了推荐列表的准确性,多样性及新颖度几个主要算法性能指标的冲突。其实现步骤为:(1)构建用户-物品关联的二分图网络。假设每个目标用户节点都有某种可分的资源,可以按预定分配机制分配给其它节点对象;(2)建立物品-物品及用户-用户的二阶关联矩阵;(3)完成双向扩散过程,得到用户-物品的兴趣矩阵;(4)给出每个用户的长度为N的推荐列表,完成Top-N的推荐。本发明专利技术基于网络传播的思想,效果明显好于经典的协同过滤方法,更好的实现了个性化推荐系统所关注的长尾挖掘,可用于解决个性化推荐的Top-N问题。

【技术实现步骤摘要】

本专利技术属于推荐系统领域,将网络传播的方法和目前备受关注的个性化推荐系统 相结合,具体是一种基于二分网络初始资源双向扩散的个性化推荐方法,可用于解决个性 化Top-N的推荐。
技术介绍
随着信息技术的快速发展,互联网时代的到来,人们的生活也发生了深刻而巨大 的变化。网络生活成为必不可少的部分,诸如网上商城,在线影院,网络书店等等,为人们的 生活带来了极大的便利,但与此同时,信息过载让人有些应接不暇,疲于在庞杂的信息当中 苦苦寻找对自己有用的信息,例如,Amazon的数百万本图书,Netflix的上十万部电影,豆 瓣、淘宝的形形色色商品更是不计其数,在这样规模的数量中找自己感兴趣的,无疑是个灾 难。在这个大数据到来的时代,有效而又高效的推荐系统研宄已经迫在眉睫。此外,除了电 子商务领域,推荐系统也被广泛应用在各行各业,像新闻推荐,旅游推荐,社交朋友推荐,甚 至论文评审推荐,招标项目推荐等等。 传统的推荐方案只是给所有的用户提供近乎一模一样的推荐列表,且大多是司空 见惯的流行度很大的商品,无法根据用户个人身份、年龄和兴趣的差异来进行有目的针对 性的推荐,事实证明,在信息爆炸的时代,这样的推荐是十分低效的,不仅不能为商家获得 很好的销售业绩提供帮助,反而使得用户极其反感。由此,所谓个性化推荐应运而生,即充 分利用商家所掌握的巨大的用户历史数据,在此基础上进行分析过滤,深度挖掘个人的需 求和兴趣趋向,想用户所想,为不同的用户制定不同的推荐列表,用户通过自己的行为可以 改变推荐结果。 优秀的个性化推荐系统为用户快速找到自己需要的合适信息提供了极大的方便, 同时让商家在众多的竞争者中脱颖而出,获得更大的点击量和销售额,据VentureBeat统 计,Amazon的个性推荐为其提高35%的销售业绩。个性化推荐系统在很多商业网站上已经 获得成功的应用,其中具有代表性的有Amzaon的电子商务推荐,Netflix和Movielens电影 推荐,Youtube和Hulu的视频推荐,Lastfm的音乐推荐,google的新闻推荐,Wanderfly的 旅游推荐,Facebook和Twitter的社交好友推荐以及国内的豆瓣电台,天猫商城,当当网, 优酷视频,人人网等等。Netflix还曾开出100万美元的巨奖来征集能够把他们网站上的推 荐结果提高10%的方法。 自20世纪90年代以来,已经陆续有一些优秀的推荐系统方法被提出来,可以分为 以下几类:协同过滤系统;基于内容的推荐系统;混合的推荐系统;基于社交网络的推荐系 统。其中主要的思想都是根据用户或者物品的相似性来进行的推荐,通过牺牲推荐列表的 这样相同的物品有很大概率被推荐给众多不同的用户,以至于推荐列表很大的相似性,所 推荐的大部分物品又是流行商品。 商品销售往往是具有"马太效应"的,即多的越多,少的越少,这就导致物品流行度 的分布成长尾式,处于流行度大的物品种类逐渐递减,数量上占大多数的不流行物品就被 称作长尾商品。理想的个性化推荐系统应该关注的不仅仅是推荐结果的正确性,同样重要 的还有其长尾挖掘的能力,即把不太惹人注目的商品恰到好处的推荐给需要的人群。如果 一个推荐系统通过推荐大量相似度很大的列表给用户,从而保证其正确率,显然是不符合 个性化需求的,用户也会很反感商家为什么给自己推荐这么多相似的东西,而那些不怎么 "招人喜欢"的商品则看起来很能保证销量。为了衡量这种冲突,用推荐结果的准确性,多样 性和新颖度来综合评价一个算法的好坏才是合理的。 正是由于传统算法糟糕的多样性和新颖度指标,基于网络结构的推荐方法近些年 兴起,基于网络的算法不考虑用户和产品的内容特征,仅仅把其用户和物品看作抽象节点, 通过节点间信息的相互传递来确定用户节点对所有物品的联系,所有算法所利用的信息都 藏在用户和物品的选择关系之中。一种基于二分网络的推荐的混合算法(HPH)在"Solving theapparentdiversity-accuracydilemmaofrecommendersystems''(Proceedingsof theNationalAcademyofSciencesoftheUSA-PNAS107(10) ;4511_4515,2010)中被 Zhou等提出,这种方法尝试将两种特色鲜明的二分图推荐算法混合,通过调节两者重要性 的因子找到长尾挖掘和推荐准确性的折中方案。实验证明,恰到好处的为用户推荐一些不 流行的长尾商品能够得到比一味推荐流行度较大的方案更高的准确率,与此同时,推荐结 果的多样性和新颖度指标也会达到不错的效果。针对这种方法,有不少文献在其后给出一 些改进的方案来进一步优化推荐的结果。 另一种基于二分网络的推荐方法由Liu等在"informationfilteringvia biasedheatconduction"(PhysicalreviewE84,037101,2011)中提出,这是一种在基 于二分网络的热传导算法基础上改进的方法(BHC)。基于二分网络的热传导算法(Heats) 是模拟初始资源分配的过程提出的推荐算法,该算法由于对流行的物品的影响进行了较大 程度的抑制,导致推荐结果过多的呈现出长尾物品,从而有很好的新颖度和糟糕的准确性, 这意味着推荐结果不能很好预测用户的需求,纵使良好的商品覆盖率,它并不能直接作为 推荐结果给用户。Liu在这个方法基础上通过调节流行物品影响因子来使原来的算法以牺 牲部分新颖度获得较好的准确性和多样性,设置合理的参数后,推荐结果有不错的效果。 本专利技术是在借鉴先前研宄成果的基础上,对基于二分网络的热传导算法进行了完 善改进,在调节推荐结果的流行性分布过程中,对推荐系统三个重要指标都有了显著的提 高。该专利技术能够为用户提供了体验更好的推荐结果。
技术实现思路
本专利技术的目的在于针对Heats方法推荐结果糟糕的准确率,提出一种基于二分网 络双向扩散的方法,在准确性、多样性和新颖度之间找到折中方案,以获得更好的推荐结 果,同时改善推荐系统中的冷启动问题,实现Top-N的推荐,即为每个用户提供一份含有N 个商品的推荐列表。为了方便叙述,这里假设本方法应用于电子购物网站,为用户推荐有可 能感兴趣的商品。 本专利技术的技术方案是:将用户-物品之间的历史记录构造为简单二分网络,通过 用户节点和物品节点间的连线来表示该用户是否对该物品发生过购买行为。因为推荐算法 的根本目的是预测用户对未购买的物品的兴趣程度,在二分网络结构中,我们通过初始资 源的重新配置来估计目标用户对未购买物品的兴趣程度,类似于三步的随机游走的过程, 假设每个节点都有某种可分的资源,可以按一定比例分配给自己喜欢的其它节点对象,通 过相连节点资源的不断扩散,达到重新分配,从而建立没有直接联系节点间的关系。 (1)构造用户-物品的二进制矩阵A,只考虑购买关系,诸如购买次数、购买时间、 物品标签等等其它信息不纳入考虑范围。如果一个物品j曾经被用户i购买过,则au= 1 ; 否则%= 0。并由此建立用户-物品的二分网络,假设物品数量为n,用户数量为m; (2)计算物品间二阶关联性: 设初始状态下的二分网络的所有物品节点和用户节点所包含资源数量均为0 : 2a本文档来自技高网
...

【技术保护点】
一种基于二分网络双向扩散的个性化推荐方法,所述方法包括下列步骤:(1)根据用户的历史行为记录来构建用户‑物品的二分网络,用户的历史行为记录包括用户购买物品的记录或者用户对物品的评价记录:设用户节点集合U={u1,u2,...,um},m为用户的数目,物品节点集合O={o1,o2,...,on},n为物品的数目,Re记录用户和物品之间的交互关系,该交互关系与用户的历史行为记录对应,只考虑用户是否购买或评价过物品的二元关系。构建用户‑物品的二分网络的图模型,其中用户节点与用户节点之间无连接,物品节点与物品节点之间也没有连接,只在发生过交互关系的用户节点与物品节点之间建立连接;如果用户节点与物品节点发生过交互关系,则在Re中生成记录<U,O>;用二元矩阵Am×n=(aij)m×n来表示该二分网络中的连接信息,其中aij=1,<ui,oj>∈Re0,<ui,oj>∉Re]]><ui,oj>表示第i个用户节点与第j个物品;aij是二元矩阵Am×n第i行第j列的元素;(2)计算物品间二阶关联性:假设二分网络的所有节点均可以储藏一定量的资源,初始状态下的所有网络节点所含资源数量均为0:2a)从物品节点集合O中选择某一物品节点为初始激活的物品节点,并拥有1个单位的资源,其它节点未激活,资源数量为0;2b)单位资源从初始激活的物品节点向与它相连的用户节点扩散,用户节点接受的资源数量等于它相连物品节点所拥有总量的平均数;2c)到达用户节点的资源再返回所有物品节点,物品节点接受的资源数量等于它相连用户节点所拥有总量的平均数;通过某一初始激活物品节点→用户节点→物品节点的扩散过程,这样原先资源数量为0的物品节点得到一定数量资源,得到资源数量越多的物品节点,视为与初始激活的物品节点越相似。依次选择不同的初始激活的物品节点,重复上面过程直到遍历完所有物品节点集合O,即可得到物品‑物品的二阶关联矩阵;(3)计算用户间二阶关联性:设二分网络处于初始状态,所有节点资源数量均为0:3a)从用户节点集合U中选择某一用户节点为初始激活的用户节点,并拥有1个单位的资源,其它节点未激活,资源数量为0;3b)1个单位的资源从初始激活的用户节点向与它相连的物品节点扩散,物品节点接受的资源数量等于与它相连用户节点所拥有总量的平均数;3c)到达物品节点的资源再返回所有用户节点,用户节点接受的资源数量等于它相连物品节点所拥有总量的平均数;通过某一初始激活用户节点→物品节点→用户节点的扩散过程,这样原先资源数量为0的用户节点得到一定数量资源,得到资源数量越多的用户节点,视为与初始激活的用户节点越相似。依次选择不同的初始激活的用户节点,重复上面过程直到遍历完所有用户节点集合U,即可得到用户‑用户的二阶关联矩阵;(4)完成资源双向扩散过程:设二分网络处于初始状态,所有节点资源数量为0:4a)正向资源扩散过程:对于某一目标用户节点ut,设与其相连接的物品节点均为初始激活状态,并拥有一个单位数量资源,其它节点未激活,资源量为0;然后基于步骤(2)计算得到的物品之间的关联性,将这些初始激活物品节点的资源按比例配给所有物品节点;4b)逆向资源扩散过程:选择某一物品节点ot,经过正向扩散后,该物品节点得到数量为r的资源;设与ot相连接的用户节点被激活,并各自拥有数量为rλ的资源,λ是调优参数;然后基于步骤(3)计算得到的用户之间的关联性,将所有激活的用户节点所拥有的资源按比例分配给所有用户节点;用户节点ut得到从物品节点ot反馈回的资源数量,用来表征用户ut对物品ot的感兴趣的程度;4c)依次选取集合O中其它物品节点,完成4b)的过程,直到遍历完所有物品节点,得到用户ut对所有物品的感兴趣的程度列表;4d)依次选取集合U中其它用户节点,完成4a)~4c)的过程,直到遍历完所有用户节点,得到所有用户对所有物品的感兴趣程度,用m×n的矩阵M记录下来;(5)给出对应于每个用户的长度为N的物品推荐列表:N的大小依据实际需要确定,表示为每个用户提供N个推荐物品;5a)将最终的用户‑物品兴趣度矩阵M每行按从大到小排列,即按兴趣程度的大小,为每个用户都整理出他的兴趣表;5b)为每个用户推荐N个没有购买过的兴趣值排行靠前的物品。...

【技术特征摘要】

【专利技术属性】
技术研发人员:马文萍焦李成冯翔马晶晶侯彪王爽其他发明人请求不公开姓名
申请(专利权)人:西安电子科技大学
类型:发明
国别省市:陕西;61

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1