资源预览内容
第1页 / 共16页
第2页 / 共16页
第3页 / 共16页
第4页 / 共16页
亲,该文档总共16页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
高中人工智能课程项目案例资源设计与开发 张学军 董晓辉摘 要 随着新版普通高中信息技术课程标准(2017年版)的发布,案例教学资源尤其是具有情境性、复杂性、综合性、实践性等特点的项目案例教学资源的建设成了一项亟须解决的任务。面对目前项目案例资源严重不足的现状,文章在相关研究基础上,基于大数据时代背景下人工智能应用的视角,提出了基于大数据的人工智能应用开发框架,阐述了该开发框架所包含的网络爬虫应用开发和基于大数据的人工智能应用开发流程的设计。基于该开发框架并结合新版普通高中信息技术课程标准(2017年版)中的“人工智能初步”模块要求,构建了高中信息技术课程的人工智能应用设计框架。基于该设计框架,使用Python语言开发了有声小说、教育故事文本分析、人脸检测与人脸识别三个人工智能应用项目案例。这些项目案例融合了大数据、人工智能应用的典型特征,具有较好的迁移性,不但可以在高中信息技术课程中的“人工智能初步”模块以及其他模块中使用,其设计框架也为基于学科核心素养的高中信息技术课程教学的落地提供了一种解决思路。关键词 大数据; 人工智能; 高中人工智能课程; 项目案例资源; 设计与开发 G434 文献标志码 A作者简介 张学军(1968),男,甘肃会宁人。教授,博士,主要从事数字化教育资源设计与开发、人工智能教育研究。E-mail: xjzhang99。一、问题的提出根据美国市场调查公司IDC的预测,人类产生的数据量正在呈指数级增长,这个速度在2020年之前会一直保持下去。预计到2020年,全球将总共拥有35ZB(1ZB数据相当于全世界海滩上的沙子数量的总和)的数据量。一方面,数据量的爆炸式增长、社会的日益数字化,促使人类社会进入大数据时代1;另一方面,大数据、云计算等技术推动人工智能进入快速发展期,以大数据为原材料、人工智能为引擎的科技时代的来临不可阻挡。在教育领域,基于大数据的人工智能应用将使教育更加接近教育的本质:系统地帮助学习者提升认知能力并服务于学习者的个性化需求2。2017 年,国务院出台的新一代人工智能发展规划明确提出,在中小学阶段设置人工智能相关课程,逐步推广编程教育3。新版普通高中信息技术课程标准(2017年版),将“人工智能初步”模块列为选择性必修课4。由于人工智能课程难度较大,不宜采用传统的“讲授”式教学,更適合应用情境化、基于问题、基于案例的教学模式5。从现有的理论研究来看,有较好价值的中学人工智能教育案例研究的成果很有限6-8;从目前的实际应用情况来看,类似人工智能基础(高中版)9这样的配套了实验平台(提供案例)的教材还不多,提供的案例资源也很有限。项目案例资源作为一种特殊的教学资源,以贴近实际的项目为载体,具有情境性、复杂性、综合性、实践性等特点,能够更好地帮助学生理解并运用知识来解决实际问题。因此,本文所在研究团队开发了几个典型的可用于高中人工智能教育应用的项目案例资源,为高中人工智能教育如何落地提供依据,同时,也为高中一线信息技术教师如何上好人工智能课提供可借鉴的思路。因为开发的项目案例资源既涉及人工智能教育应用,同时,又关联大数据如何获取。所以,该项目案例资源不但可用于高中“人工智能初步”模块的教学,而且高中信息技术课程其他模块也能参考使用。二、大数据背景下人工智能课程的技术基础高中信息技术课程的人工智能应用项目案例涉及数据获取(网络爬虫)和人工智能领域的语音合成、文本分析、人脸检测与人脸识别等多种技术。(一)网络爬虫网络爬虫是一种自动下载网络资源的程序10 ,网络爬虫按照实现的技术和结构可以分为通用网络爬虫、聚焦网络爬虫、增量式网络爬虫、深层网络爬虫等类型11。笔者所在研究团队开发的3个项目案例中的网络爬虫属于聚焦网络爬虫。聚焦网络爬虫也叫主题网络爬虫,顾名思义,聚焦网络爬虫是按照预先定义好的主题有选择地进行网页爬取的一种爬虫。聚焦网络爬虫在开发时要关注以下几点:第一,根据主题确定要爬取的网站数据;第二,分析整个网站的数据结构(确定网站的URL格式,确定网页的数据格式、编码格式以及对外请求方式);第三,编写代码时,首先要通过请求网络获取服务器响应后的数据,其次要分析数据结构,通过解析的方式过滤出有用的数据,最后把过滤的数据进行保存(本地保存或数据库保存)。本文在3个项目案例中使用Python语言,利用网络爬虫技术根据主题需要爬取了1057720部小说(文本)、2060篇教育故事(文本)和30680张人物图片。(二)语音合成语音合成是文本转换为语音的技术12。基于深度神经网络(DNN)的语音合成一般要经过如下步骤:文本文本分析特征提取DNN处理参数生成波形生成语音13-14。使用应用程序编程接口(API)是快速获得语音合成等相关应用结果数据的好方法。很多知名的大公司都开放了API,如国外的Google、Amazon和国内的百度、腾讯、阿里巴巴、科大讯飞等公司都开放了大量人工智能API,其中百度开放的人工智能API涉及百度语音(语音识别、语音合成)等11个大类和许多子类。本文在项目案例1“有声小说”中,使用Python语言,通过调用百度语音API中的语音合成API,将1057720部小说(文本)转换成了相应的语音文件(mp3格式)。(三)文本分析文本分析也称为文本挖掘,是从文本数据中获得高质量的信息和见解所遵循的方法和过程15。文本分析一般由获取文本信息(原始文本)、分词(将原始的文本分割成一个个独立的词)、文本清洗(去除无用的标签、特殊符号、停用词)、标准化(词干提取、词形还原)、特征提取(词频率与逆文档率、词嵌入、文本转换为稀疏矩阵)、建模(相似度算法、分类算法)等环节组成。本文在项目案例2“教育故事文本分析”中,使用Python语言,通过调用百度人工智能自然语言处理API中的情感倾向分析API,实现了2060篇教育故事文章的情感倾向分析。项目案例2中2060篇教育故事文章的文档主题分析,则是使用Python语言,通过调用机器学习scikit-learn库中隐含Dirichlet 分布(LatentDirichletAllocation,LDA)模块实现的。(四)人脸检测与人脸识别人脸检测,简单来说就是从图片找到人脸的位置。一般来说,人脸检测应该可以正确检测出图片中存在的所有人脸,不能有遗漏,也不能有错检16。由于人臉识别一般包含人脸检测环节,所以本文主要介绍人脸识别。人脸识别是基于人的脸部特征信息进行身份识别的一种生物识别技术17。本文在项目案例3“人脸检测与人脸识别”中,使用Python语言,通过调用百度人工智能人脸识别API中的人脸检测API和人脸对比API,实现了所选静态图片的人脸检测和人脸识别,对于动态环境(摄像头刷脸)下的人脸检测和人脸识别,则是使用Python语言,通过调用人脸识别库face_recognition和计算机视觉库python-opencv联合实现的。三、基于大数据的人工智能应用开发框架设计大数据背景下的人工智能应用开发不能只考虑人工智能应用因素,需要融合互联网大数据、人工智能应用两大因素,形成“互联网大数据+人工智能应用”的开发思路。(一)基于大数据的人工智能应用开发框架设计基于大数据的人工智能应用开发涉及四个关键词:大数据、人工智能应用、网络爬虫、大数据与人工智能应用的结合。对于大数据,主要考虑大数据从哪里来以及如何存储,本文认为目前大数据的主要来源就是互联网,互联网上有各种各样的大数据,这些大数据来自于教育、文化、历史等各个领域,互联网大数据一般不能直接使用,要通过网络爬虫下载到本地,选用适合的存储方式存储成为可直接使用的大数据。本文认为,人工智能应用主要涉及自然语言处理、语音技术应用、图像技术应用等应用领域;只有将本地大数据与人工智能应用相结合,才能满足包含教育类文章主题分析等各种具体应用项目的要求。基于大数据的人工智能应用开发框架如图1所示。互联网是孕育各类大数据的非常重要的来源。互联网上的大数据浩如烟海,如教育、文化、历史、新闻、科技、体育、汽车、旅游、时尚、阅读、图片、音乐、电影、动漫、游戏、视频、博客、微博、社区等各类大数据,应有尽有。开发时,首先要根据主题需要选择其中的某类主题,然后通过百度等搜索引擎查找、分析互联网上与所选主题尽可能吻合的网站作为大数据的来源;然后利用网络爬虫技术编写爬虫程序,将所选网站上相应主题的大数据下载到本地电脑形成本地大数据;接下来根据开发需要选择人工智能应用中的某类应用(目前能实现的人工智能应用涉及自然语言处理、语音技术应用、图像技术应用、视频技术应用、知识图谱应用、增强现实应用等多种类型,开发者可根据开发需要选择其中具体的某类应用来进行);最后针对下载到本地的某个主题的大数据(如教育类文章),利用人工智能应用中的某类具体应用(如文章分类),开发相应的基于大数据的某个具体的人工智能应用(如教育类文章主题分析)。(二)网络爬虫应用开发流程设计网络爬虫应用程序是实现从互联网大数据到本地大数据转移的主要技术手段,网络爬虫应用开发流程如图2所示。以Python语言为例,首先根据主题确定要爬取的网站数据,分析整个网站的数据结构(确定网站的URL格式,确定网页的数据格式、编码格式以及对外请求方式),导入Python中os、time、re、json等本地库以及requests、bs4、lxml、pandas等第三方库,设定要爬取网站的地址;然后运用requests中get等方法爬取网站数据,利用解析、过滤方法(如lxml中xpath)解析、过滤网站数据,编码为所需要的格式(如utf-8),并通过数据保存方法(如pandas中to_csv)保存到本地文件(当然也可以根据需要采用其他方法保存到本地数据库)。(三)基于人工智能API的人工智能应用开发流程设计基于人工智能API的人工智能应用程序是实现基于大数据的人工智能应用的常用技术手段和核心环节。本文的人工智能应用程序所需的大数据,指的是将所需要的互联网大数据经过网络爬虫应用程序爬取下来保存到本地的大数据。基于人工智能API的人工智能应用开发流程如图3所示。以使用Python语言开发语音合成为例,首先导入Python中os、re等本地库以及人工智能语音处理第三方库(如百度语音处理aip);然后读取爬取好的本好大数据如本文中的1057720部小说,根据需要将每部小说切分成长度为1024字节的一系列片段(百度人工智能语音aip每次处理的文本长度要求不超过1024字节);调用人工智能API(如百度语音处理aip库中AipSpeech模块的语音合成方法systhesis)将相应文本数据转换为音频数据;最后将音频数据保存为mp3文件(本文在程序中还调用了ffmpeg软件,将初步生成的一个个片段mp3文件拼接成了一个完整的mp3文件)。四、高中信息技术课程人工智能应用设计框架高中信息技术课程人工智能应用设计框架的构建有三个依据:(1)普通高中信息技术课程标准(2017版)中“人工智能初步”模块的要求;(2)华东师范大学出版社和商务印书馆联合出版的教材人工智能基础(高中版)内容要求;(3)基于大数据的人工智能应用开发框架。人工智能应用设计框架如图4所示。普通高中信息技术课程标准(2017年版)中“人工智能初步”模块内容要求明确指出,通过剖析具体案例,了解人工智能的核心算法,熟悉智能技术应用的基本过程和实现原理;知道特定领域(如机器学习)人工智能应用系统的开发工具和开发平台,通过具体案例了解这些工具的特点、应用模式及局限性;利用开源人工智能应用框架,搭建简单的人工智能应用模块,并能根据实际需要配置适当的环境、参数及自然交互方式等4。这些内容要求在图4中的“基于大数据的
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号