系统概述
本系统采用B/S架构,以Python为核心开发语言,结合Django框架搭建Web应用,利用MySQL存储数据。核心功能是通过长短期记忆网络(LSTM)分析学生学习行为数据,实现期末成绩的智能化预测。
技术选型
- 开发语言:Python 3.8
- Web框架:Django(MVT模式)
- 数据库:MySQL 5.7 + PyMySQL连接池
- 算法库:TensorFlow/Keras(LSTM模型)
- 可视化工具:Matplotlib + Echarts
核心功能模块
1. 用户管理
管理员可对学生、教师账号进行注册审核、权限分配及操作日志追踪。支持密码重置和会话管理。
2. 数据采集
自动收集课堂表现、作业完成度、学习态度等结构化数据,通过Excel导入或API接口实时同步。
3. 成绩预测
基于历史学习轨迹构建时间序列模型,输出未来成绩趋势及关键影响因素分析。
LSTM模型实现细节
数据预处理
# 缺失值处理与特征编码
data = pd.read_sql(query, connection).dropna()
data['student'] = LabelEncoder().fit_transform(data['student'])
data['subject'] = LabelEncoder().fit_transform(data['subject'])
# 归一化与时间步划分
scaler = MinMaxScaler(feature_range=(0, 1))
scaled_data = scaler.fit_transform(data)
time_step = min(30, len(data)//10)
X, y = create_dataset(scaled_data, time_step)
模型构建
model = Sequential([
LSTM(50, return_sequences=True, input_shape=(time_step, n_features)),
Dropout(0.2),
LSTM(50, return_sequences=False),
Dense(n_features, activation='relu')
])
model.compile(optimizer='adam', loss='mse')
可视化生成
训练完成后自动生成多维度预测曲线图,包含实际值对比、置信区间标注及异常点提示。


