推荐系统实战第一章|好的推荐系统

推荐系统实战第一章|好的推荐系统

    • 一、背景
    • 二、学习

一、背景

本博客只记录了个人认为有益的知识要点,不适用所有人。

二、学习

第一章

  1. 推荐算法分类
    1.1 社会化推荐:好友推荐

    1.2 基于内容的推荐:基于用户本身的喜好内容进行相关推荐

    1.3 基于协同过滤的推荐:兴趣爱好交叉导向型,推荐喜好交叉其他用户的内容给用户

  2. 个性化广告投放的技术
    2.1 上下文广告:分析用户正在浏览的网页内容,投放和网页内容相关的广告。谷歌adsense

    2.2 搜索广告:通过分析用户在当前会话中的搜索记录,判断用户的搜索目的,投档和用户目的相关的广告

    2.3 个性化展示广告:根据用户的兴趣对不同的用户投放不同的展示广告。代表:雅虎。

  3. 推荐系统评测

3个参与方:用户、物品提供者和提供推荐系统的网站

目标:能够让推荐系统本身收集到高质量的用户反馈,不断完善推荐的质量增加用户和网站的交互,从而提高网站的收入。因此,最终目标是实现一个令三方共赢的系统。

3.1 评测推荐效果的试验方法
a. 离线实验
获取用户行为数据->分测试集和训练集->训练集上测试,测试集上预测->在测试集上进行结果预测

缺点:无法计算商业上关心的指标,和实际应用存在差距

b. 用户调研
让用户体验推荐系统,设置双盲实验(在试验过程中,测验者与被测验者都不知道被测者所属的组别(实验组或对照组))

c. 在线实验
ABtest

算法上线的三个实验:1.离线实验证明离线指标上优于现有的算法;2.用户调研确定用户满意度不低于现有的算法;3.ABtest确定关心的指标优于现有的算法。

3.2 评价指标的建设

  1. 用户满意度

方法1:问卷调查,从具体引起不满意的点进行询问;
方法2: 指标,点击率、用户停留时间和转化率

  1. 预测准确度

方法1 :评分预测,用户打分,利用数学手段RMSE和MAE对数据进行处理回估

方法2 :Top N推荐, 预测准确率 = 准确率/召回率 (更为推崇)

  1. 覆盖率:一个推荐系统对物品长尾的发掘能力
  两个指标来定义:信息熵和基尼系数
    a. 信息熵:特定信息出现的概率
    b. 基尼指数:用于评判一个推荐系统是否有马太效应(强者更强,弱者更弱。算法如pagerank,协同过滤算法)
       G1:从初始用户行为中计算出物品流行度的基尼指数
       G2:从推荐列表中计算出的物品流行度的基尼指数
       G2>G1,则说明有马太效应

case典型: 抖音和快手的推荐机制

  1. 多样性:满足用户的广泛需求

  2. 新颖性

定义:给用户推荐他们以前没有听说过的物品,但是基于原本用户的兴趣,比如喜欢周星驰,推荐了一个周星驰不知名的电影

评测方式:推荐结果中物品的平均热门程度较低,那么推荐结果就可能有比较高的新颖性(千人千面) + 用户对结果的满意程度

  1. 惊喜度

定义:不基于原本用户的兴趣,和历史兴趣不相似但是用户觉得满意,比如喜欢周星驰,推荐张艺谋

评测方式:和历史兴趣的相似度 + 用户对结果的满意程度

case:淘宝

  1. 信任度

调研方法:通过问卷调查询问用户是否信任推荐系统的推荐结果。
提高系统的信任度的方法:
a. 增加推荐系统的透明度:提供推荐解释, 让用户了解推荐系统的运行机制。
b. 考虑用户的社交网络信息,利用用户的好友信息给用户做推荐,并用好友进行推荐解释。

case:即士多,epinion

  1. 实时性

a. 推荐系统需要实时地更新推荐列表来满足用户新的行为变化。
b. 推荐系统需要能够将新加入系统的物品推荐给用户

  1. 健壮性:衡量一个推荐系统抗击作弊的能力

提高的方法:
a. 选择健壮性高的算法
b. 在涉及推荐系统时尽量使用代价比较高的用户行为
c. 使用数据前进行攻击检测从而对数据进行清理。

  1. 商业目标:是否达成网站的商业目标,和网站的盈利模式。

评测指标的各种途径

指标 离线实验 问卷调查 在线实验
用户满意度 x
预测准确度 x
覆盖率
多样性
新颖性
惊喜度 x x

3.3 评测维度
增加评测维度的目的可以知道一个算法在什么情况下性能最好。
三种评测维度
a. 用户维度: 用户的人口统计学信息,活跃度以及是不是新用户
b. 物品维度: 物品的属性信息、流行度、平均分以及是不是新加入的物品
c. 时间维度: 工作日or周末,白天or晚上。

你可能感兴趣的:(推荐系统)