当人工智能遇上青少年科技创新活动
2023-06-02谢作如
谢作如
近年来,人工智能技术发展突飞猛进,各种应用不断刷新人们的想象力。从识别准确度超过人眼的计算机视觉开始,人工智能逐步走向产业化。而以ChatGPT 为代表的AIGC(人工智能生成内容)兴起则再次告诉人们,人工智能将必然成为推动科技跨越发展、生产力整体跃升的驱动力量。与人工智能的快速发展几乎同步,中小学人工智能教育也在受到越来越多关注。2017 年发布的《普通高中信息技术课程标准》在必修课程中增加了“人工智能”的要求,《义务教育信息科技课程标准(2022 年版)》则将“人工智能”作为重要的学习内容。
科技创新活动与科普活动是中小学跨学科学习活动最典型的代表,也是学有余力的学生的重要选择。很多科学工作者和工程师都是因为少年时期参加科技创新活动得到启蒙,从而确定了人生目标。我们深信,人工智能很快会成为继计算机、互联网、开源硬件与物联网之后,最重要的青少年学习和工作的助手,融合了人工智能技术的科技创新活动呼之欲出。
人工智能是青少年科技创新活动的新研究工具
随着人工智能的发展,机器学习成为科学发现中日益重要的核心工具,它能够对大规模科学实验数据进行建模与分析。科学家认为“机器猜想+ 科学智能”将成为科学发现的新范式,并在这方面取得了许多令人瞩目的重大进展,典型例子如地球科学领域的预测天气、生物科学领域的预测折叠蛋白质结构等。2023 年,科技部会同自然科学基金委启动了“人工智能驱动的科学研究”专项部署工作。
既然人工智能终将成为科学发现的主要研究工具,那么在科技创新活动中强调人工智能,培养利用人工智能解决问题的意识和能力,能够帮助青少年对未来科学研究工作形成全新的认识。而深度学习的兴起,促使人工智能的技术门槛开始降低。只要拥有足够丰富的数据,借助算力与开源算法,很多人都能训练出人工智能模型。换句话说,只要掌握了机器学习的流程,即使不了解原理,甚至不熟悉编程,都能用人工智能解决问题——因为智能可以通过“喂数据”而获得。那么,人工智能在青少年科技创新活动中可以发挥哪些作用呢?
方向之一:解放人力,处理复杂繁琐的事务
在当前的青少年科技创新活动中,数据探究这一活动主题逐步受到重视(典型活动如长三角中学生数据探究大赛、国际青少年人工智能交流展示会深度学习挑战赛等),但收集与整理数据恰恰又是科技创新活动中最复杂、最繁琐的工作之一。利用人工智能完成重复繁琐的数据处理工作,能够很好地体现出人工智能的重要价值,即解放人力。比如,在科学观察实验中用摄像头实现自动识别,在种子发芽实验中用摄像头统计数量,对大量的非结构化数据进行智能处理等。
案例1. 利用人工智能助力科学观察 科学课程中有很多关于观察植物的探究活动,但往往只要求学生用肉眼观察植物的每天生长情况,以文字形式记录在本子上。这样的观察记录无法提供具体的监测数据。如果要探究植物的生长情况与环境(如土壤湿度、光照等)的关系,那不仅需要定时拍摄照片,还要同步记录数据,二者结合才能够更加直观分析植物在不同环境下的生长情况,从而了解植物的习性特点。温州中学学生编写了一个能够同步记录图像与传感器数据的信息系统。这个“科学观察辅助工具”(图1)可以運行在“行空板”或者“虚谷号”上,使用摄像头采集画面,通过土壤湿度传感器记录土壤信息。当摄像头的画面发生变化(如开花、结果、有害虫等),或者传感器的数值发生变化,则自动保存图像,并在图像上标注相应信息。其中判断是否开花结果与虫害,使用了MMEdu 训练的目标识别人工智能模型。借助这类系统,能够将人从繁琐、无聊的观测工作中解放出来。
案例2. 利用摄像头统计种子发芽情况 种植活动是劳动教育的重要组成部分,而研究不同条件下(如光照、温度、pH 值等)种子萌发的差异则是常见的科学实验。通过种子萌发实验,取得实验数据,分析检验就可以获知不同条件下种子萌发是否存在差异。一般来说,这种研究都会采用对照实验的方式开展。种子萌发实验并不复杂,但要得到较好的统计意义,避免小数据带来的误差,数据量应该要大一些。可是种子数量一多,定时统计就成为一种较重的负担。广州的曾祥潘老师探索了一种利用计算机视觉辅助观察的研究方法。他在实验过程中用摄像头定时拍照记录,再利用深度学习目标检测算法识别照片中的发芽种子,取得实验数据,最后使用R 语言对两组数据进行检验。在发芽种子的识别方面,他使用了YOLO v5算法和SAHI 深度学习推理辅助工具。
案例3. 对“好问题大赛”数据的深度探究 不同地区的学生在见识方面是否一致?他们的提问能力有什么不同?而这些差别与地区GDP 是什么关系?带着这样的问题,温州中学的章锦阳等同学深度探究了中国学生好问题征集评选活动的100 多万条数据。他们选择了上海和赣州两个地区,借助分词和词频统计等技术进行多方面比较,最后得出相关结论。在这一过程中,他们遇到的最大困难在于如何确定问题的类别,毕竟100 多万条数据不可能一一靠人力标注。他们最终找到了清华大学开源的中文文本分类工具包(THUCTC)。借助这一工具,简单编程后批量完成了这个工作(图2)。有趣的是,学生发现THUCTC 的文本分类效果并不够好,因为模型是基于长文本(新浪网站文章)进行训练,对短文本并不适用,于是他们选择了计算机专业进行学习,立志要设计更好用的文本分类工具。
方向之二:另辟蹊径,通过采集数据解决数学难题
科技创新活动关注生活中的真实问题,学生常常会遇到一些需要用数学知识解决的难题,如用数学公式表征多组数据之间的关系。很多有趣的科技创新活动主题就因为受限于学生的数学知识而无法普及。有时候学生还会遇到有些数据彼此关联密切,却又找不到精确数学公式表示的情况,如工程应用和经济分析领域。那么,用采集数据加上训练模型的方式拟合多种物理量之间的关系,显然是一种有效的解决问题方式。我们可以把神经网络看成万能数据拟合工具,即使是一个黑箱子,也不妨碍人工智能成为学生开展科技创新活动的好帮手,从而培养数据意识和计算思维。
案例4. 用超声波传感器检测障碍物的方向 2017 年,我曾经与学生研究用超声波传感器识别前方障碍物的方向,即利用三角函数知识,通过障碍物和不同传感器的距离计算出角度(原理见图3)。根据超声波传感器测量障碍物的方向,可以应用在无人车驾驶、目标跟踪等场景。因为背后的数学公式有点复杂,没有学过三角函数的小学生是难以理解的。2022年,我们重新设计了这一案例,采用深度学习模拟这一数学公式,现在小学高年级的学生也能用收集数据训练模型的方式完成障碍物角度的计算了。经过测试,我们使用BaseNN(上海人工智能实验室开发的神经网络库),仅仅搭建了3 层全连接神经,不到200 轮的训练(借助CPU 训练也仅花了1 分钟),就很好地模拟了这个函数的曲线。BaseNN 的代码简洁,很容易理解(图4)。
方向之三:模式识别,简化复杂场景的数据编程
在青少年科技创新活动中应用各种传感器已经非常普遍,如各类机器人的开发。单一传感器的编程并不复杂,但涉及到的传感器一多,编程的难度就呈指数级别上升。机器人竞赛中的追球、投篮等场景,会涉及到视觉、距离、方向等传感器,就连巡线任务也会使用1 组传感器。有些应用场景与时间、空间相关,即使涉及的传感器不多,编程也很复杂。如判断人的运动状态,不管使用视觉传感器还是加速度传感器,都是经典的难题。因为加速度与坐标在运动过程中是不断变化的,识别某种状态需要得到运动过程中的所有数据,而每次检测到的数据不可能完全相同,总会因为速度的快慢、形状的偏差而产生相近但不相同的数据。面对这些较复杂的场景,如果使用机器学习的方式解决,编程难度会大大减低。
案例5. 利用机器学习做一个魔法棒 对魔法感兴趣的学生希望设计一个魔法棒,配合不同角度的挥动,就可以实现奇特的效果,比如点燃火把、拉开窗帘等。挥动魔法棒其实是改变各个方向的运动速度,而衡量运动速度变化的物理量是加速度。温州中学的徐浩森等同学采用深度学习成功识别出了魔法棒的常见“法术”。他们选择了掌控板,先通过不断重复手势而得到标注过的加速度数据,然后用神经网络训练出模型用于识别新的数据。经过测试,仅仅采用了3 层全连接神经网络,就能获得不错的识别效果(图5)。虽然掌控板不能直接部署模型推理环境,但可以通过网络将数据发送到服务器再返回结果的方式实现。
人工智能是青少年科技创新活动的新研究对象
与其他经典计算机算法不同的是,人工智能模型的训练与数据集的关联特别密切。当面对一个真实的问题情境,即使在最新SOTA 模型(SOTA 是state-of-the-art 的缩写,指在某项研究任务中目前表现最好、最先进的模型)的支持下,也需要微调很多参数,因而人工智能专家会戏称训练人工智能模型为“炼丹”。要训练出一个优秀的模型,得做大量实验,甚至需要对经典模型进行细节处理,值得不断研究。
另外,虽然对青少年的知识储备来说,很难做到独立设计性能优秀的算法模型,但是对现有的SOTA 网络进行一些细节调整,如修改Dropout 层的参数或者增加几层全连接网络,有时也能产生很不错的效果。因此,人工智能不仅是青少年的科学研究工具,也是值得探索的研究对象。
方向之一:不同算法模型的联合工作
面对一些较为复杂的识别任务,业界的常见做法是搭建一个层数较多的复杂网络模型。对青少年来说,也有一种看起来“笨拙”却有效的做法,即采用多种SOTA 模型进行灵活组合。比如要在图像中识别做出点赞动作的嘉宾,可以先利用目标检测中的人体识别模型找出人体,再采用图像分类的方式进行判断;也可以采用多目标检测的方式同时识别人体和点赞手势,再找出和这个点赞手势坐标重合的人体。不同的算法模型组合后,能够解决很多复杂任务。
案例6. 一种基于投票机制的图像分类算法实现 2023 年的国际青少年人工智能交流展示会发布了一个深度学习挑战赛,数据集为“令人困惑的动物”。因为图片的相似度很高,采用当前常用的SOTA 模型MobileNet,只能取得不足60% 的准确率;即使用了数据增强技术,增加训练次数,也难以提升准确率。来自温州中学的金驰洲等学生借鉴“三个臭皮匠,頂个诸葛亮”的古语,设计了基于投票的集成深度学习方法,即将多种SOTA 模型联合使用,采用投票机制获得更好的学习效果。他们先后训练了DenseNet121、DenseNet201、InceptionV3、NASNetMobile、ResNet50V2和Xception 等模型。研究证明,这些模型联合投票后准确率居然超过了86%,有非常显著的提升(图6)。
方向之二:低算力环境下的人工智能算法设计
在中小学阶段算力匮乏是普遍现象。如何在有限的算力中训练模型,或者在有限的算力中实现快速推理,都值得深入研究。相对来讲,一些内置模型的人工智能应用平台运行速度较快,如OpenCV 识别人脸,MediaPipe 识别人脸特征点、识别手势的速度,比我们自行训练的网络要快,充分利用人工智能应用平台快速识别的特点,在其识别结果的基础上进一步训练模型,是一种可行的低算力解决方案。
案例7. 基于循环神经网络(RNN)的时序动作识别 时序动作识别是常见问题,如人的手势动作、表情变化、行为趋势等。无论是图像分类还是目标检测技术,通过一张静态图像都很难准确判断。要读懂动态图像,一般要使用光流(Optical Flow)或者时空卷积技术,但这些算法模型都比较复杂,对算力的要求也比较高。上海人工智能实验室智能教育中心提供了一个简单方案识别人的动作。他们选择了Recognition of human actions 数据集,数据中包含6 种类型的人类行为(步行、慢跑、跑步、拳击、挥手和拍手)。先使用MediaPipe 逐帧获取视频中人体的骨骼信息,转化为一组坐标,然后借助循环神经网络(RNN)训练一个能够预测动作的模型,模型很小,效果却很不错,训练时间也很短,模型推理对算力要求很低。
人工智能是青少年解决工程问题的新神兵利器
《义务教育科学课程标准(2022 年版)》提出“探究实践主要指在了解和探索自然、获得科学知识、解决科学问题,以及技术与工程实践过程中,形成的科学探究能力、技术与工程实践能力和自主学习能力。”可见工程问题是科技创新活动的重要方向。在创客空间借助Arduino、掌控板这些开源硬件,设计各种创客作品是青少年科技创新活动的主要形式之一。现在,人工智能为青少年提供了新的神兵利器,能解决的问题更多了。
实际上,我们常说的人工智能教育往往仅关注模型训练。而人工智能要解决一个真实问题,特别是一个工程问题,肯定要结合其他技术形成一个智能应用系统——不仅要对输入的数据进行推理或者识别,还要根据识别结果执行相应的动作(即控制)。以设计一个看到小朋友的笑脸会打招呼的“微笑机器人”为例,除了训练并部署识别微笑表情的模型外,还需要多个相关工具:实时获取摄像头画面的工具,如OpenCV;能够驱动舵机的软硬件工具,如pingpong 和掌控板;能够部署人工智能模型的迷你电脑,如行空板;能合成语音的工具,如Pyttsx。
方向之一:走向多模态交互
人机交互是永恒的主题。作为艺术与科技结合最典型的代表——交互艺术更是融入了越来越前沿的技术。当一台个人计算机借助普通摄像头,就能识别人脸或者人体姿态时,教育工作者开始思考如何让人工智能的呈现更加有趣,以激发学生的学习兴趣。多模态交互技术中的模态(modality)可以理解为感官,多模态即多种感官融合,通过文字、语音、视觉、动作、环境等多种方式进行人机交互,充分模拟人与人之间的自然交互。多模態交互技术将成为中小学人工智能教育、科技创新活动的主流方向。
案例8. 制作有人工智能味的启动仪式道具 为了营造仪式感,一些大型活动往往会租用一些启动仪式专用道具,如几位嘉宾同时用手按下某个金属球。这样的启动仪式与会者的参与度不够,看多了就觉得无趣。而如何设计一个有人工智能味的启动道具,用于人工智能相关的校园活动中呢?上海人工智能实验室研究员王海涛设计了一个有趣的人工智能启动道具。他先制作了一个启动仪式的视频,然后用Python 控制视频的播放进度。在播放过程中,用训练好的模型检测参与人员是否做出点赞的手势,并实时呈现进度和点赞嘉宾的形象。等进度条到达100% 时开始播放整个仪式视频(图7)。这一道具的核心硬件是电脑和摄像头,学生都能参与开发,是一个很好的人工智能科技创新主题。
方向之二:走向万物智联
人工智能结合物联网,就形成了智联网。
利用HASS(HomeAssistant,一款开源的智能家居网关),能很方便地连通智能家居设备。引导青少年设计一些智能控制方向的有趣应用,融入学校智慧校园的建设工作,是一个很不错的方向,如温州中学的学生将实验室中的LED 灯泡、窗帘电机都接入智能系统,设计出功能更加强大的智能家居系统。从人工智能教育的视角看,智慧校园也将成为青少年的技术实践场。
案例9. 基于数字识别的灯光控制系统 手写体识别是经典人工智能实验,也是入门级的卷积神经网络实验,借助LeNet 网络模型和Mnist 数据集,一般在数分钟内就能训练出准确度较高的人工智能模型。但是模型训练出来后还能做什么,很多人工智能课程都没有进行拓展。温州中学的林夏一同学设计的“趣味二进制灯组”作品是一个很好的参考案例。用户在摄像头(高拍仪)下写0 ~ 255 之间的数字,智能终端将数字转化为二进制数字,然后发送相应的MQTT(消息队列遥测传输)消息到MQTT 服务器(SIoT),HASS 网关接收到消息后,控制实验室中的智能灯泡(8 个1 组)的开关状态(图8)。实际上,类似的作品还有手势控制窗帘、表情设置氛围灯光等,都是基于经典人工智能实验室的衍生作品。
结语
在陪同学生参与人工智能科技创新活动的几年中,我深深体会到用人工智能解决真实问题并非高不可攀。随着OpenInnoLab、XEdu这些工具平台的发布,学生完全有能力用收集数据、训练模型的方式开发出一些简单有趣的智能应用,在这样的活动中真正体会数据、算法和算力三大要素与人工智能之间的关系。在学习过程中,我们总是在不经意中发现一些好用的工具。聚沙成塔,集腋成裘,我们同时也积极参与开发了一些重要工具,开源了一些科技创新项目。
从国际青少年人工智能交流展示活动可以看出,一开始国内开展人工智能科技创新活动的学校主要集中在上海、北京这些大城市的名校。但随着人工智能教育的普及,参与的地区越来越多。2022 年,教育部课程教材研究所联合上海人工智能实验室,面向全国19 个实验区开展“中小学人工智能教育实践研究项目”。2023 年,上海人工智能实验室启动了新一代人工智能师资成长营活动。这些都意味着中小学人工智能科技创新活动很快将会从一些名校“飞入”寻常学校的课堂中。