深度学习
书名:推荐系统实践 (图灵原创 5)
作者:项亮
格式:EPUB, HTMLZ, PDF
书号:9787115281586
路径:点击打开
出版:人民邮电出版社
排序作者:项亮
排序书名:推荐系统实践 (图灵原创 5)
日期:09 12月 2018
uuid:dc9c6700-11aa-4bda-a364-f9951bdde947
id:512
出版日期:6月 2012
修改日期:09 12月 2018
大小:12.01MB
语言:中文
第 1 章 好的推荐系统
在研究如何设计推荐系统前,了解什么是好的推荐系统至关重要。只有了解了优秀推荐系统的特征,我们才能在设计推荐系统时根据实际情况进行取舍。本章分3个步骤来回答这个问题:首先,本章将介绍什么是推荐系统、推荐系统的主要任务、推荐系统和分类目录以及搜索引擎的区别等;然后,本章将按照不同领域分门别类地介绍目前业界常见的个性化推荐应用;最后,本章将介绍推荐系统的评测,通过介绍评测指标给出“好”的定义,从而最终解答“什么是好的推荐系统”这个问题。
第 2 章 利用用户行为数据
为了让推荐结果符合用户口味,我们需要深入了解用户。如何才能了解一个人呢?《论语•公冶长》中说“听其言,观其行”,也就是说可以通过用户留下的文字和行为了解用户兴趣和需求。实现个性化推荐的最理想情况是用户能在注册的时候主动告诉我们他喜欢什么,但这种方法有3个缺点:首先,现在的自然语言理解技术很难理解用户用来描述兴趣的自然语言;其次,用户的兴趣是不断变化的,但用户不会不停地更新兴趣描述;最后,很多时候用户并不知道自己喜欢什么,或者很难用语言描述自己喜欢什么。因此,我们需要通过算法自动发掘用户行为数据,从用户的行为中推测出用户的兴趣,从而给用户推荐满足他们兴趣的物品。
基于用户行为数据的应用其实早在个性化推荐系统诞生之前就已经在互联网上非常流行了,其中最典型的就是各种各样的排行榜。这些排行榜包括热门排行榜和趋势排行榜等。尽管这些排行榜应用仅仅基于简单的用户行为统计,但它们在互联网上获得了很多用户的青睐。因此,用户行为数据的分析是很多优秀产品设计的基础,个性化推荐算法通过对用户行为的深度分析,可以给用户带来更好的网站使用体验。
用户的行为不是随机的,而是蕴含着很多模式。举一个简单的例子,在电子商务网站中,我们每次购物时网站都会生成一个购物车,里面包括了我们一次购买的所有商品。购物车分析是很多电子商务网站,甚至传统零售业的核心数据分析任务,比如我们可以分析哪些商品会同时出现在购物车中。这里面最著名的例子就是啤酒和尿布的例子,这个例子是数据挖掘的经典案例。这个故事有非常多的版本,甚至有人认为这个故事本身就是一个误会。不过我们还是用这个故事简单说明一下用户行为分析的重要性。这个故事的一个版本是说,有一个超市人员发现很多人会同时购买啤酒和尿布,后来他们认为是很多妇女要在家照顾孩子,就让自己的丈夫去买尿布,而丈夫在买尿布的同时不忘买一下自己喜欢的啤酒,于是这两个风马牛不相及的东西就这么产生联系了。于是超市工作人员把啤酒和尿布放在了同一个货架上,结果这两种商品的销售量都明显上升了。不同人看到这个故事有不同的理解,我们从算法设计人员的角度看,这个故事说明用户行为数据中蕴涵着很多不是那么显而易见的规律,而个性化推荐算法的任务就是通过计算机去发现这些规律,从而为产品的设计提供指导,提高用户体验。
第 3 章 推荐系统冷启动问题
推荐系统需要根据用户的历史行为和兴趣预测用户未来的行为和兴趣,因此大量的用户行为数据就成为推荐系统的重要组成部分和先决条件。对于很多像百度、当当这样的网站来说,这或许不是个问题,因为它们目前已经积累了大量的用户数据。但是对于很多做纯粹推荐系统的网站(比如Jinni和Pandora),或者很多在开始阶段就希望有个性化推荐应用的网站来说,如何在没有大量用户数据的情况下设计个性化推荐系统并且让用户对推荐结果满意从而愿意使用推荐系统,就是冷启动的问题。
下面各节将简单介绍一下冷启动问题的分类,以及如何解决不同种类的冷启动问题。
第 4 章 利用用户标签数据
推荐系统的目的是联系用户的兴趣和物品,这种联系需要依赖不同的媒介。GroupLens在一篇文章①中表示目前流行的推荐系统基本上通过3种方式联系用户兴趣和物品。如图4-1所示,第一种方式是利用用户喜欢过的物品,给用户推荐与他喜欢过的物品相似的物品,这就是前面提到的基于物品的算法。第二种方式是利用和用户兴趣相似的其他用户,给用户推荐那些和他们兴趣爱好相似的其他用户喜欢的物品,这是前面提到的基于用户的算法。除了这两种方法,第三种重要的方式是通过一些特征(feature)联系用户和物品,给用户推荐那些具有用户喜欢的特征的物品。这里的特征有不同的表现方式,比如可以表现为物品的属性集合(比如对于图书,属性集合包括作者、出版社、主题和关键词等),也可以表现为隐语义向量(latent factor vector),这可以通过前面提出的隐语义模型习得到。本章将讨论一种重要的特征表现方式——标签。
第 5 章 利用上下文信息
本章之前提到的推荐系统算法主要集中研究了如何联系用户兴趣和物品,将最符合用户兴趣的物品推荐给用户,但这些算法都忽略了一点,就是用户所处的上下文(context)。这些上下文包括用户访问推荐系统的时间、地点、心情等,对于提高推荐系统的推荐系统是非常重要的。比如,一个卖衣服的推荐系统在冬天和夏天应该给用户推荐不同种类的服装。推荐系统不能因为用户在夏天喜欢过某件T恤,就在冬天也给该用户推荐类似的T恤。再举个例子,当用户在中关村打开一个美食推荐系统时,如果这个推荐系统推荐的餐馆都是中关村附近的,显然推荐结果更加能够令用户满意。上下文影响用户兴趣的例子还有很多,比如用户上班时和下班后的兴趣会有区别,用户在平时和周末的兴趣会有区别,用户和父母在一起与和同学在一起时的兴趣有区别,甚至用户在上厕所时阅读的文章和在办公桌旁阅读的文章也是不同的。因此,准确了解用户的上下文信息,并将该信息应用于推荐算法是设计好的推荐系统的关键步骤。
关于上下文推荐的研究,可以参考Alexander Tuzhilin①教授的一篇综述“Context Aware Recommender Systems”。Alexander Tuzhilin教授最近几年和他的学生们对上下文相关的推荐算法进行了深入研究。他们在论文中提到了一个上下文推荐系统的例子——Sourcetone音乐推荐系统(如图5-1所示)。该系统会让用户选择自己现在的心情,然后它根据用户选择的心情给用户推荐音乐。这里,心情是一种重要的上下文,用户在不同的心情下会选择不同的音乐。当然,当用户在某个时间点刚刚使用推荐系统时,系统很难猜出用户当时是什么心情。因此Sourcetone采取了让用户主动告诉系统他现在心情的方式,然后系统根据用户当前的心情并综合考虑其历史兴趣推荐符合他要求的合适歌曲。
第 6 章 利用社交网络数据
自从搜索引擎谷歌诞生后,大家都在讨论互联网的下一个金矿是什么。现在,几乎所有的人都认为那就是社交网络。根据尼尔森2010年的报告,用户在互联网上22%的时间花费在社交网站和社交媒体上①。Facebook和Twitter作为两种不同类型社交网络的代表,是目前互联网界的宠儿。谷歌公司也不甘落后,连续推出了很多社交网络产品(Buzz和Google Plus)。国内的互联网以新浪微博为代表,也吸引了很多人的眼球。
第 7 章 推荐系统实例
前面几章介绍了各种各样的数据和基于这些数据的推荐算法。在实际系统中,前面几章提到的数据大都存在,因此如何设计一个真实的推荐系统处理不同的数据,根据不同的数据设计算法,并将这些算法融合到一个系统当中是本章讨论的主要问题。本章将首先介绍推荐系统的外围架构,然后介绍推荐系统的架构,并对架构中每个模块的设计进行深入讨论。
第 8 章 评分预测问题
本书到目前为止都是在讨论TopN推荐,即给定一个用户,如何给他生成一个长度为N的推荐列表,使该推荐列表能够尽量满足用户的兴趣和需求。本书之所以如此重视TopN推荐,是因为它非常接近于满足实际系统的需求,实际系统绝大多数情况下就是给用户提供一个包括N个物品的个性化推荐列表。
但是,很多从事推荐系统研究的同学最早接触的却是评分预测问题。从GroupLens到Netflix Prize到Yahoo! Music的KDD Cup,评分预测问题都是推荐系统研究的核心。评分预测问题最基本的数据集就是用户评分数据集。
来源:我是码农,转载请保留出处和链接!
本文链接:http://www.54manong.com/?id=1185
微信号:qq444848023 QQ号:444848023
加入【我是码农】QQ群:864689844(加群验证:我是码农)
全站首页 | 数据结构 | 区块链| 大数据 | 机器学习 | 物联网和云计算 | 面试笔试
var cnzz_protocol = (("https:" == document.location.protocol) ? "https://" : "http://");document.write(unescape("%3Cspan id='cnzz_stat_icon_1276413723'%3E%3C/span%3E%3Cscript src='" + cnzz_protocol + "s23.cnzz.com/z_stat.php%3Fid%3D1276413723%26show%3Dpic1' type='text/javascript'%3E%3C/script%3E"));本站资源大部分来自互联网,版权归原作者所有!
评论专区