中学生学业水平多维度分析与预警系统

Flask 中学生学业预警系统:UCI Student Performance 真实数据,规则引擎 40%+随机森林/GBDT 60% 融合考前评分,六维雷达与皮尔逊相关分析,教师/管理员双角色,适合教育数据挖掘毕业设计。

评分:4.8/5.0
销量:67
发布:6/8/2026
难度:L3 高级

获取完整源码

演示视频仅作效果参考。完整源码、项目说明与运行答疑,请私聊沟通(适合毕业设计 / 课程设计 / 课设参考)。

获取完整源码观看演示视频
含项目说明文档,便于对照学习
可本地运行,适合课设演示
沟通获取后可咨询运行问题

项目封面

截图 1

项目概览

仪表盘展示学期趋势、风险等级与学科对比;学生管理支持多条件筛选与自动预警生成;分析模块含家庭/行为因素与性别学科交叉;模型训练页展示准确率/AUC/特征重要性。预警仅使用 G1/G2 及行为特征不含期末 G3,符合考前干预场景,适合 Python 教育大数据、融合评分与 ECharts 可视化类毕业设计。

项目说明

中学生学业水平多维度分析与预警系统

项目名称

中学生学业水平多维度分析与预警系统

项目简介

本系统基于葡萄牙两所中学真实学业数据(UCI Student Performance Dataset),实现中学生学业成绩的多维度统计分析和机器学习考前预警。系统融合规则引擎与机器学习模型综合评分,在期末考试前对学业风险学生进行预警识别,辅助教师开展针对性干预。


功能模块

用户认证

  • 用户登录与退出
  • 新用户注册(注册默认为教师角色)
  • 管理员 / 教师两种角色权限分离
  • 密码 pbkdf2:sha256 加密存储

数据总览(仪表盘)

  • 核心指标卡片:学生总数、平均期末成绩、及格率、高风险人数、中风险人数、待处理预警数
  • 学期成绩趋势图:第一学期 → 第二学期 → 期末,按学科分列
  • 风险等级饼图:高风险 / 中风险 / 低风险人数占比
  • 成绩等级分布柱状图:优秀 / 良好 / 及格 / 不及格
  • 学科对比图:平均分与高风险人数双轴对比

学生管理

  • 学生列表分页浏览,默认按预警分降序排列
  • 多条件筛选:学号或学校关键词、学科、风险等级
  • 新增学生:表单录入全部特征字段,自动计算风险评分并生成预警
  • 学生详情:基本信息、风险评估结果、预警记录
  • 删除学生:同时清除关联预警记录

多维度分析

  • 综合雷达图:学习投入、家庭支持、出勤情况、健康状况、学业稳定、成绩水平六维度归一化展示
  • 成绩分布:数学和葡萄牙语两门学科的成绩区间分布直方图
  • 家庭因素分析:母亲学历、父亲学历、家庭关系评分、父母是否同住、家庭规模,分别与平均成绩的关系
  • 行为习惯分析:学习时间、缺勤次数、外出频率、家庭网络、恋爱状态,分别与平均成绩的关系
  • 相关分析:12 项关键指标与期末成绩的皮尔逊相关系数排序
  • 性别学科交叉分析:男 / 女在数学 / 葡萄牙语学科上的平均成绩与高风险率对比

学业预警

  • 预警列表分页浏览,展示学号、学科、成绩、风险等级、预警标题、原因、状态、时间
  • 按状态(待处理 / 已处理)和风险等级(高 / 中)筛选,下拉框切换即时生效
  • 处理预警:填写处理备注,标记为已处理
  • 重新生成预警:重新计算全部学生风险评分,清除旧预警并按最新结果重新生成

模型训练

  • 两种算法可选:随机森林(Random Forest)、梯度提升(Gradient Boosting)
  • 训练后自动刷新全部学生风险评分和预警记录
  • 模型评估指标面板:准确率、精确率、召回率、F1、AUC
  • 特征重要性排名图(中文标签)
  • 训练历史记录表:历次训练的时间、算法、各指标、训练集大小

分析报告

  • 自动生成综合分析报告,包含数据概览、关键影响因素、家庭因素摘要、行为因素摘要、预警模型信息、建议措施
  • 支持浏览器打印

数据导入

  • 从本地 CSV 文件重新导入 UCI 原始数据
  • 导入后自动训练模型并刷新全部预警
  • 管理员专属功能

用户管理

  • 查看系统用户列表
  • 新增用户(指定角色:管理员 / 教师)
  • 管理员专属功能

操作日志

  • 记录用户登录、退出、增删改等操作
  • 含操作时间、用户名、操作类型、详情、IP 地址
  • 分页浏览
  • 管理员专属功能

预警评分机制

系统采用 规则引擎 + 机器学习模型 融合评分,仅使用考前特征(G1、G2 及行为指标),不依赖期末成绩 G3,实现考前预警。

  • 规则评分(权重 40%):根据第二学期成绩低于及格线、成绩下滑趋势、历史挂科次数、缺勤次数、学习时间不足等规则累加
  • 模型评分(权重 60%):随机森林 / 梯度提升分类器对考前特征预测的风险概率
  • 风险等级:综合评分 ≥ 0.7 为高风险,≥ 0.4 为中风险,< 0.4 为低风险
  • 期末成绩 G3 仅作为结果说明附加到预警原因中,不影响预警评分

数据来源

UCI Machine Learning Repository - Student Performance Data Set

文件学科记录数说明
data/student-mat.csv数学(mat)395 条葡萄牙 Gabriel Pereira 和 Mousinho da Silveira 两所中学学生数学课程数据
data/student-por.csv葡萄牙语(por)649 条同上学校的葡萄牙语课程数据

共 1044 条课程记录。成绩满分 20 分,及格线 10 分。


标准版目录结构

zhongxuesheng-xueye-fenxi-yujing/
├── app.py                         # Flask 主应用,页面路由与 API 接口
├── config.py                      # 应用配置(数据库路径、模型路径、预警阈值、密钥)
├── constants.py                   # 业务常量(学科映射、必填/可选字段定义)
├── requirements.txt               # Python 依赖清单
├── data/
│   ├── student-mat.csv            # UCI 数学课程原始数据
│   └── student-por.csv            # UCI 葡萄牙语课程原始数据
├── database/
│   ├── __init__.py
│   ├── schema.py                  # 数据库表结构与连接管理
│   └── academic.db                # SQLite 数据库文件(运行后自动生成)
├── ml/
│   ├── __init__.py
│   ├── features.py                # 特征工程(字段编码、转换、特征重要性提取)
│   ├── predictor.py               # 风险预测(规则评分 + ML 评分融合)
│   └── train.py                   # 模型训练(随机森林 / 梯度提升)
├── models/
│   ├── warning_model.joblib       # 训练好的分类模型(运行后自动生成)
│   └── label_encoders.joblib      # 标签编码器(运行后自动生成)
├── scripts/
│   ├── __init__.py
│   ├── seed_data.py               # 数据导入与初始化
│   └── test_system.py             # 系统测试脚本
├── services/
│   ├── __init__.py
│   ├── analysis.py                # 多维度分析业务逻辑(仪表盘统计、成绩分布、家庭因素、行为因素、相关分析、性别学科交叉)
│   ├── risk_service.py            # 风险刷新与预警生成
│   └── student_schema.py          # 学生数据校验与规范化
├── static/
│   ├── css/
│   │   └── style.css              # 全局自定义样式
│   └── js/
│       ├── common.js              # 通用工具(API 请求、风险标签、ECharts 初始化、时间格式化、提示消息)
│       ├── dashboard.js           # 仪表盘图表渲染
│       ├── analysis.js            # 多维分析图表渲染(支持 Tab 切换延迟渲染)
│       ├── students.js            # 学生列表与新增交互
│       ├── student_detail.js      # 学生详情页
│       ├── warnings.js            # 预警列表与处理交互
│       ├── model.js               # 模型训练交互
│       └── reports.js             # 分析报告渲染
├── templates/
│   ├── base.html                  # 基础模板(导航栏、CDN 引入、闪现消息)
│   ├── login.html                 # 登录页
│   ├── register.html              # 注册页
│   ├── dashboard.html             # 仪表盘
│   ├── students.html              # 学生管理
│   ├── student_detail.html        # 学生详情
│   ├── analysis.html              # 多维度分析
│   ├── warnings.html              # 学业预警
│   ├── model.html                 # 模型训练
│   ├── reports.html               # 分析报告
│   ├── users.html                 # 用户管理
│   ├── import.html                # 数据导入
│   └── logs.html                  # 操作日志
├── 运行步骤必看/
│   └── window.md                  # Windows 运行说明
├── mac_run.sh                     # macOS / Linux 启动脚本
├── window_run.bat                 # Windows 启动脚本
├── 训练手册.md                     # 模型训练手册
└── 项目说明.md                     # 本文件

技术栈

类别技术
后端框架Python 3.12 + Flask 3.0
数据库SQLite 3
前端HTML5 + Bootstrap 5.3 + ECharts 5.5
机器学习scikit-learn 1.5(随机森林 / 梯度提升分类)
数据处理pandas 2.2 + numpy 1.26
模型持久化joblib 1.4
密码安全Werkzeug pbkdf2:sha256

运行环境

项目要求
Python 版本3.12
操作系统Windows / macOS / Linux
内存建议 2GB 以上
磁盘空间约 300MB(含 Python 依赖和数据库)
浏览器Chrome / Firefox / Safari / Edge 现代版本

账号信息

角色用户名密码
管理员adminadmin123
教师teacher01teacher123

管理员可访问用户管理、数据导入、操作日志页面。注册新账号默认为教师角色。

获取完整源码

技术分类

包含内容

完整源码
项目说明文档
演示材料

适合方向

适合计算机、教育技术毕业设计中 Python Flask、UCI 学业数据、规则+ML 融合预警与教师工作台方向;葡萄牙中学数据集可替换为本地化说明。

关于 AI源码

AI源码 整理计算机毕业设计、课程设计向的可运行项目参考,含说明文档与演示材料。完整源码请通过联系方式沟通获取。

QQ: 861077046
邮箱: 861077046@qq.com
已帮助 67+ 位同学完成选题参考
问能不能做我的题目

相关推荐

查看全部 →
虚假新闻检测系统
高级

虚假新闻检测系统

基于 ConceptNN 概念神经网络的虚假新闻检测 FastAPI 服务,支持文本 Sentence-Transformer 与图像 ResNet18 双模态特征及增量学习,可对接 Java 后端实时预测,适合 NLP+CV 毕业设计。

PythonHTMLSQLite
4.854
微博热点数据分析与可视化系统
高级

微博热点数据分析与可视化系统

Flask 微博热搜分析平台:自动爬取热搜与评论、jieba 分词清洗、SnowNLP 情感分类,ECharts 热度排行/情感饼图/词云可视化,SQLite 存储与角色权限,适合 Python 数据分析毕业设计。

PythonHTMLSQLite
4.873
基于 Python 的短视频用户行为分析系统
高级·新上架

基于 Python 的短视频用户行为分析系统

基于 KuaiRec/KuaiRand 数据集的短视频分析平台:行为漏斗、推荐偏差、KMeans 聚类、TF-IDF/t-SNE、LightGCN 图推荐与 A/B 实验,Flask 仪表盘一键重训,适合推荐系统大数据毕业设计。

PythonHTMLSQLite
4.875
城市交通流量预测与拥堵成因分析系统
高级

城市交通流量预测与拥堵成因分析系统

城市交通拥堵 monorepo:data-pipeline 多源时空特征、STGNN Proxy 流量预测、归因分析与 Leaflet 地图可视化,FastAPI 加载离线产物,适合交通大数据与计算机设计毕业设计。

PythonHTMLSQLite
4.820
电商用户行为漏斗与CRO转化率优化分析
高级·新上架

电商用户行为漏斗与CRO转化率优化分析

电商漏斗 CRO 分析平台:页面/事件双漏斗、渠道设备多维诊断、PIE 优先级矩阵、卡方检验与 XGBoost 购买预测,Flask+ECharts 仪表板,支持 Retailrocket 真实数据,适合电商数据分析毕业设计。

PythonHTMLSQLite
4.866
基于 Python 的汽车市场数据分析与可视化平台
高级·新上架

基于 Python 的汽车市场数据分析与可视化平台

Flask 汽车市场分析平台:整合 Cars24/UCI Automobile 等多源真实数据集(统一 CNY),含多维分析、随机森林二手车价格预测、品牌对比与销量统计,适合 Python 数据分析毕业设计。

PythonHTMLSQLite
4.894