基于知识图谱的电影推荐系统
系统简介
本项目是一个基于知识图谱的电影推荐系统,它结合了豆瓣电影数据与Neo4j图数据库,通过用户行为分析与协同过滤算法,为用户提供个性化的电影推荐服务。系统不仅实现了电影信息的爬取、存储与展示,还通过图谱可视化与交互查询,增强了用户对电影关联知识的探索体验。
功能描述
用户端功能
登录注册与退出:用户可以使用账号登录或注册新账号,并随时退出登录状态。
电影列表与模糊搜索:登录后,用户可以浏览电影列表,并通过模糊搜索功能快速定位感兴趣的电影。
电影详情与打分评论:点击电影名称,用户可查看电影详细信息,包括剧情、演员、导演等。在此页面,用户还可以对电影进行打分和发表评论,打分数据将实时写入Neo4j数据库。
知识图谱展示与查询:系统通过Echarts可视化工具展示Neo4j中的知识图谱数据,用户可以根据节点和关系进行交互查询,深入了解电影之间的关联信息。
协同过滤推荐:基于用户的打分数据,系统采用协同过滤算法为用户提供个性化的电影推荐。
个人信息管理:在个人中心,用户可以修改自己的个人信息,如昵称、密码等。
管理员端功能
登录管理端:管理员使用专用账号登录管理端,进行系统维护与用户管理。
用户管理:管理员可以增删改查用户信息,确保用户数据的准确性与安全性。
电影与相关数据维护:管理员可以对电影、地区、类型、评分和评论等数据进行增删改查操作,保持数据的完整性与时效性。
技术描述
本系统后端采用Django框架进行开发,前端使用HTML、CSS和JavaScript进行页面构建与交互实现。在数据存储方面,系统使用SQLite数据库存储结构化数据,并利用Neo4j图数据库存储电影知识图谱数据。为了实现图谱的可视化展示与交互查询,系统集成了Echarts图表库与py2neo库,分别用于图谱渲染与Neo4j数据操作。此外,系统还采用了协同过滤算法进行个性化推荐计算,为用户提供精准的电影推荐服务。
1000