1. 引言
新工科建设和发展以新经济和新产业为背景,要求树立创新型、综合化、全周期工程教育“新理念”,构建新兴工科和传统工科相结合的学科专业“新结构”,探索实施工程教育人才培养的“新模式”,打造具有国际竞争力的工程教育“新质量”,建立完善中国特色工程教育的“新体系”。
人工智能是典型的“新工科”和交叉学科,是实现科研创新的基础,是普适性技术,具有广阔的应用前景。国家从战略层面对人工智能提出了规划和要求,例如《新一代人工智能发展规划》(国发[2017]35号)和《高等学校人工智能创新行动计划》(教技[2018]3号)。人工智能主要解决的是涉及不确定性的复杂问题,从任务求解过程角度看,首先要对复杂问题进行抽象建模,然后针对模型进行算法设计、分析与实现,最后对模型和算法进行不断优化完善。这就要求人工智能人才必须具备扎实的数学基础、较强的编程能力以及全面的人工智能专业知识 [1] [2] [3] [4] 。
因此,为了培养合格的人工智能人才,需要有与之对应的课程体系。在人工智能课程体系构建方面,课程体系不仅包括数学与统计等数学基础,还要包括计算机科学核心课程,而且包括智能基础、模式识别、自然语言处理、知识工程、机器学习、智能系统以及大数据等专业课程,还要包括科研训练以及实践创新等拓展课程。人工智能课程体系可以分成三个层次:
第一层是专业基础课程与编程课程:主要包括数学基础、人工智能基础、机器学习、深度学习、模式识别、数据挖掘和知识发现、自然语言理解、大数据技术及其应用、计算机视觉、智能机器人以及Python语言等,特别地要开设人工智能伦理道德课程。
第二层是科研训练层:主要包括智能感知与理解、机器学习、自然语言处理、智能机器人、无人系统和智能应用系统等实验教学、案例分析;
第三层是实践创新层:主要包括人工智能前沿讲座、学科竞赛、智能系统设计开发以及素质拓展与综合实践创新等。
2. 创新人才培养模式,重构课程培养体系
在人才培养模式方面,一是要加强数学、生物信息等基础学科教育;二是要注重人工智能与脑科学等学科的交叉融合;三是要注重人工智能与大数据等的交叉融合;四是要注重教、研、用的结合,特别是与著名人工智能领域公司、研究机构联合培养人工智能人才,构建“教–研–用”体系 [5] [6] [7] 。充分发挥产学研多方合作优势,共同分析行业发展趋势,结合社会的智能需求和学科特色,设定明确的人才培养目标。以理论学习、科研训练、创新实践为基础,整合各方力量,统筹协调各方优势,联合制定培养方案,探索培养目标和培养方案完善优化机制。着力培养人工智能领域人才创新应用能力,提升对社会发展的支撑服务,形成一个融理论教学、科学训练、创新实践为一体的过程化的人工智能课程体系和协同培养机制,使所培养的人才在基础知识、专业知识、实践能力、创新能力、伦理道德以及科学与职业素质等方面得到全面均衡的发展。概括地,我们从通识教育,专业教育和实践教学等三个方面设置课程体系,见表1人工智能专业的课程体系与学分分配表。

Table 1. Artificial intelligence course system and credit allocation form
表1. 人工智能专业的课程体系与学分分配表
2.1. 理论课和实践课设置方面
课程设置以新工科要求为导向,以社会需求为目标,以实践能力提高为核心,强调理论性与应用性的有机结合,突出案例分析和实践教学。不断创新开发能够体现学科前沿性和实践性的人工智能课程体系。主要有如下四个途径:
1) 对通识基础课、专业基础课、专业课的教学内容按“必需、通用”的原则设立,适当增加选修课, 不断拓展人工智能专业学生的国际视野。
2) 建设在线课程,丰富学习资源:产学研多方共建“翻转课堂”联合课程或配套实验项目,建设“慕课”,“资源共享课”,“视频微课”,开发理论课程或实验课程配套课件,实验项目,实验指导书,教材或教学演示软硬件系统。
3) 实践课程项目化,精心建设实训案例:以项目为载体,融理论学习和能力培养于一体,使学生的学习方式实现由个体学习向合作学习的转变,不仅培养专业综合技能,而且使学生在实践中了解工作环境,理论联系实际,提高分析、判断与解决问题的能力、团队协作能力。
4) 开展创新教育。围绕促进创新精神和创新能力的人才培养,以产学研协同创新机制为平台,深入挖掘符合应用创新的教学方式,并形成可复制推广的经验。为此,需要创建循序渐进的阶梯式人工智能实践教学体系框架 [7] 。
例如,我们设计了模拟退火(SA)算法的实验。通过SA算法实验,使学生理解SA的基本原理,并将在智能优化技术中所学的相关理论知识得以融会贯通;同时让学生在SA实验过程中增强实际动手能力,积极提出改进算法的相关问题,强调提高学生将所学知识在实践中的应用能力,积极引导学生自主学习,使学生初步了解从事科学研究的基本方法。鉴于此,项目要求设计了6个层次:
第1层次:理解基本的SA算法:理解算法的基本原理和控制参数的设置;理解Metropolis准则和波尔兹曼(Boltzmann)分布;理解“产生新解→计算目标函数差→接受或舍弃”的迭代过程。
第2层次:实现基本的SA算法,建议使用Python或Matlab语言:初始温度t0;温度t的衰减函数,即温度的下降方法;算法的终止准则,用终止温度tf或者终止条件给出;每个温度t下的马尔可夫链长度Lk。
第3层次:对SA算法中的参数讨论分析:初始温度的选取;内循环的结束条件,即每个温度状态交换何时结束;外循环的结束条件,即温度下降到什么时候结束;温度的下降方法。
第4层次:将SA算法应用到诸如旅行商(TSP)和聚类等具体问题上。主要包括:控制参数设置,例如降温速率、初始温度、结束温度以及链长等;初始解和解变换生成新解;Metropolis准则和降温。
第5层次:尝试改进基本的SA算法。可以从如下几个方面改进:初始温度的设置以及迭代次数;温度的衰减系数;算法的停止准则。
第6层次:在理解SA原理及应用的基础上,拓展学习群智能算法和深度学习等新的研究热点方法。
以上6个层次中,前4项是必做,最后2项可以供有兴趣的同学在后续的毕业论文中选题完成。本实验不仅涉及到如下知识点:算法本身的参数确定、温度的下降方法、算法终止准则和收敛性问题,而且还涉及到程序设计、算法分析、概率统计以及偏导数等跨学科的知识,因此知识面跨度大。由于涉及到的知识比较多,注重了基础性与前沿性相结合,理论和应用相结合,因此综合性强。该实验项目是我们人工智能课题组研究性教学思想的重要体现,也是培养学生自主学习能力、实践能力和创新能力的重要途径。
2.2. 在科研训练方面
在人才培养过程中,增加系统分析等课程,坚持分析工具与实际应用相结合,使学生学会如何选取合适的方法分析解决不同问题以及同一问题的不同方法,强调学生的聚合性与发散性思维的协调培养,重点培养学生的知识迁移能力。鼓励学生广泛研读国内外相关文献,在共享的学术资源中提高自己发现科研问题的能力;定期参加学术交流与项目研讨,学习别人在分析和解决问题时应用的方法、手段与技巧;参加学科竞赛,学以致用,尝试跨越从学到用的鸿沟,锻炼自己的分析和解决问题的能力。重点培养学生发现问题、分析问题和解决问题的能力,特别是培养学生同一问题的不同分析方法、不同问题的相似分析方法之间的知识迁移技能。为此,提出人工智能专业科研训练方案,见表2。

Table 2. Artificial intelligence professional research training program
表2. 人工智能专业科研训练方案
2.3. 在实践创新方面
在实践创新方面,主要通过综合课程设计、项目研发、联合攻关和学位论文等方面得以实现。这就要求不断深化多方协同育人的参与度,拓展协同育人的宽泛度,加强实践基地建设和校内协同创新实验室建设。通过完善“产学研”合作模式,建立互惠共赢机制,与企事业单位成立的联合创新实验室从应用项目开发、应用性学术竞赛、创新项目研究三个方面引导和培养学生,让学生可以参与到具有实际应用意义的项目开发当中去,可以通过学术竞赛快速提升科研能力、加强学术交流,可以充分挖掘自己的创新能力,切实提高人工智能人才的创新应用能力和职业能力。例如,一个自然语言知识服务系统就涉及到知识工程、数据库技术、人–机界面设计、大数据分析技术和个性化推荐服务等多个方面,需要产学研多方的力量才能高质量的完成,见图1。

Figure 1. Architecture of natural language knowledge service system
图1. 自然语言知识服务系统的体系结构
3. 总结
从新工科建设的新要求出发,从理论课和实践课的设置、科研训练以及实践创新等三个方面探讨了人工智能课程体系的构建。注重以提高学生的创新能力为核心,强调课程体系的理论性与应用性的有机结合,突出课程案例分析、项目实训以及实践锻炼的地位,不断优化完善能够体现学科前沿性和实践创新性的人工智能课程体系。
基金项目
本文受“山东省高等教育本科教改项目”(NO.Z2018S022)、全国高等院校计算机基础教育研究会计算机基础教育教学研究项目(2018-AFCEC-112)、曲阜师范大学校级教改项目(18jg44和jg16050)、曲阜师范大学校级精品实验项目(jp201714)以及校级人工智能双语课程建设项目资助。
NOTES
*通讯作者。