资源简介 学习任务单课程基本信息课题《编程调用平台中的智能工具》教科书书名:《信息技术必修1:数据与计算》出版社:人民教育出版社、中国地图出版社出版日期:2019年6月学生信息姓名学校班级学号学习目标1.理解对话机器人的工作原理,经历使用编程开发智能工具的过程,完成对话机器人的编程实现。【计算思维】2.认识对话机器人在信息社会中的应用价值,体会人工智能对我们生活的影响。【信息意识】【计算思维】课前学习任务1.准备好学生资源中的素材以及任务单。2.在自己的电脑中安装好ChatterBot及ChatterBotCorpus模块,安装包已在素材库中提供。课上学习任务【学习任务一】对话机器人工作原理分析请尝试写出对话机器人的工作原理是什么。【学习任务二】对话机器人的开发实现请按照如下所示的步骤将对话机器人的程序代码写出来。构建机器人模型创建对话语料数据训练对话机器人模型与对话机器人开展对话【学习任务三】对话机器人的优化设计请按照如下所示的要求将对话机器人的程序代码写出来。创建中文对话机器人为对话机器人手动添加语料数据推荐的学习资源ChatterBot训练方式:1、通过列表数据进行训练chatterbot.trainers.ListTrainer(storage,kwargs)允许使用对话字符串列表来训练ChatBot。对于训练过程,您需要传递一个语句列表,其中每个语句的顺序基于其在给定对话中的位置。例如,如果你使用如下语言进行训练,则当你输入Hithere!或者Greetings!的时候机器人会回复你Hello。fromchatterbot.trainersimportListTrainerchatterbot=ChatBot("TrainingExample")chatterbot.set_trainer(ListTrainer)chatterbot.train(["Hithere!","Hello",])chatterbot.train(["Greetings!","Hello",])您还可以提供更长的训练对话清单。这将在列表中建立每个项目作为响应。chatterbot.train(["Howareyou?","Iamgood.","Thatisgoodtohear.","Thankyou","Youarewelcome.",])2、使用语料库数据进行训练chatterbot.trainers.ChatterBotCorpusTrainer(storage,kwargs)允许使用来自ChatterBot对话语料库的数据训练聊天机器人。ChatterBot附带一个数据语料库和实用程序模块,可以很容易地快速训练您的机器人进行交流。为此,只需指定要使用的语料库数据模块即可。3、指定语料库范围也可以一次导入ChatterBot语料库的各个子集。例如,如果您只希望根据英文问候语和对话语料进行训练,那么您只需指定它们即可。chatterbot.train("chatterbot.corpus.english.greetings","chatterbot.corpus.english.conversations")在调用train方法时,您还可以指定文件路径到语料库文件或语料库文件的目录。chatterbot.train("./data/greetings_corpus/custom.corpus.json","./data/my_corpus/")4、使用Ubuntu对话语料库进行训练Ubuntu对话语料库是一个海量数据集。当使用这个语料库时,开发者目前会遇到显着下降的表现,其形式是来自聊天机器人的延迟训练和响应时间。chatterbot.trainers.UbuntuCorpusTrainer(storage,kwargs)允许chatbots使用来自UbuntuDialogCorpus的数据进行训练。此训练类使您可以使用Ubuntu对话语料库来训练您的聊天机器人。由于Ubuntu对话语料库的文件大小,下载和训练过程可能需要相当长的时间。此训练类将处理下载压缩语料库文件并提取它的过程。如果该文件已被下载,则不会再次下载。如果文件已被提取,则不会再提取。(共61张PPT)编程调用平台中的智能工具(第三十一课时)课前准备2安装第三方库安装好ChatterBot及ChatterBotCorpus模块。1学生资源素材准备好学生资源中的素材以及任务单。智能客服3亿次在线咨询97%智能客服全天候服务减少人力提高效率对话机器人对话机器人是模拟人类对话聊天形式并提供服务的程序。探究一:对话机器人的工作原理机器学习学习规律数据预测探究一:对话机器人的工作原理模型历史数据训练新的数据输入未知属性预测探究一:对话机器人的工作原理对话机器人模型构建对话机器人的模型探究一:对话机器人的工作原理新的数据模型未知属性历史数据训练输入预测探究一:对话机器人的工作原理早上好!早上好!早上好!早!探究一:对话机器人的工作原理语句1早上好!语句2早上好!对话语料对话1语句1早上好!语句2早!对话2探究一:对话机器人的工作原理新的数据模型未知属性历史数据训练输入预测探究一:对话机器人的工作原理对话语料模型训练对话机器人模型(训练之前)对话机器人模型(训练之后)探究一:对话机器人的工作原理语句1早上好!语句2早上好!对话1语句1早上好!语句2早!对话2对话机器人的知识图谱探究一:对话机器人的工作原理语句1早上好!语句1最近怎么样?语句2早上好!语句2早!语句2我挺好的!对话机器人的知识图谱探究一:对话机器人的工作原理对话语料模型训练对话机器人模型(训练之前)对话机器人模型(训练之后)存储训练结果探究一:对话机器人的工作原理模型未知属性历史数据训练新的数据输入预测探究一:对话机器人的工作原理输入最近怎么样?匹配对话机器人模型(训练之后)探究一:对话机器人的工作原理语句1早上好!语句1最近怎么样?语句2早上好!语句2早!语句2我挺好的!对话机器人的知识图谱语句1最近怎么样?探究一:对话机器人的工作原理新的数据模型历史数据训练输入未知属性预测探究一:对话机器人的工作原理语句1早上好!语句1最近怎么样?语句2早上好!语句2早!语句2我挺好的!对话机器人的知识图谱语句1最近怎么样?语句2我挺好的!探究一:对话机器人的工作原理对话模型(训练结果)输入最近怎么样?输出我挺好的!应答匹配探究一:对话机器人的工作原理建立语料库数据训练机器人模型开展机器人对话构建机器人模型探究二:对话机器人的开发实现探究二:对话机器人的开发实现探究二:对话机器人的开发实现探究二:对话机器人的开发实现ChatterBot基于机器学习实现根据输入返回输出对话机器人模型:ChatBot探究二:对话机器人的开发实现ChatterBotChatBot建立语料库数据训练机器人模型开展机器人对话构建机器人模型探究二:对话机器人的开发实现模块名子模块等名字ChatBotfromimportchatterbot12ChatBot()“name““Candice“bot=探究二:对话机器人的开发实现探究二:对话机器人的开发实现ChatterBotChatBot自带语料手动添加建立语料库数据训练机器人模型开展机器人对话构建机器人模型探究二:对话机器人的开发实现自带语料库ChatterbotCorpus探究二:对话机器人的开发实现探究二:对话机器人的开发实现自带语料库ChatterbotCorpus手动添加语料对话列表数据示例1:["包邮吗?","亲,全场包邮!"]手动添加语料对话列表数据示例2:["Howareyou?","Iamfine."]示例3:["去看电影吧?","好呀,看什么?","八佰怎么样?","可以!"]探究二:对话机器人的开发实现自带语料库ChatterbotCorpus手动添加语料对话列表数据ChatterBotCorpusTrainerListTrainer探究二:对话机器人的开发实现fromimport模块名chatterbot.trainers34ChatterBotCorpusTrainer()子模块等名字ChatterBotCorpusTrainerChatBotbottrainer=探究二:对话机器人的开发实现探究二:对话机器人的开发实现ChatterBotChatBot自带语料手动添加训练过程建立图谱建立语料库数据训练机器人模型开展机器人对话构建机器人模型探究二:对话机器人的开发实现.train()5机器人训练师语料数据“chatterbot.corpus.english”trainer探究二:对话机器人的开发实现探究二:对话机器人的开发实现探究二:对话机器人的开发实现ChatterBotChatBot自带语料手动添加训练过程建立图谱对话规则输入输出建立语料库数据训练机器人模型开展机器人对话构建机器人模型匹配语句获取反馈输出Bye输入是否为Bye输出反馈语句退出循环结束NY循环开始接收用户输入结束接收用户输入输入是否为Bye匹配语句获取反馈输出反馈语句输出Bye退出循环NY循环input()WhileTrue条件语句ChatBot.get_response()breakprint()print()开始探究二:对话机器人的开发实现探究二:对话机器人的开发实现探究二:对话机器人的开发实现ChatterBotChatBot自带语料手动添加训练过程建立图谱对话规则输入输出建立语料库数据训练机器人模型开展机器人对话构建机器人模型探究三:对话机器人的优化设计如何学会说中文?在中文语料数据上进行训练探究三:对话机器人的优化设计trainer.train()优化1语料数据“chatterbot.corpus.chinese”探究三:对话机器人的优化设计探究三:对话机器人的优化设计探究三:对话机器人的优化设计如何学会说中文?如何添加训练语句?在中文语料数据上进行训练探究三:对话机器人的优化设计自带语料库ChatterbotCorpus手动添加语料对话列表数据ChatterBotCorpusTrainerListTrainer探究三:对话机器人的优化设计fromchatterbot.trainersimportListTrainertrainer=ListTrainer(bot)trainer.train([“今天吃什么?”,“炸酱面!”])优化2探究三:对话机器人的优化设计探究三:对话机器人的优化设计探究四:对话机器人的应用价值智能疫情助理探究四:对话机器人的应用价值博物馆观览助手探究四:对话机器人的应用价值智能语音助手小结与练习编程开发智能工具对话机器人工作原理对话机器人应用价值对话机器人编程实现小结与练习Q1.对话机器人的工作原理是什么?Q2.请尝试编程,让机器人学会如下对话:“请问有什么需要?”“我想买两张电影票。”“哪部电影?”“八佰,谢谢!”课程基本信息课题《编程调用平台中的智能工具》教科书书名:《信息技术必修1:数据与计算》出版社:人民教育出版社、中国地图出版社出版日期:2019年6月教学目标教学目标:1.理解对话机器人的工作原理,经历使用编程开发智能工具的过程,完成对话机器人的编程实现。【计算思维】认识对话机器人在信息社会中的应用价值,体会人工智能对我们生活的影响。【信息意识】【计算思维】教学重点:对话机器人的工作原理教学难点:对话机器人的编程实现教学过程时间教学环节主要师生活动2分钟情境导入智能客服的应用在日常生活中,我们经常会使用智能客服来进行咨询,解决问题。去年双十一当天,淘宝接待在线咨询服务超3亿次,其中97%由智能客服机器人完成。对话机器人智能客服本质上是一个对话机器人,用来模拟人类对话聊天形式并提供服务的程序。对话机器人是如何实现与人之间的交流呢?今天我们就来聊一聊,对话机器人的工作原理是什么,以及如何利用编程来开发实现。8分钟探究一:对话机器人的工作原理1.回顾机器学习在前面的学习中,同学们已经了解到人工智能技术的核心是机器学习。简单来说,机器学习就是从已有数据中学习规律,从而对未来数据进行预测。机器学习通过对历史数据进行处理,训练模型。训练之后的模型可对新数据的特性进行预测。2.对话机器人的工作原理(1)构建对话机器人的模型首先,我们要选择构建对话机器人的模型,这个模型是训练之前的模型。(2)创建对话语料数据通过收集对话产生的数据,并加以存储处理,即可形成相应的对话语料数据。例如,这两段对话通过收集处理,可存储为如下格式的语料数据。(3)训练对话机器人模型有了对话语料的数据,对话机器人模型就可以开始训练,从数据中学习规律。对话机器人在训练时,会遍历每一条对话语句,最终生成知识图谱。例如,对于对话1和2,其语句1都是早上好,但回复的语句2不同,就可以合并为如图所示的对话结构。训练之后的结果将会存储在计算机中。(4)与对话机器人开展对话训练之后的对话机器人模型就可以开展实际对话,来进行模型应用。根据用户的输入内容,与知识图谱中的语句进行比对匹配,找到与其最相似的一条,然后给出本语句的反馈,做出应答。3.小结对话机器人的工作原理10分钟探究二:对话机器人的开发实现1.构建机器人模型——ChatterBot库与ChatBot函数(1)ChatterBot库ChatterBot库是一个基于机器学习的对话机器人引擎,可以实现对用户输入的自动响应。ChatterBot可训练支持任何语言的聊天机器人。(2)编程实现导入Chatterbot模块的ChatBot利用ChatBot创建一个对话机器人框架2.建立语料库数据——ChatterBotCorpus及列表数据(1)自带语料库:ChatterBotCorpusChatterbotCorpus包是一个机器可读的多语言对话语料库。这些模块用于快速训练ChatterBot以响应不同语言的各种输入。体验活动:查看ChatterbotCorpus英文语料库。(2)手动添加语料:对话列表数据编程实现:3.训练对话机器人模型以在ChatterBotCorpusTrainer英文数据训练为例,利用训练师trainer中的train()函数进行训练。在训练的过程中,对话机器人将遍历每一个语句,从而生成知识图谱。编程实现:4.开展对话机器人模型的对话(1)对话规则与流程图(2)编程实现5.小结对话机器人实现过程3分钟探究三:对话机器人的优化设计对话机器人如何实现说中文?解决办法:对话机器人模型是通过对话语料数据来进行学习,因此将训练数据改为中文语料数据即可。编程实现:对话机器人如何添加语句?解决办法:使用列表数据进行训练,将需要学习的对话在源代码中写出。编程实现:3分钟探究四:对话机器人的应用价值对话机器人助力防疫中的咨询导诊博物馆观览助手智能语音助手2分钟小结与练习1.回顾总结知识2.小测完成自评学生完成课后练习题,检验自己的学习效果。Q1.对话机器人的工作原理是什么?Q2.尝试编程,让机器人学会如下对话:“请问有什么需要?”“我想买两张电影票。”“哪部电影?”“八佰,谢谢!”练习题Q1.对话机器人的工作原理是什么?Q2.尝试编程,让机器人学会如下对话:“请问有什么需要?”“我想买两张电影票。”“哪部电影?”“八佰,谢谢!” 展开更多...... 收起↑ 资源列表 编程调用平台中的智能工具(第三十一课时)- 任务单.docx 编程调用平台中的智能工具(第三十一课时)- 教学设计.docx.docx 编程调用平台中的智能工具(第三十一课时)- 练习题.docx 编程调用平台中的智能工具(第三十一课时)- 课件00.ppt