利用AutoML技术助力K-12的 人工智能教育

2022-05-13 17:43黄镭
广西广播电视大学学报 2022年1期
关键词:编程模型人工智能

[摘 要]在中小学阶段开展人工智能教育是我国基础教育发展的要求,然而,当前人工智能的普及教育面临着学科跨度大、知识储备要求高、模型训练复杂等问题,这对教学的开展提出了挑战。如何简化模型训练过程,隐藏实验细节,突出人工智能教学的主题和重点是个难题。近年随着自动化机器学习(AutoML)技术的兴起,人工智能的平民化成为现实,文章调研了AutoML技术的解决方案,确定了一种可以将人工智能的教学案例进行简化的教学项目设计流程,为K-12人工智能教育的实施提供发展思路。

[关键词]人工智能;K-12教育;自动化机器学习

[中图分类号]G434 [文献标识码]A [文章编号]1008-7656(2022)01-0024-08

引言

在中小学阶段开展人工智能教育,旨在为培养符合未来社会需求的、具备良好计算思维和创新思维的人工智能人才奠定基础。它一方面帮助中小学生了解人工智能对现代社会的影响,关注相关前沿知识;另一方面完成对高等教育阶段人工智能专业的知识和能力结构的衔接,为培养新时代人工智能人才提供发展动力。

要在中小学阶段广泛开展人工智能普及教育,首先要解决教学内容的问题。从教学内容来看,能力模型是教学目标的指南针,通识学习是教育的基础,而实训实践项目是突破口。从这三个方面出发,才能打造层次分明、目标明确的K-12人工智能课程知识体系。

本文通过文献调研等方法,对国内外编程教育的教学实践存在的问题进行了分析,并通过技术选型和实践,提出了一种基于自动化机器学习(AutoML)技术的人工智能教育项目开发流程,以期对我国青少年人工智能教育的实践实训项目开发提供一些借鉴。

一、开展K-12人工智能教育是时代的要求

回顾教育发展的历史,每一次技术变革都会带来教育理念的重大变化,其本质在于技术对人类社会发展的推动作用。人工智能技术是一种生产力的变革,正在推动经济社会发展要素的变化。

国务院在2017年发布的《新一代人工智能发展规划》[1]中,明确指出:“到2025年,人工智能基础理论实现重大突破,部分技术与应用达到世界领先水平,人工智能成为我国产业升级和经济转型的主要动力,智能社会建设取得积极进展;到2030年,人工智能理论、技术与应用总体达到世界领先水平,成为世界主要人工智能创新中心。”教育部在2018年发布的《高等学校人工智能创新行动计划》中,从前沿创新、人才培养、科技成果转化与示范应用等方面提出了具体的行动目标[2]。

人才培养是系统性工程,为了构建多层次、阶梯化的人工智能人才培养体系,势必要按照人才培养的规律,打造从K-12到高等教育的全过程的人工智能教育。按照人才培养规律来教书育人,就是要针对不同学习阶段的知识结构、智力发展水平,有针对性地制定不同的教学目标,设计不同的配套课程。

教育部《关于全面开展中小学生人工智能教育的提案》的答复中明确指出,目前,我国中小学相关课程已安排人工智能教学内容。小学科学、初中科学、普通高中信息技术、普通高中通用技术和中小学综合实践活动等已将人工智能教育相关内容纳入到课程内容之中[3]。

二、K-12人工智能教育概念的相关辨析与发展现状

(一)人工智能教育与一些概念的区分

长期以来,由于人工智能教育的高度专业性和复杂性,导致部分教育者对于人工智能教育教什么、如何界定、人工智能教育的目标是什么还存在认识上的偏差,还存在将人工智能教育与其他教育类型混淆的情况,因此,要解决人工智能教育存在的问题,就不得不谈容易与人工智能教育混淆的一些教育类型。

1. STEM 教育

STEM教育的基本理念是培养跨学科并使用多学科的思维方式和知识解决实际问题的能力。STEM教育在利用数学工具对实际问题建模的能力方面有较为具体的教学目标,并对多学科的综合能力提出了较高的要求。

2. 机器人教育

机器人教育一般是通过预制的教育机器人产品的组装、编程和运行的教学过程,激发学生学习兴趣,培养学生综合能力,有时也被视为STEM教育或者创客教育的工具。实际上,这类教程内嵌的知识基本与人工智能无关,或者虽然某些组件用到了人工智能的产品,但是人工智能封装在了部件功能里面,与整个教学过程没有太多联系。

3. 编程教育

编程教育主要是介绍变量、循环、递归和函数等逻辑概念,培养学生在某个语法框架下解决问题的能力。编程教育考察的重点主要是在算法设计和对日常问题的应用建模,在培养学生的计算思维方面具有不可替代性。

4. 创客教育

创客教育一般的实施方法是以某种电脑开源硬件为平台,综合多种工程技术能力比如编程、电路等进行创意设计和作品开发。创客教育的核心是支持学生开展基于创造的学习,鼓励学习者在学习过程中主动发现、自主探究,培养批判性思维,强调在解决问题的过程中培养学生的创新能力和艺术创作能力[4]。

那么人工智能教育与上述教育类型的区别是什么呢?美国人工智能促进协会(AAAI)、美国计算机科学教师协会(CSTA)等机构联合发布了K-12人工智能教学指南。这个指南对从小学到高中的基础教育阶段人工智能教学的目标、内容、资源给出了科学、专业的设计。在美国版的指南中,把适合K-12阶段学习的人工智能知识分为5大主题——感知、表示与推理、机器学习、人机交互、社会影响。

(1)感知指通过传感器感知世界,它涵盖了人工智能领域的很多重要应用,如语音识别、计算机视觉、场景理解等。

(2)表示与推理指通过特定的逻辑模型表示现实世界,并进行推理,像网络智能搜索、自动驾驶汽车、人工智能对弈等都是它的具體应用。

(3)机器学习指计算机通过数据以及各种算法进行学习,它的具体应用有机器翻译、各种搜索、识别系统的训练等。

(4)人机交互指计算机与人类自然交互,如聊天机器人、教育中的智能学习伙伴等。

(5)社会影响要求对人工智能带来的正面或负面的影响予以关注,包含了人工智能在道德层面的决策标准、设计方案等。

上述5个主题从性质上覆盖人工智能的各领域,因此,课程内容和目标以这5个主题为基本框架,并在此基础上设计了各主题中的主要概念和分级学习目标[5]。

教育部《普通高中信息技术课程标准(2017年版)》[6]将高中层次的人工智能能力目标层次定位在:

(1)了解人工智能的发展历程及其概念;

(2)能描述典型人工智能算法的实现过程;

(3)通过开发简单的智能技术应用模块;

(4)亲历设计与实现简单智能系统的基本过程与方法;

(5)增强利用智能技术服务人类发展的责任感。

(二)当前K-12教育存在的不足

目前的人工智能教育产品容易陷入两类误区。第一类把创客教育或机器人教育包装成所谓的“人工智能教育”,这类产品的特点是以之前的创客教育或者STEM教育体系为主,讲授机器人的传感控制或编程知识。这和人工智能的核心主题关系不大,没有涉及人工智能学科领域;第二类则忽略人工智能专业的庞杂性,导致开发的课程体系与K-12学生的知识体系和认知水平差异较大,难以获得良好的教育效果[7]。

事实上,人工智能的应用领域非常广泛,在计算机视觉、语音识别、机器人学、自动驾驶等应用领域里,每一种应用领域都涉及丰富的内容,从数据的变换和特征提取这一方面,不同的领域就有不同类型的数据对象,涉及不同的物理原理,需要做不同的变换,而这些处理大部分与人工智能的核心没有直接关联,比如视觉计算里面的数据变换涉及到图形学等基础知识,如果要展开讲解RGB空间变换和图像变换这些内容,则需要引入较多的数学知识,这在时间和知识结构上都超出了K-12的范畴。上述问题是导致人工智能教材最后变成了创客教程的最直接原因。

K-12阶段的人工智能教育并不只是夯实编程基础与对人工智能的简单科普,更不能只是简单加入人工智能知识的编程课,人工智能教育与创客教育、编程教育等有着截然不同的侧重点。通过对K-12阶段的人工智能教育的主题分类、能力目标的总结可以看到,中小学人工智能的教育,既不是拘泥于某个AI产品的学习,也不是强调编程和算法能力,最重要的是学习从AI的角度来认识世界,以AI的视角来理解世界、解决问题,这是一种思维方式的锻炼。AI教育融入到中小学,不是把大学的课照搬到中小学,而是“重思维、轻编程、浅AI”。让学生用计算思维的方式进行分析,用创造性的思维去想象解决方案,最终用设计思维去生成产品和作品。在课程内容上,可根据课程目标的要求,特别是不同年龄段目标的设定,选择相应的内容。

(三)当前人工智能教育的效果分析

《中小学阶段人工智能普及教育现状调研报告》表明,许多受访者对于人工智能的应用和人工智能基本概念的认知存在不足[8]。如下页图1所示,受调研的学生中有近八成表示对人工智能概念有所了解,但多数学生对人工智能的理解多依靠生活经验和感性认识,停留在感性和具象的水平。如实际生活中辨识度较强的对话机器人、自动驾驶汽车、语音空调、绘画机器人等是多数学生眼里的人工智能。在认为“不属于人工智能技术分支”的回答中,我们能够发现更多的学生填写了大数据、深度学习、图像识别、情绪识别这几个方面。不难看出,学生对人工智能概念理解的准确度仍存在不小的偏差。笔者认为当前人工智能的教育仍然离目标有一定的距离。可以看到从教材的针对性、实验的设计和师资水平方面仍有较大的提升空间。

三、人工智能教育的改进措施

随着人工智能课程开始纳入我国基础教育阶段以来的各种问题得到关注,《普通高中信息技术课程标准 (2017年版)》再次重新设计了“人工智能初步”模塊。从课标的变化上来看,传统信息技术教育注重软件技术的学习,而当前的人工智能教育更注重核心素养的培养,包括计算思维和对人工智能的理解。“人工智能初步”课程的开展要求更加符合实际,侧重项目式教学,同时,课程体系强调对学生的个性化培养。

但是无论概念如何简化,人工智能教学项目的讲授,都离不开复杂的建模。对于创客教育和机器人教育来说,软硬件可以开发出半成品交付给教学,但模型是人工智能的核心产品,其训练过程伴随着教学过程。而一个机器学习模型的训练包括了从数据的获取、清洗、特征提取和变换,模型的训练是一个漫长过程。师资水平不足,也限制了K-12阶段的人工智能教学的实际开展。

本研究在调研了机器学习领域近年来的发展的基础上,提出利用近年来涌现出来的基于AutoML技术的建模产品助力K-12的人工智能教育的建议。

在机器学习从业领域,一个项目有大约80%的时间用在做数据清洗和特征工程,仅有20%的时间用来做算法建模,并且在模型的训练阶段,大量的超参数的调试也需要专业的知识,这样就导致机器学习和人工智能对于普通人来说变得门槛过高,对于K-12阶段的学生来说,哪怕是高中阶段的知识,也难以支撑起基本的机器学习算法比如线性回归的介绍,而且可以应用的案例较少。因此,越来越多的教育从业者也希望能够降低机器学习的入门门槛,尤其是降低对特定领域的业务经验要求、算法调参经验等,甚至做到无代码训练模型,基于这一背景,AutoML应运而生。

大部分的AutoML主要是基于神经网络架构搜索NAS(Neural Architecture Search)和迁移学习(transfer learning)技术,利用强化学习或进化算法来设计新的神经网络结构,以及利用迁移学习和预训练好的模型加速模型的收敛速度。

AutoML的兴起对其他领域的企业将AI应用到业务提供了一种可行的方案,同时也将变革带入了K-12的人工智能教育。AutoML将模型训练作为一种无门槛或者低门槛的服务提供给了市场,企业、教育机构和个人均可以利用AutoML产品获得人工智能的优势,对于教育从业者来说,可以设计和开发出更生动、更能激发学生创作灵感的学习资源和项目,让学生可以更直观地获得对人工智能的感受,对机器学习概念的理解。AutoML的出现开启AI平民化的历程,也让K-12的人工智能教育能够更多的聚焦在基本概念的理解、机器学习的应用实践上,无疑对于K-12的人工智能教育意义重大。

四、K-12人工智能教学应用案例

本文在测试了技术可行性的基础上,引入了一个基于micro:bit和谷歌teachable machine的人工智能教学方法,示范如何在K-12课堂里面开展人工智能教育。

(一)micro:bit

micro:bit是一款面向青少年编程教育,由微软、英国广播电视公司(BBC)、英国兰卡斯特大学等20几家机构合作开发设计的微型电脑开发板,该开发板集成了加速度计、电子罗盘、蓝牙、按钮、LED点阵表,适合作为K-12教育阶段的创客平台。除了英国以外,micro:bit已被利用到一些国家和地区的信息技术课程中,被视为正式课程里的内容。

micro:bit主板集成了丰富的传感器和接口,无需独立采购太多配件,即可完成许多任务,开发板界面如图2所示,部分功能介绍如下页表1所示。

与之配套的,微软公司开发了基于web浏览器的makecode平台,可以便捷地为micro:bit的开发提供一个IDE环境和模拟器。makecode平台支持积木语言、JavaScript和Python三种语言,学习者可以在三种语言之中实时切换使用。Makecode还提供了一个模拟器,假若忽视micro:bit实体开发板的输入输出,makecode的模拟器几乎可以替代micro:bit的开发板,用于大量编程实验的开发和设计之中,既降低了成本,也能实现编程开发。

基于micro:bit的创客教程非常多,makecode的官网上也有很多的例子,包括利用micro:bit的LED阵列显示各种动态、静态的图案以及结合板载加速度计、麦克风等传感器对显示内容进行反馈和修改等。另外一些高级教程则需要用到更多的智能配件,比如在大量的micro:bit教育产品套装里面,可以利用micro:bit控制摄像头、服务器等配件的游戏产品,比如智能小车、机器人等。这些教程,体现了micro:bit的强大功能性和可玩性。然而,各种高级套件和各类机器人培训和竞赛吸引大量使用者目光的同时,我们也应看到,由于机器学习的理论门槛较高,以及对模型的训练、师资、教学时间、知识结构均提出了较高的要求,导致真正的人工智能教育项目较难实施,而许多人工智能的训练营、课程,实际上与讲授人工智能存在差距。

(二)谷歌teachable machine

谷歌的创意实验室发布了teachable machine,这是一个基于AutoML的免费在线模型训练器,可在浏览器中使用机器学习,使用网络摄像头作为输入来训练自己的机器学习模型。所有的训练都是使用deeplearn.js软件库在浏览器中完成的,该软件库是一个使用硬件加速的JavaScript库,由Google Brain PAIR团队构建并开放提供。要使用teachable machine,用户只需要对自己想要识别的一些对象拍照,训练的加速是通过下载称为“squeezenet”的预先训练好的神经网络实现的。研究显示,相对于做对比的神经网络,squeezenet减少了50倍的训练参数。这意味着,squeezenet可以作为小于0.5MB的文件下载。虽然该神经网络具有更少的参数,但其分类效果不逊于大型的神经网络。

借助谷歌teachable machine建模工具,可以把人工智能的应用简化成一种流水线,让学生跳过复杂的数学过程,对于模型、特征,有更直接的感受,从而为学生理解人工智能的模式提供了很好的启蒙,为其以后的探索和求知奠定基础。

比如,可以上传或者通过摄像头录制不同的分类的训练图片,然后在浏览器里通過拖拽teachable machine的模块即可完成模型的训练。

整个模型的过程,从导入数据到打标签到训练模型,所有的操作都是通过拖拽完成。在这个模型生成以及训练的过程中,不需要人为的干预。训练数据例如图片则不会同时上传到云端的服务器,模型的训练全在本地进行,这确保了隐私得到了充分的保护。在模型训练完毕,可以将模型保存在本地,也可以选择将模型上传到云端进行共享。

教师在教学过程中,可以快速地在浏览器中建立模型,并在浏览器中直接演示模型效果。谷歌在2017年第一版的teachable machine里面只支持图片的分类任务,目前已经扩展到了对姿势、声音的识别和分类,可以方便应用开发者和课程建设者开发出各种有趣的应用。

(三)将micro:bit与teachable machine结合,打造有趣的人工智能应用

如果机器学习模型的分类只能在浏览器中完成。但是如果能够实现让micro:bit接受teachable machine模型的推导结果,针对不同的结果,作出不同的动作,就把可玩性拓展了,这实际上可以通过p5.js库来间接实现。p5.js是一个JavaScript的函数库,它的设计目标就是让艺术家、设计师、教育工作者和编程初学者能够轻易地用程序来开发各种创意应用,因此在很多创客项目里面都有广泛的使用。

teachable machine作为模型训练器,其模型输出结果无法直接控制micro:bit,而p5.js提供了很便利访问串口的方法,因此可以通过p5.js将web端(teachable machine的分类器的结果)写入串口,然后micro:bit在指定的串口侦听接收的数据,完成与teachable machined的通信的。整个人工智能应用的实现原理和工作流程如下。

1. 模型训练和生成:利用teachable machine训练模型,并把模型存储在云端,记录下模型的URL。

2. 获得模型分类结果:编写p5.js脚本并运行,p5调用摄像头实时采集图像,将数据发送给模型进行推导,然后将推导结果发往注册的micro:bit串口地址。

3. 将micro:bit的处理逻辑用makecode写入主板并运行。

这个流程框架大大降低了模型训练的难度,这不但让教学者,甚至学生也能参与到人工智能应用到创作中来,构思出大量有趣的、真正基于人工智能的应用,比如用动作来指挥micro:bit演奏不同的音符,或者用手势来指挥micro:bit控制小车移动等。micro:bit的不同反馈是利用机器学习中的图像分类来实现的。teachable machine还支持对姿势、声音的分类识别,基于类似的原理,教师可以快速地建成各种模型,并将建成的模型应用到不同场景。

五、结语

K-12人工智能教育的意义在于培养学生有意识地利用人工智能思维来思考和解决问题的能力。在教学上,应该思考如何以一个完整的人工智能项目的实施流程,在帮助学生体验人工智能的同时,创新性地应用人工智能解决实际问题。由于人工智能学科的特殊性,目前,K-12 人工智能教育仍处于探索阶段,无论是在教学内容设计还是师资培养上,均有待大量的研究和实践。作为一种将AI平民化的工具,AutoML技术潮流带给教育领域的变革潜力是巨大的。因此,在调研了目前主流产品的情况下,本研究提出了一种人工智能课程资源开发的流程以资参考,期望借此促进K-12人工智能教育的科学化、系统化开展。

[参考文献]

[1]中国政府网. 国务院关于印发新一代人工智能发展规划的通知[EB/OL].(2017-07-20)[2021-11-06].http://www.gov.cn/zhengce/content/2017-07/20/content_5211996.htm.

[2]中华人民共和国教育部.教育部关于印发《高等学校人工智能创新行动计划》的通知[EB/OL].(2018-04-03)[2021-11-07].http://www.moe.gov.cn/srcsite/A16/s7062/201804/t20180410_332722.html.

[3]中华人民共和国教育部.关于政协十三届全国委员会第三次会议第2453号(教育类225号)提案答复的函[EB/OL].(2020-12-08)[2021-10-20].http://www.moe.gov.cn/jyb_xxgk/xxgk_jyta/jyta_jia oshisi/202101/t20210128_511574.html.

[4]卢宇,汤筱玙,宋佳宸,等.智能时代的中小学人工智能教育:总体定位与核心内容领域[J].中国远程教育,2021(5):22-31+77.

[5]方圆媛,黄旭光.中小学人工智能教育:学什么,怎么教——来自“美国K-12人工智能教育行動”的启示[J].中国电化教育,2020(10):32-39.

[6]中华人民共和国教育部. 普通高中信息技术课程标准(2017年版)[Z]. 北京:人民教育出版社,2018:1.

[7]谢忠新,曹杨璐,李盈,等.中小学人工智能课程内容设计探究[J].中国电化教育,2019(4):17-22.

[8]中国青少年科技辅导员协会人工智能普及教育专业委员会.中小学阶段人工智能普及教育现状调查报告[R].2018-11-27.

[作者简介]黄镭,广西信息职业技术学院互联网科技学院助理研究员,硕士,研究方向:机器学习理论、大数据与教育数据分析。

[责任编辑 韦书令]

猜你喜欢
编程模型人工智能
自制空间站模型
玩游戏学编程,Blockly Games上手玩
纺织机上诞生的编程
2019:人工智能
编程屋完成数百元万天使轮融资
人工智能与就业
学编程,先画画
模型小览(二)
数读人工智能
圆周运动与解题模型