您的位置:首页 > 其它

实战智能推荐系统(11)-- 推荐系统冷启动问题

2018-03-29 19:14 232 查看

1.用户冷启动问题

用户冷启动主要解决如果给新用户做个性化推荐的问题。当新用户到来时,我们没有他的行为数据,所以也无法根据他的行为预测其兴趣,从而无法给他做个性化推荐。主要由两种解决方案。
(1)基于统计学
基于用户注册时提供的年龄,性别,工作等信息,统计出跟用户对应的年龄段,性别,工作属性相对应的受欢迎的商品。公式参考如下:



p(f,i)就是具有特征f 的用户对物品 i 的欢迎程度,N(i) 是喜欢用品 i 的全部用户,U(f) 是具有特征 f 的用户。
基于以上统计学公式,可以将用户特征对应的几个热门物品按照一定的权重相加,得到一个推荐列表。如图,假设一个性别男,年龄 28 的物理学家,可以根据年龄,性别,职业分别给出相应特征的推荐表,再综合权重相加给出。



(2)基于用户评分反馈
有很多系统,会在用户注册的时候要求用户给具有代表性的物品进行评分。选择喜欢或不喜欢。一般来说,能够用来启动用户兴趣的物品需要具有以下特点:
比较热门 : 如果要让一个用户反馈,冷门的物品可能用户没听过,无法判断喜好。
具有区分性:启动物品不能是老少皆宜的,应该具有区分度。

多样性:一开始并不知道用户的兴趣,只有尽可能多样,才能出现用户感兴趣的。比如一开始让用户选择感兴趣的物品类型,再在相应的类型中让用户选择喜好。更能保证一定有用户喜欢的反馈。

2.物品冷启动问题

物品冷启动问题要解决的是如何将新加入的物品推荐给对它感兴趣的用户。UserCF 对物品冷启动问题不敏感,因为该算法是通过兴趣相似的人进行推荐,总有一个人会留意新的物品,那么就会推荐给跟他相似的人。但是对于 ItemCF来说,就是一个灾难性的问题。因为 ItemCF 是根据喜欢 A 的人喜欢 B 的程度来判断 AB 物品的相似度,因为就算有人发现了新物品,也不会对物品相似度矩阵带来新的变化,所以只能利用物品的内容信息计算物品相关表,并且频繁的更新相关表。
当然还有一种思路,就是将新加入的物品随机推荐出去,如果有用户感兴趣,就会产生行为,改变物品相似度矩阵。
先使用基于内容的相似度算法计算新物品跟其他物品的相似度。基于内容相似度算法如下:
一般来说,物品可以通过向量空间模型表示,该模型会将物品表示成一个关键词向量。对物品的内容表示成一个关键词向量:



其中 ei 是关键词,wi 是关键词对应的权重。最好是将di 归一化成单位向量。在给定物品内容的关键词向量后,物品的内容相似度可以通过向量之间的余弦相似度计算:



基于内容的相似度算法可以解决物品的冷启动问题,因为它不需要像 ItemCF 算法那样需要通过用户行为计算物品之间的相似度。但是也有一个很明显的缺点,那就是一定要基于相同的关键字,比如《推荐系统的动态特性》和《基于时间的协同过滤算法》之间没有相同的关键字,但它们的研究方向是相似的。

3.系统的冷启动

专家标注,比如 Pandora 电台请专家对音乐使用了400 多个特征标注,每首歌表示成了一个 400 维的向量。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  推荐系统 冷启动