中小学人工智能课程内容设计探究
2019-04-19谢忠新曹杨璐
谢忠新,曹杨璐,李 盈
(上海市浦东教育发展研究院,上海 200135)
一、引言
人工智能作为引领未来的战略性新兴技术,正在深刻影响着社会的方方面面,也将深刻改变我们的生产生活方式。2017年国务院印发的《新一代人工智能发展规划》明确指出人工智能已成为国际竞争的新焦点,我国应逐步开展全民智能教育项目,在中小学阶段设置人工智能相关课程、逐步推广编程教育、建设人工智能学科[1]。2018年教育部印发《教育信息化2.0行动计划》,明确要求要完善课程方案和课程标准,使中小学人工智能和编程课程内容能充分适应信息时代、智能时代发展需要[2]。
在中小学开设人工智能课程,从小学、初中到高中分学段、系统化地进行人工智能教育,是具有前瞻性的举措。本文将在分析中小学人工智能相关课程现状的基础上,从学生认知发展的视角提出对中小学人工智能课程内容建设的想法,以期为中小学人工智能课程内容的建设提供一些参考。
二、中小学人工智能课程现状及反思
(一)国内外中小学人工智能课程现状
现阶段,中小学的人工智能教育课程更多的是在计算机科学教育及计算机课程、信息技术课程、科学课程、STEM课程、创客课程中引入人工智能相关的教学内容。可以说,当前国内外中小学人工智能教育课程是以人工智能教育为主题的泛在课程系列。
20世纪80年代,人工智能课程以选修课的形式出现在英国的ICT课程中,主要讲解人工智能的基础知识、人工智能的应用知识。2013年,英国在中小学教学大纲的全面改革中将原有的信息通信技术(ICT)课程修订为计算(Computing)课程,教学目标转向关注计算思维和人文价值。在人工智能教学方面,英国多与高校协作开展,比如将来自高校的实习教师作为中小学人工智能教育的外部师资、依托高校力量为中小学搭建人工智能教学网站、邀请高校专家参与中小学师生的讨论和答疑等。
在美国,人工智能课程是计算机科学课程的一部分,且多以选修课的形式开设[3]。目前,美国中小学的编程课主要是引导学生组装编写好的程序模块来控制机器人完成简单动作,进而培养编程兴趣。在人工智能教学方面,与高校合作开办课程是美国中小学人工智能教学经常采用的方式,比如,卡耐基·梅隆大学将本科计算机专业学生的可扩展状态机器语言课程改进之后供参加暑期夏令营的高中生使用[4]。
我国在2003年正式启动中小学人工智能教育,经过十几年的教育实践,当前的人工智能教育主要在信息技术课程、STEM课程、创客课程中开展。《普通高中信息技术课程标准(2017年版)》将“人工智能初步”列为选择性必修模块,分为人工智能基础、简单智能系统开发、人工智能技术的发展与应用三部分内容[5]。随着STEM课程和创客课程的广泛开展,部分学校和一线教师尝试在STEM和创客等跨学科课程中探索人工智能教育。比如,中国人民大学附属中学将人工智能教育内容和STEAM课程相整合,从感知、认知和创新三个层次构建了“STEAM+人工智能教育”校本课程体系。此外,在高中通用技术的“智能家居应用设计”模块和“机器人设计与制作”模块中,也将人工智能、大数据处理等技术的学习融入其中,深化学生对人机关系的认识。
(二)对国内中小学人工智能课程现状的反思
尽管当前人工智能教育被给予足够的重视,但纵观国内中小学人工智能课程现状,当前的课程尚存在如下不足。
1.人工智能课程重视技能训练,轻视计算思维的培养
从当前的课程实践来看,中小学的人工智能教育主要依托编程教育和机器人教育来开展。编程教育,无论是校内还是校外,多停留在指导学生利用程序设计语言完成具体的编程题目。机器人教育,多停留在简单的实体安装层次,在设计思维能力的培养方面并没有发挥机器人教育的自身优势。而中小学生大多以参加竞赛为目的而接受编程教育,在学习过程中更多地关注编程技能的提升。此外,现阶段中小学人工智能教育的教材大多属于产品说明书或用户指南类[6],缺少对学生思维能力培养的科学引导。
新一轮课改将我国基础教育的总目标落实到“学生发展核心素养”。其中,信息意识、计算思维、数字化实践能力、信息社会责任是学生需要具备的四个方面的信息技术核心素养[7]。人工智能可为计算思维培养提供生动案例,同时,人工智能的很多作品也是计算思维支持下的成果。因此,以计算思维的培养目标指引人工智能的课程设计与教学,能有效地将人工智能教学实践上升至更高水平。
2.人工智能课程缺少完善的课程内容体系
从课程内容来看,人工智能教育主要依托于信息技术课程、STEM课程、创客课程、计算机科学课程来开展,人工智能教育的课程目标只是对应课程目标的一部分。虽然从小学、初中到高中都有不同专题的人工智能相关课程,但是这些课程是碎片化的,缺少对人工智能意识、方法、能力目标的系统化设计。从课程的学段设置来看,人工智能教育多在初中、高中开展,小学甚少涉及。这种小学、初中、高中人工智能教育的脱节不仅会增加学生的学习障碍,也会因为认知延迟而降低学生的能力水平。因此,人工智能课程需要建立覆盖小学到高中的完善的课程体系,从而让学生接受系统的人工智能教育。
三、中小学人工智能课程内容设计探究
中小学是学生学习的基础阶段,在这个阶段开设人工智能教育系列课程,重在以人工智能思维方式转变和思维能力提升为培养目标,以激发探索兴趣、理解基本思想为出发点,通过系统的、科学的课程内容设计,让学生在小学、初中和高中接受体系化的、符合其认知发展规律的人工智能教育,使学生在建立兴趣的基础上,提高运用人工智能相关技术思想来分析和解决问题的能力、动手实践能力及创新创造能力。
(一)基于认知发展规律的中小学人工智能课程目标设计
皮亚杰的认知发展理论指出,小学阶段的学生可以将感知动作内化,并能在具体内容的支持下进行简单的抽象逻辑思维;初中阶段开始,学生能够摆脱具体内容进行抽象逻辑,并能进行假设——演绎推理[8]。基于此,中小学人工智能课程建议分为认知、理解、应用、实践、创新五步走,人工智能思维方式和思维能力的课程培养目标将与这五步有机融合。
1.认知。通过“人机大战”等故事讲述,通过看、听、说、想等多感官维度的人工智能场景产品体验,使学生建立对人工智能的直观认识,感受人工智能给生活带来的巨大改变。
2.理解。通过类比、游戏活动等形式,使学生初步理解人工智能的基础知识与基本思想,能对人工智能产品背后的原理作简单解释。
3.应用。通过体验各种人工智能产品,使学生学会与智能工具打交道,能够利用智能工具改变学习和生活的方式。
4.实践。通过编程的系统化学习,培养学生的计算思维和动手实践能力,使学生能够在实践中完成简单的人工智能作品。
5.创新。通过对人工智能的整体学习,使学生能够在理解人工智能原理的基础上,完成人工智能产品的创新性设计与开发。
(二)中小学人工智能课程内容设计
随着知识的增加,学生的认知能力与对知识的接受能力有很大的不同,三个学段人工智能课程的开设在普及人工智能知识的基础上,内容的侧重点应有所不同,如图1所示。
图1 中小学人工智能课程体系设计
1.小学人工智能课程,重在感悟
小学人工智能课程应重在让学生感悟人工智能对生活和学习的影响,体验生活中的人工智能,直观地了解人工智能的特点,激发探究的热情和积极性。例如,通过播放科幻片、人工智能“人机大战”等相关视频让学生对人工智能的应用领域等建立直观的认识,让学生知道人工智能可以做什么、不可以做什么;从认知视角体验人工智能的用途,学习如何与人工智能机器人合作,如何利用简单的人工智能工具来提高工作效率,让生活更加美好等。小学人工智能课程内容可以从三个主要方面来展开,具体如图2所示。
图2 小学人工智能课程内容模块
(1)认识人工智能
本模块通过一系列人工智能认知的小故事,让小学生直观认识什么是人工智能。例如可以通过经典的“人机大战”故事的讲述让学生感受人工智能;也可以从其他生活中经常应用到的智能小工具让学生了解感受科技的发展,以及人工智能给生活带来的改变。
(2)感悟人工智能
本部分课程内容可以分为五部分来展开,每个维度对应生活中实际应用的例子,分别从人如何让机器学会看、听、说、想、动,模仿人的认知,使学生来初步体验人工智能的用途,如图3所示。本模块不强调技术,侧重点是让学生明白人工智能的实际应用。
图3 感悟“人工智能”
通过使用各种人工智能产品,例如识别花朵的APP能够识别各类花草,让学生感受人工智能可以让机器“看”,通过语音识别技术感受人工智能可以让机器“听”,通过与智能机器助手对话感受人工智能技术可以让机器“说”,会思考也就是会“想”,通过让机器按照自己的指令来执行相应的任务,智能遥控器来控制电视、操纵智能小车等感受人工智能可以让机器“动”。通过这些智能工具和技术,建立小学生对人工智能的认识和感悟。
(3)尝试人工智能
小学人工智能课程不只是单纯的体验和感知,而是在体验和感知中培养学生的计算思维[9]。计算思维能够帮助学生理解问题、高效解决问题。在小学阶段引入Scratch、APP Inventor等图形化编程工具,对学生进行编程及算法思想的启蒙与渗透[10]。
让学生通过简单的图形化编程,完成人工智能相关作品,或者更改某些参数来实现人工智能作品。在这个过程中主要让学生思考做什么、如何分步骤做等,在这个过程中培养学生的计算思维及动手实践能力。例如可以为学生设计编程任务“听话的灯”。当听到语音“请开灯”,灯亮,机器同时语音输出“您好,灯已打开”,当听到语音“请关灯”,灯灭,机器同时语音输出“您好,灯已关闭”。选择合适的图形化编程工具,让学生思考,如果要完成,需要哪些器件,怎样分步骤完成。老师可以给出每一个步骤,并把步骤打乱,让学生自己排序,实践完成该功能。
2.初中人工智能课程,重在体验
初中阶段,通过了解、体验以及创作等一系列活动让学生在亲身参与中感受人工智能技术的无穷魅力,并在体验中基本理解人工智能的原理,知道人工智能怎么“做”。培养学生交叉学科的创新思维,进而思考如何利用人工智能解决问题。初中阶段的人工智能课程,可以设计体验类和简单的创作类活动,让学生感受到人工智能课程的“好玩”及“可玩”[11]。初中人工智能课程内容,具体如图下页4所示。
(1)认识人工智能
通过介绍“人机大战”、图灵测试等故事以及生活中常见的人工智能应用,激发学生人工智能的兴趣,让学生在故事中理解人工智能是什么,能说出人工智能的定义;知道人工智能的三要素,并能说出每个要素的作用;了解人工智能的发展历程,能用辩证的眼光来看待人工智能。
(2)体验人工智能(理解简单基本原理)
体验人工智能(理解简单基本原理)模块是让学生通过体验,并从技术角度了解基本的人工智能原理,从机器会看(图像识别等技术)、听(语音识别等技术)、说(人机对话技术)、想(机器人技术、深度学习等技术)等多个维度来学习体验人工智能的用途。了解技术简单的基本原理,在此基础上学习人工智能的重要的原理之一--机器学习(深度学习)。体验人工智能(理解简单基本原理)模块的学习过程设计如图5所示。
图4 初中人工智能课程内容
图5 体验人工智能(理解简单基本原理)模块的学习过程设计
以机器“听”为例说明学习过程如图6所示:
图6 以“听”(语音识别等技术)为例的学习过程设计
以机器“听”为例设计相关内容:
a.体验某一应用:通过输入法的智能语音识别感受人工智能技术可以让机器“听”。
b.引出“语音识别”:理解机器“听”的关键是语音识别技术。
c.理解“语音识别”原理:人说话的时候,通过声带使空气发生震动,产生声波。机器在学习的过程中,人们会设计一些数学模型,让机器知道这个声波对应哪个汉字。学习完所有汉字后,就生成了一个模型,最后这个机器就把这个模型记在脑海里。识别的时候,机器同样是把人所发出的声波进行处理,截取合适的片段,将这些片段与脑海中的模型进行比对,哪个最接近,就把当前发的音转换为汉字,然后再把整句话合成输出。具体步骤如图7所示。
图7 语音识别基本原理
d.语音识别等技术相关知识拓展:语音识别的作用、语音识别的发展历程等知识拓展。
(3)实现人工智能
结合学生的认知特点,本阶段学生的编程是基于人工智能某一点的编程,在编程的过程中,一方面巩固所学人工智能知识,另一方面培养学生计算思维及实践能力。对初中学生计算思维的培养,图形化编程是一种表达方式,也是一种新的开发方式。图形化的编程语言,本质上是可视化的思维,使得计算思维的培养和训练简单方便。
通过图形化编程,初步设计稍微复杂一些的人工智能作品(包含人工智能的多个功能点),最终,通过整体对人工智能的学习,完成制作。比如,仍然可以为学生设计编程任务:“听话的灯”。这里就需要学生了解语音控制电灯系统的信息流,会用可视化编程软件编写蓝牙通讯apk,并掌握接收串口数据并控制端口的方法等相关技术。
3.高中人工智能课程,重在创造创新
人工智能时代,高中生应该掌握的核心能力是独立思考、问题解决、实践能力[12]和创新创造能力。高中人工智能课程内容的设计应偏重于创造创新,强调人工智能基本理念与原理的传递,注重创造力、想象力、整体思考,以及动手能力的提升。高中阶段,可通过编程教育、机器人教育、数据分析的案例或项目实践,提升学生的创造创新及计算思维能力。
高中学生具有一定的信息化基础,从内容安排上看,可以让学生理解人工智能的基本概念、人工智能的历史、技术、人工智能的基本过程以及实现人工智能的典型算法和主要实现手段。通过诸如基于搜索的问题求解、基于反馈的控制思想、基于统计的模式识别、基于机器学习的问题求解等相关知识的学习来培养学生利用人工智能技术解决实际问题的基本思维方式及能力。高中的人工智能课程重点应增强学生的计算思维,计算思维主要是指通过分解、模式与概括、抽象、算法思维、评估来形成有效的问题解决方案[13]。通过程序设计以及实践经验,学生的计算思维才能得到锻炼与培养。程序设计是计算思维能力提升的重要方法之一,因为程序设计过程可以让计算思维这个抽象的概念变得具体,可以成为培养学生计算思维的工具。关于程序设计语言,Python被认为是进入人工智能领域的敲门砖。根据高中学生的学习能力,高中课程编程部分建议使用Python语言。结合以上分析,高中课程内容如图8所示。
图8 高中人工智能课程内容模块
(1)认识、体验人工智能
通过基于场景的人工智能体验来认识人工智能,体验各种人工智能产品,学会与较复杂的智能工具打交道,进一步了解人工智能的三要素在产品中发挥的作用。尝试让学生自己分析体验所涉及的人工智能的相关技术。
(2)理解人工智能(深入分析各技术)
学习人工智能基础知识与原理,可以通过项目式学习的方式,从基本的功能开始开展,逐步加入不同的人工智能技术(如语音识别、自然语言理解、图像识别、语音合成、机器学习、深度学习等),让项目的内容越来越丰富,能较深入分析人工智能的相关技术,了解典型算法和主要实现手段,理解人工智能的实现方法。例如通过不同的例子来学习基于搜索的问题求解、基于机器学习的问题求解、基于带约束优化的问题求解等相关技术,习得学习数据采集与处理能力、数学建模能力、问题求解能力等(如图9所示)。
(3)创造创新——实现人工智能(Python编程)
通过Python编程,实现复杂的人工智能作品,在作品完成过程中培养学生的计算思维及动手实践能力、创新创造能力。相对于初中的基于点的编程,高中阶段应是基于面上的系统编程。通过整体对人工智能的学习,能够设计相对复杂的人工智能作品。
四、结语
在中小学开设人工智能相关课程,可以提升学生的人工智能认知、思维及能力,帮助学生适应未来的生活,提升教育现代化水平。在我国,开展中小学人工智能教育,应根据学生的认知能力、知识掌握水平等综合因素,合理考虑课程内容编排,分层次设计各个学段的课程内容,从认知、体验、理解到应用,逐步加深学生对人工智能相关知识的掌握。当前,中小学人工智能课程设计和教学实践都还处于探索阶段,尚有许多问题待解决,期待有更多学者开展这方面的研究。
图9 项目式学习开展人工智能课程