黄菁彦 谈一帆 熊伟 李沛秦
摘 要:作为电子信息类专业的核心课程之一,人工智能与模式识别课程理论性较强,抽象公式较多,教学存在一定难度。文章以知识点“K-means聚类”的教学为例,探讨以具体案例引导学生开展课程实验,并将课堂教学与课外竞赛相结合,促进相关知识融会贯通并用于实践。该方法在理论授课的基础上,以案例实现和学科竞赛为抓手,培养学生使用所学知识设计技术方案以及解决实际问题的能力。实践证明,该方法可以充分激发学习兴趣,加深学生对理论知识的理解,提升创新实践能力。
关键词:案例式教学;聚类分析;实验设计
中图分类号:G642 文献标志码:A 文章编号:1673-8454(2021)22-0084-04
一、引言
人工智能与模式识别(Artificial Intelligence and Pattern Recognition,AIPR)是计算机科学、控制论、神经生理学、心理学等多个学科互相渗透而发展起来的一门综合性交叉学科。其覆盖领域十分广泛,包括自然语言理解、机器定理证明、自动程序设计、博弈和决策、人工神经网络等。作为理论性和前沿性都很强的学科,人工智能与模式识别在国民经济和国防建设的各技术领域得到广泛研究和应用,已经成为理工科电子信息类专业的核心专业课程之一。该课程涉及计算机技术、信号处理、控制论等专业知识,综合性、交叉性强,教学难度较大。
案例式教学可以从解决实际工程问题的角度帮助学生深入理解内容抽象的算法原理,以及具有难度的编程实现过程[1]。以该课程的“聚类分析”一章为例,聚类是一种非监督学习方法,将数据按照相似性进行重新组合而成为多个类的过程[2]。聚类的定义和计算过程具有系统而严谨的表达方式,其中涉及的相似度测度、线性代数运算等给理解增加了一定的难度,算法代码实现过程也面临着向量运算等困难。该课程教学团队在授课过程中探索了以案例驱动,结合学科竞赛,指导学生设计并实现基于K-means聚类算法解决实际问题的实践教学方法。
二、K-means聚类算法简述
K-means算法是人工智能与模式识别课程中经典的动态聚类算法,其基本思想是在样本空间设置k个初始聚类中心,分别计算样本到k个中心点的距离,根据距离大小划分类别,通过迭代逐次更新聚类中心点,直到类别中心点不再发生变化或者变化范围很小,迭代结束[3]。
1.数学定义
(1)任选k个模式特征矢量作为初始聚类中心:z(0)
1,z(0)
2,…,z(0)
k。
(2)将待聚类的模式特征矢量集{xi}中的模式逐个按最小距离原则划分为k类中的某一类,即:如果d(m)
il =[d(m)
ij ](i=1,2,…,N,j=1,2,…,k)则判定xi∈ω(m+1)
l ,式中:d(m)
ij 表示xi和ω(m)
j 中心z(m)
j 的距离,上角标表示迭代次数。于是产生新的聚类ω(m+1)
j (j=1,2,…,k)。
(3)计算重新聚类后的各类心
zm+1
j =∑xi∈ω(m+1)
j xi(j=1,2,…,k)
式中n(m+1)
j 为ω(m+1)
j 类所含模式的个数。
2.直观表示
K-means聚类通常以欧氏距离为聚类依据,使各模式到其所判属类别中心距离平方之和最小,算法简单且收敛。模式呈现类内团状分布,效果较好,故应用较多。以三维点阵为例,待聚类点和聚类迭代结束后的效果如图1所示。
K-means聚类的算法原理简单清晰,便于直观地从相似性角度理解模式之间的划分。但是其实现过程使用了较多的序号来区分不同的变量,以及同一变量的不同特征;而且对于实际问题中的待聚类数据,通常由多维特征构成,多维的变量组成成分也为特征的数据索引带来困难。上述因素对学生理解和实现算法增加了难度。
三、案例式教学方案
在案例式教学方法中,学生一般应提前掌握课程有关的基本原理和知识,接着由教师根据课程教学目标和能力培養的需要,精心选择和设计合适的案例,设置讨论题目,然后由学生以小组为单位对案例进行研讨,并将研讨结论在班级内进行分享和评价,从而达到培养学生从工程化角度分析问题的能力[4]。在人工智能与模式识别课程教学过程中,教学团队首先引入实践案例开展实验促进学生理解课堂知识,进一步地引导学生应用所学知识参加课外竞赛,实现了“理解知识—创新应用”的升级。
1.以兴趣激发为导向,开展实践教学
在工科面向应用型学科中,学生通常很关注这门学科如何运用到工程中,即在学习原理后希望能够通过实践检验理论知识,进而加深理论理解。该课程与计算机视觉技术紧密相关,视觉图像不仅比公式内容丰富、形式新颖,直观感受的背后也是对定义公式的检验和进一步理解[5]。对学生而言,以图像为目标开展实验,比单纯的理论推导和数据运算更具有吸引力,更能激发兴趣。因此该课程从计算机视觉领域引入工程案例:基于图像数据对人体手势进行识别。该案例通过电脑摄像头获取手势图像,进而进行特征的采集和模式聚类处理,使枯燥的理论变得触手可及,有助于推动学生融入实验,真正理解知识。
该课程使用Matlab作为编程工具开展手势图像聚类实验。基于Matlab平台的OS camera应用程序可以获取实时图像和视频信息;图形用户界面(Graphical User Interface,GUI)是通过图形显示的方式进行计算机操作的用户界面,具有很好的人机交互性、美观性和实用性。设计GUI程序,可以进一步增强程序的可参与度和直观展示效果。通过GUI控件和摄像头连接获取实时图像数据,并送入均值聚类程序进行处理,就可以对手势动作进行聚类。
学生在教师的指导下,设计并实现了GUI程序自动或手动截取摄像头捕获的手势图像进行聚类处理。其中图像分辨率为320×240,可以自行设置聚类的模式数量。GUI界面如图2所示。
获取到图像数据后,即将数据传递给K-means聚类程序进行处理,最后将聚类结果转换为图像矩阵,并标上聚类结果。其中标号相同的图像表示被划分成了同一类。手势图像聚类结果如图3所示。
通过设计并完成“手势识别”这一案例实验,学生不仅复习了课堂所学的理论知识,锻炼了编程开发能力,而且发现要提高聚类的正确率,应该减少背景干扰,并加大手势在图像中的空间占比。该方法具有两方面好处:一方面激励学生主动查找资料,或是专心学习新知识,找到上述问题的理论依据;二是增加了工程实践的经验。
2.以课外竞赛为推力,促进创新实践
传统教学以面授知识为主要手段,但往往互动式、探索式教学模式更能培养学生的综合能力。面向学科竞赛的现实目标,学生有强烈的意愿和刚性的需求来积极学习、主动交流和不断探索。此外竞赛课题的方案设计具有很好的启发性和针对性,以小组为单位成立讨论组有助于培养学生的团结协作能力,因此,学科竞赛非常适合用于开展案例式教学。为了进一步提高学生的创新实践能力,引导本科生提前开展科学研究与工程实践,该课程教学团队以2021年国际大学生数学建模竞赛(MCM/ICM)为契机,指导学生结合竞赛,深入开展教学内容的创新实践。
MCM/ICM是一项具有全球影响力的高水平大学生学术赛事,其题目来自生产和科研中的实际问题,需要综合运用数学知识、计算机技术以及其他相关知识,还需要队员之间密切合作,集体发挥队员的创造性思维能力和分析问题、解决问题的综合能力。竞赛以三人(本科生)为一组,在四天时间内,就指定问题完成从建立模型、求解、验证到论文撰写的全部工作,考察大学生创新能力、实践能力和综合素质。2021年MCM/ICM的大数据类题目提供了众多歌曲十四个类型特征的量化数据,要求利用这些特征数据对歌曲和创作者划分流派,总结概括流派之内的相似性和流派之间的区别。该课程教学团队指导参赛学生设计并实现实验方案,使用K-means聚类,对特征数据进行处理,完成竞赛题目的要求。
原始数据来源于竞赛提供的四个数据集,包含了约43000组艺术家与其追随者的对应关系及其各自的流派归属,和不同艺术家创作的约十万首歌曲的十四种音乐特征量化数据。题目要求根据所提供的音乐特征数据进行流派划分。当前大数据分析相关课程的实验教学大多存在与实践应用脱节的问题,造成学生解决问题能力存在不足等情况[6]。而本题属于MCM/ICM题目中的大数据类型,歌曲数量大,歌曲特征维度多,与政策类题目不同,不适合采用公式推导、逐个分析的方式。可采用均值聚类的自动方法处理大量数据。
根据常识可知,音乐流派是音乐分类的重要依据,不同单曲基于音量、节拍、结点等数据可以表征彼此之间的相似程度。通过因子分析法提取主要影响因子可减小运算量,提高算法性能[7]。
教学团队指导学生根据聚类分析相关知识,随机选取五万首歌曲的特征数据作为聚类样本,剩下的五万首歌曲特征数据用于测试。以因子分析法提取六个音乐特征为样本特征数据。然后按照K-means聚类的步骤,根据题目要求,将模式总数设为20,随机设定初始类心,聚类依据为欧氏距离,最大迭代次数为30,迭代完成后获得了稳定的类心。结果如图4所示。
在测试组的五万首歌曲中,聚类正确率约为87%。此外,通過类间类内距离比值评价聚类效果[8],按照上述聚类方式,类间距离与类内距离比值约为1.24,符合音乐流派划分的实际规则,即流派内有一定的相似度,流派间有一定的区别,至此已经完成了题目的要求。尽管技术指标离该领域的顶级水准还有较大的距离,但作为本科阶段学生,在极短的规定时间内将所学知识应用于竞赛,完成选题、方案设计、编程实现、文档撰写等任务,显然取得了明显的正面意义,进一步深入理解了理论知识,培养了创新思维,锻炼了综合能力。
四、教学效果分析
以案例为载体,各类创新项目、学科竞赛和科学研究为依托的实践教学模式,可以培养学生的创新能力、思维能力、合作能力、科研能力、管理能力和工程意识[9]。
从学习效果角度来看,课堂手势识别实验帮助教学过程从理论公式推导的传统课堂跳出来,以直观便捷的实现形式刺激学习兴趣,改善了人工智能与模式识别课程理论性较强、学生对部分知识点难以理解的问题,生动地解释和检验了理论知识的正确性。学生在教师提供的参考代码基础上进行改进和扩展,通过对实时图像的处理获得了直观感受,同时也提升了参与感和成就感,对课程理论有了更深刻的理解。音乐流派划分实验针对国际大学生数学建模竞赛提出,并实现了技术方案。为了更好地完成比赛并从中学习大数据处理技术,在实验中,学生主动寻求解决办法,解决了编程过程中来自不同数据文件且多维的信息索引难题,使聚类分析能够较好地自动提取和处理信息,研讨并实践了案例式教学理念。
从教学模式角度来看,以K-Means聚类为例的案例驱动并结合竞赛的教学模式,能为学生提供更加多样的能力训练、教育环节及训练方法,促进传统以知识为核心的教育更加注重实践能力培养。对于抽象的理论教学,可以适当降低教学难度,转而以工程应用为目标导向,在实际应用中加强理解。教学对象往往希望可以获得直观感受和直接参与的机会,因此可以主动参与教学、主动讨论理解、主动拓展运用。对核心知识对应的实现源代码进行讲解,使学生能够全面学习数据模型、算法、数据结构等,有利于学生理解和分析知识点抽象理论的具体实现。通过介绍与应用紧密相关的科研项目,以及面向具体需求的工程实践,可以提高学生“提出问题—分析问题—解决问题”的能力。
五、結语
大学生创新能力的培养是全面提高人才培养能力的重要内容。加快实践环节改革,提升学生实践能力的培养是继续深化本科教学改革,全面提高教学质量的重要途径[10]。人工智能与模式识别课程面向前沿热点学科,其理论性、抽象性较强的特点往往给学生的理解和应用造成困难。在课堂教学中,教师如果拘泥于教学内容本身,忽视了学生关注点,会导致学生参与感较低,不利于提高学生学习兴趣和学习效果。在案例式教学中,以创新实验为基础、以竞赛课题为推力的教学模式,是典型的理论与实践相结合过程。该方法在兴趣的推动下,一方面加深学生对课程基本理论的理解,另一方面锻炼学生的逻辑思维、软件开发与项目管理等综合技能,提升了学生的自主创新实践能力。
参考文献:
[1]余萍,韩东升,李然,等.案例式“通信电子电路”模块化实验方案设计与实践[J].实验技术与管理,2019,36(12):174-177.
[2]李珺,刘鹤,朱良宽.基于改进的K-means算法的关联规则数据挖掘研究[J].小型微型计算机系统,2021,42(1):15-19.
[3]曾俊.基于划分的数据挖掘K-means聚类算法分析[J].现代电子技术,2020,43(3):14-17.
[4]彭德巍.人工智能课程实验案例研究与实践[J].大学教育,2021(2):71-74.
[5]孙裕康.计算机视觉与人工智能产业发展[J].数码设计(上),2020,9(7):5-6.
[6]王振武.基于阿里云大数据平台的“数据挖掘”课程实验教学方法探讨[J].实验室研究与探索,2018,37(6):192-196.
[7]潘镇锋.基于深度学习的MIDI音乐流派分类研究[D].广东:华南理工大学,2019.
[8]文静,曹妍,张琳,等.基于双重遗传的聚类分析算法研究[J].计算机工程与科学,2017,39(12):2320-2325.
[9]张晓光,汤文豪,王艳芬,等.数字信号处理案例教学法研究与实践[J].实验技术与管理,2018,35(5):214-217+235.
[10]教育部.教育部关于进一步深化本科教学改革全面提高教学质量的若干意见[J].中国大学教学,2007(3): 9-11.
(编辑:王晓明)