一、推荐系统
【维基百科】推荐系统是一种信息过滤系统,用于预测用户对物品的“评分”或“偏好”。
推荐系统近年来非常流行,应用于各行各业。推荐的对象包括:电影、音乐、新闻、书籍、学术论文、搜索查询、分众分类、以及其他产品。也有一些推荐系统专门为寻找专家、合作者、笑话、餐厅、美食、金融服务、生命保险、网络交友,以及Twitter页面设计。
很多时候简单粗暴的方式往往也是行之有效的:“如果你不知道该推荐什么,那么推荐大家都喜欢的准没错“。像热门榜单、最多观看排行榜等都属于这个问题。
TopN的问题前面已经做过了介绍,本文的侧重点在于,不同的人对于“好”的理解不一样,换句话说也就是偏好不同,所以需要为不同用户推荐他自己感兴趣的内容,即个性化推荐。
个性化推荐的两个主要思想八个字概括之:物以类聚、人以群分。主要的方法及变种应该有很多,像协同过滤、基于内容的推荐、基于标签的推荐等等。
二、个性化推荐算法起源
个性化推荐概念的首次出现是在1995年3月的美国人工智能协会上,由卡耐基梅隆大学的 Robert Armstrong等提出了个性化导航系统 Web Watcher。同时,斯坦福大学的Marko balabanovic等也推出了LIRA——一个个性化推荐系统。自此之后,个性化推荐的研究开始蓬勃发展。
推荐算法的研究起源于20世纪90年代,由美国明尼苏达大学 GroupLens研究小组最先开始研究,他们想要制作一个名为 Movielens的电影推荐系统,从而实现对用户进行电影的个性化推荐。首先研究小组让用户对自己看过的电影进行评分,然后小组对用户评价的结果进行分析,并预测出用户对并未看过的电影的兴趣度,从而向他们推荐从未看过并可能感兴趣的电影。此后, Amazon开始在网站上使用推荐系统,在实际中对用户的浏览购买行为进行分析,尝试对曾经浏览或购买商品的用户进行个性化推荐。根据 enture Beat的统计,这一举措将该网站的销售额提高了35%自此之后,个性化推荐的应用越来越广泛。
三、个性化推荐算法分类
个性化推荐相较于非个性化推荐,即推荐的内容是因人而异的。
推荐算法有很多种,包含基于内容、协同过滤、基于关联规则、基于效用、基于知识、组合推荐等。我们重点说一下前两种。
1.基于内容的推荐算法
原理是用户喜欢和自己关注过的Item在内容上类似的Item,比如你看了哈利波特I,基于内容的推荐算法发现哈利波特II-VI,与你以前观看的在内容上面(共有很多关键词)有很大关联性,就把后者推荐给你,这种方法可以避免Item的冷启动问题(冷启动:如果一个Item从没有被关注过,其他推荐算法则很少会去推荐,但是基于内容的推荐算法可以分析Item之间的关系,实现推荐),弊端在于推荐的Item可能会重复,典型的就是新闻推荐,如果你看了一则关于MH370的新闻,很可能推荐的新闻和你浏览过的,内容一致;另外一个弊端则是对于一些多媒体的推荐(比如音乐、电影、图片等)由于很难提内容特征,则很难进行推荐,一种解决方式则是人工给这些Item打标签。
2.协同过滤算法
原理是用户喜欢那些具有相似兴趣的用户喜欢过的商品,比如你的朋友喜欢电影哈利波特I,那么就会推荐给你,这是最简单的基于用户的协同过滤算法(user-based collaboratIve filtering),还有一种是基于Item的协同过滤算法(item-based collaborative filtering),这两种方法都是将用户的所有数据读入到内存中进行运算的,因此成为Memory-based Collaborative Filtering,另一种则是Model-based collaborative filtering,包括Aspect Model,pLSA,LDA,聚类,SVD,Matrix Factorization等,这种方法训练过程比较长,但是训练完成后,推荐过程比较快。
3.主要推荐方法优缺点
推荐方法 | 优点 | 缺点 |
基于内容推荐 | 推荐结果直观,容易解释; 不需要领域知识 |
新用户问题; 复杂属性不好处理; 要有足够数据构造分类器 |
协同过滤推荐 | 新异兴趣发现、不需要领域知识; 随着时间推移性能提高; 推荐个性化、自动化程度高; 能处理复杂的非结构化对象 |
稀疏问题; 可扩展性问题; 新用户问题; 质量取决于历史数据集; 系统开始时推荐质量差; |
基于规则推荐 | 能发现新兴趣点; 不要领域知识 |
规则抽取难、耗时; 产品名同义性问题; 个性化程度低; |
基于效用推荐 | 无冷开始和稀疏问题; 对用户偏好变化敏感; 能考虑非产品特性 |
用户必须输入效用函数; 推荐是静态的,灵活性差; 属性重叠问题; |
基于知识推荐 | 能把用户需求映射到产品上; 能考虑非产品属性 |
知识难获得; 推荐是静态的 |
四、推荐算法的应用
推荐算法已经应用到了各个领域的网站中,包括图书、音乐、视频、新闻、电影、地图等等。而电子商务的应用近年来逐渐普及,Amazon,当当网,豆瓣图书,淘宝,京东等都使用了电子商务推荐系统,推荐系统不止给这些互联网商家带来了巨大的附加利益,同时也提高了用户满意度,增加了用户黏性。
而最高深的推荐境界是:千人千面。据说微信看一看中的“精选”就会为每个人推荐不同的内容,大家可以关注下。
我的微信公众号:架构真经(id:gentoo666),分享Java干货,高并发编程,热门技术教程,微服务及分布式技术,架构设计,区块链技术,人工智能,大数据,Java面试题,以及前沿热门资讯等。每日更新哦!
参考阅读:
- https://www.zhihu.com/question/20326697
- https://zhuanlan.zhihu.com/p/27768663
- https://baike.baidu.com/item/推荐算法
转载:https://blog.csdn.net/m0_37609579/article/details/101372719