movielens数据集导入mysql_GitHub - Colaplusice/movielens_recommend: 基于movielens数据集的电影推荐系统...

毕业设计--基于Django的电影推荐系统和论坛

说明

注册普通用户通过web界面来设置,创建创建用户通过creeatsuperuser创建。下文有详细命令

导入电影信息通过insert_movies_script.py来操作 (会删除已有的所有信息!)

前端展示 浏览最多,评分最多,收藏最多,写的比较直白,你可以改的委婉点: 最热电影,火爆排行...之类的。每种有10条。

我猜你喜欢为基于用户推荐,item推荐为基于项目推荐。两种推荐思路下文有介绍

系统采用的技术

前端: bootstrap3 css 框架

后端: django 2.2.1 + sqlite3数据库 (MVC框架)

数据: python异步爬虫从豆瓣top250抓取数据,保存到本地csv文件中

主要功能: 录入图书信息,用户打分,电影标签分类,电影推荐,电影分享,电影收藏,后台管理系统。

整体采用MVC架构,前端页面通过django template模板来实现,实现了模板的复用功能。同时前端页面的组织结构较为清晰。

推荐算法思路

通过协调过滤计算和其他用户的距离,然后进行筛选。如果用户数量不足,推荐数目不够15条,就会自动从

所有未打分的电影中按照浏览数降序选一部分填充进去。

基于用户的推荐

用户需要给电影打分。通过用户已打分的部分来计算相似度,如果用户未打分,或者没有其他用户,则按照浏览数降序返回。

通过pearson算法来计算用户之间的距离,找到距离最近的N个用户。将这些用户中已打分的电影(且要推荐的用户未看过的部分)返回。

基于item的推荐

遍历当前用户已打分的item,计算和未打分的item的相似距离。

对相似距离进行排序 返回

主要实现的功能

登录注册页面

基于协同过滤的电影的分类,排序,搜索,打分,排序功能。

基于协同过滤的周推荐和月推荐

观影分享会等活动功能,用户报名功能 (需要额外添加)

发帖留言论坛功能 (要额外添加)

基于spark的ALS算法 (要额外添加)

Mysql适配

movielens数据集适配

参考链接

fixed

首页导航栏链接错误

首页面为空

登录注册页面

推荐跳转登录

周推荐用户没有评分时随机推荐

按照收藏数量排序

重新设计了 action 和UserAction model,拆分出了UserAction

电影模型

浏览量 每次刷新页面的浏览数

收藏量 user manytomany field 每个用户收藏一次

评分 rate 每个用户评分一次

在电影下面的评论加点赞功能

安装运行方法

安装依赖

将项目导入pycharm, 在pycharm配置python解释器,3.7及以下都可以

打开终端 输入pip install -r requirements.txt 若提示无pip。去下载get-pip.py 运行python get-pip.py

在pip安装过程中如果报错C++ 14依赖问题。则安装c++依赖工具。找不到找我要。如果安装速度过慢,请更换国内镜像https://blog.csdn.net/chenghuikai/article/details/55258957

安装成功后,进入运行阶段

运行

运行服务器: python manage.py runserver

如果无数据,运行项目根目录下的数据迁移脚本 populate开头。

python manage.py createsuperuser 创建超级管理员, (密码输入时终端暂时看不到)

进入后台: 127.0.0.1:8000/admin

需要获得永久更新和维护支持请联系我

其他问题请联系我

你可能感兴趣的:(movielens数据集导入mysql_GitHub - Colaplusice/movielens_recommend: 基于movielens数据集的电影推荐系统...)