王振华 徐新黎 孙磊
摘 要:针对目前“人工智能导论”课程知识点关联不够、授课内容与实际产业脱节较大、学生学习积极性较低等问题,以实际工业需求为背景,以人工智能技术发展研究态势为主线,分析课程模块之间的逻辑关联和递进关系,提出科研、產业、教育融合引导的“人工智能导论”教学案例设计思想、设计策略与相关案例,并讨论这些案例对培养学生分析与解决实际工程问题能力的积极作用。
关键词:研产教融合;人工智能教学;教学案例;知识体系
中图分类号:G642 文献标识码:A 文章编号:2096-4706(2020)09-0176-04
“Introduction to Artificial Intelligence” Teaching Case Design Guided by
the Integration of Research,Production and Teaching
WANG Zhenhua1,XU Xinli1,SUN Lei2
(1.College of Computer Science and Technology,Zhejiang University of Technology,Hangzhou 310023,China;
2.Kaifeng Xiangfu Liudian Duzhuang Primary School,Kaifeng 475114,China)
Abstract:In view of the problems such as insufficient connection of knowledge points in the course of “Introduction to Artificial Intelligence”,large disconnection between the teaching content and the actual industry,and low learning enthusiasm of students,this paper analyzes the logical connection and progressive relationship between the course modules with the background of the actual industrial demand and the research trend of the development of artificial intelligence technology as the main line. This paper puts forward the teaching case design idea,design strategy and relevant cases of “Introduction to Artificial Intelligence” guided by the integration of scientific research,industry and education,and discusses the positive role of these cases in cultivating studentsability to analyze and solve practical engineering problems.
Keywords:integration of research,industry and teaching;artificial intelligence teaching;teaching case;knowledge architecture
0 引 言
随着智能产业的发展升级与人工智能技术的不断革新,很多高校开设了“人工智能导论”课程,该课程成为本科电子信息相关专业的专业必修课或重要选修课,是支撑本科生培养目标的重要课程之一[1]。目前,我校计算机科学与技术学院、软件学院开设了“人工智能导论”课程,“人工智能导论”是软件工程、计算机科学与技术、网络工程、物联网等专业本科生的一门基础选修课程,也是面向包括人文社科等全校所有专业的公选课之一[1,2]。本课程主要介绍人工智能问题求解的一般性原理和基本思想以及一些前沿内容,为学生提供最基本的人工智能技术和有关问题的入门性知识,为进一步学习和研究人工智能理论与应用奠定基础。因此,建设好“人工智能导论”课程具有广泛需求和重要意义。
1 “人工智能导论”课程概述
人工智能是一门典型的交叉学科,与数学、心理学、神经科学、计算机科学均有紧密的关联[3],而作为一门课程,“人工智能导论”的重要先修课程包括高等数学、线性代数、概率论、数据结构、算法分析和程序设计,其知识点的掌握需要学生具备较强的理论运用分析和编程实践能力。人工智能技术日新月异,迭代更新速度较快,对教师授课内容的深度与广度均提出了较强的挑战[4]。因此,如何在激发学生学习兴趣的同时,逐渐支持学生构建逻辑性强的人工智能知识体系,并逐步提升其分析和解决现实工程问题的能力,是现阶段“人工智能导论”授课时亟待解决的重要问题。
教学案例的选择与设计是“人工智能导论”授课的重要问题之一。受学时、教材和上机实验条件制约,目前教学案例的选取侧重于简单的、孤立的、和实际生产关联较弱的案例[2,5,6],对课程培养目标的支撑程度有待提升。例如,在讲授搜索/状态模型时,采用“五子棋问题”;在讲解遗传算法时,采用“流水车间调度案例”;而在讲授BP神经网络环节,采用数码识别问题。即便是同一模块的不同算法,亦采用多种不同的简单案例进行分析。例如,在搜索模块,讲授深度优先/广度优先搜索时采用“积木问题”“卒子穿阵问题”,而讲授启发式搜索时又采用“八数码问题”。采用这些简单、孤立案例的问题在于不利于对不同模型或算法进行分析对比,导致授课内容宽泛并缺乏深度、学生难以掌握人工智能核心知识体系,甚至阻碍实现“培养学生采用智能的思想、手段和方法分析解决实际复杂工程问题”的培养目标。
针对上述问题,本文提出研究、产业、教学(研产教)相互融合的人工智能教学案例设计思想,并讨论在该思想指引下的教学案例设计策略、途径和方法。所谓研产教融合,即指以实际工业应用场景引导教师提炼关键科学问题、在科研中提出問题解决方案,并在“人工智能导论”教学实践中对科学问题和解决方案进行浓缩、提炼和升华。本文聚焦实际工程问题及其解决方案的提炼与升华的教学方法论,辅以相关案例说明如何设计契合研产教融合思想的教学案例,以期为解决上述“人工智能导论”授课问题提供有效的途径和方法支持,最终提升教学效果并实现课程培养目标。
2 教学案例设计理念
根据上述学情分析,本文提出“人工智能导论”本科授课教学案例设计所遵循的“三个有利于原则”,即有利于串联不同知识模块和构建“人工智能导论”课程知识体系的原则、有利于为学生在人工智能方向就业或深造奠定基础的原则、有利于学生在有限时间内完成学习任务的原则。
2.1 有利于串联不同知识模块和构建“人工智能导论”课程知识体系
目前,人工智能课程涵盖的热门就业方向包括智能推荐、语音识别、机器翻译、基于内容的图片搜索、视频监控、游戏以及各行各业的智能升级改造,而其外延的热点研究方向包括计机器学习、算机视觉、模式识别、计算机听觉、数据挖掘、生物信息学等。因此,人工智能教学案例设计应适度结合与体现智能技术在行业的最新应用,并支持最新研究成果与经典模型、技术和算法的对比分析。
2.2 有利于为学生在人工智能方向就业或深造奠定基础
“人工智能导论”知识包括建模、学习和推理3大模块。其中建模模块主要包括知识表示、人工神经网络2个子模块;学习模块主要包括智能计算、机器学习与深度学习3个子模块;推理模块包含确定性推理、不确定性推理和搜索求解3个子模块。在实际工业应用领域,复杂人工智能系统均涉及此3大模块的研发。其中,建模环节实现从系统输入到输出的抽象表达与映射,学习模块支持以静态或动态的方式获取表达与映射关系的具体模型参数,而推理模块负责利用输入和模型求解对应的结论。例如,在人脸识别系统中,利用深度卷积网络对人脸特征提取问题进行建模,然后利用随机梯度下降算法学习网络模型参数,最后对人脸数据库进行搜索和特征比对获得人脸识别结果(即推理)。在设计教学案例时,应考虑如何有效串联、对比、分析不同知识模块、子模块及算法,帮助学生构建人工智能核心知识体系。
2.3 有利于学生在有限时间内完成学习任务
如上文所述,人工智能知识点繁杂,涉及基础课程较多,学生普遍反映难以熟练掌握。如教学案例过于复杂,必将加剧学生的厌学情绪。因此,在教学案例设计尽量遵循以上2个原则的基础上,应尽可能简化细枝末节的内容及问题复杂度,有利于学生在有限时间内完成学习任务。
3 教学案例设计实践
本节以“人工智能导论”课程中的“搜索”和“机器学习”2大模块为例,说明如何设计符合上述基本原则的教学案例。
3.1 案例设计1:通勤方案规划问题
问题描述:假设有n个街区,编号为1,2,…,n。有两种交通方式:步行和乘坐公交。步行从任意编号为s∈{1,2,…,n}的街区到编号为s+1的街区需要1分钟,乘坐公交从编号为任意s的街区到编号为2s的街区需要2分钟。请选择一种交通方案,使从编号为1的街区到编号为n的街区花费的总体通勤时间最短。
该案例的相关实际应用包括智能作业调度、机器人路径规划、智能游戏、机器翻译等,对该案例进行适当扩展,将为学生在这些领域的就业或科研奠定重要的理论和实践基础。
通过上述描述可以看出,该问题并不复杂。然而,该案例能够串联人工智能搜索模块多种主要算法,包括回溯算法、动态规划算法、一致代价搜索、A*搜寻算法,如图1所示。由于该问题十分简洁,教师在授课过程中较容易采用现场编程的方式对该问题进行建模(采用Python编程仅需要约20行代码),且创建的“通勤方案规划问题”类可为现场编程演示搜索算法复用。教师可以增加街区的个数n,则问题的复杂度也随之增加,方便对比不同搜索算法的时间复杂度和空间复杂度,使学生在教学现场即能较深入的理解搜索问题和相关算法,快速构建人工智能搜索经典搜索算法知识体系。
除了“搜索”模块,该案例能够支撑构建搜索算法和机器学习算法之间的桥梁。例如,通过改变n的大小产生一组通勤方案规划问题作为训练集,并通过动态规划搜索算法获得所有问题的最优解,作为训练数据对应的真实输出。基于该合成数据集,采用机器学习算法,如结构化感知学习动作集的代价和真实代价进行对比即可发现相关规律,进而强化学生对搜索模块和机器学习模块之间关联的理解和人工智能知识体系构建。
3.2 案例设计2:家庭成员关系推断问题
问题描述:已知5位家庭成员之间的关系如图2所示,其中每个节点表示一个成员,由一条实线有向边表示所系两人之间的关系,例如“黄蓉是郭襄的母亲”。根据已知关系(实线边)推断“郭靖”和“郭襄”之间的关系(虚线边表示关系未知)。
该案例用于知识图谱学习和推理内容的讲授,其设计思路是基于仅含5个节点的关系网络,串联起知识图谱构建和扩展问题中的建模模块、学习模块和推理模块。尽管该案例所含问题比较简单,但通过对该问题的讲解和演示,能使学生深刻理解知识表示、机器学习和推理之间的关联,亦能通过应用所学知识解决新问题的模式,提升学生分析问题的能力和动手实践水平。另一方面,当前人工智能的重要发展趋势之一是通过知识与数据的融合实现智能系统性能的显著提升。该案例结合了基于数据的机器学习模型与知识图谱模型,反映了当前智能技术发展的前沿方向,能够为学生未来在此方面的研究与开发奠定基础。
3.3 案例设计3:手写数字识别问题
问题描述:识别二值图像(大小为32×32)中的手写数字,以MNIST数据集为例,输出识别正确率和模糊矩阵。
该案例为典型的计算机视觉图像分类问题,为教授机器学习模块而设计,涉及的知识点主要包括线性分类器、支持向量机、全连接神经网络、卷积神经网络等重要机器学习算法。和传统机器学习教学案例(如判别字符串是否包含人名、垃圾邮件识别、癌症判别等)相比,该案例更符合本文第2部分所提的3条原则,主要原因如下:
(1)该案例适合讲授图3所示的重要机器学习算法,而上述传统教学案例不适合卷积神经网络的讲授和应用,因此手写数字识别案例对构建完整的机器学习知识体系支撑度更高。如果未在前期备课中通盘考虑教学案例设计对知识体系构建的支持,则在后续教学环节就需要不断引入新的教学案例,存在持续增加授课和学习难度的风险;
(2)计算机视觉是当前人工智能研究的热点,手写数字识别是计算机视觉中的重要问题之一,在图像识别领域有着广阔的应用前景。学生学习该案例后,容易举一反三,把模式识别的基本思想、方法和手段应用到实际生产問题,为他们未来深造与就业奠定坚实的理论和方法基础;
(3)通过比对、分析不同机器学习算法在手写数字识别问题上的性能,能够提升学生对算法的认知和理解,并培养其分析、解决复杂问题的能力。
4 教学效果分析
4.1 基于课内实验的教学效果分析
课程共包含4次课内实验,共8学时。这些实验均和课内教学案例共享核心知识点,但实验所设问题的难度稍高于对应的教学案例。例如,A*搜寻算法相关实验是对3.1部分通勤方案规划问题的纵深拓展,在基本通勤问题的基础上增加约束条件,要求访问奇数车站的个数不少于偶数车站的个数,重点锻炼、考查学生运用松弛策略设计求解问题的合适状态和估价函数,进而培养他们应用人工智能方法解决复杂工程问题的能力。通过批改学生提交的源码和运行结果截图发现,大部分学生在教学案例代码的基础上进行拓展,能够设计合适的状态结构和估价函数并编程实现,进而计算获得正确答案。相当一部分有余力的学生实现了额外的功能,如比较A*搜寻算法和一致代价搜索在该问题上的求解速度、对比多种估价函数、开发一个简单的在线搜索演示平台等,而这种现象在未采用“研产教融合引导的人工智能教学案例设计”教学方法之前比较少见。
4.2 基于自主实验的教学效果分析
为检验学生运用所学知识解决复杂工程问题的能力,课程设置自主实验环节,共占4学时,用于验收学生实验成果。为培养学生团队协作能力,所有学生按照自由结合的方式分成小组,每组2~3人。在选题方面,教师基于对所了解的研发热点问题推荐20个题目,如“车牌检测与识别”“手语识别”“课堂行为识别”“人像抠图”“花卉识别”“鸟类识别”等。在复杂度和教师推荐题目相近的前提下,学生也可以自拟感兴趣题目。
通过实验验收环节发现,大部分组能够按时在公开数据集上完成实验,并恰当回答教师在实验验收环节所提问题。尽管学生求解问题所采用的算法参考了相关经典工作,大部分组仍通过超参数优化、数据增广和特征融合等常用技巧实现了系统性能的稳步提升。少数组对所选课题进行了较深入的研究,在教师的引导下,通过对经典模型和算法进行改进实现了识别性能的较大幅度提升。例如,为识别课堂行为,一组学生基于共享特征的思想提出了端到端的统一人体检测和感兴趣行为分类网络,其主要训练数据在开封市祥符区刘店乡杜庄小学采集,采用小批次数据和随机梯度下降训练所提网络模型,实现了快速、准确的课堂行为识别性能,并在此基础上开发了一款课堂教学评价软件。
5 结 论
本文主要讨论了人工智能本科课程教学案例设计的原则和相关方法。这些原则主要围绕促进人工智能研究、产业、教学的深度融合而提出,最终目的是实现学生利用人工智能原理、手段和算法解决复杂工程问题能力的全面提升。作为实现研产教融合的重要途径,教学案例设计应有利于串联不同知识模块和构建“人工智能导论”课程知识体系,有利于为学生在人工智能方向就业或深造奠定基础,并有利于学生在有限时间内完成学习任务。我们认为,遵循“三个有利于原则”的教学案例将为提升教师授课质量提供重要支撑。
参考文献:
[1] 徐新黎,王万良,杨旭华.“人工智能导论”课程的教学与实践改革探索 [J].计算机教育,2009(11):129-132+126.
[2] 徐新黎,胡磊,王万良,等.智能搜索算法在线教学实验平台的设计与实现 [J].实验技术与管理,2012,29(5):112-117.
[3] 王国胤,刘群,夏英,等.大数据与智能化领域新工科创新人才培养模式探索 [J].中国大学教学,2019(4):28-33.
[4] 嵩天.人工智能领域产教融合的边界分析 [J].中国大学教学,2018(7):31-35.
[5] 周婧,王晓楠.人工智能时代信息技术教学模式探究 [J].计算机教育,2017(12):109-112.
[6] 栾晓,于洪.智能游戏开发与设计课程教学方法探索 [J].计算机教育,2016(10):42-44.
作者简介:王振华(1984—),男,汉族,河南开封人,讲师,博士,研究方向:人工智能、深度学习。