@xtccc
2015-10-25T17:43:31.000000Z
字数 999
阅读 2446
推荐系统
很难要求用户在注册时主动地告诉我们他们喜欢什么,因为:
因此,我们需要通过算法来自动地发掘用户的行为数据,从而推断出用户的喜好。基于用户行为分析的推荐算法一般被称为协同过滤推荐算法(Collaborative Filtering Recommendation)。
协同过滤算法包括多种方法:
应用最广泛的就是基于领域的方法,包括:
数据 | 描述 |
---|---|
user id | 产生行为的用户的标识 |
item id | 产生行为的对象的标识 |
behavior type | 行为种类(如购买/浏览) |
context | 行为的上下文(如时间、地点) |
behavior weight | 行为的权重(如观看时长、评分的分数) |
behaviro content | 行为的内容(如评论的内容、标签的内容) |
生活中的很多数据的分布都满足 Power Law 这个规律,用户行为数据也是如此。
令
这里,物品流行度指对物品产生过行为的用户总数,用户活跃度指用户产生过行为的物品总数。
基于领域的协同过滤方法包含基于用户的协同过滤算法(UserCF)和基于物品的协同过滤算法(ItemCF),详见 基于领域的协同过滤算法(UsrCF and ItemCF)。