前言
大概是在2014年的时候,因为使用过一段时间的网易云音乐,我渐渐开始知道互联网里面有个性化推荐这么一个概念。再然后,随着今日头条的爆发,个性化推荐被越来越多的人与公司提及。
工作以后,我接触到了一些产品商业化方面的知识,知道了广告变现的大致流程,同时也通过自己的了解,逐渐认识到广告平台其实也是个性化推荐应用的一个重要领域。
因此,在我的好奇心,以及自己知其然就想知其所以然的心理驱使下,我去了解了一些个性化推荐相关的内容,知道了一些个性化推荐当中用到的,像是协同过滤算法、基于内容的推荐算法等的基础知识。
为了加深自己对个性化推荐的了解,我买了一本书——《推荐系统实践》(项亮著)。这本书先是介绍了什么是推荐系统以及推荐系统的评测指标及方法,然后介绍了推荐系统常用的一些算法知识等,算是比较详细的介绍了推荐系统相关的知识。
我准备写几篇博客来巩固从书中了解到的知识(主要会以概念为主),这篇博客便是针对该书第一章相关知识的学习笔记。
什么是推荐系统?
推荐系统的主要任务是联系用户与信息,一方面帮助用户发现对自己有价值的信息,另一方面让信息呢能够展现在对它感兴趣的用户面签,从而实现信息消费者和信息生产者的双赢,而这里的信息可以是音乐、视频、商品和文章等等内容。
推荐系统的成功应用有两个先决的条件,一是存在信息过载,二是用户没有明确的需求。
为了解决信息过载的问题,人们曾提出过比较有代表性的分类目录和搜索引擎解决方案,前者的主要代表是雅虎和Hao123,后者的主要代表是谷歌和百度。随着互联网规模的不断扩大,分类网站只能覆盖少量热门网站的形态越来越不能满足用户的需求;同时,搜索引擎在用户不能准备提供需求关键词的情况下,显得比较无能为力。
而推荐系统不需要用户提供明确的需求,而是通过分析用户的历史行为来给用户的兴趣建模,从而主动给用户推荐能够满足他们兴趣和需求的信息。同时,推荐系统通过发掘用户的行为,找到用户的个性化需求,从而能够将长尾的商品准确地推荐给需要它的用户,帮助用户发现那些他们感兴趣但很难发现的商品。
个性化推荐系统的主要应用
- 电子商务: 亚马逊
- 电影和视频网站: Netflix、Youtube、Hulu
- 个性化音乐网络电台: Pandora、Last.fm、豆瓣Fm
- 社交网络: Facebook、Twitter
- 个性化阅读: Google Reader、Zite、Digg、今日头条
- 基于位置的服务: Foursquare
- 个性化邮件: Gmail优先级邮箱
- 个性化广告: Facebook Audience Network
音乐推荐的特殊性
- 物品空间大: 音乐数量很多,空间很大(相对于书和电影)
- 消费每首歌的代价很小: 对在线音乐来说,音乐大部分都是免费的
- 物品种类丰富: 音乐种类丰富,有很多的流派
- 听一首歌耗时很少: 听一首歌的时间成本很低,不太浪费用户的时间
- 物品重用率很高: 一首歌用户可能会听很多遍,这与电影与书不同
- 用户充满激情: 用户很有激情,一个用户可能会听很多歌
- 上下文相关: 用户的口味很受当时上下文的影响,主要指用户当时的心情与所处的情景
- 次序很重要: 用户听音乐一般会按照一定的次序一首一首地听
- 很多播放列表资源: 用户可能会创建很多个人播放列表(歌单)
- 不需要用户全神贯注: 音乐不需要用户全神贯注地听,背景声音属性较强
- 高度社会化: 用户听音乐的行为有很强的社会化特性,例如我们会和好友互相分享喜欢的音乐
推荐系统的评测指标
用户满意度
用户的主观感受,主要通过用户问卷调研的形式获得,同时也可通过一些客观评测指标,例如产品反馈按钮的点击率、用户停留时长和转化率等来获得预测准确度
主要用来衡量一个推荐系统预测用户行为的能力。评分预测的预测准确度一般通过计算测试集和训练集的均方根误差(RMSE)和平均绝对误差(MAE)得到。TopN推荐的预测准确度一般通过计算测试集和训练集的准确率(precison)和召回率(recall)得到。覆盖率
主要用来描述一个推荐系统对物品长尾的发掘能力。可以通过推荐出来的物品占总物品的比例来进行计算。多样性
推荐列表需要满足用户广泛的兴趣。新颖性
给用户推荐那些他们没有听说过的物品的能力。可以利用推荐结果的平均流行度来进行评测。惊喜度
如果推荐结果和用户的历史兴趣不相似,但却让用户觉得满意,那么可以说推荐结果的惊喜度很高。信任度
增加用户对于推荐系统的信任度,能够让用户更多的与推荐系统产生交互。可以通过增加推荐理由,或是引入用户的好友关系等来增加用户的信任度。实时性
一些新闻类推荐产品需要满足实时性的需求。可以通过推荐系统是否能将新加入系统中的物品推荐给用户来评测。健壮性
衡量一个推荐系统抗作弊的能力。商业目标
不同的商业目标推荐系统的设计方向不同,因此在设计推荐系统时也需要考虑商业目标。