项目介绍
适合人群
计算机相关专业或者想学习编程的同学
有项目需求的同学
想快速完成毕业设计的同学
项目涵盖各方面学习点,适合作为大一至大四
或者正在找实习工作没有项目的同学
概述
基于Springboot+Vue+Mybatis+Mybatis-plus+Mysql+基于用户的协同过滤推荐算法的电影推荐系统项目实战。
数据集
- MovieLens的
ml-latest-small-master
数据集 - 用户数量:约600个
- 电影数量:共9727部
- 评分记录:10万条
技术栈
- 编程语言:Java、HTML、JavaScript、CSS
- 数据库:Mysql(使用Navicat(数据可视化操作))
- 前端框架:Vue 2.0
- 后端框架:Springboot、mybatisplus、mybatis
项目主要功能模块
- 用户管理:登录、注册、退出登录
- 前台功能:
- 首页
- 热门电影
- 推荐电影
- 电影细节页
- 搜索电影
- 后台管理:
- 电影管理
- 电影评论管理
- 电影配置管理
- 电影数据统计
功能图
登录界面
注册界面
首页界面
热门电影推荐界面
基于协同过滤算法推荐界面
细节页面
评论界面
后台首页
评论管理界面
电影配置管理界面
数据统计界面
用户信息管理界面
电影管理界面
算法
协同过滤算法实现思路
- 用户-物品评分矩阵
- 构建矩阵,行代表用户,列代表电影,值代表评分。
- 从
movies_comment
表中提取用户和电影的评分数据。
- 相似度计算
- 使用余弦相似度或皮尔逊相关系数。
- 步骤:
- 提取用户评分数据。
- 转换为评分向量。
- 计算余弦相似度。
- 根据相似度和用户评分生成推荐。
- 生成推荐
- 选择目标用户。
- 计算与其他用户的相似度。
- 加权评分。
- 生成推荐列表。
热门电影推荐算法实现思路
- 根据用户评论数作为电影热度数进行推荐。
基于用户点击电影推荐电影实现思路
- 利用电影类型进行推荐。
- 用户点击电影后,根据电影类型推荐相似电影。
- 点击推荐电影后,继续推荐相同类型的其他电影。
- 达到精准推荐效果。