推荐算法评估指标 准确率:准确率是针对预测结果而言的,表示给用户推荐的物品中,有多少是真正感兴趣的。 召回率:召回率是针对推荐的结果,它表示的是用户感兴趣的物品中,有多少个是系统推荐的。 覆盖率:反映了推荐算法挖掘长尾物品的能力,如果所有物品都至少推荐给了1个用户,则覆盖率为100%。 流行度:根据推荐物品的平均流行度进行度量,如果推荐物品的流行度都比较高,则物品新颖度比较低。 常用推荐算法 协同过滤算法是基于用户行为数据设计的推荐算法,其中主要包括三类算法:「基于领域的方法」、「隐语义模型」、「基于图的随机游走算法」,这里主要给大家介绍一下「基于领域的方法」,分为User CF和Item CF两种。 有需要的可以提前去云小站看看哦 基于用户的协同过滤(User Collaborative Filtering) User CF的基础逻辑是给用户推荐和他兴趣相似的其他用户喜欢的物品,步骤如下:
找到和目标用户兴趣相似的用户集合; 找到这个集合中的用户喜欢的,且目标用户没有听说过的物品推荐给目标用户。 设有两个用户u和v,N(u)表示用户u曾经有过正反馈的物品集合,可通过以下方式计算两个用户的兴趣相似度:
Jaccard公式:
计算余弦相似度:
得到用户的兴趣相似度后,选择与用户兴趣最相似的K个用户,将他们的兴趣物品(并排除目标用户已反馈过的物品),推荐给目标用户。
算法缺点
随着网站用户数目越来越大,计算用户兴趣相似矩阵越来越困难; 运算时间复杂度和空间复杂度与用户数增长近似于平方关系。 因此,亚马逊推出了-item CF。
基于物品的协同过滤(Item Collaborative Filtering) User CF的基础逻辑是给用户推荐和他之前喜欢的物品相似的物品,步骤如下:
计算物品之间的相似度; 根据物品的相似度和用户的历史行为给用户生成推荐列表。 通过计算喜欢物品 i 的用户中有多少也喜欢物品 j,来计算两个物品的相似度:
得到物品的相似度后,选择与其最相似的K个物品集合,推荐给目标用户。
User CF与Item CF算法的对比
推荐系统的评估维度 评估一个推荐系统的质量,需要综合多个维度进行评估,核心维度如下:
用户满意度:用户后续行为反馈,调研 预测准确度:准确度/召回率 覆盖率:对物品长尾的挖掘能力,注意马太效应的影响 多样性:用户兴趣类型分布 新颖性:排除用户历史反馈物品,排除热门物品 惊喜度:非用户历史兴趣,但是满意 信任度:透明度,推荐机制解释程度 实时性:是否可以针对用户行为实时进行反馈 健壮性:防攻击,反作弊 商业目标达成情况 冷启动 除了以上所述,搭建推荐系统,还需要考虑的一个重要问题就是“冷启动”,涉及冷启动的场景主要有以下三类:
用户冷启动 一个新用户,没有任何历史行为数据,怎么做推荐。
物品冷启动 一个新上线的物品,没有用户对它产生过行为,怎么推荐给感兴趣的用户。
系统冷启动 一个新开发的网站,没有用户数据,怎么做个性化推荐。
根据系统的场景属性,可以设计不同的冷启动方式:
提供非个性化推荐; 利用用户注册信息如年龄性别等做粗颗粒度推荐; 利用用户社交关系; 新用户要求对一系列物品进行反馈; 对应新物品,利用内容属性推荐给相似物品感兴趣用户; 专家搭建多维度标签体系。 设计一个健全的推荐系统,算法和策略需要综合考虑多项因素,包括服务器、计算资源成本,人力成本,可持续性和可扩展性等。
高质量的推荐系统会使用户对系统产生依赖,因此,推荐系统不仅能为用户提供个性化服务,还能与用户建立长期稳定的关系,提高用户忠诚度,防止用户流失。
希望我的梳理可以给到一些启发和参考。
推荐算法评估指标 准确率:准确率是针对预测结果而言的,表示给用户推荐的物品中,有多少是真正感兴趣的。 召回率:召回率是针对推荐的结果,它表示的是用户感兴趣的物品中,有多少个是系统推荐的。 覆盖率:反映了推荐算法挖掘长尾物品的能力,如果所有物品都至少推荐给了1个用户,则覆盖率为100%。 流行度:根据推荐物品的平均流行度进行度量,如果推荐物品的流行度都比较高,则物品新颖度比较低。 常用推荐算法 协同过滤算法是基于用户行为数据设计的推荐算法,其中主要包括三类算法:「基于领域的方法」、「隐语义模型」、「基于图的随机游走算法」,这里主要给大家介绍一下「基于领域的方法」,分为User CF和Item CF两种。
基于用户的协同过滤(User Collaborative Filtering) User CF的基础逻辑是给用户推荐和他兴趣相似的其他用户喜欢的物品,步骤如下:
找到和目标用户兴趣相似的用户集合; 找到这个集合中的用户喜欢的,且目标用户没有听说过的物品推荐给目标用户。 设有两个用户u和v,N(u)表示用户u曾经有过正反馈的物品集合,可通过以下方式计算两个用户的兴趣相似度:
Jaccard公式:
计算余弦相似度:
得到用户的兴趣相似度后,选择与用户兴趣最相似的K个用户,将他们的兴趣物品(并排除目标用户已反馈过的物品),推荐给目标用户。
算法缺点
随着网站用户数目越来越大,计算用户兴趣相似矩阵越来越困难; 运算时间复杂度和空间复杂度与用户数增长近似于平方关系。 因此,亚马逊推出了-item CF。
基于物品的协同过滤(Item Collaborative Filtering) User CF的基础逻辑是给用户推荐和他之前喜欢的物品相似的物品,步骤如下:
计算物品之间的相似度; 根据物品的相似度和用户的历史行为给用户生成推荐列表。 通过计算喜欢物品 i 的用户中有多少也喜欢物品 j,来计算两个物品的相似度:
得到物品的相似度后,选择与其最相似的K个物品集合,推荐给目标用户。
User CF与Item CF算法的对比
推荐系统的评估维度 评估一个推荐系统的质量,需要综合多个维度进行评估,核心维度如下:
用户满意度:用户后续行为反馈,调研 预测准确度:准确度/召回率 覆盖率:对物品长尾的挖掘能力,注意马太效应的影响 多样性:用户兴趣类型分布 新颖性:排除用户历史反馈物品,排除热门物品 惊喜度:非用户历史兴趣,但是满意 信任度:透明度,推荐机制解释程度 实时性:是否可以针对用户行为实时进行反馈 健壮性:防攻击,反作弊 商业目标达成情况 冷启动 除了以上所述,搭建推荐系统,还需要考虑的一个重要问题就是“冷启动”,涉及冷启动的场景主要有以下三类:
用户冷启动 一个新用户,没有任何历史行为数据,怎么做推荐。
物品冷启动 一个新上线的物品,没有用户对它产生过行为,怎么推荐给感兴趣的用户。
系统冷启动 一个新开发的网站,没有用户数据,怎么做个性化推荐。
根据系统的场景属性,可以设计不同的冷启动方式:
提供非个性化推荐; 利用用户注册信息如年龄性别等做粗颗粒度推荐; 利用用户社交关系; 新用户要求对一系列物品进行反馈; 对应新物品,利用内容属性推荐给相似物品感兴趣用户; 专家搭建多维度标签体系。 设计一个健全的推荐系统,算法和策略需要综合考虑多项因素,包括服务器、计算资源成本,人力成本,可持续性和可扩展性等。
高质量的推荐系统会使用户对系统产生依赖,因此,推荐系统不仅能为用户提供个性化服务,还能与用户建立长期稳定的关系,提高用户忠诚度,防止用户流失。
希望我的梳理可以给到一些启发和参考。
作者:orca AdBright产品经理
拼团了,好友利益:云服务器双11狂欢特惠,最低仅需84.97元/年,助力轻松上云https://www.aliyun.com/1111/pintuan-share?ptCode=MTc5MTczMjYyMDQxOTE3NHx8MTE0fDE%3D&userCode=vjly8ffr
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。
智能推荐(Artificial Intelligence Recommendation,简称AIRec)基于阿里巴巴大数据和人工智能技术,以及在电商、内容、直播、社交等领域的业务沉淀,为企业开发者提供场景化推荐服务、全链路推荐系统开发平台、工程引擎组件库等多种形式服务,助力在线业务增长。