读书笔记 ---《推荐系统实践》第二章

本文深入探讨了推荐系统中的用户行为数据,分析用户活跃度和物品流行度分布,以及两者的关系。介绍了基于邻域的协同过滤算法,包括基于用户的协同过滤和基于物品的协同过滤,详细讲解了算法原理、相似度计算和实际应用。同时,讨论了隐语义模型在推荐系统中的应用,对比了基于邻域方法与隐语义模型的优缺点。
摘要由CSDN通过智能技术生成

利用用户行为数据

基于用户行为分析的推荐算法是个性化推荐系统的重要算法,学术界一般将这种类型的算法称为协同过滤算法。协同过滤就是指用户可以齐心协力,通过不断地和网站互动,使自己的推荐列表能够不断过滤掉自己不感兴趣的物品,从而越来越满足自己的需求。

2.1 用户行为数据简介

用户行为数据在网站上最简单的存在形式就是日志。网站在运行过程中都产生大量原始日志 (raw log),并将其存储在文件系统中。很多互联网业务会把多种原始日志按照用户行为汇总成会话日志(session log),其中每个会话表示一次用户行为和对应的服务。

用户行为一般分两种, 显性反馈行为和隐性反馈行为:

  • 显性反馈行为包括用户明确表示对物品喜好的行为
  • 隐性反馈行为指的是那些不能明确反应用户喜好的行为,最具代表性的隐性反馈行为就是页面浏览行为
    在这里插入图片描述
    用户数据的常用统一表示
    在这里插入图片描述

2.2 用户行为分析

在设计推荐算法之前需要对用户行为数据进行分析,了解数据中蕴含的一般规律可以对算法的设计起到指导作用。

2.2.1 用户活跃度和物品流行度的分布

长尾分布: 正态曲线中间的突起部分叫“头”;两边相对平缓的部分叫“尾”。从人们需求的角度来看,大多数的需求会集中在头部,而这部分我们可以称之为流行,而分布在尾部的需求是个性化的,零散的小量的需求。而这部分差异化的、少量的需求会在需求曲线上面形成一条长长的“尾巴”,而所谓长尾效应就在于它的数量上,将所有非流行的市场累加起来就会形成一个比流行市场还大的市场。
在这里插入图片描述

2.2.2 用户活跃度和物品流行度的关系

一般新用户倾向于浏览热门的物品,因为他们对网站还不熟悉,只能点击首页的热门物品,而老用户会逐渐开始浏览冷门的物品。
协同过滤算法是仅基于用户行为数据设计的算法,方法有基于领域的方法(最广泛)、基于图的随机游走算法、隐语义算法。基于领域的方法可分为:

  • 基于用户的协同过滤: 给用户推荐和他兴趣相似的其他用户喜欢的物品。
  • 基于物品的协同过滤: 给用户推荐和他之前喜欢的物品相似的物品。

2.3 实验设计和算法评测

2.3.1 数据集

日志记录的用户历史行为数据

2.3.2 实验设计

首先,将用户行为数据集按照均匀分布随机分成M份, 挑选一份作为测试集,将剩下的M-1份作为训练集。然后在训练集上建立用户兴趣模型,并在测试集上对用户行为进行预测,统计岀相应的评测指标。为了保证评测指标并不是过拟合的结果,需要进行M次实验,并且每次都使用不同的测试集。然后将M次实验测出的评测指标的平均值作为最终的评测指标。
这样做主要是防止某次实验的结果是过拟合的结果(over fitting), 如果数据集够大,模型够简单,为了快速通过离线实验初步地选择算法,也可以只进行一次实验。

2.3.3 评测指标

召回率描述有多少比例的用户-物品评分记录包含在最终的推荐列表中,而准确率描述最终的推荐列表中有多少比例是发生过的用户-物品评分记录。
对用户以推荐N个物品(记为R(u)),令用户u在测试集上喜欢的物品集合为T(u),然后可以通 过准确率/召回率评测推荐算法的精度:
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值