推荐系统实践-推荐系统冷启动问题(3)

3.1 冷启动问题简介

如何在没有 大量用户数据的情况下设计个性化推荐系统并且让用户对推荐结果满意从而愿意使用推荐系统, 就是冷启动的问题。

冷启动问题主要分为三类:

用户冷启动:新用户到来时如何给新用户推荐

物品冷启动:当系统中添加新的物品时,如何将新物品推荐给可能感兴趣的用户

系统冷启动:新开发的网站没有用户和物品时怎么设计个性化推荐系统。

3.2 利用用户注册信息

用户的注册信息分3种:

1.人口统计学信息:用户的年龄,性别,职业,民族,学历,居住地等。

2.用户兴趣的描述:有一些网站会让用户用文字描述他们的兴趣

3.从其他网站导入的用户站外行为数据:比如通过豆瓣微博账号登陆的,可以在允许情况下获取用户的一些社交网络数据。

基于注册信息的个性化推荐流程基本如下:

1.获取用户的注册信息

2.根据用户的注册信息对用户分类

3.给用户推荐他所属分类中用户喜欢的物品

比如一个用户注册信息为28岁男性物理学家,我们首先查询出3张表:年龄-电视剧相关表,性别-电视剧相关表,职业-电视剧相关表。然后将三张表按照一定权重相加得出最后的推荐结果。

因此核心问题为:计算每种特征的用户喜欢的物品,对于每个特征f,计算具有这种特征的用户对各个物品的喜爱程度p(f,i),p(f,i)可以简单定义为物品i在具有f特征的用户中的热门程度:

p(f,i)=|N(i)\cap U(f)|

其中N(i)为喜欢物品i的用户集合,U(f)是具有特征f的用户集合。

但是此定义存在热门物品的N(i)非常大会导致p(f,i)过大,因此改为:

p(f,i)=\frac{|N(i)\cap U(f)|}{|N(i)|+\alpha}

此公式可以理解为,具有f特征的用户在喜欢物品i的用户中所占的比例,分母增加α的原因为:若一个物品只有一个用户喜欢,而这个用户刚好具有特征f,则p(f,i)=1,但是并没有实际意义。

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

解决用户冷启动的另一个方法是在新用户第一次访问时,不立即推荐,而是提供一些物品,让用户反馈他们对这些物品的兴趣,然后再根据用户反馈提供个性化的推荐。

用来启动用户兴趣物品的选取一般有以下特点:

1.比较热门,太冷门的用户不知道自然也不知道怎么评价

2.具有区分性和代表性,选择大众受欢迎的得到的都是好的评价,无法得到个性化推荐

3.启动物品需要具有多样性,因为用户的兴趣可能会非常多

启动物品选取方法如下,通过如下方式度量一个物品的区分度D(i):

D(i)=\sigma_{u\in N^+(i)}+\sigma_{u\in N^-(i)}+\sigma_{u\in \bar{N}(i)}

其中\sigma_u为用户集合u中所有评分的方差,N^+(i)代表喜欢物品i的用户集合,N^-(i)是不喜欢物品i的用户集合,\bar{N}(i)是没有对物品i评分的用户集合,所以\sigma_{u\in N^+(i)}是喜欢物品i的用户集合对其他物品的评分的方差,其他同理,若D(i)的值很大代表物品i有很大的区分度。

首先从所有用户中找到具有区分度最高的物品i,用物品i将用户分为三类:喜欢物品i的,不喜欢的,不知道的。然后在三类用户中再分别选取三个区分度最高的物品,这三个物品又将每类用户分为三类,此时共有9类用户,根据新用户在哪类中来进行个性化推荐。

3.4 利用物品的内容信息

物品冷启动需要解决的问题是如何将新加入的物品推荐给对它感兴趣的用户,需要用到物品的内容信息进行推荐,常见物品的内容信息如下:

物品的内容可以通过向量空间模型表示,将物品表示成一个关键词向量,可能需要用到NLP技术进行抽取关键词,关键词向量的生成过程如下:

 对于物品d,可以将其内容用关键词变量表示:

d=\{(e_1,w_1),(e_2,w_2),\ldots\}

其中e为关键词,w为权重,若物品是文本,可以用TF-IDF公式计算词的权重:

w_i=\frac{TF(e_i)}{\log{DF(e_i)}}

 在给定物品内容的关键词向量后,可通过向量的余弦相似度计算内容相似度:

w_{ij}=\frac{d_i \cdot d_j}{\sqrt{||d_i||||d_j||}}

计算出内容相似度后可通过ItemCF进行推荐即可。

3.5 发挥专家的作用

当没有用户和物品时,可以请专家对物品进行标注,对每个物品都标注多个特征(也称为基因)来进行推荐。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值