基于开放AI云平台的人工智能教学探究
2022-01-19刘浩军
刘浩军
【摘 要】人工智能的快速发展引起社会广泛的关注,为了满足社会对创新人才培养的需要,《普通高中信息技术课程标准(2017年版)》更新了人工智能相关教学内容。然而中学阶段的人工智能教学还存在一些问题,如课程体系不完善、教学内容未涉及人工智能核心领域、课程的培养目标不明确等。笔者通过实践探索出一种基于百度AI开放平台的人工智能教学方式,期望为一线教师开展人工智能教学提供借鉴。
【关键词】人工智能教学;AI开放平台
【中图分类号】G434 【文献标识码】A
【论文编号】1671-7384(2022)01-064-03
目前,不少中学教师开始尝试开展AI教学。但由于缺乏相应的课程资源、师资没有得到足够培训、没有合适的教学平台等原因,中学阶段的AI教学还存在一些问题,如课程体系不完善,课程的培养目标不明确,教师对AI缺乏深入、全面的了解,还不能完全胜任AI课程的教学。
人工智能平台是人工智能教育开展的基础环境。目前人工智能教学还处于探索阶段,很少有教师根据教学实际需求和学生实践所需开展课程。同时,任课教师缺乏对人工智能平台的深入理解和掌握,没有充分发挥出人工智能开放平台的优势。
AI开放平台有助于人工智能教学的开展
学生学习人工智能,需要了解场景中的应用如何从技术中来,知道在高大上的技术表象背后蕴含着哪些基本原理,通过实践感受技术之间的联系。深入地学习人工智能需要很多的专业知识,如特征提取、神经网络、机器学习等,这些对学习者的数学能力有较高的要求。但是,对大部分高中生而言还不具备这样的能力,因此在教学中深究人工智能的算法和模型的建立、训练及改进过程对学生而言难度较大。基于上述原因,需要找到恰当的切入点使人工智能的学习活动得到有效的开展。
目前,很多互联网公司都有开放且可以免费使用的AI平台,提供了支持不同功能的API开放接口,用户在开发智能应用时,可以直接调用平台的代码实现相应的人工智能技术。因此,在教学中,教师可以通过项目学习的方式,基于一定的编程语言,结合具体的案例,如开发语音识别程序、开发人脸匹配程序等,让学生体验把人工智能变成现实的过程。学生在这一过程中,并不需要掌握复杂的算法,只需学会调用API接口的开源代码,放在自己设计的程序的合适位置即可。教师还可以提供给学生半成品代码,学生通过修改和完善功能模块的代码,体验开发人工智能应用的过程,理解不同模块间的逻辑关系,并了解技术背后的生成过程。
百度AI云平台介绍
AI Studio是百度推出的一站式开发平台。它囊括AI教程、代码环境、算法算力、数据集,并提供免费在线云计算的一体化编程环境。用户打开网址http://aistudio.baidu.com,就可以在AI Studio开展深度学习(图1)。学习者运用AI Studio可以建立自定义的AI模型。AI Studio提供全套免费服务,包括计算资源、空间资源、项目托管、学习教程等。AI Studio强化了工程项目的概念,在平台的AI学习项目版块包括大量真实场景的工程项目,如图像识别、情感分析、个性化推荐等,教师可以选择适合高中生体验的项目开展课堂教学。
AI Studio主要功能由公开项目、我的项目、样例项目、共享项目等部分组成,有各种经典数据集和自定义数据集,有详尽的机器学习和深度学习的教程及视频公开课等。进入AI Studio的主页,用户可以看到集成百度积累的经典AI学习项目,新手入门项目和用户分享的公开项目,自我项目管理及共享项目列表。整个平台都是以项目为核心的,非常适合开展项目式学习。
而数据集则包括一些经典的公开数据集,像MNIST手写数据集、鸢尾花数据集、房价预测、车牌数据等,还有一些开放的百度数据(中文短文本语料,信息抽取数据),非常适合高中生在平时开展项目学习时直接引用。同时,用户也可以上传自定义数据进行模型开发。
AI Studio不仅有机器学习、深度学习方面的视频课程和文档教程,而且包含了大量的各个方向的深度学习实例,如图像分类、词向量、个性化推荐、情感分析、语义角色标注以及机器翻译等,不仅从原理层面进行深入浅出的讲解,更提供模型代码逐行进行实操。样例项目都是一些机器学习经典应用场景,以Notebook的形式提供,用户可以把这些样例项目复制到自己的项目下进行学习开发。对于零基础的高中生来说,这个模块可以帮助他们快速上手。AI Studio也提供项目共享功能供大家互相学习。
AI Studio编程环境主体由Notebook形式组成,熟悉Jupyter的学生可以无缝衔接,比传统的Notebook优越的一点是项目的数据集会以列表的形式展示在Notebook左侧,可以很方便地一键获取数据集路径(图2)。该编程环境菜单栏更简洁,运行、增加代码、增加注释等基本功能都具备,可以保存为ipynb格式文件,支持Python2.7和Python3。
百度AI平台在项目教学中的应用
1.学情分析
高二学生在学习本项目之前,已具备一定的Python学习基础。学生在本项目中,将基于Python编程语言,通过修改和完善百度AI开放平台的开源代码模板,体验开发智能程序的过程。
2.项目学习过程
(1)项目选题。教师在介绍了人工智能在人脸识别方面的应用后,确定项目学习主题,请全班学生找出自己的学籍照片,通过调用百度AI人脸识别库实現单人或多人的人脸搜索。
(2)理论知识介绍。教师引入人脸识别技术,说明其是基于人的脸部特征,对输入的人脸图像或者视频流,提取每个人脸中所蕴涵的身份特征,并将其与已知的人脸进行对比,从而识别每个人脸的身份。人脸识别技术包含三个部分:人脸检测、人脸跟踪和人脸比对。
(3)项目探究。百度AI人脸库模块:使用百度账号登录百度AI平台,选择人脸识别;创建应用,通过创建应用可以获得一个AppID,每个AppID可创建相对应的人脸库,在人脸库下可以创建用户组,每个用户组下可添加用户UID;创建应用后会配到AppID、APIKey和Secretkey,通过调用接口获取认证字符串AccessToken。人脸图像采集终端模块:本模块涉及图像获取和编码,学生下载本人的学籍照片,借助教师提供的图像BASE64编码工具先对照片进行编码,通过http请求的方式,将编码后的图像和学生基本信息发送给百度AI人脸库模块,正常会返回成功标识,并显示学生基本信息。人脸搜索模块:人脸搜索也称为1:N识别,在指定人脸库中,找到最相似的人脸。学生已经通过第一步人脸库模块将自己的学籍照片加入到了人脸库,并且指定了UID,这一步将利用摄像头实施拍照,通过调用百度AI人脸搜索函数实现人脸识别,并返回相似度。
(4)完善项目实现视频流人脸识别。为了使程序满足实际用户的需求,学生需要进一步完善项目,解决在实际应用场景下,用户通过摄像头实现动态画面人脸识别,以及多人人脸识别。教师引导学生学习opencv库的基本用法和百度API文档,完善项目代码。
(5)项目展示和评价。学生以小组为单位通过摄像头采集其他成员的人脸照片,展示各自的人脸识别作品。采用教师点评和学生互评的方式对作品以及学生在项目学习中的过程性表现进行评价。
3.基于百度AI平台项目教学实施反思
由于人工智能算法对学习者的数学和编程基础有较高的要求,在项目教学设计时,以百度AI人脸识别模块作为编程环境,可以绕过复杂的算法学习,又可以探究人工智能的技术实现流程。
在项目式学习过程中,并不像一般的课程教学按章节来教学,这样会存在一个问题,有些知识点本来在后面的章节才重点学习,但本项目就已经涉及了,如百度人脸识别结果是以Json格式返回的,但是学生还不会解析Json数据。因此,教师在做项目式教学设计时需要做充分准备,为项目式学习的实施提供资源支撑。
学生在项目式学习过程中表现出了积极的一面,但存在的问题是如果学生的自主学习能力不强的话,学习的效果就很难保证。这就要求学生有较强的学习自主性,要求老师在开展项目式教学时要时刻关注学生的动态。
笔者在高二年级借助百度AI开放平台开展人工智能教学,取得了较好的效果。该年级不仅开设了人工智能体验式课程,还在AI Studio环境下加载数据、选择机器学习算法、进行模型训练,深入探究机器学习的过程,从而培养学生的创造思维和实践能力,实现学生信息素养的提升,为高中人工智能模块教学提供了借鉴。
作者单位:广东中山市桂山中学
参考文献
熊璋,吴建锋.普通高中信息技术课程必修1中的人工智能[J].中国信息技术教育,2020(11).
任昕.基于AI开放平台的人工智能教学初探——以情感倾向分析项目为例[J].中国信息技术教育,2019(8).
熊雪亭.人工智能进入高中信息技术课堂的探索与实践[J].中小学信息技术教育,2019(6).
余燕芳,李藝.基于计算思维的项目式教学课程构建与应用研究——以高中信息技术课程《人工智能初步》为例[J].远程教育杂志,2020,38(1).