java毕业设计基于混合推荐算法的个性化新闻推荐系统

收藏关注不迷路


一、项目介绍

本论文主要阐述了基于Java的新闻管理系统的设计与实现过程,论文首先介绍了系统开发过程中使用的技术和开发工具,接着简单介绍了系统的功能模块分析和设计,然后介绍了数据库的需求分析和设计,最后详细介绍了系统的实现过程。
本系统分为管理员和普通用户两种角色,实现了新闻发布、新闻浏览、新闻点赞、新闻分类管理、系统日志监控、新闻搜索等功能,方便用户更好的浏览和管理新闻信息。本系统是基于B/S架构的信息管理系统,使用了SpringMVC、Mybatis、Spring框架技术,MyEclipse集成开发环境以及MySQL数据库。
选题的意义:随着互联网信息技术的不断发展,目前我们正处于一个信息爆炸的时代,同时也面临着信息过载的问题,即难以从网络中庞大的新闻源中找到自己感兴趣的新闻。新闻服务提供商通常使用个性化推荐系统向用户进行推荐,个性化新闻推荐的传统方法包括基于内容推荐、基于协同过滤推荐和这两种技术的混合版本。传统的推荐算法都没有考虑到用户在浏览记录上的时间顺序,而用户历史记录阅读的顺序信息可以更好地反映一段时间内用户兴趣的变化和多样性。基于此问题,本文设计实现了一种基于混合推荐算法的个性化新闻推荐系统,
本文的主要工作和创新点如下:
(1)针对传统推荐算法忽略了用户浏览行为的时间先后顺序,本文提出一种改进的循环神经网络算法模型,该模型使用基于注意力的并行卷积神经网络来聚合用户的兴趣特征,并使用基于注意力机制的递归神经网络来挖掘隐藏的时间序列特征。
(2)为了改善单一推荐算法在某些应用场景推荐效果不足的问题,本文提出一个混合推荐算法模型,使用加权混合的推荐策略给用户推荐个性化新闻。

二、开发环境

开发语言:Java
框架:springboot
JDK版本:JDK1.8
服务器:tomcat7
数据库:mysql
数据库工具:Navicat11
开发软件:eclipse/myeclipse/idea
Maven包:Maven
————————————————

三、功能介绍

功能分析,即通过相关的需求调研,分析其项目应具备的功能,并编写完整的需求文档。这个过程也是整个项目系统所必须进行的第一步,没有这一步后期研发和设计无法进行,并且在后期维护和版本更新中也起到至关重要的作用,本文通过具体的分析得出本项目系统应具备的功能有用户、新闻、留言等相关管理功能,同时也具有新闻的点赞、评价、预览、更新信息等功能。
1)用户注册
提供相关的注册页面窗口,供游客进行注册,以有权限访问更多的功能,比如新闻评论,在线留言,发布新闻等功能。用户在注册是必须正确填写相关信息,比如用户名不能为空,密码和确认密码必须输入一致,用户的邮箱格式需正确等,需通过各个信息的正确性校验,才可将相关数据保存到数据库,并以此确定注册的完成。
2)用户登录
本功能是提供相关的登录窗口,给在数据库中保存的用户使用,以此通过填写正确的用户名密码,即可访问系统的功能。
3)发布新闻
用户登录后,可访问此功能编写自己所要发布的信息,发布成功后需要系统管理员的审核,审核通过后在主页会进行显示。本项目的核心便是新闻模块的功能。
4)浏览新闻
游客和用户均可浏览系统中各个用户所发布的新闻。
5)用户留言
用户通过登录后,对新闻进行查看时,可发布留言,管理员进入系统后会收到留言信息。
6)动态查看
系统会记录会员所有的动态信息,例如新用户注册、新闻信息的更新和发布等操作均会保存到后台数据库,方便后期用户或者管理员查看信息的操作情况。用户在查看信息时,可以进行点击直接链接到用户的发表的动态详情界面。
7)新闻评价
用户在查看新闻时可以发表评论,用户的评论内容会显示新闻详情列表界面,用户可以查看所有的用户的评论信息。
8)点赞
点赞功能是新闻管理系统的较为新颖的功能,用户在浏览新闻时除了可以评论新闻也可以点击点赞,系统会记录每条新闻的总的点赞数和浏览数。
9)更新个人资料
用户注册后,可以进入系统访问此功能,并且对自身的信息进行更新,包括联系方式、个人密码和头像等信息。
在这里插入图片描述
混合推荐可使用的数据包括:
1、用户属性:用户位置、用户性别、用户年龄等属性信息;
2、项目属性:项目类别、项目添加时间、项目内容等属性信息;
3、用户操作行为:用户评分、收藏记录、浏览记录、观看时长、购买记录等操作行为;
混合推荐方法可以是先将数据进行聚类(用户聚类、项目聚类等),可进行多次聚类,聚类算法常用的有KMeans聚类、Canopy聚类、KMeans+Canopy聚类、迷糊均值聚类等聚类算法,然后找到目标用户所在的簇,用簇中的项目或者用户进行推荐,推荐可根据多种操作行为分别推荐,然后将推荐的结果进行平均加权求和,需要提前设定每种推荐算法的权重,或者分别计算不同操作行为的用户或者项目的相似度,将相似度进行加权求和,然后再进行最后的推荐,相似度的计算可采用余弦算法、修正余弦算法、person皮尔森算法、欧几里得距离公式等算法,推荐机制可采用SlopeOne、SVD等。

四、核心代码

部分代码:

package com.fc.v2.controller;

import com.fc.v2.common.base.BaseController;

import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.stereotype.Controller;
import org.springframework.ui.ModelMap;
import org.springframework.web.bind.annotation.GetMapping;

/**
 * 如果有前台这儿写前台访问方法
 * @ClassName: IndexController
 * @author fuce
 * @date 2019-10-21 00:15
 */
@Api(tags = "首页模块")
@Controller
public class IndexController extends BaseController{
	
	/**
	 * 前台访问 域名:端口 例如:localhost:80的get请求
	 * @param map
	 * @return
	 * @author fuce
	 * @Date 2019年11月20日 下午10:55:13
	 */
	@ApiOperation(value="前台",notes="前台")
	@GetMapping("/")
	public String index(ModelMap map) {
		
		//直接访问后台用
		return "redirect:/admin/login";
    	//return "index";
	}
	/**
	 * 前台访问/index的get请求
	 * @param map
	 * @return
	 * @author fuce
	 * @Date 2019年11月20日 下午10:54:56
	 */
	@ApiOperation(value="前台",notes="前台")
	@GetMapping("/index")
	public String index2(ModelMap map) {
		//直接访问后台用
		//return "redirect:/admin/login"
		return "index";
	}
}

五、效果图

请添加图片描述
请添加图片描述
请添加图片描述
请添加图片描述
请添加图片描述

六、文章目录

目 录
摘 要 I
ABSTRACT II
目 录 II
第1章 绪论 1
1.1背景及意义 1
1.2 国内外研究概况 1
1.3 研究的内容 1
第2章 相关技术 3
2.1 java简介 4
2.2 ssm框架介绍 6
2.3 B/S结构 4
2.4 MySQL数据库 4
第3章 系统分析 5
3.1 需求分析 5
3.2 系统可行性分析 5
3.2.1技术可行性:技术背景 5
3.2.2经济可行性 6
3.2.3操作可行性: 6
3.3 项目设计目标与原则 6
3.4系统流程分析 7
3.4.1操作流程 7
3.4.2添加信息流程 8
3.4.3删除信息流程 9
第4章 系统设计 11
4.1 系统体系结构 11
4.2开发流程设计系统 12
4.3 数据库设计原则 13
4.4 数据表 15
第5章 系统详细设计 19
5.1管理员功能模块 20
5.2用户功能模块 23
5.3前台功能模块 19
第6章 系统测试 25
6.1系统测试的目的 25
6.2系统测试方法 25
6.3功能测试 26
结 论 28
致 谢 29
参考文献 30

  • 3
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值