AI源码
AI源码AI 精选 · 优质源码 · 助力学习

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

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

评分:4.8/5.0
销量:67
发布:2026/6/8
难度:L2 进阶级
💬 联系咨询观看视频介绍
永久使用权限
免费更新维护
技术支持服务

项目封面

截图 1

项目说明

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

项目名称

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

项目简介

本系统基于葡萄牙两所中学真实学业数据(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

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

技术分类

包含内容

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

适用人群

学习参考与二次开发

关于 AI源码

AI源码 专注优质项目源码分享,提供完整源码、详细文档与技术支持,助力源码设计与课程作业。

QQ: 861077046
邮箱: 861077046@qq.com
已服务 67+ 位用户
立即咨询

相关推荐

查看全部 →
城市交通流量预测与拥堵成因分析系统
Python
进阶

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

是一个面向城市交通拥堵分析的 monorepo,覆盖计算机设计课题中的主要能力链路:

PythonHTMLSQLite
4.820
电商用户行为漏斗与CRO转化率优化分析
Python
NEW
进阶

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

电商用户行为漏斗与CRO转化率优化分析(E-Commerce Funnel CRO)是一套面向电商运营的数据分析平台,覆盖从用户访问到最终购买的完整漏斗链路,提供多维诊断、统计检验、PIE 优先级矩阵与 XGBoost 购买预测等能力,帮助运营团队精准定位转化瓶颈并制定优化策略。

PythonHTMLSQLite
4.866
多组学癌症预后预测分析系统
Python
进阶

多组学癌症预后预测分析系统

基于 Flask 的 Web 应用,用于上传 TCGA 风格合并表、做特征与标签概览、Cox 预后风险评分与生存相关可视化。模型在本地训练后以 形式加载,不提供旧版演示数据或假模型兜底。

PythonHTMLSQLite
4.834
基于 Apriori 算法的中药配伍审查系统
Python
NEW
进阶

基于 Apriori 算法的中药配伍审查系统

本系统是一个基于经典 Apriori 关联规则挖掘算法的中药配伍审查平台,使用真实中医药处方数据集(PTM-TKDE2018),实现药材频繁项集挖掘、关联规则生成与配伍禁忌审查。

PythonHTMLSQLite
4.840
基于 Python 的城市共享单车骑行需求时空分析系统
Python
NEW
进阶

基于 Python 的城市共享单车骑行需求时空分析系统

本系统是一个基于 Python Flask 框架的城市共享单车骑行需求时空分析平台,使用 Oslo City Bike(奥斯陆城市自行车)开放数据,提供系统总览、时间维度分析、空间维度分析、站点运营分析、OD 起讫流动分析、骑行需求预测、综合分析报告等功能模块,适用于城市共享单车运营调度与骑行需求研究场景。

PythonHTMLSQLite
4.857
基于 Python 的短视频用户行为分析系统
Python
NEW
进阶

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

基于快手 KuaiRec / KuaiRand 数据集的短视频推荐分析平台,提供用户行为分析、推荐偏差检测、内容运营洞察、图神经网络推荐等完整分析链路。

PythonHTMLSQLite
4.875