资源简介 第 4 章 走进智能时代4.2 利用智能工具解决问题教学设计教学背景信息科技是现代科学技术领域的重要部分,主要研究以数字形式表达的信息及其应用中的科学原理、思维方法、处理过程和工程实现。当代高速发展的信息科技对全球经济、社会和文化发展起着越来越重要的作用。义务教育信息科技课程具有基础性、实践性和综合性,为高中阶段信息技术课程的学习奠定基础。信息科技课程旨在培养科学精神和科技伦理,提升自主可控意识,培育社会主义核心价值观,树立总体国家安全观,提升数字素养与技能。教材分析本节课的教学内容选自人教/地图出版社第 4 章 走进智能时代 4.2 利用智能工具解决问题,信息技术的发展与普及为我们创造了一个全新的数字化生活环境。它们在给我们带来生活便利的同时,也在逐渐地改变着我们的生活方式。在 2018 年的上海科技博览会上,有一位声音甜美、行动自如的机器人“小 i”,受到了人们的关注。“你会唱歌吗?”“可不可以给我讲个笑话?”“明天的天气怎么样?”人们争抢着和这个可爱的机器人对话。小 i 不仅逐一回答了它所“听”到的每一个问题,还不时地用一个个笑话、萌劲十足的表情,以及语气逗乐了现场的观众。其实,它是我国一家智能科技公司开发的一款具有自我学习能力的实体机器人。该科技公司在自然语言处理、语义分析和理解、知识工程和智能大数据等方面走在了世界前列,它研发的相关智能技术已经在我国的金融、医疗、交通等领域得到广泛应用。同学们,想想还有哪些人工智能技术就在我们的生活中?它有哪些奇妙之处?又如何影响着我们的生活?现在,就让我们一起走进这神奇的人工智能artificial intelligence,简称 AI)世界吧!本章我们将以“智能交互益拓展”为主题开展项目活动,体验人工智能对日常生活的影响,了解人工智能的关键技术,认识人工智能在信息社会中的重要作用。学情分析此节课针对的对象是高一年级的学生,学生对信息技术的关键技术以及信息技术对生活与学习的影响有一定的了解,但对所学内容只是体验性和经验性的认识。依据解决问题的需要,设计和描述简单算法;利用程序设计语言实现简单算法,解决实际问题。教学目标1.了解人工智能平台中的智能工具,体会人工智能对我们生活的影响。2.经历使用智能工具解决问题的过程,掌握利用智能工具解决问题的一般方法。教学重点与难点重点:体验常见的人工智能技术,体会其背后的人工智能原理,感受人工智能的魅力。难点:理解典型案例中人工智能技术实现的原理。教学方法与教学手段案例分析法、讲授法、任务驱动法。教学过程问题导入提出问题,引发思考:体验探索北斗卫星导航系统北斗卫星导航系统(图 4.2.1)是我国着眼于国家安全和经济社会发展需要,自主建设、独立运行的卫星导航系统,是为全球用户提供全天候、全天时、高精度的定位、导航和授时服务的国家重要空间基础设施。北斗卫星导航系统是实现安全可信、高效便捷的国家综合体系的核心,在人工智能等影响未来产业战略格局的前沿领域发挥着巨大的作用。思考:查阅相关资料,讨论北斗卫星导航系统与人工智能技术结合是如何改变我们的生活的。人工智能平台中的智能工具随着人工智能技术的发展,智能工具层出不穷,使用起来也越来越方便。2017 年,我国发布的《新一代人工智能发展规划》,明确了构建开放协同的人工智能科技创新体系,建设安全便捷的智能社会,构建安全高效的智能化基础设施体系,加强人工智能领域的军民融合,培育高端高效的智能经济,前瞻布局新一代人工智能重大科技项目六大任务。此后,2018 年国家公布了新一代人工智能开放创新平台,包括自动驾驶、城市大脑、医疗影像、智能语音和智能视觉五大方面。这些平台选择大数据智能、跨媒体智能、群体智能、混合增强智能和自主智能系统等主力方向,从基础理论、支撑体系、关键技术、创新应用等层面进行系统性、前瞻性任务布局。这些开放创新平台已经发布了一些研发成果,登录这些人工智能平台,使用其中的智能工具能够帮助我们解决很多问题,如图 4.2.2 (参见教材P141)所示。实践活动利用人工智能平台体验人脸识别一些人工智能平台提供了开放的智能工具服务功能,例如:文字识别、语音识别和人脸识别等。尝试搜索这些平台,利用其中的“人脸会场签到”功能解决实际问题。在组织班会活动中,同学们可体验一下“人脸会场签到”。1. 会议准备:注册人工智能平台账号,使用“人脸会场签到”工具,收集参会人员的相关信息。2. 会议现场:参会人员通过数字设备进行人脸签到。3. 会后信息处理:会后将参会信息进行相应的数据分析,并将信息保存。观察用照片签到能否成功,讨论人脸签到相比其他签到方式的优势与不足。此外,说出人脸识别还有哪些应用场景。编程开发智能工具用智能工具解决问题时,除了使用智能平台上已经设计好的智能工具以外,还可以编程自主开发,这样可以提高智能工具的灵活性。目前可以开发人工智能的高级语言比较多,我们前面学习过的 Python 语言也可以用于开发人工智能。使用 Python 语言开发人工智能有以下几个优势:多平台运行,可以在 macOS、Windows、Linux 等操作系统上运行;强大的数据处理库,包括 NumPy、SciPy、Pandas、Matplotlib 等;丰富的第三方库,包括 Web 开发、爬虫、数据库、机器学习、科学计算框架、图形界面开发等。通过 Python 语言调用人工智能工具库可以较方便地开发智能工具。但是,人工智能工具在开发与使用过程中,通常需要进行较长时间的、大量数据的前期训练,这给学习体验智能工具带来了一定困难。在此,我们利用 Python 语言调用 ChatterBot 库和 ChatterBot Corpus库来简单体验一下编程开发智能工具的方法。ChatterBot 库是一个基于机器学习的对话机器人引擎,构建在 Python 语言上,也是 Python 语言的一个库。ChatterBot Corpus 库是一个机器可读的多语言对话语料库,它主要用于快速训练 ChatterBot 以响应不同语言的输入。例:编程开发“对话机器人”(1)安装 ChatterBot 库安装ChatterBot库的命令为pip install chatterbot.如果在操作系统的path中设置了Python 所在的路径,则可以在命令行窗口直接执行上述命令。否则需要在 path 中添加Python 的路径,或者查找到 Python 的安装路径并进入到 scripts 文件夹中,才能运行 pip 命令。具体的安装方法可参考资源平台提供的说明。(2)安装 ChatterBot Corpus 库安装 chatterbot_corpus 库的命令为 pip install chatterbot_corpus。具体的安装方法可参考资源平台提供的说明。(3)编程创建自己的“对话机器人”# 导入库文件from chatterbot import ChatBotfrom chatterbot.trainers import ChatterBotCorpusTrainerimport os# 创建一个ChatBot人工智能框架bot = ChatBot("Candice")# 使用语料库数据训练trainer = ChatterBotCorpusTrainer(bot)# 在英文训练数据上训练trainer.train("chatterbot.corpus.english")# 对话规则while True:message = input("\t\t\tYou:")if message.strip() != "Bye":reply = bot.get_response(message)print("Candice:", reply)if message.strip() == "Bye":print("Candice: Bye")break保存文件并命名为 chat.py,其中的“Candice”是我们给对话机器人起的名字。默认情况下,ChatterBot 库将创建一个 SQLite 数据库来存放一些对话语句。这样,一个对话机器人就已经创建好了。运行该程序,尝试与它进行简单的对话。需要注意的是,该程序的运行是基于语言数据集的,使用了库文件中自带的英文数据集,对机器人进行训练。如果要进行中文对话,则需要将语言数据集改为中文数据集,上面程序中数据集部分要更改为:# 在中文训练数据上训练trainer.train("chatterbot.corpus.chinese")实践活动尝试训练“对话机器人”你可能已经发现我们编程创建的“对话机器人”的对话效果不是很令人满意,这就需要对机器人进行更多的训练,事实上我们自己也可以对机器人进行训练。简单的训练程序代码如下:# 导入库文件from chatterbot import ChatBotfrom chatterbot.trainers import ListTrainerbot = ChatBot("Candice")# 使用列表数据训练trainer = ListTrainer(bot)# 开始训练trainer.train(["What is your name ", "My name is Candice"])trainer.train(["Who are you ", "I am a bot"])# 对话规则while True:message = input("\t\t\tYou:")if message.strip() != "Bye":reply = bot.get_response(message)print("Candice:", reply)if message.strip() == "Bye":print("Candice: Bye")break现在机器人已经接受了 2 条语句的训练。当你问机器人“What is yourname ”时,它会以“My name is Candice”答复;当你问机器人“Who areyou ”时,它会以“I am a bot”答复。你还可以对其进行多个语句的训练,例如:trainer.train(["Do you know me ", "Yes", "No", "No idea"])当然我们很难针对每个语句都进行训练。我们可以利用前面使用的大型数据集 ChatterBotCorpusTrainer 来实现。1. 思考“对话机器人”的回答与你希望得到的回答有何不同,简要分析出现问题的原因。2. 查询相关资料,了解还有哪些训练“对话机器人”的方法。技术支持Python 语言第三方库的功能Python 语言具有快速、可移植、开源、可扩展等优点,深受人们的欢迎,特别是其众多的人工智能库,使得编写人工智能工具变得非常方便。目前,Python 语言已成为人工智能程序设计的重要编程语言。了解 Python语言第三方库的功能有助于我们进一步学习。1. Web 开发Django :是一个高效的 Web 开发框架。使用 Django 能够快速、便捷地构建和维护高质量的 Web 应用。Tornado :是一种 Web 服务器软件的开源版本。Flask :是一个使用 Python 语言编写的轻量级 Web 应用框架。2. 爬虫Requests :是一个很实用的客户端库,编写网络爬虫和测试服务器响应数据时经常会用到它。Scrapy :是一个为了爬取网站数据,提取结构性数据而编写的应用框架。Selenium :是一个用于 Web 应用程序测试的工具,运行在浏览器中,可模拟人的动作自动进行浏览操作。3. 数据库PyMongo :用于连接 MongoDB 数据库PyMySQL :用于连接 MySQL 数据库。4. 机器学习NLTK :是一个比较优秀的自然语言处理工具包,是对话机器人需要的重要工具。Keras :是一个高层神经网络的应用程序编程接口。scikit-learn :是一个机器学习库,其中包含大量机器学习算法和数据集,是方便的数据挖掘工具。5. 图形界面开发PyQt :是一个创建图形用户界面(GUI)的工具包。项目实施开发“智能班级交互系统”一、项目活动借助智能平台上的智能工具和班级微信公众号,开发“智能班级交互系统”,利用这个系统答疑解惑。1. 在开放的智能平台上注册账号。2. 对接微信公众号和智能平台,如图 4.2.3(参见教材P145) 所示,开发“智能班级交互系统”。3. 使用“智能班级交互系统”,体验人机对话的过程。二、项目检查完成开放智能平台上账号的注册,实现微信公众号和智能平台对接,利用“智能班级交互系统”实现人机对话。课后作业练习提升1. 诗歌是人类文学皇冠上的明珠,深度学习技术的发展让机器自动生成诗歌成为可能。查找相关智能应用程序,体验机器作诗,分析机器是如何做到的。思考机器能否替代人通过诗歌抒发情怀。2. 随着移动设备的普及,越来越多的移动应用程序也使用了人工智能技术。分享一个使用了人工智能技术的移动应用程序,说明其特点。板书设计第 4 章 走进智能时代4.2 利用智能工具解决问题1.人工智能平台中的智能工具2.编程开发智能工具项目实施普通高中教科书信息技术 必 修 1 数据与计算编著人民教育出版衬课程教材研究所信息技术课程教材研究开发中心中国地图出版社教材出版分社总 主 编 :祝智庭 樊 磊副总主编 :高淑印 郭 芳 李 锋本册主编 :李 锋 高淑印编写人员 :程建娜 刘姝弘 夏燕萍 王 岚 史弘文 展开更多...... 收起↑ 资源预览