大促迷思:那个榨干我钱包的“猜你喜欢”是什么来头!?
// 永远别问我们双11花掉多少钱 //
用户数量往往比较多,两两相似度计算起来非常吃力,成为瓶颈。
用户的品味变化是很快的,不是静态的,所以兴趣迁移问题很难被反映出来。
由于数据稀疏和倾斜,用户和用户之间的共同消费行为实际上是比较少的,而且一般都针对一些热门物品,对发现用户兴趣帮助不大。
构建用户物品的关系矩阵,矩阵元素可以是用户的消费行为(隐式反馈),也可以是消费后的评分,还可以是对消费行为的某种量化,如时间、次数、费用等,也可当成评分。
假如矩阵的行表示物品,列表示用户,则两两计算行向量之间的相似度,可以得到物品相似度矩阵,行和列都表示物品。
根据推荐场景不同,产生两种不同的推荐结果。一种是在某一个物品页面推荐相关物品,另一种是在个人首页产生类似“猜你喜欢”的推荐结果。稍后会分别进行讲解。
▊ 计算物品相似度
它是一个稀疏向量。
向量的一维代表一个用户,向量的总维度代表总的用户数量。
向量各个维度的取值表示用户对这个物品的消费结果。可以是代表行为(隐式反馈)的布尔值,也可以是量化的分数,如评分、时间长短、次数多少、费用高低等,还可以是消费的评价分数。
没有消费过的物品就不再表示出来,所以说是一个稀疏向量。
物品维度中心化。用矩阵元素的原始值减去物品向量的平均值。先计算每一个物品收到的评分的平均值,再用物品向量中的分数减去对应物品的平均值。这样做的目的是什么呢?去掉物品中“铁杆粉丝”群体的非理性因素,例如一个流量明星主演的电影,其“铁杆粉丝”可能会集体去打高分,那么用物品的平均值来实现中心化就有一定的抑制作用。
用户维度中心化。用矩阵元素的原始值减去用户向量的平均值。计算每一个用户的评分平均值,他给所有物品的评分再减去这个平均值。这样做的目的又是什么呢?每个人标准不一样,有的标准严苛,有的宽松,所以减去用户评分的平均值可以在一定程度上保留偏好,去掉主观成分。
▊ 计算推荐结果
▊ Slope One算法
它们有两个共同用户,分别是用户2和用户3。
两个共同用户对物品A和物品B的评分距离分别是:1=4-3,-2=3-5,平均距离是-0.5=(1-2)/2。
分子中括号里部分表示用户对物品k 的评分加上物品k 和物品j 的平均评分距离,用户对物品j 还没有评分。实际上是单个物品k 对物品j 的评分预测。
分母是一个用共同评分用户数对分子中括号部分做的加权平均。
本文知识点选自博文视点新书《推荐系统》。本书是一本关于推荐系统产品如何落地的综合图书,内容覆盖产品、算法、工程、团队和个人成长。
本书旨在解决推荐系起步阶段80%的问题,对多达20个推荐系统核心主题进行精细讲解,横跨产品、算法、工程团队和个人成长。不用直击灵魂,只要直击左下阅读原文,就可以领略这本由推荐系统不折不扣的老炮小生,给大家带来的亦庄亦谐别具一格的好书。
快:跨技术实践|管理决策视角,历数业界优选案例|工具,帮助非算法出身工程师快速搭建起可用系统。
通:旨在实现决策|架构|安全|运营无障碍沟通,覆盖产品|算法|工程|团队|个人成长|思维模式|问题类型。
全:纵向系统剖析推荐算法模型,从传统内容推荐、协同过滤到FM模型再到评价指标与深度学习应用。
珍:解密设计推荐系统不可或缺又不可多得一手资料,如信息流内在逻辑|典型工程架构|内部模块细节。
█ 关 于 作 者
偶以“刑无刀”的名义“出没江湖”,初于北京理工大学学习自然语言处理,先后任职于新浪微博、车语传媒、贝壳找房等公司,做自然语言处理及推荐系统开发等工作,也曾有两三年与推荐系统有关的创业经验。有译著《机器学习:实用案例解析》,在公众号ResysChina上发表过推荐系统系列文章,在极客时间开设有《推荐系统36式》付费专栏。
█ 大 咖 推 荐
谷文栋 / ResysChina发起人
张俊林 / 新浪微博机器学习团队AILab负责人
阿稳 / 酷划CTO,曾任豆瓣、淘宝资深算法专家,《智能Web算法》译者
王守崑 / 爱因互动创始人,曾任豆瓣首席科学家
张奇 / 北京惠每科技有限公司CEO,曾任天猫推荐团队负责人
张相於 / 阿里巴巴高级算法专家
严强 / 快手商业副总裁,曾任淘宝资深算法专家
冯扬 / 贝壳找房数据智能中心负责人,曾任腾讯、新浪微博推荐算法专家
1.1 该要推荐系统吗
1.2 问题模式有哪些
1.3 要具有什么样的思维模式
2.1 推荐系统的价值和成本
2.2 信息流简史
3.1 用户画像简介
3.2 标签挖掘技术
3.3 基于内容的推荐
4.1 基于用户的协同过滤算法
4.2 基于物品的协同过滤算法
4.3 相似度算法一览
5.1 SVD算法
5.2 ALS算法
5.3 BPR算法
6 模型融合
6.1 线性模型和树模型
6.2 因子分解机
6.3 Wide&Deep模型
7 探索和利用
7.1 MAB问题与Bandit算法
7.2 加入特征的UCB算法
7.3 Bandit算法与协同过滤算法
8 深度学习
8.1 深度隐因子
8.2 深度CTR预估
9 其他算法
9.1 排行榜
9.2 采样算法
9.3 重复检测
10 架构总览
10.1 信息流推荐架构
10.2 个性化首页架构
10.3 搜索引擎、推荐系统及广告系统
11 关键模块
11.1 日志收集
11.2 实时推荐
11.3 AB实验
11.4 推荐服务
11.5 开源工具
12 效果保证
12.1 测试及常用指标
12.2 推荐系统的安全
13 团队与个人
13.1 团队组建
13.2 个人成长
13.3 小结
▶ 博文菌●互动时间 ◀
虽然“猜你喜欢”来势汹汹,但也免不了有翻车的时候,欢迎在留言区分享你经历过的“猜你喜欢”翻车瞬间!
热门推荐