文档介绍:探索推荐引擎内部的秘密
推荐引擎初探
协同过滤
聚类算法
1
2
3
推荐引擎初探
推荐引擎工作原理
一般情况下,推荐引擎所需要的数据源包括:
1、要推荐物品或内容的元数据,例如关键字,基因描述等;
2、系统用本原理也是类似的,只是说它使用所有用户对物品或者信息的偏好,发现物品和物品之间的相似度,然后根据用户的历史偏好信息,将类似的物品推荐给用户。
基于工程的协同过滤推荐和基于内容的推荐其实都是基于物品相似度预测推荐,只是相似度计算的方法不一样,前者是从用户历史的偏好推断,而后者是基于物品本身的属性特征信息。
推荐引擎初探
深入推荐机制
3、基于协同过滤的推荐-基于模型的协同过滤推荐
基于模型的协同过滤推荐就是基于样本的用户喜好信息,训练一个推荐模型,然后根据实时的用户喜好的信息进行预测,计算推荐。
优点:
,而且不要求物品的描述是机器可理解的,所以这种方法也是领域无关的。
,可以共用他人的经验,很好的支持用户发现潜在的兴趣偏好
问题:
,所以对新物品和新用户都有“冷启动〞的问题。
。
,用户历史偏好是用稀疏矩阵进行存储的,而稀疏矩阵上的计算有些明显的问题,包括可能少局部人的错误偏好会对推荐的准确度有很大的影响等等。
。
,抓取和建模用户的偏好后,很难修改或者根据用户的使用演变,从而导致这个方法不够灵活。
推荐引擎初探
深入推荐机制
4、混合的推荐机制
: 用线性公式〔linear formula〕将几种不同的推荐按照一定权重组合起来,具体权重的值需要在测试数据集上反复实验,从而到达最好的推荐效果。
:前面也讲到,其实对于不同的情况〔数据量,系统运行状况,用户和物品的数目等〕,推荐策略可能有很大的不同,那么切换的混合方式,就是允许在不同的情况下,选择最为适宜的推荐机制计算推荐。
:采用多种推荐机制,并将不同的推荐结果分不同的区显示给用户。其实,Amazon,当当网等很多电子商务网站都是采用这样的方式,用户可以得到很全面的推荐,也更容易找到他们想要的东西。
: 采用多种推荐机制,并将一个推荐机制的结果作为另一个的输入,从而综合各个推荐机制的优缺点,得到更加准确的推荐。
推荐引擎初探
推荐引擎的应用
1、亚马逊
Amazon 利用可以记录的所有用户在站点上的行为,根据不同数据的特点对它们进行处理,并分成不同区为用户推送推荐:
1、今日推荐 (Today's Recommendation For You): 通常是根据用户的近期的历史购置或者查看记录,并结合时下流行的物品给出一个折中的推荐。
2、新产品的推荐 (New For You): 采用了基于内容的推荐机制 (Content-based Recommendation),将一些新到物品推荐给用户。在方法选择上由于新物品没有大量的用户喜好信息,所以基于内容的推荐能很好的解决这个“冷启动〞的问题。
3、捆绑销售 (Frequently Bought Together): 采用数据挖掘技术对用户的购置行为进行分析,找到经常被一起或同一个人购置的物品集,进行捆绑销售,这是一种典型的基于工程的协同过滤推荐机制。
4、别人购置 / 浏览的商品 (Customers Who Bought/See This Item Also Bought/See): 这也是一个典型的基于工程的协同过滤推荐的应用,通过社会化机制用户能更快更方便的找到自己感兴趣的物品。
值得一提的是,Amazon 在做推荐时,设计和用户体验也做得特别独到:
Amazon 利用有它大量历史数据的优势,量化推荐原因。
1、基于社会化的推荐,Amazon 会给你事实的数据,让用户信服,例如:购置此物品的用户百分之多少也购置了那个物品;
2、基于物品本身的推荐,Amazon 也会列出推荐的理由,例如:因为你的购物框中有 ***,或者因为你购置过 ***,所以给你推荐类似的 ***。
另外,Amazon 很多推荐是基于用户的 profile 计算出来的,用户的 profile 中记录了用户在 Amazon 上的行为,包括看了那些物品,买了那些物品,收藏夹和 wish list 里的物品等等,当然 Amazon 里还集成了评分等其他的用户反响的方式,它们都是 profile 的一局部,同时,Amazon 提供了让用户自主管理自己 profile 的功能,通过这种方式用户可以更明确的告诉推