【摘要】近年来,因特网发展迅速,互联网为人们提供了大量的信息,但是大量的信息让人们对信息的选择陷入了困难。传统新闻门户网站给用户提供了大量的新闻资讯,然而用户在众多新闻中很难找到真正感兴趣的新闻,这意味着传统新闻平台已经无法适应用户的需求。个性化新闻资讯平台通过计算分析,为用户提供个性化的新闻推荐,受到了越来越多人的欢迎。
本文实现了个性化新闻资讯平台的用户阅读兴趣分析部分。采用协同过滤与内容推荐算法实现个性化推荐,计算出用户可能感兴趣的新闻。协同过滤算法通过收集用户的行为日志,计算出用户对各篇新闻的兴趣程度,再计算出新闻间的相似矩阵,然后计算出用户的推荐列表,最后过滤用户已经阅读的新闻得出最终推荐结果。内容推荐算法,先对新闻简单分词,利用TF-IDF(词频-逆文档频率)计算词汇的权重,再计算每篇新闻间的距离,找出与用户已经阅读过的文章最相似的文章推荐给用户。数据计算采用Spark作为数据分析平台,与传统的mapreduce相比,Spark拥有更快的运行速度,更加简单的编程模型而且Spark还支持实时数据分析。用Spark进行离线计算与实时计算都只需要对RDD数据集合进行操作,用scala编写程序可以大大降低代码的数量,提高程序的可维护性。
【关键词】推荐;协同过滤;兴趣分析;Spark
目录
摘要
Abstract
1 课题概述-1
1.1 课题开发背景-1
1.2 课题研究现状-1
1.3 课题研究内容-1
1.4 课题研究目的-2
2 开发环境与相关技术概述-2
2.1开发环境-2
2.1.1 IDEA-2
2.1.2 MySQL-2
2.2 开发技术-2
2.2.1 Hadoop-2
2.2.2 Spark-3
3 需求分析-3
3.1 功能需求分析-3
3.2 性能需求分析-5
3.3 可行性分析-5
3.3.1 技术可行性分析-5
3.3.2 经济可行性分析-5
4 系统设计-5
4.1 系统设计-5
4.1.1 系统结构描述-5
4.1.2 系统总体结构图-6
4.1.3 系统总体设计-6
5 系统实现-7
5.1 系统架构-7
5.2 系统的实现-8
5.2.1 基于物品的协同过滤算法的实现-8
5.2.2 内容推荐的实现-14
6系统测试-18
6.1系统测试概述-18
6.2测试用例与测试结果-18
7总结-20
致 谢-23