基于开源平台的Python程序设计课程教学改革探索

【www.zhangdahai.com--其他范文】

曾 毅

Python是当下人工智能、机器学习最为热门的编程语言之一,它拥有丰富的第三方库,能完成人工智能开发的所有环节,因此《Python程序设计》课程是人工智能专业人才培养基础课程中最重要的课程之一。

随着计算机领域技术的不断发展,开源社区和开源学习平台为技术学习者和爱好者提供了一个自由学习、交流的空间,并已发展成为计算机和信息领域知识传递的一个主流途径。互联网上的开源项目多不胜数,覆盖了大数据、人工智能应用技术的数据分析、图像处理、语音识别等方面。一方面,学生可以通过开源项目的学习,在掌握理论基础知识的同时接触到企业优秀的真实开发实践项目,解决学生在人工智能专业学习过程中遇到的实践平台和实践案例缺乏的问题。另一方面,学生通过开源实践项目的实践,才能真正体会到基础课程的作用,也就是知道为何而学,从而激发其学习主观能动性。

《Python程序设计》课程是人工智能专业必修的专业基础课程,其目的是帮助学生熟练使用Python开发环境,熟练运用数据类型、切片等知识,熟练掌握Python函数、类的设计、文件读写的功能以及数据分析工具Numpy和Pandas。换一句话来说,学生通过课程的学习,掌握Python的使用方法,从而解决专业知识领域中包括大数据分析、图像处理等技术应用的问题。

当前,在课程教学中主要存在的问题有:课程内容枯燥乏味,重在强调编程思维,教材中所提供的人工智能方向实践项目较少,且所列举的实践案例普遍知识点单一,无法体现知识的连贯性和综合性,满足不了学生专业学习的要求;
实践环节往往以验证性实验为主,实践内容无法与专业领域相结合,不能有效激发学生专业学习的兴趣。

基于开源平台的Python程序设计课程建设,要考虑学生已有的知识水平、专业方向特点以及当前的行业应用热门问题,以难度适中、循序渐进为原则,以应用型人才培养为核心,围绕行业应用中实际问题的解决能力培养,从教学目标、教学内容、教学设计、教学方法等方面进行全方位改革,以激发学生专业学习的兴趣,满足学生专业学习目标要求。

(一)明确教学目标。《Python程序设计》课程以开源项目实践为主线,以Python基础知识应用为驱动,通过案例和问题引入内容,重点讲解以Python为工具解决实际问题的方法,并穿插介绍相关的语言知识。通过加强学生的分析解决问题的能力和实践动手能力进行训练,以达到学练合一的目的。因此,课程的教学目标设置如下所示。

1.素质目标。具有高度的社会责任感以及实事求是、严谨认真的工作态度。

2.知识目标。掌握Python基本语法、组合数据类型、函数的定义、模块的调用、文件的读写以及数据分析工具Numpy和Pandas的使用。

3.能力目标。具备良好的Python程序设计能力和编写能力以及能够使用Python解决基本的数据处理、可视化问题。通过开源实践项目培养学生计算思维能力、创新能力和发现问题、分析问题以及解决问题的能力和团队协作的能力。

(二)重构教学内容。基于开源技术平台,围绕人工智能应用开发目标,制定了如下主要课程教学内容。

1.Python基础知识。基本语法、数据类型、控制结构。

2.函数。函数的声明、函数的定义、函数的调用。

3.模块。加载内置模块、加载包、常用内置模块的使用、内置模块中的常用函数。

4.面向对象编程。类和对象的定义和使用。

5.文件处理。常用文件的操作方法。

6.科学计算库Numpy和数据分析工具Pandas。数组的处理、数组的索引和切片、Pandas中的两种数据结构、Pandas的常用操作。

7.数据预处理。数据清洗、合并、重塑、转换的常见操作方法。

8.数据可视化。Matplotlib绘制图表、Seaborn的基本使用。

引入课程中的开源项目为房价预测项目和农产品分拣项目。其中房价预测项目使用数据分析工具Numpy对现有的房价数据进行预处理、分析,并最终实现数据可视化。项目实现所涉及的知识点包含函数定义、模块调用、面向对象设计、文件处理、科学计算库Numpy和数据可视化,教学中把主要知识点的讲解贯穿于项目的实现过程。农产品分拣项目则通过图像识别实现智能农产品分拣系统,即可以自动根据设置的水果等农作物的品级进行分拣,项目的重点内容涉及对数据的预处理、函数的定义、模块的调用等。

(三)改革教学设计。课堂上主要采用项目导向式教学。在讲授过程中,首先演示项目运行的效果,然后讲解项目实现的步骤,分析每一个步骤使用到了哪些知识点,帮助学生结合课程知识点建立一个完整项目的概念,最后对每一个步骤分解知识点进行讲解和演示,采用边做边学,在做中学的教学模式。

借助开源框架技术平台,重点讲解数据的处理、模块的调用知识,对于模型构建、模型训练等步骤,只需要学生掌握如何调用平台提供的现有资源即可。

(四)教学改革实施。

1.项目准备阶段。由于学生对于Python的基础知识还未了解,因此在此阶段以课本知识内容为主,通过边学边做的教学方法使学生首先掌握Python基础知识、Python组合数据类型,为后续的项目阶段打下基础。

2.项目设计阶段。在项目一房价预测任务中,我们采用百度飞浆的开源项目波士顿房价预测。首先给学生展示项目代码运行的效果,然后与学生一起讨论房价的走势与什么因素有关。某个城市的房价往往会受到多种因素的制约和影响,比如周边的治安环境、空气质量、学校情况和到市中心的距离等,每一种因素所占比重不同,可以通过现有数据利用模型计算分析出来。所以,首先需要收集现有房价的相关数据,然后对数据进行预处理,之后调用模型进行分析,找出房价和各种因素之间的关系,从而实现房价的预测功能。因此,该项目主要包含四个步骤:数据处理、模型设计、模型训练和模型部署。

在项目二农产品分拣项目中,采用百度飞浆的开源项目基于PaddleHub实现桃子分类。首先给学生展示项目代码运行的效果,然后引导学生思考消费者如何判断农产品的品级。该项目以水果品级分拣场景为例,每到丰收季节,大型水果种植园都需要雇佣大量工人进行水果分拣的工作,这往往耗时长、人力成本高;
除此之外,人工分拣水平层次不一还可能会造成农场主收益受到极大的影响。智能水果分拣系统的出现,可以自动根据提前设置好的农作物品级进行分拣,这不仅仅能大大降低人力成本,提高处理效率,还能提升分拣的准确性,保障农场主的利益。水果品级分拣主要以水果的形状、个头、颜色等特征为依据,因此项目的设计思路是首先输入已划分好品相等级标准的桃子图像,调用模型进行特征提取训练,从而找出品相等级与特征之间的关系,然后对已训练的模型进行评估测试,最后完成训练模型的部署及应用的实现。

3.项目实施阶段。围绕课程的教学目标,对项目的设计方案进行分步实施,教学的重点放在数据处理、模型调用上。学生通过随机分组,4~6人组成一个团队,在老师的指导下动手完成每一步骤的工作。

在房价预测项目中,对现有房价相关数据的处理包含五个步骤:数据导入、数据形状变换、数据集划分、数据归一化处理和封装load data函数。数据预处理后,最终才能被模型调用。数据处理各步骤所涉及的知识点如图1所示。

图1 房价预测项目数据处理流程知识点分布

完成对现有房价相关数据处理后,就可以直接调用设计好的模型进行模型训练,最后对训练结果进行可视化展示。

在农产品分拣项目中,首先将桃子按照品相分为四个等级,将收集的桃子图像数据集切分为训练集、验证集和测试集,然后使用PaddleHub完成数据读取器的构建,并对原始图像数据进行预处理使其规范化,包括尺寸的设置、图像的裁剪等。完成数据预处理后,调用PaddleHub中提供的Resnet50模型进行训练,然后对训练模型进行评估测试,通过加载模型预测并输出桃子图片的分类等级,利用数据可视化知识返回预测的实际结果,最后完成模型的部署和应用。

4.项目收尾阶段。在每个项目收尾阶段,学生首先对项目完成的过程及出现的问题进行总结,然后老师对团队的项目完成情况及团队成员的表现进行点评,同时再次复盘项目的实现步骤及每个步骤所使用的知识点,并引导学生通过调用平台提供的不同模型进行数据训练,对比测试结果,找出解决问题的最优模型。

最后,要求所有团队做到对知识的举一反三,例如项目一房价预测项目的知识可以应用于解决类似的飞机票价格预测、酒店房价预测、股票价格预测等问题,项目二农产品分拣项目的知识可以运用于解决垃圾分类、人脸识别等图像识别、物品分拣的问题。基于所完成的两个实践项目,学生团队自主选择一个题目,共同完成项目的开发、答辩,并以此作为期末成绩的评判依据。

基于开源平台的Python程序设计课程教学,不再简单地把理论知识和实践内容独立分开讲授,而是在实践过程中去讲授理论知识的应用,突出动手能力和专业技能的培养,充分体现了计算机学科教育中重视实践的教育理念。其次,在开源实践项目的选取上可以优先选择与专业方向一致或者相关度高的案例,这样可以有效地解决计算机教学中普遍存在的教学过程脱离真实应用场景的问题,并能通过完整的项目流程帮助学生构建整体的知识体系,让学生明白学完这个知识点或者这门课程,我能解决什么实际问题。最后,学生通过开源项目的实践训练,提高了分析问题和解决问题的能力、学以致用的能力、团队协作的能力,通过对开源项目实现过程中知识点的逐层分解,引导学生边学边做,并在课程教学项目的基础上最终实现一个自己感兴趣的项目,极大地激发了学生的学习主动性和学习兴趣。随着国内各类开源社区的建设和开源技术框架的兴起,基于开源平台课程建设的思路也可以应用于其他计算机类课程的建设,以解决计算机类课程教育中一些存在已久的问题。

猜你喜欢 调用开源房价 盛松成:什么才是中国房价持续上涨的真正原因?房地产导刊(2021年8期)2021-10-13梧州市房价运行和减少金融杠杆的思考活力(2021年6期)2021-08-05两大手段!深圳土地“扩权”定了,房价还会再涨?房地产导刊(2020年11期)2020-12-28核电项目物项调用管理的应用研究商品与质量(2019年34期)2019-11-29五毛钱能买多少头牛创新作文(1-2年级)(2019年3期)2019-09-032019开源杰出贡献奖软件和集成电路(2019年7期)2019-08-30系统虚拟化环境下客户机系统调用信息捕获与分析①计算机系统应用(2019年3期)2019-03-11大家说:开源、人工智能及创新办公自动化(2016年18期)2016-08-20开源中国开源世界高峰论坛圆桌会议纵论开源与互联网+创新2.0办公自动化(2016年18期)2016-08-202016房价“涨”声响起商业文化(2016年3期)2016-04-19

推荐访问:教学改革 程序设计 开源

本文来源:http://www.zhangdahai.com/shiyongfanwen/qitafanwen/2023/0613/610839.html

  • 相关内容
  • 热门专题
  • 网站地图- 手机版
  • Copyright @ www.zhangdahai.com 大海范文网 All Rights Reserved 黔ICP备2021006551号
  • 免责声明:大海范文网部分信息来自互联网,并不带表本站观点!若侵害了您的利益,请联系我们,我们将在48小时内删除!