项目5 趣味文本2_第1页
项目5 趣味文本2_第2页
项目5 趣味文本2_第3页
项目5 趣味文本2_第4页
项目5 趣味文本2_第5页
已阅读5页,还剩2页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

《趣味文本》教学设计2课题:趣味文学-智能对对联授课对象:中职课型:新授课课时:3~4课时教材分析:结构内容:本节课选自《人工智能通识》的项目七。本节课的主要内容体验自然语言处理的应用,了解自然语言处理技术发展趋势和应用场景,简单处理文本对联数据、分割数据集、调用已训练的模型,自动对对联。地位作用:如今人工智能已经逐步让人们的生活智能化,让企业服务智能化,那么无论为了工作还是为了跟上时代步伐,有必要去了解人工智能是如何运作的。本节课的学习将带领学生感知自然语言处理技术应用,需要学习关于智能对对联的操作,为后面的学习打好基础。学情分析学习心理特征:本节课的授课对象为中职一年级学生该阶段的学生学习自制力较差,上课注意力易被分散,因此在上课过程中,应该采用讲练结合的方式,让学生能够在实践中学习和巩固课程内容。同时该阶段的学生有很多自己的想法和创意,因此在设计任务时,需要给学生一定的自由发挥的空间,让学生自主地学习和实践。另外由于中职一年级的学生水平各不相同,因此教师在学生操作过程中应该实时观察,引导并鼓励基础较差的学生完成练习。知识基础:学生在之前的学习中已经感知到了部分人工智能技术的应用,对代码的实操和概念的理解会有一些基础。教学目标知识与技能目标:了解自然语言处理技术发展趋势和应用场景能够简单处理文本对联的数据能够分割数据集能够调用已训练的模型进行自动对对联的操作过程与方法:使用搜索引擎搜索信息,小组合作讨论智能对对联的应用和发展程度根据教师发布的实训任务书,自主进行对联数据的处理根据教师发布的实训任务书,自主通进行模型的调用,完成对对联的操作情感态度与价值观:能够体会到自然语言处理技术的奇妙和给生活带来的乐趣。通过小组合作的方式,培养学生的主动参与的意识,强化自身的责任感,以及增强自己的合作能力。教学重难点教学重点:1、什么是智能对对联?2、如何处理文本数据?3、完如分割数据集4、如何调用模型5、如何完成整体流程教学难点:调用模型智能对对联工作过程教学方法教法:任务驱动法、理实一体法学法:自主学习法、小组合作学习法教学准备教学环境:人工智能实训室教学资源:派LabAI云课堂,PPT课件,教案,实训源代码,相关素材教学过程教学内容及过程时间分配设计意图一、创设情景【教师活动】小派最近迷恋上了对对联,但是无奈没有人想和他battle一下,于是他又去求助了计算机,他想设计一个能够PK对对联的系统:小派出上联,计算机能够对下联。下面我们开始构建对联数据集并训练一个自动对对联的模型。2分钟该环节通过创设一个生活中真实存在的情景,让学生了解人工智能的应用。二、任务分析【教师活动】 本案例我们主要需要实现智能对对联的应用,展示自己的实训能力。首先我们需要对如何开展该任务进行分析(该过程可以让学生进行小组讨论回答)预设:首先需要能够简单处理文本对联的数据、然后能够分割数据集、最后能够调用已训练的模型进行自动对对联的操作【学生活动】小组展开讨论各小组发表自己的任务分析结果【教师活动】对各小组的讨论结果进行评价,最后进行小结,得出最后的任务分析结果:子任务一:简单处理文本对联的数据子任务二:能够分割数据集子任务三:调用已训练的模型进行自动对对联的操作3分钟该环节主要是对本节课的任务的一个讨论分析,在该过程中,让每个学生对接下来要完成的任务进行分析和讨论,让学生成为课堂的主体,提高学生的参与感,提升学生的自主思考能力。三、新知学习任务一:简单处理文本对联的数据【教师活动】本节需要掌握以下几个步骤;步骤1:解压数据集步骤2:文本按字用空格隔开步骤3:查看数据量步骤4:查看部分数据【学生活动】根据提出的要点进行实操。【教师活动】步骤1:解压数据集  点击左侧黄色文件夹图标,进入“data-sets”文件夹,压缩包“data_couplet.zip”中包含了我们收集的对联数据,上联和下联分别以文本形式储存与、于两个文本文档中,其中每一行文字代表一条对联的上、下联。共计70余万条。代码如下:!unzip-o-q./data-sets/data_couplet.zip-d./步骤2:文本按字用空格隔开  为了后续的模型训练,我们需要对原始文本进行预处理。下面我们打开两个文件逐行将文字以空格隔开,便于后续模型的学习和预测。样本示例处理前:欲捧行云空有憾处理后:欲捧行云空有憾代码如下:defsplit_data(filein):f=open(filein)#打开文件listout=[]#定义空列表,用于存储分割后的文字forlinf.readlines():#依次读取每行line=''.join(l)#每行中的每个文字用空格进行连接listout.append(line)#将处理好的一行文本加入listout列表中f.close()returnlistoutx_split=split_data('datain.txt')y_split=split_data('dataout.txt')步骤3:查看数据量  上一步处理的上联和下联数据分别以列表list形式保存于x_split、y_split中。通过len方法查看数据量的大小,同时确认处理后上联数据和下联数据总量是保持一致的。代码如下:print(len(x_split))print(len(y_split))【学生活动】小组讨论探究,各组分享探究结果【教师活动】进行总结总体还是围绕数据的查看来进行实训,同学们需要根据每一步骤,学习一个知识点,每个函数的使用方法和参数。最后进行同学答疑。15分钟在该环节中,通过对几个重要概念的介绍和讲解,能够让学生对自然语言处理技术有一定的认知。后续再增加课堂的实践性,让学生对项目的目标成果有个整体理解。【教师活动】请同学们思考,如何查看部分数据使用呢?预设:分别查看上联和下联的前10条文本。我们使用split()方法。  代码如下:#上联即输入x_split[0:10]#下联即输出y_split[0:10]【学生活动】思考并回答问题:各模式如何选择15分钟在该环节中,通过提问的方式引出接下来要操作的内容,同时让学生在动手操作之前能够思考为什么要做这个事.另外,让学生动手安装之后再抛出一个问题,让学生讨论发现问题的答案,而不是直接给出,增加学生之间的互动与交流。任务二:分割数据集【教师活动】在后续模型训练过程中,我们使用数据集的一部分作为训练集,一部分作为测试集。这里调用sklearn中的train_test_split来分隔数据集,其中考虑到数据总量达到70多万,参数test_size设置为0.01,这样测试集的大小为7000余条。代码如下:fromsklearn.model_selectionimporttrain_test_split#划分数据集x_train,x_test,y_train,y_test=train_test_split(x_split,y_split,test_size=0.01,random_state=2)#设置随机种子保证所有人结果一致【学生活动】参考实训任务书或派Lab平台上的实训指南,完成词向量训练的实操【教师活动】接下来我们要保存训练集和测试集将上一步得到的训练集的上联x_train、下联y_train,测试集的上联x_test、下联y_test分别保存起来。其中将训练集保存到train文件夹下,测试集保存到test文件夹下。代码如下:#将变量datain中的内容保存在对应的文件中defsave_file(datain,fileout):#打开文件fw=open(fileout,'w')forlindatain:#将数据写入文件中fw.write(l)fw.close()importosos.makedirs('./train')#创建文件目录os.makedirs('./test')#将训练集和测试集的数据依次保存到对应的txt文件中save_file(x_train,'./train/in.txt')save_file(y_train,'./train/out.txt')save_file(x_test,'./test/in.txt')save_file(y_test,'./test/out.txt')【教师活动】对学生的练习进行简单小结,指出学生常见的错误。30分钟在该环节中,主要介绍词向量相关,当然,这部分要考虑实现难度与学生的能力。给出一批代码样例,有条件的学生可以在此基础上进行改进。这里需要老师带着学生一起去理解代码之间的结构以及代码内部的核心部分。重点了解词向量的训练和应用。让学生对词向量的使用有所认知。步骤三:调用已训练的模型进行自动对对联的操作【教师活动】步骤1:导入代码包步骤2:读取训练数据和测试数据步骤3:将训练数据、测试数据分别进行分组存放步骤4:构建模型步骤5:训练模型导入代码包导入我们封装好的train_couplet包。代码如下:importtrain_coupletastc接着,读取训练数据和测试数据代码如下;#读取之前已经保存好的训练集和测试集x_train_txt=tc.read_data('./train/in.txt')y_train_txt=tc.read_data('./train/out.txt')x_test_txt=tc.read_data('./test/in.txt')y_test_txt=tc.read_data('./test/out.txt')然后将训练数据、测试数据分别进行分组存放。训练数据以字典形式存储,字典中的key代表对联的长度(包含的字数),字典中的value整体是个列表,列表中包含两个元素,一个是输入上联,另一个是输出下联,且上联和下联分别用id(某个字在所以数据集构成的字典中的序号)表示。样本示例如下:接着初始化模型结构、:model=tc.build_model(chars)最后训练模型:调用train_model函数开始训练,其中最后一个参数表示epochs(训练轮数,可以自行修改)。训练完成后,最优模型将会保存在当前目录下。所有步骤代码详见实训指导手册。30分钟该环节是一个实训环节,结合学生自身的特点,让学生自己参考任务书,完成任务,提高学生的自学能力,以及动手实践能力。四、课堂小结【教师活动】总结:在学习智能对对联之后,相信大家都对词的向量化有了自己的理解和认知,可做做总结2、出题测试5分钟让学生自

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论