语音信号处理实践课程的教学研究与改革

    梁瑞宇 包永强 唐闺臣 王青云

    

    

    摘 ?要:针对目前语音信号处理实践课程存在的困难,为提高学生的实践能力、创新精神和工程意识,文章从课程的策划、选题、过程管理及考核方法几个方面阐述了该类课程的工程教学改革方法和具体实施过程。实践教学结果显示,通过课程改革,学生的工程设计意识得到培养,学生工程的设计能力得到提高。

    关键词:语音信号处理;课程设计;实践能力;工程教育

    中图分类号:G642 文献标志码:A 文章编号:2096-000X(2019)13-0073-03

    Abstract: Aiming at the difficulties existing in the practical course of speech signal processing, the engineering teaching reform methods and concrete implementation for these courses are expounded to improve students' practical ability, innovative spirit and engineering consciousness. The main research includes course planning, topic selection, process management and assessment methods. The results of practical teaching show that through courses reform, students' engineering design consciousness is cultivated and their engineering design ability is improved.

    Keywords: speech signal processing; curriculum design; practical ability; engineering education

    引言

    随着人工智能领域的飞速发展,语音已经成为一种重要的人机交互手段。为了让相关专业学生在未来的竞争中更有优势,很多高校都开设了语音信号处理相关课程。但是,语音信号处理作为信息处理专业的一门重要的专业课,所涉及的理论知识较多,是一门理论性强、实用面广、内容新、难度大的交叉学科。

    因此,该课程的设置必然不同于以往其它课程。目前,各高校开设的语音信号处理的课程主要是理论课和实验课,鲜有高校开设综合性的实践课程,如课程设计,综合实训等。但是,高等工程教育是培养本科工程技术人才的主要渠道,而最能让学生学习到工程设计知识和锻炼动手能力的实践类课程成为培养工程技术人才的关键环节。因此,随着工程教育理念的逐步推广,此类课程必然会有逐步增加。

    在此背景下,本文结合多年语音信号处理教授经验,提出一种语音信号处理类实践课程的开设方法和建设思路。课程的目的在于加深学生对语音信号处理知识的理解,开发学生的创新思维,同时锻炼学生科技论文的撰写能力,培养学生的语音信号处理工程项目开发能力。

    一、课程设置难点

    (一)知识面广且关联性强

    语音信号处理是信号与信息处理方向的一门重要的专业课。从几十年发展来看,语音信号处理涉及的应用包括语音识别、说话人识别、情感识别、语音增强、声源定位、语音合成、语音编码等。围绕着这些应用,该课程还会涉及一些相关理论,如矢量量化、隐马尔科夫模型、高斯混合模型,支撑向量机等。由此可知,其涉及的相关专业课主要包括数字信号处理和信号与线性系统,辅助课程包括C/C++程序设计、高等数学、复变函数等。因此,如何激发学生的学习兴趣,从枯燥的理论中升华出来,是提升课堂教学质量的关键。

    (二)有限课时与工程教育间的矛盾

    从提升学生的工程实践能力的角度考虑,课设的课题不能简单,需要有一定的工程背景和实用价值。但是,如果增加课程难度和广度,短短1到2周的实践课程时间又不能保证课题的有效完成。因此,有限的课时与课程实际效果和工程教育的理念存在矛盾。如何在有限的时间内提升课程质量,锻炼学生的动手能力和工程能力,是一个亟待解决的关键问题。

    (三)缺乏交流的传统课程模式

    传统的课程设计基本是一人一组,个体意识强烈,缺乏团队协作的精神。虽然有些课设是多人一组,但是这种交流只限于每个组内部,很少有组与组之间的交流。工程项目所需的团队协作、沟通交流的能力没有得到有效培养。此外,以往课程设计一般是全班几十名学生同做2~3个题目,这样的结果往往造成大部分学生存在依赖心理,从而影响教学效果。

    二、课程的设计目的与思路

    语音信号处理理论教学注重讲授语音信号处理的基础知识,使学生建立语音信号处理的概念,并基本掌握语音信号处理的相关理论与技术。而实践课程设置的目的是让学生有效的掌握课堂上所学的理论知识,是培养应用型人才的重要手段。此外,为融入工程教育理念,语音信号处理实践课程需按照工程项目设计的要求完成,并以培养学生综合运用理论知识和工程设计能力为目标。

    实践课程的实施过程以学生为中心,让学生全程参与语音信号处理应用系统的整个开发周期,并通过对项目的构思、设计、实现和考核环节,让学生主动获取知识。此外,通过课程使学生具备资料查阅的能力,掌握算法设计、软件设计和系统调试方法,培养学生的自学能力、分析问题和解决问题的能力,培养学生从事科研的能力、语言表达的能力以及创新意识和团队合作精神。

    三、实践课程的具体实施

    (一)布局与策划

    从上述分析可知,工程教育要求与有限课时之间有很大冲突。为此,实践课程的设置首先要解决该问题。对比传统的课程设置,理论教学、实验教学和实践课程(如课程设计,综合实训等)间虽然有关联性,但是往往缺乏整体设计,教学环节和实验环节的开设并没有充分为实践课程服务的思路。针对这个问题,本课程从提前布局和合理规划两个方面来充分利用课程设计时间。1. 课程布局:语音信号处理通常由理论课、实验课和课程设计3个部分构成。为了在有限的时间内,完成高质量的课程设计,提前布局教学内容是解决实践课时少的有效的方法。首先,在理论教学环节,利用翻转课堂的教学形式,让学生尽早的接触语音信号处理的各种应用,并通过调研,写报告,做PPT的方式,让学生对各自的应用有较深入了解,有助在課设环节尽快了解所选课题。其次,在实验环节上,以某一应用为例,将一个工程项目拆分成若干个必要的小实验。从语音的采集、信号预处理、特征提取、模式识别再到最后的应用。通过详细周密的课内实验,使学生在完成课程设计之前,已经对如何完成一个语音信号处理课题有了一个深刻的认识。2. 合理规划:在课程设计环节上,合理规划各部分时间,并在各个阶段实现时间交叠,从而合理利用时间。具体的课程设置如图 1甘特图所示。从图上可知,有些工作持续时间比较长,比如撰写报告,在第二天就开始启动,此时课题方案基本确定,课题的背景及意义,课题介绍,初步的方案设计都可以开始写。随着项目的推进,算法理论和实验仿真数据,软件界面的设计与调试,就可以逐步添加到报告中。课题完成后,报告也就基本完成,不要占用额外的时间。

    通过上述设置,在理论课程阶段就布局进行课设安排,并通过实验设置,将课设必备的知识点进行提前学习,从而有效解决课程任务重与课设时间有限间的矛盾。

    (二)选题

    从工程教育的角度出发,实践类课题的选择应该有实用性,有工程背景且有一定的综合性。实践类课程不同于平时的实验,也不同于毕业设计,因此在选择设计题目时,除了要符合教学大纲要求,使学生能够运用语音信号处理基本知识,还要在较短时间内使学生了解基于语音信号处理的工程项目的基本构成和设计要点,并通过小课题,熟悉整个流程,从而激发学生对语音信号处理的学习兴趣,培养学生独立分析问题和解决问题的能力,有利于培养学生的动手能力和创新精神。

    但是,考虑到学生的基础和能力,课程采用教师命题和学生自拟课题两种形式。教师课题的课题要求比较简单,要求学生从语音信号处理中的八个应用(语音识别、说话人识别、情感识别、语音增强、声源定位、语音合成、语音编码、语音隐藏)中任选一个应用作为课题,必须有操作界面,推荐用C或C++编程,并鼓励有人机交互功能,即学生自己录音作为测试样本,而不是用其它数据集。每个课题本身没有难易之分,只有根据完成的程度进行给予相应的分数权重。考虑到同学间可以多接触一些应用课题,每个题目不超过3组,每组2-3人。

    对于自拟课题,学生需要提前提交具体方案,并需要与教师讨论,通过审核后方可确定和使用。

    (三)实施过程设置

    对于任何一个实践类课程来说,有效的方案设计是保证学生在有效的时间内保质保量完成任务的关键。为此,从课题的第一天开始,每个小组就开始制定课题方案,主要内容包括:选题、分工、时间安排、采用的软件、算法、界面和效果等。第三天,由课题小组长进行方案介绍,采用老师提问和同学提问的方式对方案进行讨论。第四天,针对上一天的讨论,最终确定研究方案,教师根据学生选择的方案及其对课题的了解,为学生提供相应的材料以保证课题的顺利进行。

    在课题开展的整个过程中,采用以学生为主体,教师辅助指导的形式。在图1所示的各个阶段中,前期老师主要负责提供一些课设需要的材料。这些材料并没有在实验中做过,但是又是课题需要的,比如离散傅里叶变换的开源C函数库FFTW、线性代数的C语言库Armadillo,又或者提供给学生MATLAB代码让学生移植为C代码等。此外,相关材料还包括一些书籍和课程学习网站等。为了保为了保证学生的完成质量,在第一周结束时,教师会组织各个小组组长进行简单交流,主要是监督各个组的完成情况,并对存在问题的组进行辅导。

    此外,为了强化组和组之间的交流,课程设计采取组与组之间互相监督机制,即两个不同课题的组分别模拟工程项目中客户和开发团队的关系。两个小组互相为对方小组提要求,客户组负责对项目的功能性、可操作性和合理性给予评价,并提出修改建议,开发组根据反馈意见和实际情况,对项目的功能和可操作性进行完善。相关工作也作为考核分数的一部分。

    (四)考核与评分

    考核主要采用答辩的形式,同时检查各个小组的最终完成情况。每组的答辩时间为15-20分钟。第一个5分钟由小组通过PPT介绍方案和实现原理,第二个5分钟进行实物演示,第三个5分钟由其他学生和教师进行答辩提问。

    学生成绩的评定分为3个部分。1. 平时表现(20%):考勤情况和方案制定情况;2. 實物效果(50%):实物与方案的契合度、完成的效果;3. 报告水平(30%):报告的格式,完整性和实际水平。整个报告至少要包括八个部分:背景与意义,课题方案简介,主要算法原理,仿真结果与分析,软件功能设计与实现,实验方案及验证效果,总结,参考文献。考虑到每个组的学生的完成情况和基础能力不同,学生可以在超过2周的时间里提交作品,但是要适当进行扣分。

    教师根据每个小组、每位学生在课程设计过程中的具体表现,全面评定学生成绩。成绩构成和范例如表1所示。每级指标分为四个等级,每个等级的实际分差为15分。每个评定指标的单项平均分为该项的权重值。表1为一个同学的最终评定结果。此时该学生的最终成绩为:

    成绩=(20*权重A+50*权重B+30*权重C)*权重D

    =(20*1+50*0.85+30*0.9)*1

    =89.5 (1)

    采用上述加权求和方法,可以尽可能的对学生工作进行肯定,避免单一的评分形式不能反映学生的真实水平。任何一个单一的环节,学生根据其完成情况可以获得一定的分数。教师鼓励学生多花时间对课题进行完善,即使不能在规定的时间内完成课题,也可以在课程结束的两到三周内继续完成。但是为了保证课程进度和公平性,需要对最终分数进行加权。

    四、教学效果

    大多数学生通过该类课程,了解了工程设计的一般思路,巩固了语音信号处理的相关理论知识,激发了相关研究的学习和研究兴趣。每年都会有不少优秀的学生报考该方向的研究生,并被985高校录取。此外,通过不懈的努力,学生完成一些高质量的语音信号处理相关软件。

    五、结束语

    将工程教育思想融入语音信号处理实践类课程的教学思路大大改进了教学效果。学生在完成相关课题的过程中,掌握了语音信号处理的相关理论知识和实践技能,同时通过应用性课题,激发了学生的学习兴趣和创新能力,培养了工程意识和工程素养,提高学生的市场竞争力。

    参考文献:

    [1]徐晓红,郑志强,卢惠民.构建机器人技术创新实践基地的探索与实践[J].实验室研究与探索,2015(03):185-189.

    [2]刘卫东,孟晓静,王艳芬.语音信号处理实验教学研究探索[J].实验室研究与探索,2008(04):72-74.

    [3]赵力,梁瑞宇,魏昕,等.语音信号处理(第3版)[M].机械工业出版社,2016.

    [4]李浩平,杜轩, ?靓.工科背景下工业工程专业一体化柔性实践教学体系探索[J].高教论坛,2017(12):40-42+76.

    [5]山丹,张永锋,孙晓凌,等.高等工程教育中对课程标准制定过程的思考与探索[J].计算机教育,2018(09):7-11.

    [6]丁文飞,孙会楠,赵建新.项目驱动教学法在《数字信号处理技术》课程中的应用——以语音信号为例[J].高教学刊,2017(17):95-97.