推荐系统小结

Posted mthoutai

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了推荐系统小结相关的知识,希望对你有一定的参考价值。

推荐系统(RecSys)作为电子商务中一个非常火的应用。主要是为了帮助用户发现可能感兴趣的东西,这样的就叫做个性化推荐系统;而广告商还能够利用结果将内容投放给可能会对它们感兴趣的用户,这就成了个性化广告。比較著名的推荐系统有亚马逊,被RWW(读写网)称为“推荐系统之王”,你从亚马逊买了一本书以后。会发现它会常常向你的邮箱发一些相关的书籍,这个有时比較恼人,呵呵;此外还要电影和视频站点,像YouTube和Hulu等会美国比較著名的视频站点;个性化音乐网络电台。像国际的Pandora和Last.fm以及国内的豆瓣电台。社交网络,如Facebook等;个性化阅读。如GoogleReader等。个性化邮件和个性化广告等。

架构

主流的推荐系统的架构例如以下图:


而动态推荐系统的架构例如以下:


关于推荐系统的架构,这几篇文章写得不错,这里mark一下。

推荐系统的架构,

http://www.cnblogs.com/kobedeshow/p/3569525.html?

utm_source=tuicool

淘宝推荐系统。

http://www.biaodianfu.com/taobao-recommendation-system.html?

utm_source=tuicool

InfoQ上关于Hulu的视频推荐系统架构经验。

Hulu推荐系统构建经验谈,

http://www.infoq.com/cn/presentations/hulu-recommendation-system-construction-experiences/


算法

推荐系统的实现算法,依照使用的数据,主要分为下面三种算法:

−      协同过滤:用户的行为数据,像点击、评分、购买等;

−      内容过滤:用户内容属性和物品内容属性。

−      社会化过滤:用户之间的社交网络关系,如朋友、关注关系等。

依照模型划分,主要有下面三种:

−      近期邻模型:基于用户/物品的协同过滤算法。

−      Latent Factor Model:基于矩阵分解的模型;

−      图模型:二分图模型,社会网络图模型等。

除了推荐系统自身的问题,像冷启动、数据的稀疏性问题等,另一个须要关注的问题,就是推荐系统的时间效应问题。比較常见的时间效应问题主要反映在用户兴趣的变化、物品流行度的变化以及商品的季节效应。即以下主要考虑三个问题,怎样建立动态用户兴趣模型。怎样建立用户长期兴趣和短期兴趣的动态用户兴趣模型,还有站点时效性对用户行为和推荐系统设计的影响。

考虑到推荐系统的时间效应问题,能够将协同过滤所使用的数据集归结为一个四元组。即{用户。物品。行为,时间},那么如今就面临一个问题,怎样通过研究用户的历史行为和兴趣爱好。预測用户将来的行为和喜好。

须要解决下面三个问题:动态评分预測、动态Top-N推荐、时效性的影响。

对于第一个问题,动态评分预測问题。

数据集能够选用比較直观的显性反馈数据集。即(用户,物品,评分,时间)。研究是这样一个问题,给定用户u,物品i,时间t,预測用户u在时间t对物品i的评分r。

对于该类问题,相关的算法已经有了非常多的研究,与时间无关的评分预測问题算法主要有下面几种:

−      基于用户/物品的协同过滤算法;

−      基于矩阵分解的模型LatentFactor Model;

−      受限波尔兹曼机RBM。

与时间相关的评分预測问题算法主要是基于以下两种想法:

−      用户会喜欢和他们近期喜欢的物品相似的物品;

−      用户会喜欢和他们兴趣相似的用户近期喜欢的物品。

当然上面的这些算法是提出来了。可是有些地方有待优化。

上述算法须要考虑的时间效应问题主要有下面几个方面:

用户兴趣的变化,比方说:年龄增长,从青年长成中年壮年;生活状态的变化,由曾经的学生到踏上工作岗位;社会热点问题的影响。奥运会等。

此外还有季节效应问题。一些在夏季非常流行的。在秋冬季节未必就非常流行。

怎样解决上述问题,提出优化还有待进一步思考。

对于动态Top-N推荐问题。数据集选用的是不太直观的隐性反馈数据集,{(用户。物品。时间)},研究的是这种一个问题,给定用户u,时间t。预測用户u在时间t可能会喜欢的物品列表R(u)。在这方面的相关研究也非常成熟,有基于邻域的协同过滤算法,主要分为两种,一种是ItemCF。推荐给用户那些跟他们之前喜欢的物品类似的物品;另一种是UserCF。推荐给用户那些跟他们兴趣相似的用户喜欢的物品。还有基于评分数据的Top-N推荐算法,该想法的思路是推荐给用户那些他们可能评分最高的物品。

该想法都是环绕用户的兴趣展开的,须要考虑到,用户兴趣分为短期兴趣和长期兴趣,短期兴趣的特点是暂时、易变。长期兴趣的特点是长久、稳定。用户的短期兴趣可能会转化为长期兴趣,所以须要在推荐时综合考虑长期兴趣和短期兴趣。该问题的解决有待进一步思考。

对于时效性的影响,每一个在线系统都是一个动态系统,但它们有不同的演化速率。

比方说,新闻。博客演化的非常快,但音乐,电影的系统演化的却比較慢。这就带来这样一个问题,不同演化速率的系统须要不同类型的推荐算法,怎样解决该问题。也是应该进一步深入思考的。






以上是关于推荐系统小结的主要内容,如果未能解决你的问题,请参考以下文章

大数据/数据挖掘/推荐系统/机器学习相关资源

机器学习大数据数据挖掘推荐系统相关资源

WP评论系统更换小结(转)

推荐算法小结

计算机中断系统小结(cpu响应中断)

推荐算法小小结