原文:https://pdfs.semanticscholar.org/943a/e455fafc3d36ae4ce68f1a60ae4f85623e2a.pdf
为了给用户推荐合适的商品,我们要计算用户、商品之间的相似度,这可以用user-item rating matrix完成。有不同的方法来计算相似度。[1]
用户的行为可被记录,用来预测用户的偏好。 推荐系统一般分为三种:
由于新用户的注册量非常高,user-CF需要计算新用户和之前的用户之间的相似度,这会将数据稀疏,延展性差等问题暴露的非常明显。
所以item-CF被提出,它根据用户对商品的使用记录,找到商品之间的相似程度,然后根据用户的喜好记录来推荐相似的商品[2]。相较于用户之间的相似度,商品之间的相似度相对是静态的,当新用户注册并有了一些自己感兴趣的商品信息时,无需再进行计算,直接根据之前存储的商品之间的相似度,将用户可能感兴趣的商品推荐给用户。
在实际中,Collaborative Filtering System被运用得最广泛。它包括两种形式:
基于内容的推荐只考虑对象的本质,将对象按标签形成集合
而基于商品的协同过滤,会“集合大众的智慧”,由所有用户对商品的使用记录,来找到商品之间的相似点,再根据用户的购买记录,为用户推荐别的商品。它基于两个假设:1. 兴趣相近的用户对同一商品感兴趣 2. 用户会偏爱与其已购买物品相似的其它物品。[2]
CR分为三步:1.构建物品的属性资料item profile 2. 构建用户的爱好资料user-profile 3. 对于用户U,遍历item集合,找到与其爱好属性最相似的item作为推荐。 user-CF:由所有用户对商品的使用记录,来找到用户之间的相似点。对于用户U,通过计算与U最相似的n个用户,根据这n个用户的购买记录,为U进行推荐。
item-CF:由所有用户对商品的使用记录,来找到物品之间的相似点。对于物品I,通过计算相似度,可以找到与I最相似的n个物品。 对于用户U,根据其购买记录,可用找到相似的物品作为推荐
除了collaborative filtering,还有content-based technique , social recommendation , semantic recommendation被用于推荐用户偏好。本文主要阐述memory-based method的推荐系统
推荐物品预测能力的性能,取决于用于计算用户间相似度的方法。人们发明出各种计算相似度的方法。Xiaoyuan Su and Taghi M. Khoshgoftaar[4]把相似度计算方法分为三类:
collaborative filtering被广泛地运用,然而也受到一些问题的困扰,比如:data sparsity(数据稀疏),cold start problem(冷启动问题),scalability (可扩展性)。collaborative filtering要根据用户的评分来推荐物品,这就需要一个记录评分的数据库,然而,data sparsity的问题始终会存在,因为用户往往只给少量的物品打过分。 本文会阐述Pearson correlation coefficient、 cosine similarity的缺点。 Ahn 推出了一个新的相似度计算公式,PIP (Proximity-Impact-Popularity)...(接下来是各种人提出的各种方法) 人们推出了各种用于提高collaborative filtering的方法。这些方法的计算是基于局部和全局相似度的。然后人们提出了一个用于权衡各种方法的测量参数体系。实验结果显示,在预测用户评分的准确率中,被推荐的测量参数表现优于始终不变的参数。
传统的相似度计算公式,Pearson correlation coefficient, cosine, Mean Squared Difference,都难以捕捉相似的用户,尤其是那些只为少数物品打分的用户。 The experimental results demonstrated that the proposed estimate parameter outperforms the schemes for which the parameter was kept constant on accuracy of prediction ratings.