开发语言:
Java语言(SSM框架)实现协同过滤算法新闻推荐系统,使用基于用户、物品的协同过滤推荐算法通过Python爬虫爬取环球日报新闻实现实时计算推荐。
源码获取:点我头像进入我的主页在资源栏目下查找或者下方链接、
https://download.csdn.net/download/weixin_46115961/88599510
或者
https://gitee.com/ss-i-gg/CollaborativeFilteringNewsRecommendSystem?skip_mobile=true
开发工具:IDEA,jdk1.8,Mysql8,navicat数据库管理工具,Tomcat,Maven。
后端使用:SSM(Spring+SpringMVC+Mybatis)开发框架。
前端使用:javascript脚本,jquery脚本,用户端使用bootstrap前端框 架,管理员端使用layui前端框架,layer弹窗组件等。
数据收集:Python爬虫爬取环球日报真实新闻实现实时更新。
功能实现
系统前台:用户具有注册、登录、注销、浏览新闻、搜索新闻、信息修改、密码修改、喜好标签、新闻评分、新闻收藏、新闻评论、排行榜、热点推荐、个性化推荐新闻等功能;
后台管理系统:管理员可以查看数据统计、用户管理、新闻管理、新闻类型管理、评分管理、收藏管理、评论管理、浏览记录管理、用户喜好标签等。
协同过滤推荐功能:
- 热点榜单
根据数据库的新闻数据查询浏览数量最多的新闻进行推荐,同时查询出来的新是不包括当前登录用户已经浏览过的新闻(过滤当前用户已经浏览过的新闻); - 个性化推荐
2.1. 游客:根据新闻总评分和总收藏数量降序查询输出向游客推荐。
2.2. 登录用户:
基于用户的协同过滤推荐算法:根据新闻的评分数据采用基于用户的协同过滤推荐算法实时计算向用户进行新闻推荐;如果没有推荐结果,采用根据登录用户选择的喜好标签下的新闻的总评分降序推荐,同时推荐的新闻是过滤掉当前登录用户已经评分过的新闻;
基于项目的协同过滤推荐算法:根据新闻的收藏数量采用基于项目的协同过滤推荐算法从高到低降序向用户进行推荐;如果没有推荐结果,采用根据登录用户喜好标签下的新闻的收藏数量降序推荐,同时推荐的是当前登录用户没有收藏过的新闻。 - 相关推荐
推荐当前登录用户正在浏览的新闻相同类型下评分较高的新闻,同时推荐的是当前用户没有评分的新闻。
新闻数据来源:爬取环球日报新闻数据
系统项目
-
项目结构(SSM框架开发结构)
-
数据库表
-
前台系统
-
后台管理系统
-
代码运行
8.1 基于用户的协同过滤推荐算法
8.2 基于项目的协同过滤推荐
项目演示地址(2024-4-4到期):
前台:http://113.125.137.7:26/NewsRecommendOnline/
后台:http://113.125.137.7:26/NewsRecommendOnline/admin/login
源码获取:点我头像进入我的主页在资源栏目下查找或者下方链接
https://gitee.com/ss-i-gg/CollaborativeFilteringNewsRecommendSystem?skip_mobile=true