基于用户兴趣的新闻个性化推荐系统的设计与开发

 2022-01-17 11:01

论文总字数:26867字

目 录

1引言 1

1.1开发背景 1

1.2开发目的 1

2系统相关介绍 2

2.1开发工具介绍 2

2.1.1 SQL Server 2

2.1.2 Tomcat 2

2.1.3 MyEclipse 2

2.2应用技术介绍 2

2.2.1 SSH架构 3

2.2.2 MVC软件开发模式 3

3系统分析 4

3.1可行性分析 4

3.1.1技术条件可行性分析 4

3.1.2 经济可行性分析 4

3.1.3社会因素方面的可行性分析 4

3.1.4法律方面的可行性分析 5

3.1.5操作方面的可行性分析 5

3.1.6 分析结论 5

3.2需求分析 5

3.2.1 功能需求 5

3.2.2安全性需求 5

3.2.3 可靠性需求 6

3.2.4 可扩展性需求 6

3.2.5 数据库需求分析 6

3.3业务流程分析 7

3.4新闻个性化推荐算法分析 7

4系统设计 8

4.1系统总体设计 8

4.2系统详细设计 8

4.3数据库设计 9

5系统实现 11

5.1项目总体结构 11

5.2 个性化推荐功能的实现 12

5.2.1 用户自选择推荐功能的实现 12

5.2.2 个性化推荐推荐功能的实现 14

5.3登录模块 14

5.4注册模块 16

5.5首页新闻模块 18

5.6推荐模块 20

5.7分类新闻模块 21

5.8新闻发布模块 23

5.9工具类 24

6总结 26

参考文献 27

致谢 28

基于用户兴趣的新闻个性化推荐系统的设计与开发

王闯

,China

Abstract: The news personalized recommendation system aims to provide users with a good news reading experience and help users effectively obtain the news content they need. This article describes in detail the system and related to this system. The development tools used are Sql Server database, Tomcat server, etc. MyEclipse is selected as the development environment. The system implements functions such as user login, user registration, reading news (home page news, classified news and recommended news), selection attention and news release.The system includes two parts: news reading and news release. The news reading part involves a personalized recommendation algorithm to recommend news content that users are interested in. The highlight of system development is the use of the SSH framework and the MVC design pattern, which makes the design and development of the entire system easy, clean, and efficient.

Key Words: News reading experience;Personalized recommendation; SSH framework; MVC pattern;

1引言

1.1开发背景

互联网无疑是20世纪伟大的发明,互联网使人们的生活、工作方式发生了极大的变化。而互联网带给人们最大的体验就是便捷、迅速和海量信息。我们可以通过即时通讯工具如QQ等,和远在异国他乡的亲人,亦或素未谋面的陌生人畅快交谈。“家书抵万金”和“排队打电话”的情形一去不复返了。我们也可以足不出屋就能买到几乎任何自己想要的商品,不管商家距离你多远,你都能在短短几天之内如愿受到你的货品。你再也不用纠结这个周末是陪家人享受美好时光还是去远处的小镇购买不易买到的水管接口了。我们可以在互联网上任意地获取各种资源:电影、音乐、某位学者发表的学术论文、别人发的安装水管接口的教程、名牌大学优秀教授的网上课程,等等如是,不胜枚举。

新闻的重要性是不言而喻的。它帮助我们成长,帮助我们认识世界。它瞬息万变不可捉摸却最接近社会的心跳,他让我们能在房宇之内把握时代的脉搏,真正地做到“足不出户,便知天下事”。而传统的新闻媒介有很多不足之处,它不能满足人们的阅读需求。传统的新闻媒介如报纸传播速度慢、更新慢、“点对面”的单向线性传播、读者反馈不方便、读者也不能方便地和其他读者进行交流和讨论。

互联网如水,流淌到任何可以流淌的地方。新闻,有了互联网的支持,所有前面提到的问题迎刃而解。互联网 新闻,它速度快、容量大、可检索和交互性等这些得天独厚的特点给了人们绝佳的阅读体验,极大地满足了人们的新闻阅读需求。而最值得一提的是互联网新闻的“个性化推荐”这一强大的功能。“个性化推荐”系统通过挖掘用户的阅读兴趣来比较精确地推荐用户喜欢的内容。对新闻资讯服务者来说提高了用户的转化率,提升了用户粘性;对读者来说,减少了很多无用的信息的出现,这在信息铺天盖地的时代是很必要的。因此,一个基于用户兴趣的新闻个性化推荐系统能最大程度上满足用户的需求。

关于国内研究现状,2017年王梦佳、郑剑和贺智明等在《结合信任和用户关系的微博关注推荐算法》一文中提出了一种新型关注推荐算法RTLR,该算法是针对非名人用户的。该算法进行推荐的依据是互动行为信息和用户关系,同时在结合多因素的情况下,建立逻辑回归模型;2018年,成鹏 刘文斌提出了一种差值矩阵分解模型,根据此模型进行推荐。算法的原理大致可以这样描述:用户对物品会给出一个评分,把社会属性相似的用户对某物品的评分统一计算平均值,记为aver,记每个用户对该物品的评分为Ui,然后计算(Ui-aver)得到差值矩阵,并对此矩阵分解。

1.2开发目的

在信息时代,人们希望从浩如烟海的信息中快速获取自己想要的信息;同时,每个人所关注的信息是在一定的范围内的,这个范围内的大致内容是可以通过一定的技术和方法去描述的。比如购物网站会通过用户的浏览足迹分析用户对哪些商品感兴趣,或者说对哪些商品有购买意愿,然后根据分析结果在用户的界面上多显示对该用户有很大吸引力的商品,“投其所好”,甚至主动向用户推送商品信息。这就是所谓的“个性化”。在网上购物是这样,那么在获取新闻时也应如此,人们希望多看到自己感兴趣的内容,而不是被大量的“垃圾新闻”所包围。

本系统除了可以正常阅读新闻外,该系统通过采集、分析用户访问的新闻文本内容及其分类,根据新闻分类推荐相似新闻内容;对新闻文本内容进行分解,分析研究,挖掘出用户的兴趣,建立用户的兴趣模型,从而实现“千人千面”,满足用户的个性化需求。

2系统相关介绍

2.1开发工具介绍

本系统以Sql Server作为后台数据库,Web服务器选用的是Apache Tomcat7.0进行开发,开发环境选用的是MyEclipse。

2.1.1 SQL Server

SQL Server是微软公司的产品,与软件的集成程度高,使用很方便,因为它有这些优点,所以如果在安装Windows的系统上开发数据库应用,选用SQL Server是很明智的。SQL Server数据库的应用很广,很多行业和领域都钟爱它,比如金融行业、行政管理领域和教育领域等。SQL Server的流行不仅是因为它人性化的操作界面和一学就会的“傻瓜式”的操作,最重要的是,它提供了与其他数据库进行转换的接口。

SQL Service是一个关系型数据库,这种数据库分为很多不同的数据表,以某种合理地方式组织数据,并存在相应的表里,这些表之间或有联系或没有联系。与把所有数据都“胡乱”地推在一起的数据库相比,这种数据库在速度上和灵活性上都由很大的优势。

2.1.2 Tomcat

Tomcat 是Web 应用服务器具有稳定的性能,提供给用户使用不收费,且开放源代码,因此受到开发者和软件开发商的欢迎。因为是轻量级框架,所以Tomcat 一般不用再大型系统上。而通常是用在中小型系统中,或者是那些并发访问的用户比较少的情况。

Tomcat的最新版本为9.0,本项目采用的是之前的7.0版本。

2.1.3 MyEclipse

MyEclipse是一个企业级的开发环境,提供很多服务,比如为JavaEE项目的部署提供服务和数据库服务等。它所提供的这些功能都可以独立发挥作用,也即分为不同的功能组件,而这些功能组件是由相关的几个插件共同完成。各模块间低耦合,因此如果我们队某一模块进行单独的修改,不会对其他的模块产生影响。总之,本系统选择MyEclipse作为开发环境再合适不过了。

2.2应用技术介绍

本系统应用了三个轻型框架:Spring、Struts2和Hibernate,三个框架组合成为SSH架构;系统应用了MVC软件开发模式,在这种模式下各模块之间的耦合度很低,为代码的维护提供了便利。此外还应用到HTML,JSP,CSS,JS等技术。

2.2.1 SSH架构

SSH架构中,Struts控制系统运行过程中跳转的方向;Hibernate负责对数据库的操作,把数据库中的表持久化为Java程序中的类。Spring负责管理另外两个框架Struts和Hibernate。SSH框架图如下:

JSP页面

剩余内容已隐藏,请支付后下载全文,论文总字数:26867字

相关图片展示:

您需要先支付 80元 才能查看全部内容!立即支付

该课题毕业论文、开题报告、外文翻译、程序设计、图纸设计等资料可联系客服协助查找;