当前位置:主页 > 基础算法
推荐算法综述(一)
日期:2017-12-06 浏览量:

亲爱的读者:我们最近添加了一些个人消息定制功能,您只需选择感兴趣的技术主题,即可获取重要资讯的。

【编者按】推荐系统在各种系统中广泛使用,推荐算法则是其中最核心的技术点,InfoQ接下来将会策划系列文章来为读者深入介绍。推荐算法综述分文五个部分,本文作为第一篇,将会简要介绍推荐系统算法的主要种类。其中包括算法的简要描述、典型的输入、不同的细分类型以及其优点和缺点。在第二和第三篇中,我们将会详细介绍这些算法的区别,让你能够深入理解他们的工作原理。

注:本文翻译自Building Recommenders,InfoQ中文站在获得作者授权的基础上对文章进行了翻译。

为推荐系统选择正确的推荐算法是非常重要的决定。目前为止,已经有许多推荐算法可供选择,但为你需要解决的特定问题选择一种特定的算法仍然很困难。每一种推荐算法都有其优点和缺点,当然也有其限制条件,在作出决定之前,你必须要一一考量。在实践中,你可能会测试几种算法,以发现哪一种最适合你的用户,测试中你也会直观地发现它们是什么以及它们的工作原理。

相关厂商内容

京东虚拟商品系统如何做高可用架构设计? 顶尖架构师岁末总结大会:上百技术案例日程出炉! 不改一行代码:左耳朵看微服务调度的三大件 AI时代,我到底该如何跟上技术潮流? Fintech 技术突围之道 | ArchSummit 限额免费专场

相关赞助商

推荐系统算法通常是某类推荐模型的实现,它负责获取数据,例如用户的喜好和可推荐项的描述,以及预测给定的用户组会对哪些选项感兴趣。

推荐算法通常被分为四大类(1-4):

协同过滤推荐算法

基于内容的推荐算法

混合推荐算法

流行度推荐算法

除了这些种类以外,还有一些高级非传统的推荐算法(5)。

推荐算法综述是分文五个部分的系列文章,本文作为第一篇,将会简要介绍推荐系统算法的主要种类。其中包括算法的简要描述、典型的输入、不同的细分类型以及其优点和缺点。在第二和第三篇中,我们将会详细介绍这些算法的区别,让你能够深入理解他们的工作原理。系列文章中的一些内容参考了一篇来自 RecSys 2014 tutorial 的文章:由Xavier Amatriain编写的The Recommender Problem Revisited。

1.协同过滤推荐算法

简介:通过在用户的一系列行为中寻找特定模式来产生用户特殊推荐

输入:仅仅依赖于惯用数据(例如评价、购买、下载等用户偏好行为)

类型:

基于邻域的协同过滤(基于用户和基于项)

基于模型的协同过滤(矩阵因子分解、受限玻尔兹曼机、贝叶斯网络等等)

优点:

需要最小域

不需要用户和项

大部分场景中能够产生足够好的结果

缺点:

冷启动问题

需要标准化产品

需要很高的用户和项的比例(1:10)

流行度偏见(有长尾的时候表现不够好)

难于提供解释

2.基于内容的推荐算法

简介:向用户推荐和其过去喜欢项的内容(例如元数据、描述、话题等等)相似的项

输入:仅仅依赖于项和用户的内容/描述(除了惯用数据)

类型:

信息检索(例如 tf-idf 和 Okapi BM25)

机器学习(例如朴素贝叶斯、支持向量机、决策树等等)

优点:

没有冷启动问题

不需要惯用数据

没有流行度偏见,可以推荐有罕见特性的项

可以使用用户内容特性来提供解释

缺点:

项内容必须是机器可读的和有意义的

容易归档用户

很难有意外,缺少多样性

很难联合多个项的特性

3.混合推荐算法

简介:综合利用协同过滤推荐算法和基于内容的推荐算法各自的优点同时抵消各自的缺点

输入:同时使用用户和项的内容特性与惯用数据,同时从两种输入类型中获益

类型:

加权

交换

混合

特性组合

案列

特征增强

元层次

优点:

由于单独使用协同过滤推荐算法和基于内容的推荐算法

没有冷启动问题

没有流行度偏见,可推荐有罕见特性的项

可产生意外,实现多样性

缺点:

需要通过大量的工作才能得到正确的平衡

4.流行度推荐算法

简介:这是一种推荐流行项的方法(例如最多下载、最多看过、最大影响的项)

输入:使用惯用数据和项的内容(例如类目)

优点:

相对容易实现

良好的基准算法

有助于解决新用户冷启动问题

缺点:

需要标准化产品

经常需要一些项的类型进行分类

不会推荐新项(很少有机会被观测到)

推荐列表不会改变太大

5.高级非传统推荐算法

类型:

深度学习

学习等级

Multi-armed bandits(探索/开发)

上下文感知推荐

张量分解

分解机

社会推荐

优点:

利于勉强维持最终性能百分点

你可以说你正在使用渐进的方式

缺点:

难于理解

缺乏推荐工具支持

没有为你的首个推荐系统提供推荐的方式

查看英文原文:Overview of Recommender Algorithms – Part 1

关于作者
相关文章:
·2017年高性能科学计算基础算法与可计算建模重大
·他设计的并行算法为大数据技术奠定基础
·人机大战人脸识别比拼复盘胜负手不在双方算法
·何宝宏:人工智能有三大基础力量 新数据 新硬件
·人工智能产品化的关键是基础架构和数据,而非
→ 特别推荐
2017年高性能科学计算
他设计的并行算法为
人机大战人脸识别比
何宝宏:人工智能有
人工智能产品化的关
算法基础之每周算法
互联网真的不安全 基
从内容生产、内容平
示波器基础系列之十
AI·算法·伦理:发明
菜鸟CTO王文彬:未来
厉害了Word谷歌!攻破
游戏与算法的必经之
基础算法题,求思路
《计算机算法基础》
→ 热点TOP10
谁“杀死”了
万科最新大数
中国开启“人
无痛的增强学
中国亟需修改
建阳区初步完
瓦力超级大脑
2017年公务员基
阿富汗一民营
这家公司将损

友情链接/网站合作咨询: