唐国明,雷 军,赵 翔,唐九阳,郭得科
(国防科技大学 系统工程学院 信息系统工程重点实验室,湖南 长沙 410073)
数据科学是利用数学、统计学、概率论等工具对数据形式的信息进行收集管理、分析处理以及统计推断的一门应用科学。随着大数据和人工智能时代的到来,数据科学已经成为计算机学科以及众多交叉领域学科的基础,数据科学相关课程(如数据科学导论、机器学习、数据挖掘等)也相继在国内外众多高校开设,如国外的哈佛大学、斯坦福大学、加州大学伯克利分校等,国内的人民大学、南京大学、国防科技大学等[1-2]。
数据科学导论是数据科学系列课程的基础先导课程,对数据科学问题从提出到解决的整个生命周期进行系统性介绍。近年来,数据科学导论课程在各大高校,尤其是北美的多所顶尖高校均有开设。从调研中可以发现,数据科学导论既可以作为大数据工程等专业本科生、研究生的专业基础课程,也可以作为通识课程为其他需要学习数据科学方法和工具的交叉学科专业开设(如医学和生物化学等)。通过该课程的学习,可以使学生掌握利用数据科学工具(如Python)和技术(典型的机器学习和数据挖掘方法)解决大数据工程中具体问题的能力,同时为综合运用其他相关技术研究解决更为复杂的数据处理问题打下理论和实践基础。
意识到数据科学导论在塑造数据科学思维以及培养数据科学家等方面的重要作用,国内高校开始尝试开设数据科学导论课程。国防科技大学于2018年开始增设数据科学系列课程,包括研究生选修课数据科学基础和(针对军事大数据工程专业)本科生专业必修课数据科学导论。笔者有幸参与了数据科学系列课程的建设和教学,一方面为本课题组提供教学参考和指导,作为未来数据科学导论课堂教学的尝试方向;另一方面由于国内外对数据科学导论课堂教学环节的研究还比较少(对于课程内容设置[2]、人才培养模式[3]等在先前工作中已有所探究,但是关于课堂教学设计目前还没有可参考的工作),所以可供开设此(类)课程的高校同行参考借鉴。
(1)学情复杂。在实际教学过程中发现,即使是数据科学相关专业(如计算机科学、数据工程等)的学生,对于数据科学导论预设课程知识掌握情况的差异也非常大,尤其是工具类的知识。比如说,数据科学导论课程对于数据的操作全流程自始至终都要使用Python编程和工具包,通过学情调研发现,有一小部分学生对于Python编程已经掌握得非常熟练,还有一小部分甚至没有接触过Python编程,大部分学生有一些Python编程基础知识,但是达不到熟练运用的程度。
对于非数据科学相关专业(如数理化、生物化学、生命科学等专业)的学生更是如此,其对数据科学导论需要的前期基础知识掌握程度差异更大。比如笔者所在学校面向全校研究生开设的数据科学基础课上,绝大部分学生来自非计算机和数据科学专业(但是其研究需要运用数据科学相关的方法和工具),编程基础普遍薄弱。所以,在充分调研和了解学情的基础上,如何设计一种面向大多数学生的课程内容设置方式显得十分必要。
(2)知识结构繁杂。数据科学导论是一门内容丰富庞杂的课程,仅主要内容模块就涵盖数据获取、数据预处理、数据分析与模型应用以及数据可视化等方面,如图 1所示。其中每一个内容模块又包含若干个子模块和众多知识点。以数据获取为例,包含从文本、数据库、网页、网站API四个源头获取所需的数据内容;使用Python工具包从每个源头获取数据的方法又有多种,有的甚至多达十几种。
如此繁杂的知识结构和内容,对于授课老师自身的知识水平和授课水平是一种考验。照本宣科式地逐点教授会浪费宝贵的课堂时间,是一种十分低效的授课方式;有选择性地挑重点教授则十分考验老师的判断能力和备课水平,尤其是在如此庞杂的内容中甄别哪些是必要的、哪些是可选的,既耗费精力又有遗漏的风险。因此,如何在有限的课堂时间内尽可能多地教授重点、难点知识,同时兼顾老师的精力消耗和授课水平,是数据科学导论课程亟待解决的一个难题。
(3)传统授课方式效果差。传统的授课方式是以老师课堂教授为主,学生课前预习、课后复习为辅。在前期数据科学导论/基础等课程的授课过程中发现,传统授课方式的效果并不理想。问卷调查结果显示,在“本课程还需要改进的地方”和“对本课程不满意的地方”两个问题的回答中,对授课方式直接或间接表达不满的比例占到50%以上。
根据学生的反馈,绝大部分课中时间由老师控制,学生只能被动地接受知识,而对于数据科学导论这种实操内容丰富的课程来说,被动的知识接受方式让学生兴趣大失,动手操作的欲望得不到满足。再考虑到课前预习的主动性不高,课后作业的工作量有限,学生很难做到对课堂知识的理解消化,更难做到熟练掌握。因此,如何提高学生在知识传授过程中的主动性和主体性,使学生做到课前有效地预习、课中充分动手实操、课后加强巩固,是提升数据科学导论课教学成效的关键所在。
云计算自2009年进入教育领域,催生了教育云平台(又称“教育云”)[4]。教育云平台充分利用云计算的优势,以透明的方式为远程用户提供所需要的计算、存储和带宽资源,理论上可以做到资源按需供应而不受时空的限制。依托当前的智能化教育信息管理平台,国内外的高校和企业都在打造属于自己的智慧学习云平台,一方面整合大量的教育资源并永久保存,另一方面将可用资源在受教育者之间(以无偿或有偿的方式)进行分享。这种新的教育资源整合和共享模式极大地推动了教育教学模式的改革和进步,慕课在国内外教育机构的盛行就主要得益于教育云平台的建设和发展。
图1 数据科学导论课程内容模块
(1)课程资源类型和数量丰富,方便学生按需进行知识点的学习。由于数据科学导论课程的内容繁杂,知识点众多,授课老师可以将准备的课程资源尽可能多地上传到云平台,资源的类型也尽可能多地提供,如PPT、视频、音频等,方便学生有针对性和选择性地进行学习。另外,由于课程资源的访问不受时空的限制,云平台可作为课前预习和课后复习的辅助手段。同时,正是由于云平台的使用,才使用像翻转课堂这样的新型教学方式变得可行。
(2)云平台提供的运行环境对学生友好,避免了配置繁琐和硬件差异带来的问题。Python程序语言在数据科学导论中要频繁使用,而繁琐的编程环境配置对于刚开始接触编程的学生来说是一个比较头疼的问题。使用云平台提供的统一编程环境可以很好地解决这个问题,学生无需在自己的笔记本或台式机上进行编程环境配置,可以把更多的时间和精力投入到编程语言的学习上。另外,学生使用电脑的硬件差异也会产生各种奇怪的问题,而云平台的使用再次避免了此类问题的发生,使学生和老师都能更好地专注于本职工作。
(3)后台数据收集和分析功能为授课老师和学生提高教学和学习能力提供了重要的辅助手段。一方面通过精确到秒的学习行为监控,可用进行总体概况分析和内容细节分析,帮助老师全面了解学生的学习效果;另一方面,学生可实时查看课程学习情况和进行学习成效的检测,便于学生随时把握课程进度、明确不足的知识点、激励学生有针对性地学习。
(4)合理使用教育云平台提供的智能服务可大大减轻授课老师的负担。比如,教学资源一般支持跨课程调用,资源库内容也支持多次复用使用,从而避免了授课老师重复准备授课材料;高级的教育云平台可支持学生进行作业互评,既解决了授课老师作业批改量密集、繁重的问题,又能调动学生学习的积极性,培养学生的比较和分析能力。
通过上述4点优势的分析,可以初步判断,使用教育云平台将有效应对数据科学导论教学所面临的学情复杂和知识结构繁杂问题。对于传统授课方式带来的问题,我们将在第4章节中引入翻转课堂这种新型授课方式予以解决。
目前,国内外有很多商业公司提供教育云平台服务,面向的群体和提供的服务类别可能各有差异,但是主要内容和服务大同小异。我们以本教学课题组正在使用的高校邦教育云平台为例进行介绍。北京高校邦科技有限公司(www.gaoxiaobang.com)是慧科集团的下属子公司,专为中国高校打造智慧学习平台,并致力于“重构教学、智慧学习”。凭借对高校教学应用的深刻理解,高校邦为不同类型的高校提供有针对性的平台、服务方案以及一揽子的个性化解决方案。
高校邦下设多个内容制作和供应部门,其中海豚大数据实验室致力于数据科学方面的课程内容建设和教育培训服务。具体地,我们以该实验室提供的“Tensorflow的介绍和应用”一课为例进行介绍。
(1)理论介绍部分:该部分学习内容由授课老师带领学生完成,以理论教授为主,介绍Tensorflow的工作原理、图表构建等内容。通过理论介绍,学生可以了解该知识点背后蕴含的基本原理,即“知其所以然”。
(2)实际操作部分:该部分学习内容主要由学生通过编程练习来掌握,授课老师辅助讲解;以实际操作为主,教会学生如何在Jupyter Notebook中导入Tensorflow模块、创建图表、操作图标等。通过实际操作部分的练习,学生可以基本掌握创建和使用Tensorflow的能力。
在实际教学过程中发现,数据科学导论课程如果仍然以“老师讲、学生听”的这种传统授课方式进行,教学效果将得不到保障。翻转课堂作为一种全新的教学手段,把学生作为课堂教学的主体,强调知识的传授通过信息技术等辅助在课外完成,而将知识内化在课堂中由老师的帮助与同学的协助下完成。目前翻转课堂已被广泛应用于中高等教育中,并在部分学科的教授中取得了明显的成效[5]。我们主要从课前和课中两个环节对课程内容的传授过程进行设计,达到学生在课外完成基本的知识点学习、课内老师辅助学生巩固提高的翻转效果,以此提升数据科学导论的授课效果和学生的学习体验。
课前环节主要包括老师准备素材、在教育云平台发布内容和学生完成课前任务3个步骤。第一步,授课老师准备课程内容的素材,如演示操作过程的小视频、包含重要知识点的PPT、辅助阅读的参考文献等;第二步,授课老师要确保在距离开课前足够长的时间将内容共享到教育云平台上,并明确课前环节中学生需要预习的内容以及对知识点的掌握程度;第三步,由学生在课前独立完成,包括对各个知识点的学习以及对学习效果的自测。
授课老师在此环节中有针对性地出测试题目,然后利用云平台的统计分析功能评估学生的预习效果,判断哪些是需要着重强调的知识点、哪些是学生容易犯错误的地方,为课中环节的实施提供直接的参考和指导。
将课中教学部分分为情景引入、任务实施、知识点分析、拓展实训和疑难解析5个环节,如图 2所示。
(1)情景引入:为提升学生对数据科学导论学习的热情,强化该课程与实际工作的关联性,设定学生为某数据科学公司的实习生,需要在一个学期的实习期内完成数据科学基本技能的培训,并完成培训主管赋予的各项实习任务,根据任务完成情况和考核结果决定是否留任。
(2)任务实施:针对本堂课所设定的教学目标,授课老师将课前精心准备的、具有代表性的训练题目分发给学生(可借助云平台的任务发布功能),这些题目的解决一般需要利用课前预习的一个或多个知识点,需要学生花费一定的时间来完成。在任务实施过程中,授课老师可以适时地为学生提供现场指导,也可以事先将学生分成多人的小组,以小组的形式一边讨论一边完成任务。
(3)知识点分析:当大部分学生或者小组已经完成所发布的任务时,授课老师统一对任务的标准实施方法和可能的其他实施方法进行公布和讲解。学生在这个阶段来审查自己或者小组实施方案的正确性(为自己的方案打分),找出存在的问题并进行记录,为课后复习准备。
(4)拓展实训:授课老师从实际需求中寻找合适的案例,发布给学生们去尝试完成。通常这种实际案例的复杂度高、涉及知识点多,有可能还需要额外的知识才能完成,因此,学生在完成拓展实训题目的过程中可以进一步提升对知识的综合运用能力。
(5)疑难解析:在课堂的间隙和最后,授课老师要及时对学生提出的疑惑和问题进行答复和总结,并将这些问题进行记录,作为课后作业题发布给学生,也可以作为期末考题的候选题目。
(1)教育云平台的采购问题:在高校本科教学成为高等教育重点工作的大环境下,教育云平台的使用和采购将越来越普遍。由此,一般高校均将有充足的教育教学财政预算用于本科(和研究生)教学的投入,对教育云平台的采购也一般不会存在太大的争议。
(2)授课老师对教育云平台使用和培训问题:教育云平台使用非常方便快捷,仅使用浏览器就可以完成基本的操作;对于某些特殊的功能需要,目前的云平台都支持二次开发和定制化服务。某些教育云平台还会组织人员对授课老师进行培训,使得云平台使用的门槛大大降低。
(3)如何提升学生参与翻转课堂的积极性:一个有效的方式是完善考核形式,以测试能力为目标,(选题出题)灵活、(考核方式)多元、(判卷评分)客观为准则;笔试与机试相结合,笔试部分少考甚至不考死记硬背的内容,以考查数据科学思维能力为主;课程设计(大作业)占相当比例,课程设计选题严格把关,对课程报告和评分标准的要求具体明确。
图2 数据科学导论翻转课堂课中模块设计
(4)如何尽可能提升课中环节的质量:选择具有代表性的案例与练习题,如解决过程中包含的知识点要丰富、具有一定的复杂度和难度、处理方法典型且常用的问题,以此提升有限课中时间的利用效率,并培养学生举一反三的能力。
在未来的课堂教学设计中,教育云平台将发挥越来越大的作用,也将大大减轻授课老师的负担、提升学生的学习效率。翻转课堂的引入,使得教育云平台的使用和发挥作用变得更加自然。我们针对数据科学导论课堂教学中存在的学情复杂、知识结构繁杂以及传统教学手段成效不显著等问题,提出基于教育云平台的数据科学导论翻转课堂设计方案,并给出该课程设计方案的具体实施细节,对数据科学系列课程(或类似性质的其他课程)的设计和课堂教学具有一定指导意义。