学习笔记:《推荐算法——产品和内容推荐》

这节课是尹相志老师《数据科学心法与机器学习实战》系列课程的最后一讲:《数据科学实务案例:推荐算法的案例建模与评估》

老师介绍了基于商品、基于人与商品、基于相似人三个阶段的推荐算法演进过程;以Facebook为例讲了内容推荐相关知识;介绍了做产品推荐的思维方法和解题思路,以及如何透过追踪机制来收集客户数据,充实推荐模型;最后讲了通过深度学习对消费行为进行表征的推荐算法。

推荐算法的艺术在于不一定是要为消费者找到他需要的东西,而是让他以为他需要这些东西……

  1. 产品设计阶段:首先做出好的产品,思考产品本身怎样打动消费者——这个步骤与推荐算法没太大关系
  2. 产品定型之后:找到能够被我们的产品打动的用户——推荐算法

一、产品推荐算法演进的三个阶段

1. Item-based recommendation基于商品

基本原理:看产品和产品之间的关联性。根据购物车数据/已经买过的东西推荐新的产品:买了A产品会有多少几率买B(购物车算法/购物车规则,哪些商品会同时出现在我的购物篮里面)
权重计算:主要有三点——Recency:最后一次买到现在有多久 ;Frenquency:购买的频率;Monetary:购买的金额
eg:Apriori算法1994

  • 购物车中哪些商品总是同时被购买,基于贝叶斯条件概率,计算过程简单。
  • 缺点:
    1. 只看商品的特征不看人的特征,不会给每个消费者画像;
    2. 缺少绝对好坏、具有全局观的指标(support、confidence、lift三个指标都不完全work);
    3. 没有办法做冷启动:客户第一次来,没有任何信息的情况下做商品推荐。
  • 现在适用情况:基本被抛弃了。某些匿名消费场景可能会被使用,但意义和效果不大。

2. User-product-based recommendation基于人与商品

基本原理:N个客户对应N个产品的矩阵,以客户为基础,关注人的差异+物的差异,在商品特征和购买关联性的基础上,加入人的个性特征
算法奇异值分解SVD(n个客户m个商品:拆解成nk用户隐向量矩阵和km商品隐向量矩阵**);因子分析;探讨每一个因子跟产品之间的关联性
缺点:同样没办法冷启动
现在适用情况:仍然是一个不错的算法。
eg:Matrix Factorization Techniques for Recommender System 2009

3. User-based recommendation基于相似人

基本原理看人与人的相似性。谁跟A比较像,找出BCD,BCD买了哪些东西A还没有买,于是给A推荐那些他还没买的商品。
相似性算法最近邻居法基于聚类(行为、客户价值等不同划分标准),把人切位一群一群,落在同一群默认为会有相似的购买行为
优点:可以冷启动;
缺点不能满足人求新求变的喜好(一段时间内推荐的商品相对固定,累计时间够久才会有变化)
K-nearest neighbors最近邻居法:没有被储存下来的规则实体;历史案例一个都不能丢;

二、内容推荐算法

内容推荐的重点是如何评估相似性,主要有下面4种:

  1. 词频:低阶但有效!:
  2. 词向量:帮助找到词汇和词汇之间关系。长文本词向量效果会比较差,重要特征会被稀释,甚至不如词频。对于长文本,会取标题和第一段,;监督失磁向量 整体简单粗暴但有效。
  3. LDA:内容推荐中不建议用。本质上就是文本的聚类,根据文本出现的频次做成一个个聚类。需要数万数十万,训练效果比较扯。只管哪些关键词会出现,但不管远近,比较容易发生语义上的错误理解,不看词频,可能出现1次就会被误中。
  4. 文本分类:tag比对的形式。

eg:Facebook

  • 微信朋友圈:比较像twitter,完全按照时间轴的顺序排列。
  • Facebook:属于社交媒体内容。内容上的推荐除了考虑时间顺序外,还考虑以下方面:
    1. 谁发的
    2. 在哪里发的
    3. 内容类型:影片>图片>文字
    4. 看过的人有什么反应
  • Facebook中有的一些功能:
    1. 三年前的今天
    2. 除了之外还有其他很多表情,表达对别人发表的内容的想法
    3. 广告:可以叉掉,并选择自己不感兴趣的原因(便于之后更准确的推荐)
    4. 提醒朋友的生日
    5. 你可能喜欢的活动
    6. 最受facebook用户欢迎:意外的惊喜、意外的随机(防止推荐算法老化,防止持续给用户推荐某一类型的东西,没有新东西进来)
学习笔记:《推荐算法——产品和内容推荐》_第1张图片
内容推荐算法

三、产品推荐的思路和流程

学习笔记:《推荐算法——产品和内容推荐》_第2张图片
产品推荐的思路和流程
  1. 冷启动:关键在于如何在第一次取得尽量多的信息,而不在推荐算法。
  2. New-new:在没有买过的领域里面创造新消费。
    • 最热门:爆款
    • 喜好推荐:基于商品;基于人-商品;基于相似人
    • 付费赞助
    • 惊喜的随机:持续地补充新东西进来(但惊喜的随机是排除负样本后的随机,即排除消费者厌烦的、不喜欢的;喜好的东西可能会变,但讨厌的东西一般都不会变,用户表达讨厌了一次就永远不要再出现了)
    • 排除冷数据:暖数据是比较新的内容;冷数据是早就看过的或已经买过的。
  3. Old-new:以前买过这个品类,在旧有的消费体验/购买历史里面开创商机、推荐新产品

冷启动

  • 用户行为收集和追踪——数据来自哪里
  • 发挥创意,收集更多的数据


    学习笔记:《推荐算法——产品和内容推荐》_第3张图片
    用户行为追踪

四、基于表征为基础的推荐

最早使用基于表征为基础的推荐是YouTube:


学习笔记:《推荐算法——产品和内容推荐》_第4张图片
YouTube视频推荐(以前)

YouTube的视频推荐分为两个步骤:

  1. 用深度学习把以下多种需求综合起来,得到候选推荐视频清单。
    • A之前看了哪些影片
    • A搜索了哪些影片
    • A所在的地区,什么影片受欢迎
    • 推出时间/性别……
学习笔记:《推荐算法——产品和内容推荐》_第5张图片
候选推荐视频清单生成
  1. 对1中生成的候选视频清单产生排名和排序,主要看视频内容和用户偏好的匹配度,会考虑以下维度
    • 以前观影记录看内容是否匹配
    • 用户语言的匹配
    • 最后一次浏览的时间长等
学习笔记:《推荐算法——产品和内容推荐》_第6张图片
推荐视频的排名

Graph神经网络

学习笔记:《推荐算法——产品和内容推荐》_第7张图片
Graph神经网络

eg:寻找服装的视觉表征

  1. 机器视觉的分割:机器先将图片的各个组成元件/服装分隔开;
  2. 比对相似的服装/相似的品味/相似的款式;

附课程PPT:

《数据科学方法论-产品内容推荐》
链接:https://pan.baidu.com/s/1SrNE9PkSZCBIf-l06p3KuQ
提取码:95og

你可能感兴趣的:(学习笔记:《推荐算法——产品和内容推荐》)