【学习笔记】读项亮的《推荐系统实践》_第三章推荐系统冷启动问题

本文探讨推荐系统的冷启动问题,包括用户、物品及系统层面的挑战。介绍了利用注册信息、物品内容及专家作用等策略。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

第三章 推荐系统冷启动问题


这一章介绍推荐系统中冷启动时什么问题,以及通常怎么解决这个问题。


3.1 冷启动问题简介

冷启动问题的分类:1. 用户冷启动(新用户来了);2. 物品冷启动(新物品来了);3. 系统冷启动(整个推荐系统都是新的,也可以认为,它和“用户冷启动”的区别是,所有用户对系统冷启动来讲都是新用户,都面临冷启动问题)

冷启动问题的解决方案:说白了,就是尽可能利用信息给用户一个可以接受的物品列表,最常见的就是热门排行。

下面的几节介绍中,有的是根据冷启动问题分类来的,有的是从解决方案(能利用用户什么类型信息)来的。


3.2 利用用户的注册信息

解决用户冷启动问题,即新来了一个用户,如何推荐。

最简单的方法就是给用户推荐热门排行。再进一步,如果知道用户的分类(如:男或者女用户),或者能够通过一些信息(如:用户的注册信息)来获得用户的分类,在这个分类中,根据已有的用户统计这个分类下的排行,再把这个排行结果推荐给新用户。如果用户的注册信息不多,且用户填写的比较全面,则这些信息可以形成一个决策树的组织形式,新用户总会落到树的一个叶子节点(分类)中,推荐该节点下的热门排行就行了。不过难点在于,很少有用户会全面填写各种信息,当用户注册信息有(少量)缺失的时候,怎么对用户进行分类,并推荐热门排行。

上文说到算某一个子类的排行,那么在子类中依据什么对物品进行排序呢?这就要计算物品与子类中用户的关联程度,或者说这类用户对物品的喜好程度。则形式化地,定义N(i)为喜欢物品i的用户群体,定义U(f)定义为具有某个特征f的用户群体(例如:为男性用户),定义特征f与物品i的关联程度为:p(f, i) = | N(i) join U(f) | / ( | N(i) | + alpha),参数alpha作用是解决数据稀疏问题。p表示概率,模计算表示集合的元素数量。

有条件的话,对用户的每个注册信息来进行评估测试,选取最靠谱的那个来区分用户、给用户排行。在无法做到这些的时候,就需要靠先验知识了。


3.3 选择合适的物品启动用户的兴趣

解决系统冷启动问题,及系统都是新做的,咋推荐?

作者应用的方法,是让用户回答一个问题列表,奥妙在于这个列表是随着用户的回答而改变问题的——系统计算,每次给用户提出最具区分力的物品,问用户是否感兴趣。那么对于当前用户来讲,什么是“最具区分力的”物品?Nadav Golbandi是这样想的:首先,对于一群用户和一些物品,如果用户对这些物品的打分的方差很大,说明这些用户的兴趣不一致;其次,对于某一个物品,用户的反应是,喜欢、不喜欢、无所谓(没有打分),这三种反应可以将用户分为三个群体;最后,要找的物品i满足如下条件,即物品i对将用户群体分为三类,这三类用户的方差都很大,即用户兴趣都不很一致,则物品i说是对这群用户是有区分力的。——我脑子有点晕,个人没太想明白Nadav这个假设对应的现实意义。


3.4 利用物品的内容信息

解决物品冷启动问题。

对于协同过滤的两种算法,UserCF对物品冷启动问题并不敏感,因为总有用户会访问到新物品,此时给那些相似的用户推荐这个物品,就会有越来越多的人来访问这个物品,形成良性循环。在ItemCF中,物品冷启动就是比较严重的问题了,因为:1. (个人理解)使用新物品的用户比较少,不容易计算新物品同其他物品的相似度(这种相似度是通过用户的行为来计算的),数据稀疏问题;2. 物品之间的计算好的相似度会load进内存,新物品到来,无法进入相关数据结构,说白了,就是标准ItemCF中没有为新物品预留数据结构,也没有动态更新物品相似度的机制。

解决方法是通过物品的内容来计算物品之间的相似度,并作为ItemCF的补充。物品之间的相似度可以通过余弦距离来计算。但是当文本很短,关键词很少的时候,余弦距离就很难计算出准确的相似度。作者推荐用topic model来处理,流行的有LDA模型。LDA描述了“文档--主题--词语”之间的概率关系。在计算物品相似度的时候,可以将物品(文档)通过LDA计算物品在话题上的分布,再利用话题分布的相似度来计算物品之间的相似度。话题分布相似度可以利用KL距离来计算,距离越大相似度越低——其时相似度数值并不重要,能比较就行。


3.5 发挥专家的作用

即利用专家来对数据进行标注。这个对绝大多数情况并不现实。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值