罗经辉 杜敏成
(广东生态工程职业学院 广东广州 510320)
摘要:基于大数据的小规模限制性在线课程(Small Private Online Course,SPOC)学习评价系统是基于大数据的思维,使用Python+Django框架进行的开发,主要实现线上、线下学习数据的采集,通过数据抽取、数据清洗、数据转换、特征提取、数据加载等一系列的数据预处理手段对数据进行处理,使用Django的“模型-模板-视图”(Model Templates View,MTV)模型进行数据库存取与交互,对学生学习数据进行分析与建模,从而形成包括学习态度、学习方法、学习能力等多维度的学习评价。文章是对学习评价系统的开发分析,包括开发环境和开发技术的分析,从而阐明学习评价系统的开发思路及系统设计成果。
关键词:大数据 学习评价系统 Python+Django框架 多维度学习评价 MTV模型
中图分类号:TP311.52文献标识码:A 文章编号:1672-3791(2023)14-0163-05
Analysis of the Development of SPOC Learning Evaluation
System Based on Big Data
LUO Jinghui DU Mincheng
(Guangdong Eco-Engineering Polytechnic, Guangzhou, Guangdong Province, 510320 China) Abstract:The SPOC learning evaluation system based on big data is a development based on big data thinking and the Python+Django framework. It mainly realizes the collection of online and offline learning data, processes data through a series of data preprocessing methods such as data extraction, data cleaning, data conversion, feature ex‐traction and data loading, and uses Django's MTV model for database access and interaction, Analyze and model students' learning data to form multi-dimensional learning evaluation including learning attitude, learning methods, learning ability, etc. This paper is an analysis of the development of the learning evaluation system, including the analysis of the development environment and development technology, so as to clarify the development ideas and system design results of the learning evaluation system.
Key Words: Big data; Learning evaluation system; Python+Django framework; Multi dimensional learning evalu‐ation; MTV model
基于大数据的小规模限制性在线课程(Small Private Online Course,SPOC)学习评价系统是广东省职业技术教育学会2021—2022年度科研规划项目课题——《基于大数据的混合式学习评价体系》的研究成
果之一。随着线上教学的普及和信息技术应用能力提升工程2.0工作的推广,广东生态工程职业学院教师纷纷采用混合式教学模式,
形成了一批SPOC课程,由于线上、线下学习数据呈现多样性、零散性、复杂性的特点,教师往往难以全面地分析各项数据,总结学生的学习状况。此系统旨在对学生所有的学习数据进行全面
DOI:10.16661/jki.1672-3791.2210-5042-9365
作者简介: 罗经辉(1976—),男,本科,高级讲师,研究方向为软件开发。
杜敏成(1981—),女,本科,高级讲师,研究方向为Web前端开发、人工智能。
收集,包括线上学习平台的数据,线下课堂的考勤、课堂表现、作业等,使用大数据的思维对学习数据进行处理、分析,将真实的学习数据作为样本数据,借助Py‐thon强大的第三方资源包,通过训练得到学习行为与各评价维度之间的关系模型,形成对学生的学习态度、学习方法、学习能力的多维度评价,并通过数据可视化的方法展现数据,为教师教学、学生学习活动的开展提供过程性的评价数据,也为最终的学业评价提供数据依据。此评价系统便于教师收集与整理教学资料,是专业数字化教学管理的平台之一。
1 开发环境分析
1.1 Python在数据分析上的优势
目前正是一个以数据为核心信息新时代,在云计算、大数据、物联网、人工智能等各种新技术的推动下,全球科技与产业都开始“数字化转型”。数字化带来的海量数据为各行各业的发展提供了巨大的推动力,重塑了传统产业的结构和形态,是企业的核心资产,应用大数据是这个时代的必行之路。在教学中,数据也无处不在,这些数据能够帮助教师和学生提升教学、学习效果。例如:可把学生的平时学习
数据进行采集、分析和研究,并实时提供数据参考、结果分析和趋势预测,不仅可用来分析学生的最终学习效果,还可以让教师随时掌握学情,及时调整教学方法和策略,同时也可以让学生了解自己的情况,主动学习。
数据科学与大数据技术是整合计算机科学、统计学等多个学科领域,来抽取、理解和分析数据中所蕴含的知识和信息。采用计算机技术进行数据的采集、处理、存储、分析和应用,最终的目的是通过数据分析从杂乱无章的数据背后,提取有用的信息,总结数据规律,为应用人员的决策提供依据。在学习评价中应用数据分析,从技术层面可以大略分为三类:第一类统计分析类,以基础的统计分析为主,如对比分析法、环比分析法、结构分析法等,通过统计分析,把教学的情况进行实际的呈现;第二类为高级分析类,以建模理论为主,如回归分析法、聚类分析法、时间序列分析法等,通过分析,发现和探讨教与学数据中的关系、内在结构、变化规律;第三类是数据挖掘类,以机器学习、数据仓库等复合技术为主。
学习评价系统开发面临从数据采集、数据集成、数据清洗、数据存储,到数据管理、数据分析、数据挖掘、数据展示等数据处理环节,开发系统时选择采用Py‐thon为工具,在于它是一种面向对象程序设计语言,具有可移植性、可扩展性等特点,更重要的是其免费开源性,使得Python拥有丰富而强大的数据分析库,而这些正是它在数据分析领域备受重用的关键。
1.2 Django架构的分析
学习评价系统的开发的目标,面向对象不仅仅是教师,数据分析也不仅仅是最终期末的成绩,而是希望面向教学中的教师、学生、教学管理人员,使他们在整个学习过程中可以实时去查看分析结果、知悉优势不足和趋势预判,对学习过程出现的问题进行调整。基于系统易用性,学习评价系统的开发采用B/S架构,即浏览器和服务器架构模式,教师、学生等用户工作界面通过WWW浏览器(Browser)来实现,主要事务逻辑在服务器端(Server)实现。
Django是基于Python的重量级开源Web应用框架,采用了类似于MVC的MTV架构,即模型(Model)、模板(Template)和视图(Views)3个部分[1]。
“M”代表模型(Model),即数据存储层,负责业务对象与数据库的映射(ORM)[2]。该层处理与数据相关的事务,负责数据储存在的服务器端基本结构,实现数据库交互,存取、验证有效性、处理数据之间的关系等内容。
“T”代表模板(Template),即模板层(也叫表现层),具体来处理页面的显示。该层处理与表现相关的决定,通过前端页面(html),负责前端的数据与操作的交互操作,并把后端处理的数据在Web前端展现。
“V”代表视图(View),即业务逻辑层,处理具体的业务逻辑。该层负责存取模型Model及调取模板Template的相关逻辑,通过与数据库做沟通增删改查,加工数据并把结果传到前端页面,是模型与模板
之间的桥梁。
图1为Django MTV 设计模式示意图。
在Django框架中,MTV的工作流程中,还需要一个URL分发器,它的作用是将一个个URL的页面请求分发给不同的View处理,View再调用相应的Model和Template,URL路由简单地来说就是根据用户请求的URL链接来判断对应的处理程序,并返回处理结果,也就是URL与Django的视图建立映射关系。当Web服务器端接收到一个用户请求后,通过MTV的设计模式,首先用户请求会到达相应的视图函数,那么视图函数是通过路由系统到相应的访问资源。
1.3 Python+Django的应用
学习评价系统的开发,利用Python在数据分析的优势,特别是利用其丰富的开源库资源,再结合采用Django的MTV框架,实现系统的B/S架构,是开发在线数据分析系统最合适的解决方案。
2 开发技术分析
2.1 数据采集
系统主要基于本专业教师的SPOC课程教学数据的评价。由于前期教师采用信息化教学平台没有统一的
标准[3],数据采集就需要针对用户体多且具有普遍性的数据。以广东生态工程职业学院信息专业教学为例,超星平台是近年来教师用户最多的信息化教学平台,因此线上平台数据主要采集的是来自超星平台的数据。课堂教学数据包括课堂上教师的上课实时练习评价数据、平时的阶段测试、考试成绩数据、课堂表现数据等。这些数据有些是教师课时自行收集,以Excel表数据为主;有些是使用专业内部自主开发的课堂教学平台进行记录,以数据库形式存在。针对这些此专业混合教学模式下产生的数据,主要分3个模块进行采集[4]。
2.1.1 课堂教学数据采集
课堂教学数据采集模块,通过设计考勤登记系统、随堂评价系统,采用Bootstrap开发前端界面,方便教师通过教师利用电脑或手机的网页进行课堂点名、课堂表现、随堂作业评价等资料的录入,教师也可指定助教,协助进行评价数据的收集。未使用平台收集数据的,提供Excel导入接口,将课堂学习数据导入系统。
2.1.2 线上学习平台数据采集
平台数据采集模块,对于各种学习平台,主要采用平台导出的Excel数据表进行上传收集,而对于学习通平台,在教师授权提供密码及账号的基础,可以通过爬
虫技术,自动获取网页数据,实现平台数据的收集。
2.1.3 校内教务系统数据采集
校内教务系统数据采集模块,因为校内教务系统数据库可查询,通过数据库访问相关的学生信息、成绩表、课程信息等数据,进行相关数据采集。
2.2 数据处理
采集的数据主要来源于Excel表和数据库,这些数据中包含着一些干扰数据、不完整的数据,因此还需要进行数据清洗、数据集成、数据规约和数据变换[5]。2.2.1 数据清洗
由于评价数据的来源规范性不足,主要是Excel 表和数据库的抽取数据,存在大量记录过程不完整、重复,甚至是错误的数据。针对这些情况,通过“ORM+Pandas”进行初步数据处理。Pandas是基于NumPy的一种开源数据处理工具,纳入了大量库和一些标准的数据模型,提供了高效操作大型数据集所需的工具。使用Pandas可以很轻松地进行数据清洗,删除掉不需要的字段、完善或删除缺失值、处理重复数据、统一数据格式等,最终实现完整数据的转换。
2.2.2 数据集成
由于数据来自不同的源,因此要解决如何将两个不同的字段名指向同一实体的问题,这里采用数据库中的元数据(关于数据的数据)来解决,避免模式集成时产生错误。同时,也要处理数据值的冲突,如出
现大量空值的列的数据,当该列中空值所占比例大于70%时,
认为该列评价数据无效,做删除处理;对于不符合数据格式的数据,进行正确格式的转换。
2.2.3 数据规约
为了提高学习分析效率,对原有的数据集采用维度规约、维度变换、数值规约等方法进行规约处理,减图1 Django MTV设计模式
小数据集规模。如超星学习平台中的任务完成数、任务点完成百分比、任务点完成时间等数据存一定的冗余,可以通过维度变换原则,将现有数据降低到更小的维度,在保证数据信息完整性的前提下,构造新的数据,提高建模的效率。
2.2.4 数据变换
数据变换主要是对数据进行规范化处理,不同评价方式的量纲不同,数值间的差别会比较大,因此需要对数据按照一定的比例进行缩放,使之投射到一个特定的范围。系统中采用Min-Max规格化方法,将成绩映射到[0,1]区间,再进行百分制的转换。
2.3 数据存储
在数据存储上采用MySQL数据库系统,相对其他数据库,MySQL成本低,是开源的数据库系统,在授权方面是首选。MySQL体积小、速度快、移植性强、可以支持大型的数据库、多线程,是实用性强的数据库,在学习评价系统中,是最合适的数据存储系统。
Django的对象关系映射(Object Relational Map‐ping,ORM)框架为系统开发提供了强大的支持,通过ORM实现使用操作对象的方式来操作数据库中的数据,在ORM中,类对应着数据库的表,对象对应数据库的数据行,属性对应数据库的字段,使数据操作变成了通过Python面向对象的操作,ORM框架会根据对接的数据库引擎,翻译成对应的SQL语句,支持单表、多表和聚合查询。使用ORM框架减轻了开发人员的压力,为以后因使用环境的变更,为数据库迁移提供支持。
采用Django框架进行学习评价系统开发,首先通过settings进行数据库的配置,在_init_.py中配置使用pymysql,然后使用Model在Models.py注册App,并通过
定义类来与数据库中的数据进行映射。最后在系统开发中,使用ORM的增删改查语句,很容易实现跨数据库平台的数据操控。
2.4 数据分析
在评价模型中使用了sklearn库进行主成分分析(Principal Component Analysis,PCA)特征提取,从学习数据中发现学生有价值的信息,形成学习态度、学习方法、学习能力以及学习效果等多维度的学习评价。
在技术上采用基于Python的TensorFlow平台建立多层全连接神经网络模型。在为学习评价系统建立神经网络评价模型中,包含输入层、隐藏层和输出层3个部分。输入层把学生的一串相互联系的特征数据组织成一个向量,根据评价的方向,确定多个向量节点作为输入层。隐藏层是描述神经网络模型结构中最重要的部分,通过设计多个隐藏层,每一层中有神经元节点,接收到输入层传来的数据,通过神经元节点的运算,得到结果,向下一层传输数据。在多层全连接神经网络中,隐藏层的各个节点与上一层的每个节间都有连线,使用矩阵乘法实现隐藏层的全连接层形式。输出层是神经网络模型的最后一层,是结果层。在数据模型形成过程中,还需要准备训练数据,从前期实践中的一些文件中载入训练数据,编写完整的训练代码,使用均方误差作为计算误差的方法,对模型进行训练,最终完成评价模型的建立[6]
。
2.5 数据可视化
学习评价最终目的是为教师的教学、学生的学习提供数据支撑,学生评价数据生成后,评价结果以数据
和图表方式展示。Echarts是一个开源的纯JS的数据图2 学习记录及效果预测
(下转第203页)
Analysis for the Research on River Water Quality Assess-ment and Simulation During 2000-2014[J].
Scientometrics,2016,108(3):1333-1346.
删除评价[14]VANGA S K,SINGH A,HARISH VAGADIA B,et al.
Global Food Allergy Research Trend:A Bibliometric Analysis[J].Scientometrics,2015,105(1):203-213. [15]LAWSON J,KOSTREWSKL B,OPPENHEIM C.A Bib‐
liometric Study on a New Subject Field-energy Analysis [J].Scien-tometrics,1980,2(3):227-237.
[16]陈悦,陈超美,刘则渊,等.CiteSpace知识图谱的方法
论功能[J].科学学研究,2015,33(2):242-253.
[17]魏丽惠.探讨大数据下的科研思路[J].中国实用妇
科与产科杂志,2018,34(1):14-17.
[18]邱均平,杨思洛,宋艳辉.知识交流研究现状可视化
分析[J].中国图书馆学报,2012,38(2):78-89.[19]程慧荣,张晓阳,孙坦,等.基于Web of Science的本体
研究论文定量分析[J].现代图书情报技术,2006(11): 46-50.[20]刘婧.文献作者分布规律研究:对近十五年来国内
洛特卡定律、普赖斯定律研究成果综述[J].情报科学,2004(1):123-128.
[21]王麒,曾宪楠,冯延江,等.基于Web of Science秸秆还
田研究态势分析[J].农机化研究,2020,42(5):263-268.
[22]李成,赵军.基于Web of Science的旅游管理研究信
息可视化分析[J].旅游学刊,2014,29(4):104-113. [23]胡小勇,李丽娟.我国教育技术领域研究动态的可
视化分析[J].现代教育技术,2013,23(9):17-20,28. [24]龚俊杰,张渊,陈家瑞.基于CitespaceIII的岩石热破
裂知识图谱可视化分析[J].黑龙江工业学院学报(综合版),2018,18(3):69-73.
[25]马爱华,吴晓晴.基于CiteSpace的HPV疫苗相关文
献科学知识图谱可视化分析[J].国际生殖健康/计划生育杂志,2018,37(6):474-478.
[26]高云峰,徐友宁,祝雅轩,等.矿山生态环境修复研究热
点与前沿分析:基于VOSviewer和CiteSpace的大数据可视化研究[J].地质通报,2018,37(12):2144-2153.
可视化库,而Pyecharts是Echarts的Python封装版本,因此在学习评价系统中引入Pyecharts来进行评价图表的输出。在Template的html模板中,准备文档对象型(Document Object Model,DOM)相关代码渲染这个元素,在View中,利用Pyecharts将数据生成图表对象json 格式的全局options,前端JS部分用AJAX通信获取后端json,并刷新图表元素呈现可视化结果。图2为某位学生的学习记录及学习效果预测展示。
3 结语
基于Django的学习评价系统开发,实现了线下、线上课堂数据的采集、异构数据的整合与存储、数据的清洗、分析和展示等功能,达到了预期的目的,可以有效分析SPOC混合式教学中学生的学习数据,形成合理的过程性评价,为教师教学、学生学习提供参考性数据。此系统的应用有利于教师和学生及时了解学习情况,对学生学习有一定的督促效果,在一定程度上提高了学生学习的积极性,形成主动学习的意愿;同时也大大减少教师的重复性工作量,提高评价效率。由于本系统主要基于本专业混合式教学情
况进行开发,系统存在一定的局限性,对于跨专业、跨平台的学习评价不太适用,因此评价系统的通用性还有待进一步完善。
参考文献
[1]白相辰.基于Django框架的Web在线教育平台的设
计与实现[D].北京:北京交通大学,2020.
[2]贺宗平,贺曦冉,秦新国.一种Python ORM框架性能测
试分析方法研究[J].现代信息科技,2021,5(6):83-86.
[3]李伟.大数据在高校信息化管理中的运用探讨[J].
办公自动化,2022,27(17):165-169.
[4]胡庆春,蔡建华.基于SPOC的混合式学习评价指标
体系的构建[J].计算机教育,2020(2):37-40.
[5]熊萌之.利用大数据技术提升高校课下管理精准度
研究[J].邢台学院学报,2022,37(3):165-169.
[6]王攀杰,郭绍忠,侯明,等.激活函数的对比测试与分
析[J].信息工程大学学报,2021,22(5):551-557.
(上接第166页)
发布评论