基于新型对分课堂的人工智能入门课程建设

作者: 胡泽 杨宏宇

基于新型对分课堂的人工智能入门课程建设0

[摘 要] 针对2020级至2022级信息安全专业学生,由于受到突发公共卫生事件的影响而只能进行在线学习,进而造成编程基础普遍薄弱的现状,以及当前培养方案中缺乏专门面向信息安全专业学生开设的人工智能相关课程的不足,提出了基于新型对分课堂的信息安全专业人工智能入门课程建设方案,以有机融合对分课堂、“四个课堂”、微课教学、思政教学以及线上线下混合多种教学模式为路径,介绍了具体课程建设过程并说明了建设效果。

[关键词] 对分课堂;人工智能;高等教育;教学改革;课程建设

[基金项目] 2022年度国家自然科学基金委员会青年科学基金项目“在线问诊服务回答质量多源语义特征融合评价与智能预测方法研究”(62201576);2023年度中国民航大学国家自然科学基金配套基金项目“在线问诊服务回答质量监测关键问题研究”(3122023PT10);2022年度中国民航大学中央高校基本科研业务费项目“民航旅客突发疾病应急在线问诊服务回答质量自动评价方法研究”(3122022050)

[作者简介] 胡 泽(1989—),男,山西临汾人,博士,中国民航大学安全科学与工程学院讲师,主要从事自然语言处理与人工智能研究;杨宏宇(1969—),男,吉林长春人,博士,中国民航大学安全科学与工程学院教授(通信作者),主要从事网络与系统安全研究。

[中图分类号] G642.0 [文献标识码] A [文章编号] 1674-9324(2024)28-0138-06 [收稿日期] 2024-02-07

引言

传统的线下授课方式在疫情防控期间受到了巨大冲击,期间几乎所有线上授课可行的课程都转变为了网课,然而网课更适用于纯理论性课程,对于程序设计这类强实践性课程效果欠佳,这是因为程序设计这类强实践性课程对于大部分熟悉中学阶段理论课程教学方式的大一新生来讲,属于一种非常陌生、难以适应的新型课程。东部和中西部教育水平的差异也导致大一新生的计算机操作水平差异过大,程序设计类课程需要教师在授课过程中,能够实时观察学生的表情和课堂氛围,及时判断学生的接受状态,并根据这些情绪反馈信息,动态调整授课节奏,优化授课内容。而这些要求是网课无法满足的,从而导致一些2020级至2022级的大一新生未能打好编程基础,对他们后续课程的学习造成了巨大困扰,特别是强实践性的大型课程设计以及毕业设计。

同时,由文献[1]可知,以中国民航大学为例,信息安全专业2020版培养方案缺乏专门针对信息安全专业学生开设的人工智能相关课程,而具备运用人工智能算法解决实际信息安全问题的应用能力,在当前人工智能火热的年代无疑对提升信息安全专业毕业生的就业和升学竞争力具有十分重要的作用。因此,尽快打造一门统筹考虑编程水平提升、人工智能应用以及信息安全问题建模的入门级专业选修课供学生选修变得至关重要。结合学生的迫切需求以及实际教学经验,可以将对分课堂教学模式融入新建课程的具体教学过程中,并围绕课程强实践性的特性,引入“四个课堂”、微课教学、思政教学以及线上线下混合教学模式进行多教学模式融合,以期取得“独木难支,众擎易举”的课程建设成效。

一、课程建设路径分析

为了有效提升信息安全专业2020级至2022级学生的编程水平,培养他们运用人工智能算法解决实际信息安全问题的应用能力,从课程内容建设和教学模式建设两方面进行了探索。

(一)课程内容

为了解决2020级至2022级学生编程基础普遍薄弱,以及当前培养方案中缺乏专门针对信息安全专业学生开设的人工智能相关课程的问题,课程内容建设须要从编程水平提升、人工智能应用以及信息安全问题建模三方面入手,同时考虑到课程的入门性质和选修性质,课程内容应以偏应用为主,不宜引入过多数学方面的理论推导内容。

1.编程水平提升。经过分析信息安全专业2020版培养方案,发现大一年级用于培养学生编程能力的课程主要为“程序设计与编码安全”“面向对象程序设计”,而这两门课所采用的编程语言分别为C和C++,这两种编程语言属于经典的重语法的程序设计语言,具有函数指针以及指针函数等复杂概念,对新手极不友好,而网课则进一步加大了学生的学习难度,导致学生的编程基础普遍薄弱。因而,要想快速提升学生的编程水平,就须要选择一种可以短平快掌握的轻语法编程语言,让学生从复杂的语法细节中解放出来,把主要精力放在更有价值的问题求解上,而这种编程语言就是Python。Python语言作为当前火热的人工智能方向的基础编程语言,具有代码易读易懂、编写效率高、侧重问题求解以及开源等诸多优点,有望彻底改变初学者学习编程语言时“心有余而力不足”的状况[2]。

2.人工智能应用。考虑到本课程的入门性质和选修性质,主要培养学生对人工智能算法的基础应用能力,不过多关注理论研究。因而,授课内容主要包含机器学习的基本概念、一般开发流程以及基于Python语言的开源机器学习包Scikit-learn在信息安全方向的实战应用。Scikit-learn包含分类、回归、降维以及聚类四大类机器学习算法,同时还包括数据预处理、特征选择、模型验证以及模型性能评估等模块[3]。对于人工智能初学者来讲,使用Scikit-learn通常只需要两个步骤便可以建立用于解决实际问题的机器学习模型。(1)鉴别实际问题所属类型,是分类问题?还是回归问题?还是降维问题?抑或是聚类问题?(2)确定实际问题类型后,从Scikit-learn中调用对应问题类型的具体机器学习算法进行建模[3]。

3.信息安全问题建模。信息安全是一个很大的概念,涵盖了网络安全、物理安全等诸多方面[4]。受限于有限的学时以及学生在信息安全专业2020版培养方案中前续课程“网络攻击与防御”和“互联网应用服务开发与数据库实践”奠定的基础,本课程选择网络安全的子集Web安全作为授课内容,以便于学生更好地理解问题属性,构建或者筛选合理的数据集,选择恰当的人工智能算法进行Web安全问题建模。

(二)教学模式

由于本课程属于强实践性的程序设计类课程,单一的教学模式已经无法满足实际的教学需求,因而须要同时融合多种教学模式的优点,以实现课程教学质量的提升,即以对分课堂为主线,有机融入“四个课堂”、微课教学、思政教学以及线上线下混合多种教学模式。

1.对分课堂。对分课堂教学模式非常适合基于Python语言的程序设计类课程教学,主要分为讲授、内化吸收以及隔堂讨论三个环节,其最大的优势便是隔堂讨论给了学生足够的课下时间去内化吸收上一次课所讲授的新知识点[5]。充足的课下时间保证了学生可以在下堂课的集体讨论前得到充分的上机实践机会,培养类似于英语“语感”的“码感”。因而,本课程建设采用对分课堂教学模式作为主线,并在此基础上进一步改进优化,强化实践能力培养。

2.“四个课堂”。“四个课堂”教学模式旨在充分利用学生的课内外、校内外、线上线下的时间和空间,有效提升学生在学习上的主观能动性。其中第一课堂主要指传统的课堂教学,第二课堂主要指校内课外活动,第三课堂主要指校外实践活动,第四课堂主要指外部引入或者教师自创的网络课堂[6]。结合本课程以及对分课堂的特点,选择第一课堂和第四课堂引入课程建设。

3.微课教学。微课是实现线上线下混合教学模式的重要载体,主要指教师结合学生能力水平和实际需求围绕某个知识点、习题或者实验等教学要素所开展的能够有效解决教学过程中重点及难点问题的“短小精悍”的完整教学活动[7]。微课录制不仅要把教师的讲解、理解、情感活动、价值观、教学方法以及教育策略记录下来作为构建第四课堂的线上资源,而且要统筹考虑与第一课堂的有机衔接,使这两个课堂相辅相成、优势互补。微课有效地缓解了学生在传统课堂上所面临的理解和记录负担,学生可以随时暂停、回放或者快进微课视频,完全自主地控制学习节奏,不用再像传统课堂那样忙于做笔记,没有时间停顿反思[8]。因而,本课程建设考虑引入微课教学模式。

4.思政教学。Web安全关系到国家安全,国家安全关系到社会稳定,XSS攻击、SQL注入攻击、DDoS攻击以及僵尸网络等层出不穷的攻击手段对国家政治、军事、经济等都造成了巨大影响[4]。面对指数级增长的攻击日志数据,使用机器学习算法对攻击手段进行建模分析可能是最为契合的解决手段。虽然Web无国界,但是每个Web安全从业者却有自己的祖国,应该具有国家责任感和坚定的国家安全政治立场。因而,在本课程建设中将专业知识与思政元素进行隐性交融是十分自然的,有望实现专业教育与思政教育的协同共赢,切实提高立德树人水准[9]。

5.线上线下混合式教学。线上线下混合教学模式可以让学生由传统课堂的被动学习转变为主动学习,更加深入地参与教学活动中,不仅符合学生的学习规律,而且契合教师的教学规律[10]。其前提是构建用于第四课堂的线上资源,而翻转课堂是其有效的执行方式,可以在对分课堂的隔堂讨论环节发挥巨大的作用,微课又是第四课堂和翻转课堂得以实现的重要载体[11-13]。因而,本课程建设决定引入线上线下混合教学模式。

二、课程建设具体过程

(一)紧密契合学生实际需求的课程内容建设

根据课程建设路径分析小节对课程内容的探索结果,本课程命名为“Web安全中的人工智能应用入门”。课程的地位确定为:信息安全专业的专业选修课程,是信息安全专业唯一一门将Python语言程序设计、人工智能以及Web安全统筹考虑的入门级课程。开设本课程对于培养学生综合运用人工智能算法分析和解决Web安全问题的初步实践能力、提高就业竞争力具有十分重要的作用。

课程的任务确定为:通过本课程的学习和实践,学生应该掌握Python程序设计、人工智能算法以及Web安全的基本概念和基本方法,了解从问题分析到程序设计,再到程序维护整套程序设计流程,具备利用Python语言实现简单人工智能算法并解决实际Web安全问题的开发能力,培养学生的计算思维能力和综合运用知识能力。

课程的教学目标确定为:(1)使学生具备基本的问题分析能力,能够根据具体的Web安全问题,进行需求分析,并完成人工智能应用方案设计。(2)使学生了解人工智能程序设计技术和基本方法,掌握Python的基本语法、基本控制结构等程序设计的基本方法,掌握科学计算库Numpy和机器学习库Scikit-learn的基本用法,能够意识到实践在本课程学习中的重要性。(3)使学生具备一定的软件开发能力,能够熟练运用Python语言实现人工智能应用方案,针对具体的Web安全问题进行分析和编程。(4)培养学生根据具体的Web安全问题设计有效的人工智能实验方案,并且对实验结果进行分析、总结的能力,提升其问题建模与分析能力。具体的教学内容进程安排如表1所示。

(二)以实践为中心的融合教学模式建设

根据课程建设路径分析小节对教学模式的探索结果,本课程按照教学全流程的课前、课中和课后三个阶段,设计了以实践为中心的融合教学模式,如表2所示,旨在引导学生主动了解人工智能在Web安全领域的应用方式及具体实践流程,突出理论与实际相结合,采用启发式教学,培养学生使用人工智能思维分析和解决Web安全问题的能力。

在课前阶段的预习环节,教师可以利用以自建微课为载体的第四课堂线上资源向学生讲解偏理论部分,帮助学生事先了解和熟悉相关新知识点,从而节省课中阶段时间,使得教师在第一课堂的线下讲授环节采用强实践性的边讲边练方式为学生现场编程讲解重点及难点内容,并根据学生对预习环节的反馈信息进行个性化编程指导。

课中阶段的讲授环节作为对分课堂的核心环节,直接决定了课后阶段内化吸收环节和下次课课中阶段隔堂讨论环节的执行效果[5]。而要确保讲授环节的执行质量,就须要确保学生在课前阶段的预习效果,可以从课次2开始采用在课中阶段的隔堂讨论环节随机抽取学生上讲台当众讲授微课特定知识点或者现场编程以微课为基础的编程题目的方式来实现。

经典小说推荐

杂志订阅