分享

协同过滤推荐系统中数据稀疏问题的解决2 - 期刊杂志|免费杂志|电子杂志|杂志下载

 昵称2817295 2010-08-19

协同过滤推荐系统中数据稀疏问题的解决


□ 吴 颜 沈 洁 顾天竺 陈晓红 李 慧 张 舒

  基于项目的协同过滤推荐算法[1,3,4],从产品角度进行分析,寻找与目标产品相似的产品集合,然后进行预测和推荐。它基于一个假设,即用户对与其感兴趣产品相似的产品也感兴趣。由于项目间的相似性相对稳定,而通常项目的数量比用户数量少,这样可以减少计算量,降低数据稀疏性。
  算法步骤:
  (1)通过相似性算法,计算列向量的余弦相似性,即产品向量的相似性。
  (2)选择相似性最高且没有被目标用户评价过的前M个产品,作为产品的邻居集合Mp。
  (3)对邻居集合中产品的评分进行加权求和,得到目标用户对目标产品的预测评分
  2.2 降低矩阵维数的技术
  降低矩阵维数的技术可对原始稀疏数据直接进行数据处理,降低数据稀疏性。主要算法有单值分解、聚类等。
  2.2.1 单值分解
  单值分解算法利用矩阵的单值分解原理,对用户—产品矩阵进行分解,从而降低矩阵的维数,抽取出主要信息[2,5]。
  算法步骤:
  (1)使用每个产品的平均评分——列平均值——填充矩阵中的未评分项。
  (2)利用用户的平均评分——行平均值——进行标准化,产生矩阵R。
  (3)对R进行单值分解,得到
  (6)根据同一产品被邻居评分的频繁程度产生推荐。
  从算法步骤可以看出,通过单值分解得到的较低维的UkS1/2k矩阵比原始用户—产品稠密,并且抽取出了所有用户信息。在这个矩阵上进行相似性计算,可以减少计算量,提高在线推荐速度,并且提高推荐质量。实验表明,该算法在分解矩阵过程中,不可避免数据遗失。当原始矩阵极度稀疏时,单值分解算法试验结果并不理想。算法需要较大的计算量,较少的存储空间。
  2.2.2 聚类
  单值分解通过矩阵运算降低数据稀疏性,聚类[6-9]则是通过一些聚类算法将产品或用户聚成若干具有共同性质的类;然后在小的聚类数据中产生推荐。
  (1)取前K个用户作为K个独立的聚类质心;剩余的每个用户与其最近质心进行比较。
  (2)在形成聚类质心的基础上,重新计算聚类的质心。
  (3)聚类内部的成员关系被重新估算。重复(1)-(3),直到产生的K个聚类不再变化。
  (4)在目标用户所在的类中进行用户相似性计算,主要运用第一部分中的相关相似性方法计算,得到最近邻居集合。
  (5)对最近邻居的评分数据进行加权处理:
  (6)预测产生后,根据预测评分的高低对目标用户进行推荐。
  2.3 基于内容的协同过滤算法
  2.1、2.2节中介绍的算法都是建立在用户对产品评分的基础上,在一定程度上都缓和了数据稀疏带来的问题。基于产品内容的协同过滤算法[11]与前面介绍的几种算法的不同之处,是考虑到了产品本身的信息。由于增加了信息量,可以有效提高推荐质量。
  
本文原文
  单纯的基于产品内容的算法,根据单个用户已评价产品的内容信息,如电影的导演、演员、类型等,建立用户兴趣模型,进而产生推荐。这样的算法存在一些弊端:①由于通常获得的只是产品的部分信息,其他一些未知信息很有可能影响用户的行为,这就造成了推荐的不准确。②用户的喜好通常是多样的,而单个用户评分的产品数量却非常少。这样就使推荐局限于特定类型的产品上。
  基于内容的协同过滤技术则不同。目前这方面的算法主要有线性结合型和连续结合型两个类型,如图2、3所示。
  线性结合型算法步骤:
  (1)通过历史评价的产品内容信息,建立用户兴趣模型。
  (2)比较用户模型,得到基于内容的用户相似性。
  (3)根据用户—产品评分矩阵,得到基于评分的用户相似性。
  (4)将两个相似性进行线性组合,得到用户相似性。
  (5)根据相似性,得到目标用户的最近邻居集。
  (6)通过邻居集对目标用户进行评分预测和推荐。这个过程可以用2.1、2.2节介绍的算法进行。
  连续结合型算法步骤:
  (1)通过历史评价的产品内容信息,建立用户兴趣模型。
  (2)根据每个用户兴趣模型的相互比较,获得目标用户的最近邻居集。
  (3)将符合目标用户或其邻居兴趣模型的产品推荐给目标用户。
  以上两种算法混合了协同过滤算法和基于内容的推荐算法,缓和了传统协同过滤算法没有考虑产品本身信息的缺陷,也解决了基于内容的推荐算法中单个用户信息稀少的问题。然而,产品信息的获取和存储,是一个困难且昂贵的问题。

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多