作者在《推荐系统产品与算法概述》这篇文章中简单介绍了协同过滤算法 。 协同过滤算法是在整个推荐系统发展史上比较出名的算法, 具备举足轻重的地位, 甚至在当今还在大量使用 。
本篇文章作者会详细讲解协同过滤推荐算法的方方面面, 这里所讲的也是作者基于多年推荐系统研究及工程实践经验的基础上总结而成, 希望对大家学习协同过滤推荐算法有所帮助, 提供一些借鉴 。
本文会从协同过滤思想简介、协同过滤算法原理介绍、离线协同过滤算法的工程实现、近实时协同过滤算法的工程实现、协同过滤算法应用场景、协同过滤算法的优缺点、协同过滤算法落地需要关注的几个问题等7个方面来讲述 。 希望读者读完本文, 可以很好地理解协同过滤的思路、算法原理、工程实现方案, 并且具备基于本文的思路自己独立实现一个在真实业务场景中可用的协同过滤推荐系统的能力 。
在正式讲解之前, 先做一个简单定义 。 本文用”操作过“这个词来表示用户对标的物的各种操作行为, 包括浏览、点击、播放、收藏、评论、点赞、转发、评分等等 。
一、协同过滤思想简介协同过滤, 从字面上理解, 包括协同和过滤两个操作 。 所谓协同就是利用群体的行为来做决策(推荐), 生物上有协同进化的说法, 通过协同的作用, 让群体逐步进化到更佳的状态 。 对于推荐系统来说, 通过用户的持续协同作用, 最终给用户的推荐会越来越准 。 而过滤, 就是从可行的决策(推荐)方案(标的物)中将用户喜欢的方案(标的物)找(过滤)出来 。
具体来说, 协同过滤的思路是通过群体的行为来找到某种相似性(用户之间的相似性或者标的物之间的相似性), 通过该相似性来为用户做决策和推荐 。
现实生活中有很多协同过滤的案例及思想体现, 除了前面提到的生物的进化是一种”协同过滤“作用外, 我认为人类喜欢追求相亲中的“门当户对”, 其实也是一种协同过滤思想的反射, 门当户对实际上是建立了相亲男女的一种“相似度”(家庭背景、出身、生活习惯、为人处世、消费观、甚至价值观可能会相似), 给自己找一个门当户对的伴侣就是一种“过滤”, 当双方”门当户对“时, 各方面的习惯及价值观会更相似, 未来幸福的概率也会更大 。 如果整个社会具备这样的传统和风气, 以及在真实”案例“中”门当户对“的夫妻确实会更和谐, 通过”协同进化“作用, 大家会越来越认同这种方式 。 我个人也觉得”门当户对“是有一定道理的 。
协同过滤利用了两个非常朴素的自然哲学思想:“群体的智慧”和“相似的物体具备相似的性质”, 群体的智慧从数学上讲应该满足一定的统计学规律, 是一种朝向平衡稳定态发展的动态过程, 越相似的物体化学及物理组成越一致, 当然表现的外在特性会更相似 。 虽然这两个思想很简单, 也很容易理解, 但是正因为思想很朴素, 价值反而非常大 。 所以协同过滤算法原理很简单, 但是效果很不错, 而且也非常容易实现 。
协同过滤分为基于用户的协同过滤和基于标的物(物品)的协同过滤两类算法 。 下面我们对协同过滤的算法原理来做详细的介绍 。
二、协同过滤算法原理介绍上面一节简单介绍了协同过滤的思想, 基于协同过滤的两种推荐算法, 核心思想是很朴素的”物以类聚、人以群分“的思想 。 所谓物以类聚, 就是计算出每个标的物最相似的标的物列表, 我们就可以为用户推荐用户喜欢的标的物相似的标的物, 这就是基于物品(标的物)的协同过滤 。 所谓人以群分, 就是我们可以将与该用户相似的用户喜欢过的标的物推荐给该用户(而该用户未曾操作过), 这就是基于用户的协同过滤 。 具体思想可以参考下面的图1 。
图1:”物以类聚, 人以群分“的朴素协同过滤推荐
协同过滤的核心是怎么计算标的物之间的相似度以及用户之间的相似度 。 我们可以采用非常朴素的思想来计算相似度 。 我们将用户对标的物的评分(或者隐式反馈, 如点击、收藏等)构建如下用户行为矩阵(见下面图2), 矩阵的某个元素代表某个用户对某个标的物的评分(如果是隐式反馈, 值为1), 如果某个用户对某个标的物未产生行为, 值为0 。 其中行向量代表某个用户对所有标的物的评分向量, 列向量代表所有用户对某个标的物的评分向量 。 有了行向量和列向量, 我们就可以计算用户与用户之间、标的物与标的物之间的相似度了 。 具体来说, 行向量之间的相似度就是用户之间的相似度, 列向量之间的相似度就是标的物之间的相似度 。
推荐阅读
- 分享一下我在工作中常用的一些工具 运营工具有哪些?
- 重点管控地区及关注地图分享 什么是重点管控地区
- 充满阳光正能量激励人心的句子分享 充满阳光正能量的句子
- 分享企业做品牌网络营销的3大好处 企业做品牌网络营销的好处有哪些?
- 分享企业品牌的5大作用 企业品牌的作用有哪些?
- 分享做企业营销策划的8个技巧 企业营销策划该怎么做?
- 分享制定企业营销策划方案的2大法则 企业营销策划方案如何制定?
- 分享企业招商营销策划的4大策略 企业招商营销策划的策略有哪些?
- 原神手游单手剑攻略-单手剑优缺点及玩法分享你知道吗
- 分享左岸咖啡的文案 简短咖啡文案有哪些?