论文部分内容阅读
在当今大数据时代,互联网上的信息呈现爆发性增长,导致用户很难有效获取感兴趣的信息。推荐系统是帮助用户发现其感兴趣的物品,解决信息过载问题的重要工具。基于矩阵分解的推荐算法是目前推荐算法研究的前沿领域之一,基于矩阵分解的推荐算法将用户行为矩阵分解为隐因子空间上用户、物品特征矩阵,因而算法具有准确度高、可扩展性好等诸多优点。目前,基于矩阵分解的推荐算法仍存在着对单类数据、稀疏数据推荐效果不理想以及并行化等问题。本文深入研究了基于矩阵分解的推荐算法,并针对其存在的问题提出了相应的改进算法,本文的主要工作和贡献如下:提出了一种改进的基于矩阵分解的单类协同过滤算法。在使用基于矩阵分解的推荐算法处理单类问题时,由于数据稀疏、缺乏负样本等问题导致推荐效果不理想。本文提出了一种基于物品相似度的正样本选择方法以及基于用户活跃度、物品相似度的负样本选择方法,前者解决了数据稀疏性的影响,后者提高了选择负样本的准确度,实验结果表明该方法能明显提升基于矩阵分解算法对单类问题的推荐效果。提出了一种稀疏概率矩阵分解推荐算法。概率矩阵分解是从概率角度看待矩阵分解问题的一种方法,但最早提出的概率矩阵分解算法和贝叶斯概率矩阵分解算法都假设用户、物品特征矩阵服从高斯分布,这在当今大数据、高维度、强稀疏的数据下是不适合的,本文针对这个问题,提出了使用更稀疏的拉普拉斯分布来代替高斯分布的稀疏概率矩阵分解算法及其并行化算法。通过在MovieLens以及Netflix数据集上进行的测试,我们发现稀疏概率矩阵分解算法在稀疏数据集上的表现要明显优于概率矩阵分解算法和贝叶斯概率矩阵分解算法,同时又因为拉普拉斯分布本身具有长尾特性,因而本文提出算法在发掘长尾物品方面的能力更好。提出了L1正则矩阵分解推荐算法。从概率角度来看,稀疏概率矩阵分解等同于加入了L1正则项的矩阵分解算法,但由于概率矩阵分解模型复杂、运行效率低,限制其在工业界的应用。在实际的推荐系统中使用更多的是基于优化的矩阵分解模型,为了切合实际,本文进一步提出了L1正则矩阵分解推荐算法并在Map-Reduce框架下对其进行有效的并行化实现,从而提高了L1正则矩阵分解的求解效率,有利于在工业界大数据推荐系统的应用。