Java+SSH(Spring+Struts+Hibernate)+Mysql个性化音乐推荐系统 协同过滤音乐推荐系统 基于用户、项目、聚类、混合的协同过滤推荐算法NewMusicRS源代码下载
一、项目简介
1、开发工具和实现技术
MyEclipse10/Eclipse/IDEA,jdk1.7,mysql5.5/mysql8,navicat数据库管理工具,tomcat7,SSH(spring3+struts2+Hibernate3)开发框架,jsp页面,javascript脚本,jquery脚本,bootstrap前端框架,layer弹窗组件,webuploader文件上传组件等。
2、项目功能
前台用户包含:注册、登录、注销、喜好标签管理、浏览音乐、搜索音乐、信息修改、密码修改、音乐评分、音乐收藏、音乐播放、音乐下载、音乐评论、歌单管理、播放歌单、热点推荐、冷启动、个性化推荐音乐等功能;
后台管理员包含:数据统计、用户管理、音乐管理、音乐类型管理、歌单管理、评分管理、收藏管理、评论管理、播放记录管理、用户喜好标签管理等。
个性化推荐功能:
游客访问,在前台首页展示热播榜单(根据音乐播放次数降序推荐)
登录用户访问,前台首页会展示热播榜单(根据音乐播放次数降序推荐)和个性化推荐(个性化推荐中首先进行混合推荐,如果混合推荐没有结果进行冷启动推荐)
混合推荐:
通过用户-音乐评分数据、用户-音乐收藏数据、用户-音乐播放数据进行混合推荐,评分数据采用余弦算法计算用户相似度,收藏数据采用谷本系数算法计算用户相似度,播放数据评分采用余弦算法计算用户相似度,
三种算法分别运行得到各自推荐结果之后,将推荐结果进行平均加权,每一种推荐算法推荐的结果都有预测评分,混合推荐算法是将推荐结果进行加权平均后得到最终推荐的音乐,加权后的预测评分是最终结果。
冷启动推荐:
首先根据当前登录用户的喜好标签查找标签下的4个音乐,然后再冷推荐4个,冷推荐的音乐是没有评分、收藏、播放记录的音乐
音乐数据来源:爬取网易云音乐数据
二、项目展示
三、代码展示