论文部分内容阅读
互联网技术的发展和各种信息终端的不断更新换代,促进了大量信息的产生和传播,用户想要从大量数据中找出对自己有用的内容无异于大海捞针。因此很多电子商务网站使用了针对用户的个性化推荐技术:通过相应的推荐算法,从用户的历史行为数据中计算出用户的偏好,并向他们推荐可能喜欢的产品。虽然推荐算法能够有效地减少用户检索信息的时间,并提高用户的检索效率,但是许多传统的推荐算法仍然存在缺陷,除了冷启动、样本稀疏等问题以外,很多推荐算法都没有考虑到时间效应的重要性。因此本文将深入研究时间效应对产品热度的影响,综合产品热度的周期特性,以及用户兴趣随时间变化而变化的特性,对原有算法提出改进。本文的主要工作内容可以分为以下几点:(1)首先,本文综述了各种传统的推荐算法,包括基于内容、基于知识以及基于关联规则的推荐算法等。通过对各种算法的分析来比较出它们各自的不足,然后提出动态推荐的概念,引出时间效应对推荐算法精确度的影响。(2)由于产品的热度会随着时间变化而周期性变化,本文对传统的余弦相似度算法进行了改进。通过对产品时间效应的计算,优化了产品的相似度算法,同时考虑到部分产品的热度受时间变化的影响不大,本文把改进部分与原有算法按照一定的比例加权融合。实验证明,使用基于时间效应的余弦相似度算法提高了系统推荐结果的质量。(3)在改进相似度算法的基础上,对传统的协同过滤推荐算法进行了优化。协同过滤算法需要从用户对产品的评分中得到用户的喜好,但是用户的喜好会随着时间变化而变化。因此本文提出了用户兴趣的时间衰减模型,当评分时间距离当前时间越久,该评分的权重就越低。实验表明,改进后的算法在一定程度上提高了评分预测的准确度。(4)最后,本文通过使用Mahout的推荐引擎,搭建了一个基于JFinal框架的推荐系统,并展示了系统的推荐功能和优势。