01 推荐系统简介

推荐系统的基本思想

  • 懂你,精准推送: 利用用户和物品的特征信息,给用户推荐具有用户喜欢的特征的物品。
  • 物以类聚: 利用用户喜欢过的物品,给用户推荐与他喜欢过的物品相似的物品。
  • 人以群分: 利用和用户相似的其他用户,推荐那些和他们兴趣爱好相似的其他用户喜欢的物品。
    在这里插入图片描述

推荐系统的分类

在这里插入图片描述
在个性化推荐系统中,根据数据来源的不同,可以分为基于人口统计学的推荐(用户本身的数据),基于内容的推荐(商品的数据),基于协同过滤的推荐(行为数据)。

推荐算法简介

基于人口统计学的推荐算法

基于人口统计学的推荐机制(Demographi-based Recommendation)是一种易于实现的推荐方法,它只是简单的根据用户的基本信息发现用户的相关程度,然后将相似用户喜爱的其他物品推荐给当前用户

基于人口统计学的推荐中最为典型的是用户画像。用户画像就是企业通过收集与分析消费者的社会属性、生活习惯、消费行为等主要信息的数据之后,完美的抽象出一个用户商业全貌,进而进行推行营销的一种方式。用户信息标签化的过程一般又称为用户画像(user profiling).

在这里插入图片描述
基于人口统计的推荐使用的是用户本身的数据,将用户喜欢过的物品推荐给相似的用户。在上述图片中,用户a和用户c都为女性,且年龄为25-30岁,所以认为用户a和用户c比较相似,由于用户a喜欢物品A,所以向用户c推荐物品A。

基于内容(Content Based)的推荐算法

根据推荐物品或内容的元数据,发现物品的相关性,在基于用户过去的喜好程度,为用户推荐相似的物品。
通过抽取物品内在或者外在的特征值,实现物品相似度的计算。将用户个人信息的特征(基于喜好记录或是预设兴趣标签),和物品的特征相匹配。,就能得到用户对物品感兴趣的程度。
在这里插入图片描述
基于内容的推荐使用的是商品的数据,向用户推荐与他喜欢过的物品相同类型的物品。在上述图片中,电影A和电影C较为相似,都为爱情,动作类型的电影。因为用户a喜欢过物品A,所以向用户a推荐电影C。

协同过滤(Collaborative Filtering, CF)推荐算法

基于内容的推荐方法主要利用的是用户评价过的物品的内容特征,推荐相似的物品给该用户;CF方法还可以利用其他用户评分过的物品内容。
CF可以解决CB的一些局限:

  • 物品内容不全或难以获得时,依然可以通过其他用户的反馈给出推荐;
  • CF基于用户之间对物品的评价质量,避免了CB仅依赖内容可能造成对物品质量判断的干扰;
  • CF推荐不受内容限制,只要其他类似用户给出了对不同物品的兴趣,CF就可以给用户推荐出内容差异很大的物品(存在某种内在联系)

基于近邻的协同过滤
基于用户(User-CF)
基于物品(item-CF)

基于模型的协同过滤
奇异值分解(SVD)
潜在语义分析(LSA)
支持向量机(SVM)

基于用户的协同过滤

基于用户的协同过滤推荐的基本原理是,根据所有用户对物品的偏好,发现与当前用户口味和偏好相似的‘邻居’用户群,并推荐近邻所偏好的物品。在一般的应用中采用计算‘K-近邻’算法,基于这K个邻居的历史偏好,为当前用户进行推荐。

在这里插入图片描述
用户a喜欢物品A、C,用户c喜欢物品A、C、D ,则用户a和用户c比较相似,可以考虑把物品D推荐给用户a。
基于用户的协同过滤相比较于基于内容的推荐方法,没有用户信息,完全使用行为信息来刻画用户间的相似度。

基于物品的协同过滤

基于物品的协同过滤只是使用所有用户对物品的偏好,发现物品和物品之间的相似度,然后根据用户的历史偏好信息,将类似的物品推荐给用户。
在这里插入图片描述
物品A被用户ABC喜欢,物品C被用户AB喜欢,可以看出,则物品C和物品A比较相似,可以向用户C推荐物品C。

基于物品的协同过滤与基于内容的推荐异同:都是基于物品相似度预测推荐。计算相似度所使用的数据不一样,前者是从历史的偏好推断,后者是基于物品本身的属性特征信息。
基于用户和基于物品的协同过滤,如何选择? 要选择哪个算法,需要根据实际的应用场合而定,当物品的数量远远小于用户数量时,而且物品的个数和相似度相对比较稳定,可以使用基于物品的推荐机制;当物品格式远远大于用户个数时,且物品信息更新也很快,这时物品间相似度不稳定,使用user-CF比较好。

混合推荐

实际网站的推荐系统往往都不是单纯只采用了某一种推荐机制和策略,往往是将多个方法混合在一起,从而达到更好的推荐效果。比较流行的组合方法有:
加权混合:用线性公式将集中不同的推荐按照一定的权重组合起来,具体权重的值需要在测试数据上反复试验。
切换组合:允许在不同的情况(数据量,系统运行状况,用户和物品的数目等)下,选择最为合适的推荐机制计算推荐。
分区组合:采用多种推荐机制,并将不同的推荐结果分不同的区显示给用户。
分层混合:采用多种混合机制,并将一个推荐机制的结果作为另一个的输入,从而综合各个推荐机制的优缺点,得到更加准确的推荐。

推荐系统的评测

好的推荐系统要实现用户,网站,内容三方的共赢,即让用户更快更好的获取到自己需要的内容;让内容更快更好的推送到喜欢它的用户手中;让网站(平台)更有效的保留用户资源。基于此,设计出一下评测指标:

预测准确度        用户满意度        覆盖率        多样性
惊喜度            信任度              实时性        健壮性
商业目标                                                    
推荐系统的准确度评测
  • 评分预测:在网站中设置有用户对物品的打分功能,如果知道用户对物品的历史评分,就可以从中学习一个兴趣模型,从而预测用户对新物品的评分。 评分预测的准确度一般用军方误差根(RMSE)或平均绝对误差(MAE)计算,给出计算公式如下:
    R M S E = u , i T ( r u i r ^ u i ) T RMSE=\sqrt{\frac{\sum_{u,i\in T}{(r_{ui} - \hat{r}_{ui})}}{|T|}}
    M A E = u , i T ( r u i r ^ u i ) T MAE=\frac{\sum_{u,i\in T}({r_{ui} - \hat{r}_{ui}})}{|T|}
    r u i r_{ui} 表示第 u u 个用户对第 i i 个物品的真实评分, r ^ u i \hat{r}_{ui} 推荐系统预测出的第 u u 个用户对第 i i 个物品的评分。
  • Top-N推荐:网站提供推荐服务时,一般是给用户一个个性化的推荐列表,这种推荐叫做Top-N推荐。Top-N推荐的预测准确率一般使用精确率(precision)和召回率(recall)来度量。
发布了6 篇原创文章 · 获赞 2 · 访问量 180

猜你喜欢

转载自blog.csdn.net/qq_34615112/article/details/104473104