智能推荐算法的原理是什么?

  • 回答 (9)
  • 关注 (0)
  • 查看 (303)

智能推荐算法是什么?目的何在?实现的原理又是什么?大概是怎么样的实现流程呢?

秋千秋千提问于
司徒永哥家无水表,不收快递。回答于

智能推荐算法的目的就在于实现个性化推荐。

个性化推荐是根据用户兴趣和行为特点,向用户推荐所需的信息或商品,帮助用户在过载信息中快速发现真正所需的商品,提高用户黏性,促进信息点击和商品销售。相当于量身定做。推荐基于海量数据挖掘分析的商业智能平台,推荐主要基于以下信息:

热点信息或商品,用户信息,如性别、年龄、职业、收入、所在城市,用户历史浏览或购买行为记录,社会化关系等等。通过这些独特的个人信息,可以画出一副比较完整的人像。知道需要什么,喜欢什么,偏爱什么,这样就能“对症下药”,大大提高购买率或点击率。

推荐目标

  1. 提高单个信息或商品被访问的机会
  2. 增加用户滞留时间,提高用户黏性
  3. 促进信息访问或商品销售
  4. 帮助用户发现感兴趣的信息或商品,提高用户体验

推荐分类

  1. 个性化推荐:根据用户行为历史进行推荐
  2. 社会化推荐:根据相似用户行为历史进行推荐
  3. 基于物品推荐:根据物品本身的特征进行推荐
八十岁的背影回答于

主要推荐算法

  1. 协同过滤(Collaborative filtering):这是目前应用最为成功和广泛的推荐算法。它充分利用集体智慧,在大量用户或物品中搜索,并从中发现品味相近的用户或属性相近的物品,据此构造经过排序的推荐列表。
  2. 关联规则(Correlation Rule):挖掘物品的空间上的相关性,即发现同时被访问或购买的物品,据此为用户推荐。最为成功和经典的例子就是沃尔玛超市的物品排列-尿布和啤酒放在一起销售和例子。这个例子是发现很多爸爸们被妈妈们致使去买尿布,同时,西方男性又比较爱喝酒,所以爸爸在去买尿布的时候看到旁边有酒就会顺手买走以缓解被差遣出来的郁闷。
  3. 分类/聚类(Classification/Clustering):物以类聚,人以群分。同一类别的用户喜欢的东西,非常可能也是你喜欢的。算法来发现用户群组,并根据群组中其他用户浏览或者购买的物品来为当前用户推荐。这也是按照标签推荐。其实我觉得有时候只按标签不是很准确的。
  4. 基于内容(Content-based):分析物品内容或属性来构造相关性,据此构造推荐列表。这种算法主要用于电子信息物品的推荐,如网页、ebook、图片、音乐、视频。这个还行,就我个人体验来说还算不错。
  5. 混合推荐:综合运用以上多种推荐算法进行推荐,不同算法之间可以取长补短。但增加了一定的复杂性,而且推荐结果也不容易解释。这样的算法实现也就更为复杂。但效果也会更好。
彼岸轮回回答于

就像我最近研究协作过滤算法一样,我将详细描述这个算法是如何实现的。

协作过滤算法通常如何做?我们来看看图书推荐的做法:

协同过滤(CF)大致可以分为两类:一类是基于邻域的推荐,另一类是基于模型的推荐;邻域法是利用用户最喜欢的现有项目度来猜测用户对新项目的喜爱程度。相反,基于模型的方法使用历史行为数据根据学习的预测模型预测新项目的偏好程度。通常的方法是使用机器学习算法来找出用户 - 项目交互模型,以找出数据中的特定模式。

[基于社区的推荐] - 即构建用户相似度矩阵和产品相似度矩阵

假设用户已经显示了对某些书籍的偏好并相应地得分。不同的书代表不同的维度。得分代表维度中特征向量的投影长度。用户的特征基于用户对不同书籍的偏好而建立。向量,然后根据余弦相似度可以确定用户之间的相似度。相似矩阵可以基于相似性建立。显然,根据用户对历史书籍的评价,用户可以得到他们喜欢的情况。在此基础上,可以构建用户的特征向量,在一定程度上可以确定两个用户在图书风格上的相似程度。可以认为,如果A和B类似,那么可以认为最喜欢的书B也是喜欢的。当推荐A用户使用书籍时,找到相似度较高的其他用户,然后删除A用户看到的书籍,并将相似用户对某本书的偏好与用户与A用户之间的相似度相结合。建议首先推荐推荐指数最高的书。

这应该是图书社区使用的推荐算法之一,例如豆瓣,以便使用用户之间的相似性来提出建议。当然,电影的推荐是一样的。

同理,反过来我们可以按照相似的方位,以用户为维度来构建item的特征向量。 当我们需要判断两本书是否相似时,就去看对这两本书进行过评价的用户构成是否相似,即是使用评价过一本书的用户向量(或数组)表示这本图书;也就是说,如果有两本书的评价中,用户重合度较高,即可认为该两本书相似度较高。其实借用的还是用户相似的基础。

值得注意的是,协同过滤的推荐算法虽然使用得很广且推荐效果也较好,但还是存在一些不足之处:

协同过滤算法(CF)推荐中存在流行性偏差,因为协同过滤算法是基于惯性数据来进行推荐的,流行的物品由于关注的用户多,产生的数据也多,因此可以建立较为有效的推荐机制;而对于小众或长尾的产品(没人用过也没人评分过),则无法有效推荐;

冷启动问题(又叫做新用户问题,或推荐新项问题),同样是由于惯性数据的缺失,导致一开始的推荐算法无法建立;这样的问题可以通过流行性算法进行一定程度的解决,当然也可以利用基于内容的推荐算法来进行解决。

灬半痴新手上路,多多关照回答于

肯定每一类信息或者商品都有各自的标签,比如“历史”“军事”之类的,一旦你点击了并浏览了,系统就会自动记录,然后后台统计。最后形成你的兴趣图,给你推荐你喜欢看的。

独钓寒江雪_Ly站在巨人肩膀上的矮子回答于

基本还是按照喜好,根据用户的点击,浏览来判断爱好。但不得不说,有的推荐做的就很“智障”。比如x云音乐,光靠标签,日推真的很差劲。还号称了解口味。

黑色技术追寻着HTML5的步伐,请不要放弃~回答于

具体的实现还是需要一定代码功底的!

你在哪里回答于

这里说的实现都是伪代码,可能连代码都算不上。就只是一种逻辑而已。

圣人惠好可爱在一条通往牛逼的道路上,我不断放弃回答于
萧雨牧歌潜行者回答于

我理解的智能推荐算法就是根据你曾经的浏览行为、消费记录等等各个方面综合判断你可能会喜欢的东西进行推荐,目的是为了精准推送,留住用户,方便用户。

扫码关注云+社区