系统说明
基于Python Django实现KNN协同电影推荐系统,有用户端和管理后端,完整可在任何环境运行。
KNN(K-Nearest Neighbor)算法是机器学习算法中最基础、最简单的算法之一。它既能用于分类,也能用于回归。KNN通过测量不同特征值之间的距离来进行分类。
KNN算法的思想非常简单:对于任意n维输入向量,分别对应于特征空间中的一个点,输出为该特征向量所对应的类别标签或预测值。
KNN算法是一种非常特别的机器学习算法,因为它没有一般意义上的学习过程。它的工作原理是利用训练数据对特征向量空间进行划分,并将划分结果作为最终算法模型。存在一个样本数据集合,也称作训练样本集,并且样本集中的每个数据都存在标签,即我们知道样本集中每一数据与所属分类的对应关系。
输入没有标签的数据后,将这个没有标签的数据的每个特征与样本集中的数据对应的特征进行比较,然后提取样本中特征最相近的数据(最近邻)的分类标签。
一般而言,我们只选择样本数据集中前k个最相似的数据,这就是KNN算法中K的由来,通常k是不大于20的整数。最后,选择k个最相似数据中出现次数最多的类别,作为新数据的分类。
软件架构:Python 3.8 + Django 3.2.9 + Mysql 8.0
可以基于此系统,二次开发成其他推荐系统,推荐算法实现简单,代码结构简单,包能部署运行。
用户端功能列表
注册模块
登录模块
电影推荐模块
电影详情模块
评论模块
管理员功能列表:
账号管理模块
用户管理模块
电影分类管理模块
电影信息管理模块
评论管理模块
轮播图管理模块
代码结构
依赖包不多,安装依赖包,配置数据库就能正常跑起来
运行截图