冷启动:如何在没有大量用户数据的情况下设计个性化推荐系统并且让用户对推荐结果满意从而愿意继续使用推荐系统。
冷启动问题主要分为3类:
1、用户冷启动:如何给新用户做个性化推荐
2、物品冷启动:如何将新的物品推荐给可能对它感兴趣的用户
3、系统冷启动:如何在一个新开发的网站上设计个性化推荐系统
解决方案:
1、利用用户注册信息
1)人口统计学信息
2)用户兴趣的描述
3)从其他网站导入的用户站外行为数据
基于注册信息的个性化推荐流程基本如下:
(1)获取用户的注册信息
(2)根据用户的注册信息对用户分类
(3)给用户推荐他所属分类中用户喜欢的物品
基于用户注册信息的推荐算法其核心问题是计算每种特征的用户喜欢的物品。也就是说,对于每种特征f,计算具有这种特征的用户对各个物品的喜好成都p(f,i)。
p(f,i)可以简单地定义为物品i在具有f的特征的用户中的热门程度,如(1)式。(1)式可以比较准确地预测出具有某种特征的用户是否喜欢某个物品,但是热门的物品往往会在各种特征的用户中都具有比较高的权重。很难给用户推荐符合他们特征的个性化物品。
将p(f,i)定义为喜欢物品i的用户中具有特征f的比例,如(2)式。alpha的目的解决数据稀疏问题。(2)式可以避免热门物品产生比较大的权重。
2、选择合适的物品启动用户的兴趣
一般来说,能够用来启动用户兴趣的物品需要具有一下特点:
1)比较热门
2)具有代表性和区分性
3)启动物品集合需要有多样性
如何设计一个选择启动物品集合的系统呢?方法:决策树
给定一群用户,用这群用户对物品评分的方差度量这群用户兴趣的一致程度。如果方差很小,说明这群用户兴趣不太一致,也就是物品具有比较大的区分度,反之这群用户兴趣比较一致。
如果这三类用户集合内的用户对其他的物品兴趣很不一致,说明物品i具有较高的区分度。
3、利用物品的内容信息
一般来说,物品的内容可以通过向量空间模型表示。
如果两个物品的话题分布相似,则认为两个物品具有较高的相似度,反之,相似度较低。计算分布的相似度用KL散度,散度越大分布的相似度越低。