以前也用了一些推荐算法写过一些应用,最近用上了网易云音乐,于是便想写篇推荐引擎的文章。

一.推荐引擎

主动发现用户当前或潜在需求,并主动推送信息给用户的信息网络。挖掘用户的喜好和需求,主动向用户推荐其感兴趣或者需要的对象。

二.推荐引擎的分类

1.基于人口统计学的推荐

根据用户的基本信息发现用户的相关程度,然后把相似用户喜爱的其他物品推荐给当前用户。

过程描述:A用户喜欢A物品,用户A和用户C都是女性,且年龄相似,于是认为C用户也喜欢A物品,便将A物品推荐给C用户。

优点:1.不需要当前用户对物品喜欢的历史数据,对新用户没有”冷启动”问题

2.不依赖物品本身

缺点:1.需要收集到用户信息,包括一些敏感数据,年龄等。

2.对用户分类方法粗糙,无法用于高品味领域(电影,音乐等)。

3.用户的生活习惯会改变(例如:结婚前后购物表现不同)

2.基于内容的推荐

根据物品的元数据发现物品的相关程度,然后把与用户喜欢物品相似的物品推荐给当前用户。

过程描述:用户A喜欢电影A,电影A和电影C类型相似,于是认为他也会喜欢电影C,便推荐给他

优点:能很好的建模用户口味

缺点:1.需要对物品分析建模,推荐的质量依赖于对物品模型的完整和全面程度

2.物品相似度分析仅仅依赖于物品本身特征,没有考虑人对物品的态度

3.对新用户有“冷启动”问题。

3.基于用户的协同过滤推荐

基于用户对物品的偏好,发现与当前用户偏好相似的“邻居”用户群,然后根据邻居的历史偏好信息,为当前用户推荐物品。

过程描述:用户A和用户C的购物习惯相似,所以将物品D推荐给用户A

优点:对用户分类更准确,能提供更精确的推荐

缺点:1.对于新用户有“冷启动”问题

2.假设喜欢物品的用户可能有相同的口味和偏好

3.用户数量一般很大,并且用户对物品的喜好会发生变化,计算复杂,需要更新

4.基于项目的协同过滤推荐

使用所有用户对物品的偏好,发现物品和物品之间的相似度,然后根据用户的历史偏好信息,将类似的物品推荐给当前用户。

过程描述:买了物品A的用户都买了物品C,用户C买了物品A,所以给他推荐物品C

优点:基于项目的协同过滤推荐基质实在基于用户的机制上改良的一种策略,因为在大部分的Web站点中,物品的个数远远小于用户数量,而且物品的个数和相似度相对比较稳定,同时基于项目的机制比基于用户的实时性更好一些。

缺点:不是所有的场景都能适应,例如新闻推荐系统,新闻的个数远大于用户个数,新闻的更新速度很快,所以它的相似度依然不稳定。

三.总结

综上看来,基于项目的协同过滤推荐是最易使用的,它不需要对用户信息或物品内容建模,相似度也相对稳定。

几种不同的推荐引擎比较相关推荐

  1. 开源个性化内容推荐引擎_您是哪种开源个性类型?

    开源个性化内容推荐引擎 团队合作自然会引起意见分歧,这是一件好事. 各种各样的意见有助于确保讨论所有想法,确定问题区域,并且手头任务的重点放在正确的位置. 但是,开源世界的情况有些不同. 开源贡献者充 ...

  2. 【推荐系统】4种推荐引擎预测你的电影品味

    目录 MovieLens数据集 1 - 基于内容 数学 代码 建议 2 - 协同过滤 数学 代码 评价 3 - 矩阵分解 数学 代码 评价 建议 4 - 深度学习 数学 代码 评价 建议 最后 &qu ...

  3. AI时代:推荐引擎正在塑造人类

    We shape our tools and afterwards our tools shape us. ------Marshall McLuhan 麦克卢汉说:"我们塑造了工具,反过来 ...

  4. 如何使用 Python 构建推荐引擎?

    作者 | Craig Kerstiens 译者 | 弯月,编辑 | 王晓曼 头图 | CSDN 下载自东方IC 来源 | CSDN(ID:CSDNnews) 我非常喜欢数据.数据可以告诉你用户在干什么 ...

  5. php推荐引擎算法,推荐系统,第 2 部分: 开源引擎简介

    问题导读: 1.简单的推荐生态系统是怎么样的? 2.常见的推荐算法有哪些? 3.怎么用restful服务构建推荐系统? 上一篇: 推荐系统,第 1 部分: 方法和算法简介 http://www.abo ...

  6. 独家 | 从零开始用python搭建推荐引擎(附代码)

    作者:Pulkit Sharma 翻译:申利彬 校对:付宇帅 本文约10300字,建议阅读10分钟. 本文介绍了各种推荐引擎算法以及使用Python构建它们的基本框架. 简介 当今社会的每个人都面临着 ...

  7. Mahout分布式推荐引擎介绍

    一直以为在Mahout的在分布式上做了很多东西,很高深.最近一段时间由于工作中要实现一些分布式算法,所以硬着头皮看了一下它的源码.当时我匆忙的看过KMeans的实现,这次我的工作是在搜索引擎日志记录中 ...

  8. 阿里云推荐引擎使用教程

    2019独角兽企业重金招聘Python工程师标准>>> 产品概述: 推荐引擎(Recommendation Engine,以下简称RecEng,特指阿里云推荐引擎)是在阿里云计算环境 ...

  9. 深度学习核心技术精讲100篇(七十七)-主流推荐引擎技术及优缺点分析

    前言 在本文中,将详细介绍多种类型的推荐系统,具体介绍基于近邻算法的推荐引擎.个性化推荐引擎.基于模型的推荐系统和混合推荐引擎等,并分析介绍每种推荐系统的优缺点. 主要介绍的不同类型的推荐系统包括: ...

最新文章

  1. Linux下搭建高效的SVN
  2. Leetcode 347. 前K个高频元素 解题思路及C++实现
  3. [js开源组件开发]图片放大镜
  4. extjs 表单设置html5,ExtJS 配置和表格控件使用
  5. MaxCompute - ODPS重装上阵 第三弹 - 复杂类型
  6. LeetCode 37 解数独
  7. 【codevs2421】【BZOJ1858】序列操作,线段树
  8. I9 9900K线程_收藏党抓紧了!英特尔停产i9-9900K特色包装,只因运输太浪费
  9. numpy.mean() in Python
  10. web前端开发技术----登录页面
  11. web技术分享| WebRTC 实现屏幕共享
  12. 弧长公式 | 微积分
  13. cubic算法优化_CUBIC拥塞拥塞控制算法
  14. IDEA学习篇——finds duplicated code提示
  15. 深剖基类和派生类的虚函数表
  16. 学计算机用啥u盘好,U盘制作工具哪个好用?2020U盘制作工具推荐
  17. 电脑假死卡的动不了_电脑卡死了动不了怎样恢复
  18. 再见百度,再见网盘!
  19. android usb attached,android – USB_DEVICE_ATTACHED意图未触发
  20. Multisim仿真—整流滤波电路(二)

热门文章

  1. 累加、迭代、递推、穷举、递归 ,等运算,笔记
  2. 人工智能商业应用,并介绍详细公司案列
  3. 【latex】5 如何快速写出公式对应的latex公式
  4. 实现微信小程序输入框输入时页面不上移【完美 ~_~】
  5. 【分治法】中位数问题和Gray码问题——武汉理工大学算法设计与分析课程实验
  6. 漫步者蓝牙自动断开_无线蓝牙耳机,除了Apple AirPods,我们还能选什么?
  7. 移动无限流量卡物联网卡优缺点对比!
  8. LIN总线协议详解6(状态管理)
  9. 文本分类的特征提取算法
  10. Excel 2010 SQL应用086 随机排序