基于案例驱动的数据结构课程教学方法研究

2019-04-01 01:33
计算机教育 2019年3期
关键词:数据结构本科生案例

徐 新

(武汉科技大学 计算机科学与技术学院,湖北 武汉 430065)

0 引言

回顾我国改革开放30余年的历史,高等教育的发展取得了很多成就,这得益于教育体制改革。在我国高等教育改革发展的过程中,我们也探索着在教学方法方面进行改革创新。本科生教育既是促进科技创新的主导因素,也是培养高层次人才的主要途径。随着科学技术迅猛发展,创新能力提升不仅决定了个人和单位的竞争优势,同时也能体现国家的核心竞争力。本科生教育的首要重任是加快创新型、实用型人才的培养。据国内文献报道,2015年的资格类科技人力资源中,本科学历3 093.4万人,占38.5%。不论是总量规模方面,还是结构层次方面,科技人力资源都已成为我国继劳动、资本、土地之后最为宝贵、最为丰富的战略资源。我国已成为名副其实的本科生教育大国,但数量增多、规模扩大的同时也给本科生培养质量带来了极大的挑战。当前本科生培养质量已遭到社会的质疑,数量与质量的矛盾日益凸显。

教学方法包含教师完成教学任务所采用的教授方法和学生的学习方法。教学方法得当才能充分实现教学目的,体现教学内容的思想性、科学性和系统性,提高学生获得知识、掌握技能的能力。因此在本科生教学工作中重视对教学方法的研究是高等教育的一项重要工作。数据结构是计算机相关学科最基本的课程,对于相关领域的本科生能否顺利开展课题学习至关重要。随着近年来人工智能技术的发展,数据结构课程已逐渐如同数学、外语一样,其教学内容不再局限于某一专业领域,而主要涉及数据结构在不同应用中的基础性和通用性的概念、技术和应用。课程涉及的技术可以为计算机、信息、机械、材料等多个不同的学科提供辅助。然而由于本科生人数的不断增加,学生个体的差异性等原因都可能会影响到课程教学的效果。

1 数据结构课程的特点

数据结构课程是计算机专业的核心基础课程,是一门理论与实践相结合的课程,在整个计算机专业教学体系中处于举足轻重的地位。数据结构是程序设计(特别是非数值计算的程序设计)的基础,也是设计和实现数据库系统、编译程序、操作系统及其他系统程序和相关大型应用程序的重要基础。基于该门课程的重要性,现在该课程已经是计算机相关专业研究生考试必考专业课之一,是反映学生数据抽象能力、编程能力的重要体现。该课程具有以下两个特点。

1)理论抽象, 内容广泛。

数据结构课程不但思维逻辑性较强,并且内容极为抽象,即使有现代化的教学工具的辅助也无法将课件中的理论知识很直观地全部表现出来。另一方面,数据结构课程内容较为广泛,但课时量少,学生如果没有掌握和完全理解前面的知识点,就会难以跟上新的知识点,造成问题堆积,难以完成实验内容。

2)实践性强,综合能力要求高。

这门课程知识体系的构建源于各种特色专业应用领域。在工业中,特别是在各种生产线上,数据结构的应用非常广泛。只有让本科生经历大量的工程项目设计与实现,才能深切体会各种数据结构的功能及作用;另一方面,数据结构中通过章节划分知识点,内容规模较小、知识针对性强,缺少一些系统性和连贯性,难以培养学生处理复杂知识问题的能力,因此当学生面对具体问题时,很难综合地运用数据结构知识来解决实际问题。

2 基于CBR技术的本科生数据结构课程教学方法

CBR(Case-Based Reasoning, 基于案例的推理)是人工智能领域的重要内容。CBR的主要思想在于“相似问题具有相似解”。近年来,CBR技术已成功应用于计算机辅助诊断[1]、法律咨询、电子商务、产品检索[2]和医疗辅助参考[3-5]等方面。CBR模仿人类的这种问题求解行为,已经在这些领域许多成功的商业软件上得到了证明[6-7]。

2.1 CBR技术对于《数据结构》本科课程教学的适用性

如前所述,CBR是一种机器学习方法,亦是一种求解问题的方法。前者一般多用于构建专家系统(knowledge-based systems,基于知识的系统),后者则通常可以构建数据挖掘系统。那么CBR技术是否能适用于数据结构的本科生课程教学,并相应地能提高教学效果呢?

对于CBR技术的适应性问题,在过去的时间里有许多学者开展了相关研究。1993年,Kolodner的书《Case-Based Reasoning》第一章中提出了这个问题,然而并没有给出定量的方法。1994年,Aamodt和Plaza的经典论文中也没有讨论这个问题,不过它指出了之前对此问题进行探讨的论文,包括Schank的《Inside Case-Baded Reasoning》(1989)的 第 一 章,Slade的(1991)综述《Case-Baded Reasoning: A Research Paradigm》,1992年 Kolodner为 她 1993的 书第一章预发表的《An introduction to case-based reasoning》,以及1989年第一届DARPA的CBR Workshop论文集的介绍部分。

用Dr. Thomas Roth-Berghofer的话来说,“similar problems have similar solutions”(CBR 假设)仅仅是一种启发式方法,由此获得的解决方案并不精确,但是,正是由于容忍了这种缺陷,CBR才发挥了它的作用,并得以构建较为强大的基于知识的系统。因此在实际教学中将CBR技术应用于数据结构的本科生课程时,需要事先对案例库进行评估,验证其是否符合CBR假设,进一步来判断CBR方法的适用性。具体的流程如图1所示。

图1 CBR技术流程图

首先,根据国内外高校的相关本科生课程教学的新形式,把握当前计算机学科数据结构本科生课程教学的现状。深入分析数据结构本科生课程教学过程中,合理的学科、专业结构、本科生个体的特点,以CBR技术为核心驱动力,开展案例描述工作。

然后,以本校本科生数据结构课程教学为例,以现有科研项目设置专业研究方向,重组科研项目集群的研究团队。通过追踪学科科技前沿与宽口径培养相结合,形成新的专业增长点与现有研究方向相结合,统计分析其中最具代表性的本科生培养实例,开展案例选择工作。

最后,结合本校的办学特色,构建适合于本科生数据结构课程教学的奖励机制,促进本科生创新成果的涌现。提出一种切实可行的面向计算机学科、促进创新能力提升的本科生培养方式,开展案例评价工作。

2.2 CBR系统实现

在实际应用中我们采用目前国内外主流的myCBR工具来进行CBR系统的研发(http://mycbr-project.net/index.html)。在传统的课堂教学之外,我们将加强网络教学的多向互动。通过网络上的互动,学生通过课程网站进行自学,可以向同学、老师提出不明白的问题,教师或同学进行个别回答。而对于普遍存在的问题,老师还可以利用网络广播让全班同学进行讨论。这样让每个同学都得到锻炼的同时,也培养了学生的协作学习精神。此外,由于网络课堂的引入,学生在课程网站上向老师请教问题,学生之间也可以通过网站进行探讨。而且由于这些对话的公开性,其他的学生也可以通过查阅这些对话来达到学习的目的。这样同时培养了学生查找和利用网上资源的意识,合作意识以及小组内协作式学习、个人自主学习的能力。随着目前新型网络交流方式(比如微博)的兴起,新的师与生、生与生、人与机的互动关系将成为可能。这种网站教学的多向互动的教学关系将会更加便捷,通过利用网站上教师或同学提供的有关资料,让学生能够随时随地收集资料、分析与总结,有效提高了教学质量。对于讨论过的问题,可以将其搜集起来,作为典型案例(case)并在网站上进行备份,并根据学生今后的提问来进行推理(reasoning)以提供类似的话题查阅。

在进行数据结构的本科生课程教学时,必须更加科学更加有针对性,要充分结合当前最新计算机技术的发展现状和应用场景,根据社会发展的需要,来分析本校学生的整体水平以及学生之间的水平差异,从而构建起适合这门学科的教学模式与教学内容。由于数据结构课程概念较多、操作性较强,同时课时又相对较少,所以可以考虑对现有教学内容进行适当整合,抓住课程的重点难点,进一步删繁就简、深入浅出地介绍最主要的概念。然后通过将这些教学实例输入到开发的CBR系统,能有效帮助老师统计分析当前学生的学习情况,并对后面的教学安排进行调整。更为关键的是,借助于CBR技术强大的学习能力,在为新一届的同学制定培养方案时,可以通过借鉴以往成功经验,CBR系统能为老师提供有效的学生培养实例。老师通过参照案例,能有望更好地制定出针对学生个体的个性化培养方案。

此外,考虑到本科生个体差异较大、外部影响因素多,但培养年限较短,项目实施工程中拟将团队教师的科研项目进行整合,提取其中的关键科学问题作为本科生的课题背景,针对不同的应用来开展培养工作。在将CBR技术应用于本科生培养时,本科生培养案例可以表示为不同特征的非线性组合,案例间的相似度可以根据特征之间的相似度来定义。考虑到案例特征具有高维度和异构性,项目组拟使用深度学习中的ResNet卷积神经网络模型来学习包含高层语义信息的案例特征,进而测度案例特征之间的相似度。

综上所述,CBR引导模式能辅助教师针对性地培养本科生的创新能力,同时帮助教师改进自身的本科生培养方法。具体表现如下:

(1)在培养初期,教师可以借助CBR技术来参考往届学生的类似培养案例,为当前本科生制定培养方案。

(2)培养过程中,教师可以逐步细化本科生的个体特征,将其与以往案例特征进行对比,根据教学反馈改进之前的培养方案。

(3)培养周期结束时,教师可以将该本科生培养案例表示为高维特征的非线性组合,作为经验的一部分保留下来。

(4)教师还可以借助CBR技术检索国内外其他教师的相似本科生培养案例,进一步改进本科生培养方案。

(5)基于特征学习方法分析不同本科生案例间的特征异构性,教师之间可以协同改进本科生培养方案。

3 结语

随着国家的发展,我国高等院校的本科生教育规模有了前所未有的增长和发展,本科生教育已从过去的“精英教育”向着“大众化教育”转变。本科生教育要根据建立创新型国家的需要,构建科学的人才培养体系,明确目标,面向未来、指向社会需要,通过实施知识、能力、素质教育,来提高本科生课堂教学质量,进而培养新一代优秀的创新型人才。

高等院校承担着为国家培养高级人才的任务,而加强素质和能力的培养是提高人才质量的关键。计算机学科的数据结构课堂教学的实施,其教学目标的宗旨就是强调培养实际应用能力及如何结合计算机前沿技术与相关学科并运用于实践。鉴于计算机学科知识更新速度快的特点,在今后的课堂教学中我们必须在过往课堂教学案例的基础上,基于CBR技术不断改进和完善教学方法和教学内容,与时俱进,才能不断地适应新形势下的新要求,持续为国家培养出优秀的高质量的专业人才。

猜你喜欢
数据结构本科生案例
能为与应为:从本科生成绩单看绩点制的功能
One Heath视角下昆明市高年级本科生抗生素认知与行为
数据结构线上线下混合教学模式探讨
案例4 奔跑吧,少年!
TWO VILLAS IN ONE CEDIA 2020案例大赛获奖案例
Bespoke Art Deco Media Room CEDIA 2020案例大赛获奖案例
重典型应用,明结构关系
为什么会有“数据结构”?
“Without Contraries is No Progression”: Contraries in William Blake’s “The Sick Rose”
An Analysis of the Absence of Maternal Care in The Bluest Eye