推荐算法:协调过滤初级_2:基于领域的方法

原创 2016年05月30日 13:37:43
  • 协同过滤
    1. 基于领域的方法
      ok@@@Empirical analysis of predictive algorithms for collabotive filtering
      ok@@@Toward the next generation of recommender system: A survey of the state-of -the -art and possible extensions
      ok@@@Evaluation of Item-based Top-N Recommendation Algorithms
      (a) user-based
      ok@@@ GroupLens:applying collative filtering to Usenet news
      ok@@@Recommending and Evaluting chices in a virtual community of use
      ok@@@ Social information filtring:Algorithm for automating “word of mouth”
      (b) item-based
      ok@@@ Item-based top-N recommendation algorithms
      ok@@@ Amazon.com Recommendations: Item-to-Item Collabotive filtering
    2. 基于模型的方法
  • 基于领域的方法:在预测中直接使用已有的数据
  • 基于模型的方法:使用评分生成预测模型
    (a) 贝叶斯聚类
    @@@ Empirical analysis of predictive algorithms for collabotive filtering
    (b) 潜在语义分析(LSA)
    @@@Collative filtering via Guassian probabilistic latent sematic analysis
    (c) 潜在狄利克雷(LDA)
    @@@ Latent dirichlet allocation
    (d) 最大熵
    @@@ Maximun entropy for collaborative filtering
    (e) 玻尔兹曼机
    Restricted Bolzman machines for collaborative
    (f) 支持向量机
    KNN versus SVM in the Collaborative filtering framework
    (g) 奇异值分解
    @@@ Modeling relationship at multiple scales to improve accuracy of large recommender systems
    @@@Factorization meets the neighborhood: a multifaceted collaborative filtering model
    @@@ Collabotive filtering with temporal dynamics
    @@@ Matrix factorization and neighbor based algorithms for netflix prize problem
    @@@Investigation of various matrix factorization methods for large recommender system
    @@@ Scalable collaborative filtering approaches for large recommender system

(h)Factorization machine(LibFM)
@@@Factorization machines with LibFM
(i) 深度学习
@@@Collaborative Deep Learning for Recommender Systems

领域算法和模型算法 的比较

  • 精度上模型优于领域
    @@@Factorization meets the neighborhood: a multifaceted collaborative filtering model
    @@@Major components of the gravity recommendation system
  • 惊喜度方面领域算法优
    @@@ Combining collaborative filtering with personal agents for better recommendations
  • 新颖度: 推荐给用户一个他喜欢的导演,但是他没有想到的电影
  • 惊喜度:完全没想到

  • 领域算法的优势

    1. 简单
    2. 合理
    3. 高效
    4. 稳定

领域推荐

基于用户评分

  • 基于领域用户:预测用户u 对 物品i的评分rui;利用和用户u 兴趣相近且对物品i做出评分的用户;
  • wuv 是用户uv的兴趣相近程度
  • 用户的k近邻:k个与用户u 相似度wuv最高的用户v , 表示为N(u)
  • 选择k个和用户u兴趣相近似且对物品i已经评价过的用户代替k 近邻,表示为Ni(u)

** 用户预测的评分rui,用 k 近邻用户的评价得分

r^ui=1|Ni(u)|vNi(u)rvi
(|Ni(u)|表示个数)

** 添加权值

r^ui=vNi(u)wuvrvivNi(u)|wuv|

** 上式没有考虑到用户使用不同的评价尺度。将rvi进行标准化的转换h(rvi)
r^ui=h1[vnNi(u)wuvh(rvi)vNi(u)|wuv|]

OK@@@ Empirical analysis of predictive algorithms for collabotive filtering


基于用户分类

  • 上述是通过对领域用户的评分加权平均计算,本质是回归

基于物品推荐

  • 基于用户推荐是依赖于和自己兴趣相同的用户来预测一个评分
  • 基于物品推荐是通过评分相似的物品来预测

Nu(i):用户u 已经评分且和物品i 评分相近的 物品
用户 u 对物品 i 的评分时用户Nu(i)中物品的评分的加权平均
r^ui=jNu(i)wijrujjNu(i)|wij|

  • 不同用户拥有不同的评分尺度

r^ui=h1[inNu(i)wijh(ruj)vNu(i)|wij|]

基于物品推荐的分类


基于用户和基于物品的对比

* 准确性

  • 推荐系统的准确性很大程度取决于系统中用户和物品数之间的比例
  • 用户数量大,物品少,Amazon等,基于物品的推荐
  • 用户数量少,物品多,论文推荐等,基于用户的推荐

* 效率

  • 推荐系统的内存和计算效率也依赖于用户和物品的数量比例

* 稳定性

  • 如果物品的列表稳定性高于用户,那么使用基于物品的推荐效果更好
  • 反之

* 合理性

  • 基于物品的推荐,很理性强

* 惊喜度

  • 基于用户的方法,惊喜度高

近邻方法的要素

  • 评分标准化
  • 效率
  • 近邻的选择

* 评分标准化

  • 均值中心化

(1)基于用户的原公式

r^ui=vNi(u)wuvrvivNi(u)|wuv|

r^ui=h1[vnNi(u)wuvh(rvi)vNi(u)|wuv|]

设均值平均化评分

h(rui)=ruir¯u

r^ui=r¯u+vNi(u)wuv(rvir¯v)vNi(u)|wuv|

(2) 基于物品的原公式

r^ui=jNu(i)wijrujjNu(i)|wij|

r^ui=h1[inNu(i)wijh(ruj)vNu(i)|wij|]

设均值平均化评分
h(rui)=ruir¯i

r^ui=r¯u+jNu(i)wij(rujr¯j)jNu(i)|wij|


  • Z-score标准化

考虑到个人的评分范围带来的差异性

(1) 基于用户

h(rui)=ruir¯uσu

r^ui=r¯u+σuvNi(u)wuv(rvir¯v)/σvvNi(u)|wuv|

(2) 基于物品

h(rui)=ruir¯iσi

r^ui=r¯i+σijNu(i)wij(ruir¯j)/σjjNu(i)|wij|


  • 基于用户偏好的过滤
    @@@learning to order things
    @@@ An efficient boosting algorithm for combining preference
    @@@ collabotive filtering with decoupled models for preferences and ratings
    @@@preference-based graphic models for collaborative filtering

相似度的计算

  • 余弦相似度

CV(u,v)=cos(xu,xv)=iTuvruirviiTur2uijTvr2vj

Tuv是用户u和用户v都评价过的物品

未考虑用户u和v评分的均值和方差间的差异

  • 调整后的相似度

(1) 用户相似度
PC(u,v)=iTuv(ruir¯u)(rujr¯v)iTuv(ruir¯u)2iTuv(rujr¯v)2

(2) 物品相似度
PC(i,j)=uuij(ruir¯i)(rujr¯j)uuij(ruir¯i)2uuij(rijr¯v)2


其他相似度方法

ok@@@An empirical analysis of design choices in neighborhood-based collaborative filtering

  • 均方差(不合适)
  • 斯皮尔曼等级关联(SRC)

src(u,v)=iTuv(kuik¯u)(kvik¯v)iTuv(kuik¯u)iTuv(kvik¯v)

kui 是物品 i 在用户 u 所评分的排名
排名绕开了标准化的问题。但是当评分只是少数的时候,这种方法会产生大量的并列排名

@@@ rank correlation methods


相似度的重要性

  • 例如:用户评分相等,则认为用户相同,实际上用户对不同物品有不同的喜欢,只是计算后的数值相同。
  • 相似度权重要性: 当只有少数评分用于计算时,会降低相似度的权值
    ok@@@An algorithmic framework for performing collaborative filtering
    ok@@@Effective missing data prediction for collaorative filitering

  • 当两个人共同评价的物品数,Tuv 小于γ, 则相似度wuv:

    wuv=min{|Tuv|,γ}γwuv

  • 用户评分过少的物品间的相似度

wij=min{|uij|,γ}γwij

  • r>=25可以显著提高预测评分的准确性,其中γ=50 为最佳

  • 收缩
    @@@modeling relationships at multiple scales to improve accuracy of large recommender system
    贝叶斯观点下,少量评分情况下的用户相似度权值:
    wuv=|Tuv||Tuv|+βwuv

  • β通常需要交叉验证,文献中介绍,优化的值是β=100


差异的说明

ok@@@ Empirical analysis of predictive algorithms for collabotive filtering

  • 用户给出一致的喜欢与不喜欢,不如给出差异较大的评分,可以提供更多的信息
  • 反用户频率

    1. 每个物品i被赋予权重λi
    2. λi=log|u||ui|
    3. 评论了物品i的用户比例
  • 频率加权皮尔逊系数

FWPC(u,v)=iTuvλi(ruir¯u)(rvir¯v)iTuvλi(ruir¯u)2iTuvλi(rvir¯v)2

  • 补充
    OK@@@ an automatic weighting sheme for collbarative filtering

领域的选择

  • 全局过滤选择最有可能的n个物品
  • 每一步选择最有可能的n个物品
  • k的选择
    1. k<=20的时候,预测精度低
    2. k>50后重要关联下降

缺点

  • 覆盖受限
    用户近邻的数目很少
  • 数据稀疏

1.冷启动
@@@methods and metric for cold-start recommendations

2 .解决办法:
(1) 用默认数据区填充
评分用户的中值,物品或者用户的平均分
ok@@@Emprical analysis of predictive algorithms for collaborative filtering
ok@@@item-based weighted top-Nrecommender system
(2) 内容信息去填充
ok@@@a content-collaborative recommender that exploits wordnet-based user porfile for neighborhood formation
ok@@@combining coolaborative filtering with personal agents for better recommendations
ok@@@ content-based collaborative filtering for improved recommendations
(3)filterbots自动填充
ok@@@combining coolaborative filtering with personal agents for better recommendations
ok@@@Grouplens:applying coolaborative filtering to usenet news
(4) 内容相似性替代和补充评分关联性
OK@@@Learning collaborative information filters
OK@@@Combining usage,content and structrue data to improve web site rcommendation
OK@@@ A framework for collaborative ,content-based and demographic filtering.
@@@Combining content and collaboration in text filtering

  • 上述填充方法的缺点:
    用默认数据区填充缺失数据会导致推荐的偏差
    用内容填充的方法不适应计算评分或者相似性

版权声明:本文为博主原创文章,未经博主允许不得转载。

./show_file: error while loading shared libraries: libts-0.0.so.0: cannot open shared object file: N

./show_file: error while loading shared libraries: libts-0.0.so.0: cannot open shared object file: N...

Linux移植随笔:终于解决Tslib的问题了

前段时间让Tslib搞晕头了,原来一切都是版本惹的祸。本文只是一个随笔,随笔者,随意用笔写下心得而已,因此不必较真。正如我所欣赏的“乘兴而来,兴尽而返”一样。——估计当年王子猷是赏完了夜景,兴致也完了...

算法复习2-3种初级排序

1.选择排序:首先找到数组中最小的那个元素,其次将它和数组第一个元素交换位置,再次,在剩下的元素中寻找最小的元素,将它与数组第二个元素交换。直到整个数组排序完毕。public void Selecti...
  • Hnubama
  • Hnubama
  • 2016年03月06日 19:39
  • 202

算法初级_2 :数组和指针

数组指针基础 数组和指针 #include using namespace std;int main(int args,char *argv[]) { int a[3]; int* p=a...

推荐算法:基于领域的协同滤波

GroupLens: An Open Architecture for collaborative filtering Amazon.com Rcommendations item-to-...

推荐几个机器学习算法及应用领域相关的中国大牛

1>>李航:http://research.microsoft.com/en-us/people/hangli/,是MSRA Web Search and Mining Group高级研究员和主管,主...

推荐几个机器学习算法及应用领域相关的中国大牛:

原文地址:http://emuch.net/html/201209/4842092.html 李航:http://research.microsoft.com/en-us/people/hangli...
  • asd8705
  • asd8705
  • 2015年01月28日 16:28
  • 294

[小木虫]推荐几个机器学习算法及应用领域相关的中国大牛

李航:http://research.microsoft.com/en-us/people/hangli/,是MSRA Web Search and Mining Group高级研究员和主管,主要研究...

推荐几个机器学习算法及应用领域相关的中国大牛:

推荐几个机器学习算法及应用领域相关的中国大牛: 作者: just1do1it (站内联系TA)    发布: 2012-08-15 李航:http://research.mic...

[小木虫]推荐几个机器学习算法及应用领域相关的中国大牛

李航:http://research.microsoft.com/en-us/people/hangli/,是MSRA Web Search and Mining Group高级研究员和主管,主要研究...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:推荐算法:协调过滤初级_2:基于领域的方法
举报原因:
原因补充:

(最多只允许输入30个字)