4.2.2 编程调用平台中的智能工具 课件(61张ppt)+教案+任务单+练习 缺少音频

文档属性

名称 4.2.2 编程调用平台中的智能工具 课件(61张ppt)+教案+任务单+练习 缺少音频
格式 zip
文件大小 4.7MB
资源类型 教案
版本资源 中图版(2019)
科目 信息技术(信息科技)
更新时间 2020-12-16 20:43:01

文档简介

学习任务单
课程基本信息
课题
《编程调用平台中的智能工具》
教科书
书名:《信息技术必修1:数据与计算》
出版社:人民教育出版社、中国地图出版社
出版日期:
2019

6月
学生信息
姓名
学校
班级
学号
学习目标
1.
理解对话机器人的工作原理,经历使用编程开发智能工具的过程,完成对话机器人的编程实现。【计算思维】
2.
认识对话机器人在信息社会中的应用价值,体会人工智能对我们生活的影响。【信息意识】【计算思维】
课前学习任务
1.
准备好学生资源中的素材以及任务单。
2.
在自己的电脑中安装好ChatterBot及ChatterBot
Corpus模块,安装包已在素材库中提供。
课上学习任务
【学习任务一】对话机器人工作原理分析
请尝试写出对话机器人的工作原理是什么。
【学习任务二】对话机器人的开发实现
请按照如下所示的步骤将对话机器人的程序代码写出来。
构建机器人模型
创建对话语料数据
训练对话机器人模型
与对话机器人开展对话
【学习任务三】对话机器人的优化设计
请按照如下所示的要求将对话机器人的程序代码写出来。
创建中文对话机器人
为对话机器人手动添加语料数据
推荐的学习资源
ChatterBot训练方式:
1、通过列表数据进行训练
chatterbot.trainers.ListTrainer(storage,
kwargs)
允许使用对话字符串列表来训练ChatBot。
对于训练过程,您需要传递一个语句列表,其中每个语句的顺序基于其在给定对话中的位置。例如,如果你使用如下语言进行训练,则当你输入Hi
there!或者Greetings!的时候机器人会回复你Hello。
from
chatterbot.trainers
import
ListTrainer
chatterbot
=
ChatBot("Training
Example")
chatterbot.set_trainer(ListTrainer)
chatterbot.train([
"Hi
there!",
"Hello",
])
chatterbot.train([
"Greetings!",
"Hello",
])
您还可以提供更长的训练对话清单。这将在列表中建立每个项目作为响应。chatterbot.train([
"How
are
you?",
"I
am
good.",
"That
is
good
to
hear.",
"Thank
you",
"You
are
welcome.",
])
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使用来自Ubuntu
Dialog
Corpus的数据进行训练。
此训练类使您可以使用Ubuntu对话语料库来训练您的聊天机器人。由于Ubuntu对话语料库的文件大小,下载和训练过程可能需要相当长的时间。
此训练类将处理下载压缩语料库文件并提取它的过程。如果该文件已被下载,则不会再次下载。如果文件已被提取,则不会再提取。(共61张PPT)
编程调用平台中的智能工具
(第三十一课时)
课前准备
2
安装第三方库
安装好ChatterBot及ChatterBot
Corpus模块。
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
探究二:对话机器人的开发实现
ChatterBot
ChatBot
建立
语料库
数据
训练
机器人
模型
开展
机器人对话
构建
机器人
模型
探究二:对话机器人的开发实现
模块名
子模块等名字
ChatBot
from
import
chatterbot
1
2
ChatBot
(
)

name


Candice

bot
=
探究二:对话机器人的开发实现
探究二:对话机器人的开发实现
ChatterBot
ChatBot
自带语料
手动添加
建立
语料库
数据
训练
机器人
模型
开展
机器人对话
构建
机器人
模型
探究二:对话机器人的开发实现
自带语料库
Chatterbot
Corpus
探究二:对话机器人的开发实现
探究二:对话机器人的开发实现
自带语料库
Chatterbot
Corpus
手动添加语料
对话列表数据
示例1:[
"包邮吗?
",
"
亲,全场包邮!
"
]
手动添加语料
对话列表数据
示例2:[
"
How
are
you?",
"I
am
fine.
"
]
示例3:[
"
去看电影吧?
"

"好呀,看什么?
"

"八佰怎么样?
"

"可以!
"
]
探究二:对话机器人的开发实现
自带语料库
Chatterbot
Corpus
手动添加语料
对话列表数据
ChatterBotCorpus
Trainer
ListTrainer
探究二:对话机器人的开发实现
from
import
模块名
chatterbot.trainers
3
4
ChatterBotCorpusTrainer
(
)
子模块等名字
ChatterBotCorpusTrainer
ChatBot
bot
trainer
=
探究二:对话机器人的开发实现
探究二:对话机器人的开发实现
ChatterBot
ChatBot
自带语料
手动添加
训练过程
建立图谱
建立
语料库
数据
训练
机器人
模型
开展
机器人对话
构建
机器人
模型
探究二:对话机器人的开发实现
.
train
(
)
5
机器人训练师
语料数据
“chatterbot.corpus.english”
trainer
探究二:对话机器人的开发实现
探究二:对话机器人的开发实现
探究二:对话机器人的开发实现
ChatterBot
ChatBot
自带语料
手动添加
训练过程
建立图谱
对话规则
输入输出
建立
语料库
数据
训练
机器人
模型
开展
机器人对话
构建
机器人
模型
匹配语句获取反馈
输出Bye
输入是否为Bye
输出反馈语句
退出循环


N
Y
循环


接收用户输入


接收用户输入
输入是否为Bye
匹配语句获取反馈
输出反馈语句
输出Bye
退出循环
N
Y
循环
input(
)
While
True
条件
语句
ChatBot.get_response()
break
print()
print()


探究二:对话机器人的开发实现
探究二:对话机器人的开发实现
探究二:对话机器人的开发实现
ChatterBot
ChatBot
自带语料
手动添加
训练过程
建立图谱
对话规则
输入输出
建立
语料库
数据
训练
机器人
模型
开展
机器人对话
构建
机器人
模型
探究三:对话机器人的优化设计
如何学会说中文?
在中文语料数据上
进行训练
探究三:对话机器人的优化设计
trainer
.
train
(
)
优化1
语料数据
“chatterbot.corpus.chinese”
探究三:对话机器人的优化设计
探究三:对话机器人的优化设计
探究三:对话机器人的优化设计
如何学会说中文?
如何添加
训练语句?
在中文语料数据上
进行训练
探究三:对话机器人的优化设计
自带语料库
Chatterbot
Corpus
手动添加语料
对话列表数据
ChatterBotCorpus
Trainer
ListTrainer
探究三:对话机器人的优化设计
from
chatterbot.trainers
import
ListTrainer
trainer
=
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)自带语料库:ChatterBotCorpus
Chatterbot
Corpus包是一个机器可读的多语言对话语料库。这些模块用于快速训练ChatterBot以响应不同语言的各种输入。
体验活动:查看Chatterbot
Corpus英文语料库。
(2)手动添加语料:对话列表数据
编程实现:
3.训练对话机器人模型
以在ChatterBotCorpusTrainer英文数据训练为例,利用训练师trainer中的train()函数进行训练。在训练的过程中,对话机器人将遍历每一个语句,从而生成知识图谱。
编程实现:
4.开展对话机器人模型的对话
(1)对话规则与流程图
(2)编程实现
5.小结对话机器人实现过程
3分钟
探究三:对话机器人的优化设计
对话机器人如何实现说中文?
解决办法:对话机器人模型是通过对话语料数据来进行学习,
因此将训练数据改为中文语料数据即可。
编程实现:
对话机器人如何添加语句?
解决办法:使用列表数据进行训练,将需要学习的对话在源代
码中写出。
编程实现:
3分钟
探究四:对话机器人的应用价值
对话机器人助力防疫中的咨询导诊
博物馆观览助手
智能语音助手
2分钟
小结与练习
1.
回顾总结知识
2.
小测完成自评
学生完成课后练习题,检验自己的学习效果。
Q1.
对话机器人的工作原理是什么?
Q2.
尝试编程,让机器人学会如下对话:
“请问有什么需要?”
“我想买两张电影票。”
“哪部电影?”
“八佰,谢谢!”练习题
Q1.
对话机器人的工作原理是什么?
Q2.
尝试编程,让机器人学会如下对话:
“请问有什么需要?”
“我想买两张电影票。”
“哪部电影?”
“八佰,谢谢!”