论文部分内容阅读
互联网技术的迅猛发展和广泛应用,电子商务随之逐渐成熟,网购比例越来越大,然而商品种类日益繁多,从中选择自己真正需要的物品也随之变得愈发困难。电商平台推荐系统的产生在一定程度上解决了信息过载的问题,根据用户画像或其历史行为数据为用户提供个性化的商品推荐,可以有效地避免一些筛选工作。协同过滤推荐算法是电商推荐系统中应用最为广泛且比较成熟的推荐算法,在现实应用中收获了一定的效果,但仍呈现出一些缺陷,诸如数据稀疏性、隐式反馈问题、冷启动问题、准确性问题等。此外,面对用户量和商品量激增的现状,原始推荐算法逐渐暴露出扩展性、稳定性和实时性等问题。基于以上因素,通过研究关于协荐算法的成果及算法存在的常见问题,本文有针对性地对基于项目的协同过滤算法进行了改进,包括数据预处理阶段的隐式反馈问题解决方案,相似度计算阶段的基于用户历史行为和物品描述信息的综合相似度的改进,并结合当前主流的大数据处理技术实现了改进算法在分布式计算平台Spark上的并行化,最后将并行化改进算法应用于实际应用中,主要工作及研究成果如下:(1)针对电商系统中用户显示评分数据量较少的情况,利用系统中用户的操作行为数据,通过一定的方法将隐馈数据转换为标准的用-项分阵,解商系统中用户的隐式反馈问题。(2)引入综合相似度,由项目间的相似度和基于商品描述信息得到的相似度共同组成。利用商品的描述信息,对文本信息进行分词、加入停用词和自定义词,将其转换成TF-IDF向量,以此计算项目间的内容相似度。使用项目间内容相似度,按照一定方式对传统的项目间的相似度进行修正,通过这种方式来解决数据稀疏性、项目冷启动等问题,同时提高了推果的准和召率。(3)鉴于算法的扩展性、稳定性和实时性,将改进算法并行化于Spark平台,利用并行化算法设计并实现了一个电商平台推荐系统,最后采用人口统计方法优化了系统中用户的冷启动问题。实验结果表明,引入综合相似度后的改进算法在准确率和召回率上都有所提高,通过对比集群不同节点下算法的执行时间,验证了Spark对于算法执行性能的明显提升,能够有效地处理海量数据并快速得出推荐结果。