推荐系统基础知识

一、什么是推荐系统

随着互联网的发展,信息不断丰富的同时,也带来了信息过载问题。用户在面对海量信息的时候越来越难以区分。搜索引擎能够帮助用户根据关键词来筛选需要的信息,但是当用户无法明确关键词的时候,选择困难症患者就要发愁了。

推荐系统可以通过一定的方式将用户和物品(比如文章、物品、视频、好友信息等)联系起来,从而帮助用户发现他们可能感兴趣的信息。推荐系统需要依赖用户行为数据,并通过应用的个性化页面展示推荐结果,进而提高应用的点击率和转化率。

二、应用场景

在电商领域,比较典型的是亚马逊的个性化推荐系统,被称为“推荐系统之王”。亚马逊有 20%~30% 的销售额来自于推荐系统。主要形式包括个性化推荐列表、相关推荐列表及打包销售等。

个性化推荐列表:将那些和用户喜欢的物品比较相似的物品,或者用户好友喜欢的物品推荐给用户。

相关推荐列表:当用户购买一件物品后,将那些购买此物品的用户也经常购买的其他物品,或者浏览过此物品的用户也经常购买的其他物品推荐给用户。

打包销售:当用户单击某个物品的购买按钮时,将那些其他用户在购买此物品时,连同购买的其他物品推荐给用户。

其他推荐场景和电商推荐原理类似,包括电影和视频网站:爱奇艺、抖音,个性化音乐网站:网易云音乐、豆瓣FM,社交网络:QQ、微博,基于位置的服务:美团、高德,个性化资讯和广告:百度、今日头条等。

三、评测

1. 实验方法

实验方法包括:离线实验、用户调查和在线实验。

  • 离线实验
    1)通过日志系统获得用户数据并格式化为标准数据集。
    2)将数据集切分为训练集和测试集。
    3)利用训练集进行模型训练,利用测试集进行预测。
    4)通过离线指标评测算法,对测试集的预测结果进行评测。

离线实验不会影响生产系统,不需要用户参与即可实验,速度快,可以测试大量算法,但无法计算商业上关心的指标,和实际情况存在差距。

  • 用户调查
    用户调查可以获得用户主管感受,但是招募测试用户代价较大,而且用户在测试环境下的行为和真实环境可能有所不同。

  • 在线实验
    可以通过在线 AB 测试来比较多个算法的差异,并获得真实指标,包括商业指标。但 AB 测试周期较长,一般只测试离线实验或用户调查中表现较好的算法。

2.评测指标

2.1 用户满意度

用户满意度主要是以在线问卷调查的形式获得。也可以通过统计购买率,点击率,停留时长和转化率等指标来衡量。

2.2预测准确度

预测准确度是最重要的离线评测指标。可以将包含用户历史行为记录的数据集切分为训练集和测试集,利用训练集建立用户行为预测模型,利用测试集进行预测,计算测试集的预测行为和真实行为的重合度即为预测准确度。

– 评分预测(预测用户对物品的评分)
评分预测的准确度一般通过均方根误差(RMSE)和平均绝对误差(MAE)计算。将测试集中某用户u对某物品i的真实评分记作rui,测评分记作,那么RMSE的定义为:
在这里插入图片描述
MAE的定义为:
在这里插入图片描述

假设我们用一个列表records存放用户评分数据,令records[i] = [u, i, rui, pui] ,其中 rui 为用户u 对物品i的真实评分,pui 为用户u对物品i的预测评分,下面代码实现了 RMSE 和 MAE 的计算:

def RMSE(records):
    return math.sqrt(s
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值