协同过滤(Collaborative Filtering)
这是推荐系统的核心方法之一,专门解决“信息过载”和“个性化匹配”问题。在数字营销中,它用于向用户自动推荐内容、商品或广告,从而提升转化率和客单价。
下面我们从零开始,逐步拆解。
第一步:核心思想——利用“人群智慧”
想象你去一家餐厅。你会怎么点菜?
- 方式A(基于内容):只看菜单上的食材描述,选你以往爱吃的口味。→ 这类似内容过滤(非本词条)。
- 方式B(协同过滤):你发现一个口味跟你很像的朋友,直接点他推荐的那道菜。或者看到“80%的人点了A菜后也点了B菜”,于是你加点了B菜。
协同过滤就是方式B:不分析物品本身属性,只分析用户与物品之间的互动行为(点击、购买、评分),找到“行为相似的人”或“经常一起出现的物品”,然后做推荐。
第二步:两大分支——用户-based 与 物品-based
1. 用户-based 协同过滤
- 步骤:
- 找出与当前用户“行为相似度最高”的K个其他用户(称为“邻居”)。
- 看这些邻居喜欢过什么物品,且当前用户还没见过。
- 把邻居们最喜欢的物品推荐给当前用户。
- 营销例子:用户A买了钓鱼竿和帐篷。系统发现用户B也买了钓鱼竿和帐篷,还买了防潮垫。于是把防潮垫推荐给用户A。
- 适用场景:用户量较小、用户偏好相对稳定的平台(如早期豆瓣)。
2. 物品-based 协同过滤
- 步骤:
- 计算物品之间的“共现相似度”——即“购买了物品X的用户,有多大比例也购买了物品Y”。
- 当用户刚对一个物品(如手机)表现出兴趣,就找到与手机最相似的几个物品(如手机壳、贴膜)。
- 推荐这些相似物品。
- 营销例子:亚马逊“购买此商品的顾客也购买了……”就是典型。用户看了一双跑鞋,系统推荐同款跑鞋的不同配色、或相关运动袜。
- 适用场景:用户量大、物品数量相对稳定(电商、视频网站)。
第三步:相似度计算的底层原理——余弦相似度
无论是找相似用户还是相似物品,都需要量化“相似”。最常用的是余弦相似度。
假设我们用向量表示用户对物品的评分:
- 用户A:[5, 0, 4] (对物品1打5分,物品2未评分/0,物品3打4分)
- 用户B:[4, 0, 5]
余弦相似度公式:
similarity = cos(θ) = (A·B) / (||A|| × ||B||)
- 分子:向量点积 = 5×4 + 0×0 + 4×5 = 20 + 0 + 20 = 40
- 分母:||A|| = √(5²+0²+4²)=√41 ≈ 6.4,||B||=√(4²+0²+5²)=√41≈6.4,乘积≈41
- 结果 ≈ 40/41 ≈ 0.975。非常接近1,表示高度相似。
数字营销中,你可以把“评分”换成“是否点击”(0/1)、“停留时长”、“加购次数”等标准化后的数值。
第四步:冷启动与稀疏性问题——协同过滤的致命弱点
协同过滤完全依赖历史行为数据,所以会遇到:
-
新用户冷启动:新用户没有任何点击/购买记录,找不到邻居,无法推荐。
→ 营销解法:先让他完成“兴趣问卷”或引导浏览几个品类(产生初始行为),或采用“非个性化推荐”(热门榜)。 -
新物品冷启动:一个新商品上架,没人互动过,不会被推荐。
→ 营销解法:结合内容过滤(分析商品标题、描述的关键词)或人为打标签,直到积累足够行为。 -
数据稀疏:一个电商有100万用户和10万商品,平均每个用户只买过5件商品。用户-物品矩阵99.995%是空的,很难找到相似用户。
→ 营销解法:优先使用物品-based(因为物品互动相对集中,热门物品共现统计更可靠),或用矩阵分解技术(如SVD,非本词条)。
第五步:数字营销中的实战落地——邮件与站内推荐
假设你运营一个服装独立站,想用协同过滤提升交叉销售:
步骤1:埋点收集行为
记录每个用户最近30天的:
- product_view(浏览), add_to_cart(加购), purchase(购买)
步骤2:构建行为矩阵
将行为加权:purchase=3分, add_to_cart=1分, view=0.5分。得到用户-物品分值矩阵。
步骤3:物品-based计算
例如发现:浏览“白色亚麻衬衫”的用户中,有62%也浏览/购买了“卡其色短裤”。相似度=0.62。
步骤4:实时触发
当用户正在看“白色亚麻衬衫”的详情页时,推荐位展示“卡其色短裤”,并附文案:“看过此衬衫的顾客也喜欢短裤”。
步骤5:A/B测试验证
对照组:展示热销款推荐。实验组:展示协同过滤推荐。观测指标:加购率、关联购买率。通常协同过滤可将交叉销售提升10-30%。
第六步:进阶——与已学词条的关系
- 营销归因:协同过滤生成推荐位产生的点击,在归因模型中应被记为“推荐算法”接触点。
- 客户旅程地图:在“考虑阶段”和“购买阶段”植入协同过滤推荐,平滑过渡。
- 增长实验设计:可以用AA/B测试验证不同相似度阈值(例如取5个邻居 vs 10个邻居)对转化率的影响。
- AARRR模型:协同过滤直接影响“Activation”(推荐让用户快速发现兴趣)和“Revenue”(交叉销售提客单价)。
你已经掌握了从思想、分支、数学原理、缺陷到实战落地的完整知识链。