信息过载,用户实际需求不明确;强依赖于用户行为。
给用户推荐他之前喜欢物品相似的物品
电商场景下更看重实际转化
信息流场景下更看重点击率
分子部分表示user的重合程度,分母则是做了归一化
对user u进行item j推荐的得分是根据item i来计算的
i 是 user u行为过的物品,并且取与item i最相似的k个item
公式升级1:活跃用户应该被降低在相似度公式中的贡献度
例如:某个电商系统,user a是批发商,买了很多物品,比如啤酒和书刊,但是不能反映他的兴趣,user b是普通用户,只买了啤酒和书刊,这可以反映他的兴趣。按照之前的公式,a与b的贡献度是一样的,我们需要降低user a的贡献度。
公式升级2:用户在不同时间对item的操作应给予时间衰减惩罚
给用户推荐相似兴趣用户感兴趣的物品
如何评价相似兴趣用户集合
找到集合用户感兴趣的而目标用户没行为过的item
公式升级1:降低异常活跃物品对用户相似度的贡献
例如:电商系统中,user a与user b都购买了新华词典这本书,user a与user c都购买了机器学习,并且他们都只有这一本书重合,这时a与b,a与c重合度都是1,显然是不合理的,因为购买新华字典不能反映真实的兴趣,而机器学习大概率可以反应,因为这本书的购书群体较窄。
公式升级2:不同用户对同一item行为的时间段不同应给予时间惩罚
user cf,是基于用户相似度矩阵来推荐,因此user本身的行为并不会造成自己的推荐结果发生改变;对于item cf来说,产生了新的行为,推荐结果则会立刻发生改变
user cf,新用户需要等用户有了一定的行为,并得到与其他用户的相似度矩阵之后才可以推荐,但是新物品在被点击之后,则可以推荐给相似用户;对于item cf,新用户一旦完成了点击,便可以推荐相似物品,但是因为新物品还没有进入物品相似度矩阵的计算,因此无法进行新物品的推荐
user cf,推荐结果略难以解释;item cf的推荐理由有较好的可解释性
user cf不适用于user非常多的场景,item cf适用于item远小于user的场景,实战中更倾向于item cf
user cf适用于物品需要及时下发,且个性化领域不太强的推荐,item cf适用于长尾物品丰富,且个性化需求强烈的场景,由于真实场景中会有一些召回算法解决新物品下发问题,从个性化层面考虑也更倾向于item cf
用户行为很容易表示为图
图推荐在个性化推荐领域效果显著
对user A进行个性化推荐,从user A结点开始在用户物品二分图random walk,以alpha概率从A的出边中等概率选择一条游走过去,到达该顶点后,有alpha的概率继续从a的出边中等概率选择一条继续游走到下一个结点,或者1-alpha的概率回到A,多次迭代,直至各顶点对于用户A的重要度收敛
item2item的推荐方式效果显著
NN model的特征抽象能力强
算法论文:ITEM2VEC:NEURAL ITEM EMBEDDING FOR COLLABORATIVE FILTERING
将用户行为序列转化成item组成的句子
模仿word2vec训练word embedding将item embedding
但是,用户行为序列时序性缺失,用户行为序列中的item强度是无区分性的
算法主流程:从log中抽取用户行为序列;将行为序列当成语料训练word2vec得到item embedding;得到item sim关系用于推荐
训练样本中的词,每个词计算一个长度(0-1),所有词加起来长度是1
论文中α取得是3/4 然后我们再初始化一个非常大的数(论文中为10^8),将0-1进行等分,每一段对应每个词的值域,然后我们随机0-M的一个数,便知道随机的哪一个词,如果随机到中心词就跳过思路极简,可解释强
用户推荐的独立性强
问世较早,流行度高
推荐扩展性差
需要积累一定量用户行为
Item Profile: Topic Finding, Genre Classify
User Profile: Genre/Topic, Time Decay
Online Recommendation: Find top k Genre/Topic, Get the best n item from fixed Genre/Topic