# 基于WEB的学生个性化分析虚拟仿真平台 **Repository Path**: WJZ_DayDay/Pre_Sim_Web ## Basic Information - **Project Name**: 基于WEB的学生个性化分析虚拟仿真平台 - **Description**: 为了改善学生的爱好习惯来提高学生的成绩,本项目基于Django框架下设计一种基于WEB的学生个性化分析虚拟仿真平台。本系统利用机器学习算法模型分析学生爱好与成绩的关联,主要特点:(1)家长能实时看到自己的孩子的成绩和在班级里成绩状态;(2)老师能自由选择适当的算法并设置算法参数实现模型构建;(3)利用动态、交互式的可视化展示模型构建效果;(4)根据学生的行为习惯进行分析与预测并给出个性化的建议 - **Primary Language**: Python - **License**: MulanPSL-2.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 14 - **Forks**: 4 - **Created**: 2022-02-09 - **Last Updated**: 2024-11-26 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 基于WEB的学生个性化分析虚拟仿真平台 ####核心界面 ###模型预测 ![输入图片说明](7.png) ![输入图片说明](8.png) ![输入图片说明](9.png) ###模型构建 ![输入图片说明](10.png) ![输入图片说明](12.png) ![输入图片说明](11.png) ###信息互通 ![输入图片说明](13.png) ![输入图片说明](15.png) ![输入图片说明](14.png) ###数据管理 ![输入图片说明](1.jpg)‘ ![输入图片说明](2.jpg) ![输入图片说明](3.png) ### 数据增删查改 ![输入图片说明](4.png) ![输入图片说明](5.png) ![输入图片说明](6.png) #### 一、介绍 为了改善学生的爱好习惯来提高学生的成绩,本项目基于Django框架下设计一种基于WEB的学生个性化分析与习惯养成系统。本系统利用机器学习算法模型分析学生爱好与成绩的关联,主要特点:(1)家长能实时看到自己的孩子的成绩和在班级里成绩状态;(2)老师能自由选择适当的算法并设置算法参数实现模型构建;(3)利用动态、交互式的可视化展示模型构建效果;(4)根据学生的行为习惯进行分析与预测并给出个性化的建议 #### 软件架构 **软件架构说明** ### 二、项目方案 ### 1. 项目已有的基础 在理论知识方面本项目团队已经进行了多次集中学习,有关Python、Web及Django网络搭建的基础知识已经掌握,在具体实施过程中,本项目团队经过讨论制定了该项目总体计划并确定了系统开发模式,该系统已经进入了开发阶段并且已成雏形,核心算法的选择已经完全确立,但还需要通过计算机进行具体功能的实现和进一步的调优。该项目是以“基于WEB的学生个性化分析与习惯养成系统”命名,后期将会对此进行功能的丰富与完善。 ### 2. 与本项目有关的研究积累和已取得的成绩 (1) 登录注册功能 用户进行账户注册、登录输入一些重要信息,使用传统的PHP、Jquey等技术安全性不高;但是使用Session技术实现登录、注册功能可以很好的保证用户数据安全。Session技术原理:把登录用户信息以文件的形势存放在服务器的硬盘空间上,也可以用Memcache把这种数据放到内存里面;相对于Cookie技术,Session技术的安全性更高,更安全保证用户的隐私信息。 (2) AJAX数据刷新 本项目成员熟悉Ajax技术的原理,可以利用该技术的页面无刷新特点,让用户能有更好的体验;而且Ajax是使用异步通信,不需要打断用户的操作,具有更加迅速的响应能力。在统计用户信息时使用Ajax能使用户在输入自己的信息之后,不需要刷新就能在前端显示出来,给用户极好的体验。 (3) 数据处理与机器学习算法选择 项目的成员对机器学习有充分的了解,能用机器算法进行数据处理、数据分析等操作;并熟悉各种算法的各种参数。在数据处理上利用Filter方法、Wrapper方法、Embedded方法、主成分分析PCA等算法数据进行预处理,筛选出我们所需要的数据。然后使用线性回归、Logistic回归、决策树、朴素贝叶斯、支持向量机等机器学习算法以及算法的参数进行数据拟合、分析、计算精确度。其中Logistic回归方有大突破;Logistic函数主要用于解决二分类问题,但是研究学生成绩分类问题是多分类问题;项目成员发现多种函数能解决多分类的问题;其中Softmax函数是比较常用。该函数能将多值转换为可视为对应类别可信度的概率值,该函数能高准确率预测学生成绩类别。 ### (二) 项目研究目标及主要内容 本项目旨在利用Django框架、机器学习算法等技术构建一套基于WEB的学生爱好与成绩关联度分析系统;主要研究内容如下: ### 1. 研究目标 对学生成绩与爱好的关联分析系统以动态、简洁、清晰的形式将学生的相关情况展示在前端;并可以利用机器学习算法分析学生的特征数据和预测他们的成绩,通过分析的情况反馈合适的建议给用户,帮助学生改正不利于学生学习的行为习惯,提高学生的学习成绩。 ### 2. 主要内容 (1) 用户数据添加 老师、家长和学生可以对用户信息、家庭信息、习惯信息进行更改和添加,他们分别放在不同的数据表里,表格存放的都是学生的一些详细信息,里面用模态框与Jquery语言连接Django实现对MySQL数据库信息的增删查改。并设置了返回信息,提示用户是否操作正确,如果错误也会提示用户。 (2) 构建算法模型 利用Python和Matplotlib混合编程,综合Python强大的兼容性与Matplotlib高效可视化的优点,高效率的拟合出模型。可以向用户展示预测和分类出的模型差异,其中可以选择合适的参数,提高模型的精确度。用户可以直观感受到不同参数对模型预测精度的影响,对学生的成绩与爱好关联度的分析更加全面和有效。 (3) 分析与预测成绩 用户可以根据之前构建的算法与参数对学生的行为习惯预测其成绩,并给出合适的建议给用户,帮助学生提高成绩。 (4) 数据可视化与用户留言 通过大数据可视化技术与Echarts库对学生的近期成绩变化情况展示给用户,利用折线图将某个学生的成绩与班级的平均成绩进行对比,利用柱状图将学生近期的行为习惯信息展示给用户,用户就能清楚的了解自己孩子近期的状态,即以后学生的成绩走向趋势;管理员可以看到班级、学校所有学生的所有信息,并可以调整机器学习算法的各种系数,然后将调整好的算法提供学生使用。当老师发现学生近期行为习惯与往常有差异时,可以通过留言功能给学生家长留言询问学生在家的情况;同时家长也可以向老师发送信息。实现家长、老师能一起促进学生的学习成绩。 ### (三) 项目创新特色概述 1. 针对学生的一些爱好习惯预测学生的成绩,分析这些习惯对学生成绩的影响大小,可以精确反馈学生需要改变哪些习惯来提升自己的成绩。 2. 增加了机器学习模型框架,设置了机器学习参数对数据进行精确预测,当不想要进行设置参数时,可以直接用后台默认参数进行预测。并返回预测结果用户一些合理的建议提高自己的成绩。 3. 构建新的数据模型,可以使用数据参数搭配预测结果,观察数据的变化,数据的预测的精度,提高真实预测时的准确率,以防避免预测准确率太小,错误率太大。 4. 增加家长学生留言功能实现家长与老师的交互性,让他们能更好的交流,一起帮助学生提高成绩。 ### (四) 项目研究技术路线 根据本项目研究内容,相关技术路线描述如下: 1. WEB框架搭建设计 项目的搭建采用的是Django框架技术,搭建一个集用户登录、注册、信息采集、用户数据展示、算法建模平台、可视化等模块。 Django是一个开源的Web应用框架,为了使开发人员专注于关键性问题,Django提供了通用高度抽象的Web开发模式,频繁进行的编程作业的快速解决方法,以及为“如何解决问题”提供了清晰明了的约定,相对于传统的Web框架(Struts、Spring、.NET)其开发过程更加简单,作为一款开源而又敏捷的开发框架,受到人们越来越多的关注。 2. 用户数据采集 数据采集模块,系统通过前段采集用户数据,然后将数据传到后端存储在Mysql数据库;用户也可以将自己准备好的数据以导入的方式实现数据加载。该模块主要通过前后端结合的方式实现,首先前段采集数据传入后端,后端将数据存到数据库中;最后将数据转换为json数据类型通过Ajax方式传到前段展示数据,由用户对数据增删查改。 Ajax 即“Asynchronous Javascript And XML”(异步JavaScript和XML),是指一种创建交互式、快速动态网页应用的网页开发技术,无需重新加载整个网页的情况下,能够更新部分网页的技术。通过在后台与服务器进行少量数据交换,Ajax 可以使网页实现异步更新。意味着可以在不重新加载整个网页的情况下,对网页的某部分进行更新。 3. 机器学习算法建模 算法建模模块是针对不同用户需求,搭建一个可以自由选择机器学习算法和参数,选择一个最优的算法和最优参数配置。首先是数据处处理,利用Filter方法、Wrapper方法、Embedded方法、主成分分析PCA等算法对学生行为习惯数据进行预处理,然后使用线性回归、Logistic回归、决策树、朴素贝叶斯、支持向量机等机器学习算法以及算法的参数进行数据拟合、分析、计算精确度。前段将算法拟合效果用Echarts可视化库用折线图、散点图等图形绘制出来。 ECharts是一个基于Zrender的纯JavaScript数据可视化库,可在PC和移动设备上流畅运行,兼容当前绝大部分浏览器(IE8/9/10/11,Chrome,Firefox 等),底层依赖Canvas类库,可提供生动的、交互性强的以及可个性化定制的可视化图表,ECharts对大批量数据的处理能力较好,借助Canvas的能力,ECharts在散点图中能够轻松展现上万甚至上十万的数据。 4. 成绩预测 成绩预测模块是实现对学生的行为习惯特征预测出未来该学生的成绩。老师可以选择一个或者多个学生的行为习惯特征,然后自由选择其中一种算法预测学生的成绩;通过算法分析的结果,系统对一些学生的坏习惯进行指正,对某些学生好的习惯提出来,帮助老师能个性化的引导每个学生养成好的习惯,提高,每位同学的成绩。 5. 可视化与留言 信息可视化模块将学生的行为特征习惯信息、用户的基本信息等信息在展示在前段,管理员可以增删查改用户的基本信息;方便管理员管理用户信息。使用Echarts可视化库对学生的近期的成绩可视化,老师可以直观的观察每个学生成绩波动趋势。为了方便学生家长与老师再见的交流;该模块增加留言功能,老师看到某位学生的成绩变化比较大,可以通过留言功能输入学生到学号就可以向学生家长咨询学生最近增加的状态;家长同时也可以向老师发送信息。实现家长、老师共同促进学生的成绩。 #### 参与贡献 1. Fork 本仓库 2. 新建 Feat_xxx 分支 3. 提交代码 4. 新建 Pull Request #### 特技 1. 使用 Readme\_XXX.md 来支持不同的语言,例如 Readme\_en.md, Readme\_zh.md 2. Gitee 官方博客 [blog.gitee.com](https://blog.gitee.com) 3. 你可以 [https://gitee.com/explore](https://gitee.com/explore) 这个地址来了解 Gitee 上的优秀开源项目 4. [GVP](https://gitee.com/gvp) 全称是 Gitee 最有价值开源项目,是综合评定出的优秀开源项目 5. Gitee 官方提供的使用手册 [https://gitee.com/help](https://gitee.com/help) 6. Gitee 封面人物是一档用来展示 Gitee 会员风采的栏目 [https://gitee.com/gitee-stars/](https://gitee.com/gitee-stars/)