中学人工智能课程算法教学的策略探究

作者: 王敏

中学人工智能课程算法教学的策略探究0

摘要:算法是人工智能技术的核心,因为其内容抽象、概念复杂,在中学人工智能课程中实施教学有一定难度。作者结合多份指导文件的相关内容要求,针对算法的特点,提出了三个方面的教学策略——融合场景需求问题引导、清晰目标定位优化方法、资源平台辅助搭建支架,以期能够有效提升教学效率,培养学生计算思维。

关键词:中学;人工智能;算法;教学策略

中图分类号:G434  文献标识码:A  论文编号:1674-2117(2024)06-0030-04

随着《新一代人工智能发展规划》的发布,人工智能课程在基础教育领域越来越受重视。《普通高中信息技术课程标准(2017年版2020年修订)》(以下简称《高中课标》)设置选修课程“人工智能初步”,内容要求了解人工智能的核心算法,熟悉智能技术应用的基本过程和实现原理。[1]《义务教育信息科技课程标准(2022年版)》(以下简称《义教课标》)设置了“人工智能与智慧社会”模块,要求学生不仅要了解人工智能的三大技术基础——数据、算法和算力,还应该“初步了解人工智能中的搜索、推理、预测和机器学习等不同实现方式”[2],且首次在初中阶段涉及人工智能算法的内容。算法是人工智能应用的基础和核心,它决定了人工智能系统的性能和表现。算法的学习有助于理解人工智能的基本原理和核心概念,因此,如何提高人工智能算法的教学效率,培养学生的计算思维和解决问题的能力,是开展中学人工智能教育的重要课题。

问题背景

算法是人工智能课程不可或缺的组成部分,在基础教育领域,除了《高中课标》和《义教课标》外,各级部门或组织也发布了一系列的指导文件,其中有中国教育学会中小学信息技术教育专业委员会的《中小学人工智能课程开发标准》(以下简称《开发标准》)、中央电化教育馆的《中小学人工智能技术与工程素养框架》(以下简称《素养框架》)。各类文件均对人工智能课程培养目标、学习内容、学段要求等进行顶层设计,并且都关注到人工智能的算法,具体的内容与要求如下页表所示。

四份文件从各自角度针对“算法”加以说明:《高中课标》和《义教课标》是学科纲领性文件,都特别注重算法应用的具体场景,强调通过分析生活中的典型案例,理解其背后的算法原理;《开发标准》明确人工智能技术领域的划分,指出技术实现的具体算法内容,以及对应的层次关系;《素养框架》按学段目标,提出“算法”在各阶段应达到的素养标准。前两者是具有权威性的课标文件,指导算法模块的教学实践,后两者分别界定算法的具体内容、规范对应的素养目标,侧重解决“教什么”和“教到什么程度”的问题,是课标的有益补充,具有重要的参考价值。

问题现象

计算机算法是一组有穷的规则,它规定了解决某一特定类型问题的一系列运算,是对解决问题方案的准确与完整的描述。算法是计算机科学中最基本的核心概念之一,几乎贯穿于计算机科学的各个领域。在人工智能课程中,学生需要学会如何设计、实现和应用算法,以解决实际问题。但对中学生来说,算法本身难以理解,较为抽象,无法直接观察算法的实现过程,很多情况下需要借助分析代码的运行结果来理解其步骤;算法教学实施难度大,大多数没有相关的知识基础,教学活动容易变成浅层体验,或浮于表面;相关配套的教学资源不足,虽然中学人工智能课例日渐丰富,但是涉及具体算法的内容还较少。因此,笔者认为,针对中学阶段的人工智能算法教学,应以场景分析为主线进行问题引导,以培养目标为导向优化方法,以资源平台为辅助搭建支架,来提升教学效率,促进算法内容的有效落地。

解决策略

算法是人工智能技术的核心,只有真正理解其基本原理,才能做好人工智能的普及教育。结合以上指导文件的内容要求,针对人工智能算法的特点,笔者认为可以从“道”“术”“形”三个方面促进教学实施。

1.“算”亦有道:融合场景需求,问题引导

算法是解决问题的步骤和过程,难点在于抽象。现有不少版本的中学人工智能教材,其算法章节往往是大学教材的简单移植,重心放在算法的程序实现,忽略了实际应用场景的支撑,学习过程略显枯燥。中学人工智能课程应重视问题的需求分析,融合问题提出的背景,让算法与应用场景紧密联系,有助于学生对算法的深入理解和认识。同时,针对中学生的认知能力和学科基础,在提出问题、分析问题时,将晦涩难懂的算法简单化、趣味化处理,可以提高学生的学习兴趣,促进学生持续探究。

例如,在“智能失物招领处”学习主题中,教师以学生在校园易丢失的物品为切入点,建立智能招领处。学生在完成任务的过程中不断分析问题,观察结果,思考机器是如何学会识别物品的、如何有效提供有关物品的数据;在体验机器学习的一般流程后,学生进一步考虑模型识别效果与哪些因素有关、如何提升模型识别的成功率等。该主题以实际的校园生活需求为导向展开教学,最后教师设计了拓展问题:校园生活中还能做哪些智能化设计?该问题涉及的场景极为丰富,如入校登记、图书馆管理、食堂订餐、校园角落改造等。

又如,决策树算法是《高中课标》列出的核心算法之一,主要通过构建一个树状结构来对数据进行分类或预测。在教学时,教师可以用熟悉的购物思路类比,如人们在购买喜欢的商品时,总会有多重考虑,如何做出恰当的决策?借此分析决策树的构成与实现原理。类似的生活场景还有疾病诊断、金融借贷、选课系统等,学生自主选择感兴趣的场景,以项目报告的形式进行问题探究活动。

算法学习是计算思维的具体体现和实际应用,适宜在问题解决过程中设计活动,开展基于问题的教学。聚焦复杂情境中的问题,将算法融入典型案例的分析中,再运用算法来解决问题,在场景应用中感受算法之美,这样才符合算法之“道”。

2.“算”亦有术:清晰目标定位,优化方法

中小学人工智能课程已逐渐形成体系化,在面向不同阶段的学生时,课程定位、教学目标均有所区分,小学、初中和高中三个学段的侧重点有所不同:小学重在感悟,初中重在体验,高中重在创造创新。[4]《素养框架》针对“算法”提出,初中阶段能够阐述某项技术的算法原理,给出流程图,而高中阶段则能够用不同算法解决同一问题,并且对比分析优劣程度。[5]因此,教学中需根据学情分层适宜开展,依据教学目标选用恰当的方式,算法实践的常用方法有体验式学习、图形化编程、半成品代码和完整程序等,课堂实施难度依次增加,可综合考虑灵活选用。其中,体验式学习侧重对算法功能的理解,通常采用“黑箱测试”,根据输入输出的数据观察运行结果,不涉及具体程序的编写;图形化编程直观便捷,避免学习不必要的编程知识,部分算法内容模块化封装,较易理解算法的整体框架;半成品代码注重问题分解,将大问题分为多个小问题,形成相互关联的功能模块,一般编写较少的几行程序语句即可,有利于理解算法的关键步骤;完整程序编写则需要较好的编程基础,编写代码并调试运行,能够真正掌握算法的全貌和具体实现。

例如,在学习聚类算法时,在“猜你喜欢”主题时,学生扮演数据分析师的角色,通过平台用户的多种数据,分析其行为特点和购物喜好,活动中数据不断增加,任务层层递进,最后使用指定的程序,输入前期的各项数据,观察程序的运行结果,验证结论。体验式学习对学生的编程基础几乎没有要求,重点在于理解算法原理,通过案例分析了解算法的应用,较易实施。但由于没有学习具体的程序,学生无法模仿和改造,难以迁移应用到其他类似问题中。同样属于聚类算法,在“物资配送中心选址”主题学习中,项目提出如何建立卫生防控物资配送中心的问题,采用了Python半成品代码的形式。项目的主程序分为读取数据集、实现聚类和可视化绘图三个模块,其中“实现聚类”是程序的核心,基于k-means算法又可以分为导入聚类模块、确定聚类个数、训练模型和预测结果四个部分如下图。整个程序有几个特定位置,通常也是算法的关键步骤,由学生进行代码填空,不需要编写所有语句。这样,半成品代码形式抓住了算法原理的关键,有效降低了程序实现的难度,保障了教学的顺利实施,在此基础上学生能够提出设想,改编设计新的方案来解决同类问题。因此,实践中不能好高骛远,要以学段目标定位和学生认知能力为起点,根据学情基础优化方法,教应有“术”,才能更好地促进算法学习。

3.“算”亦有形:资源平台辅助,搭建支架

算法的抽象性决定了教学实施难度大,且执行过程难以观测,而人工智能算法又比编程领域的基础算法更加复杂,学生往往知其然而不知其所以然。因此,在教学中,教师可使用多种形式让算法“有迹可循”,充分开发与利用学习资源,搭建学习支架,降低学生的认知负荷。算法常用的描述方式有自然语言、流程图和伪代码等,除此以外,还可以使用图形、动画、视频和模拟工具等,丰富算法的视觉化效果,直观呈现算法的实现过程,使学生的思维活动有具体表象的支持。

例如,在“搜索”的学习中,算法思想是在状态空间树中从初始状态出发,按照条件找到目标解,主要包括深度优先搜索、广度优先搜索、启发式搜索等。搜索算法在中学信息学竞赛中涉及较多,有经典的全排列、八皇后等问题,代码简洁,但过程复杂,教学中应尽可能演示求解的执行过程,如全排列问题,借助算法可视化模拟工具,通过参数设置分步动态演示,将每组数字排列生成的过程依次呈现,使抽象的搜索过程具体化、形象化,增加教学的趣味性和实效性。

与基础算法相比,人工智能算法往往还需要平台、算力和数据等的支持。例如,《义教课标》提到的推理和预测,在人工智能领域均依赖于数据模型的训练,在课堂教学实践中可适当引进人工智能开放平台,体验机器学习领域的建立数据集、定义模型、训练模型、评估和部署模型等整个流程,认识在数据支持下预测、识别和检测算法的应用,有助于增强学生的算法实践能力。另外,学习支架还可以包括适合班级教学的人工智能应用,如机器人、智能音箱等,能更丰富地表达算法的运行结果,增强体验效果,激发学生探究人工智能学科的兴趣。

结语

算法教学不是注重结果的编程测试,而是在“做中学”,纵向上注重知识层次递进的过程,横向上关联具体场景应用的分析。相信随着人工智能应用领域的不断扩大,算法将进一步优化,教师也需加强专业知识学习,有效利用和开发课程资源,帮助学生掌握算法原理,培养计算思维。

参考文献:

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

[2]中华人民共和国教育部.义务教育信息科技课程标准(2022年版)[S].北京:北京师范大学出版社,2022.

[3]中国教育学会.中小学人工智能课程开发标准[EB/OL].[2021-10-20].http://www.cse.edu.cn/.

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

[5]中央电化教育馆.中小学人工智能技术与工程素养框架[EB/OL].[2021-11-30].https://www.ncet.edu.cn/zhuzhan/tztgao1/20211130/5505.html.

经典小说推荐

杂志订阅