基于neo4j知识图谱的图书推荐系统

基于neo4j知识图谱的图书推荐系统
介绍:系统采用django框架,底层图谱数据库采用neo4j软件存储,系统自带了一份图书数据,可以直接初始化进入neo4j,可以默认生成打分数据,产生用户和图书的关系,有了对应关系,就可以打分,系统比较完整。

用户端功能
1、正常的用户系统功能,包括登录注册,退出系统,等功能。
2、登录后可以看见一个图书列表页,在列表页,可以搜索图书,点击收藏可以收藏图书,点击点赞,可以对书籍点赞,点击分类,可以根据分类过滤。
3、点击某一个图书进入详细页面,详情页面可以评论这个图书,可以再详情页对图书进行打分,注意打分后的数据会进入neo4j,推荐使用
4、点击推荐,会根据你的打分数据去neo4j中进行推荐。
5、可以点进我的收藏和我的点赞,分别看到自己收藏和点赞的信息
6、点击个人中心可以进入个人中心,个人中心可以修改自己的头像,用户名等信息。
7、个人中心可以对图书进行增删改查,可以上传自己的图书,进行分享。

管理员端
1、超级管理员登录后可以对用户增删改查,所有用户。
2、可以对电子书、分类、评论等进行管理,也是可以增删改查。

neo4j推荐的逻辑简介:
这个neo4j语句是用于协同过滤推荐的,匹配符合条件的图上节点,该语句会找到所有与用户KellieStanley有共同评分的其他用户p2和它们之间的共同被评价过的图书m,以及每个图书m与用户KellieStanley之间的评分关系x和p2与m之间的评分关系y。计算两两用户之间的相似度,使用WITH子句将匹配到的节点和关系转换为变量,并计算它们之间的相似度。其中,COUNT(m)表示共同被评价过的图书数量,SUM(x.rating * y.rating)表示两位用户之间图书评分的乘积之和,xDot和yDot分别代表用户的评分向量,xLength和yLength表示用户评分向量的长度。该语句中,REDUCE函数用于计算用户的评分向量的长度,并使用COLLECT函数来收集评分。WHERE子句用于筛选结果集,只保留共同被评价过的图书数量numbermovies大于1的结果。返回相似度最高的前10个用户,返回结果集中每一对相似度最高的用户p1和p2的用户名,以及它们之间的相似度sim。通过ORDER BY子句将相似度从高到低排序,再使用LIMIT子句限制结果集为前10个最相似的用户。

1000

图片[1]-基于neo4j知识图谱的图书推荐系统
图片[2]-基于neo4j知识图谱的图书推荐系统
图片[3]-基于neo4j知识图谱的图书推荐系统
图片[4]-基于neo4j知识图谱的图书推荐系统
图片[5]-基于neo4j知识图谱的图书推荐系统
图片[6]-基于neo4j知识图谱的图书推荐系统
图片[7]-基于neo4j知识图谱的图书推荐系统
图片[8]-基于neo4j知识图谱的图书推荐系统
图片[9]-基于neo4j知识图谱的图书推荐系统
图片[10]-基于neo4j知识图谱的图书推荐系统
图片[11]-基于neo4j知识图谱的图书推荐系统
图片[12]-基于neo4j知识图谱的图书推荐系统
图片[13]-基于neo4j知识图谱的图书推荐系统
图片[14]-基于neo4j知识图谱的图书推荐系统
图片[15]-基于neo4j知识图谱的图书推荐系统
图片[16]-基于neo4j知识图谱的图书推荐系统
图片[17]-基于neo4j知识图谱的图书推荐系统
图片[18]-基于neo4j知识图谱的图书推荐系统
图片[19]-基于neo4j知识图谱的图书推荐系统
图片[20]-基于neo4j知识图谱的图书推荐系统
图片[21]-基于neo4j知识图谱的图书推荐系统
图片[22]-基于neo4j知识图谱的图书推荐系统
© 版权声明
THE END
喜欢就支持一下吧
点赞8 分享