[关闭]
@xtccc 2015-10-25T17:43:31.000000Z 字数 999 阅读 2427

利用用户的行为数据

给我写信
GitHub

此处输入图片的描述


推荐系统


为什么要利用用户的行为数据


很难要求用户在注册时主动地告诉我们他们喜欢什么,因为:



因此,我们需要通过算法来自动地发掘用户的行为数据,从而推断出用户的喜好。基于用户行为分析的推荐算法一般被称为协同过滤推荐算法(Collaborative Filtering Recommendation)。

协同过滤算法包括多种方法:



应用最广泛的就是基于领域的方法,包括:




用户行为数据简介


显性与隐性反馈行为


用户行为的表示

数据 描述
user id 产生行为的用户的标识
item id 产生行为的对象的标识
behavior type 行为种类(如购买/浏览)
context 行为的上下文(如时间、地点)
behavior weight 行为的权重(如观看时长、评分的分数)
behaviro content 行为的内容(如评论的内容、标签的内容)


用户行为分析

用户活跃度与物品流行度的分布

生活中的很多数据的分布都满足 Power Law 这个规律,用户行为数据也是如此。

fu(k) 为对k个物品产生过行为的用户的数量,fi(k) 为被k个用户产生过行为的物品的数量,那么 fu(k)fi(k) 都满足长尾分布,即:

fu(k)=αukβu
fi(k)=αikβi

这里,物品流行度指对物品产生过行为的用户总数,用户活跃度指用户产生过行为的物品总数。


基于领域的协同过滤算法

基于领域的协同过滤方法包含基于用户的协同过滤算法(UserCF)和基于物品的协同过滤算法(ItemCF),详见 基于领域的协同过滤算法(UsrCF and ItemCF)

添加新批注
在作者公开此批注前,只有你和作者可见。
回复批注