ImageVerifierCode 换一换
格式:PDF , 页数:130 ,大小:11.59MB ,
资源ID:612396      下载积分:6 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝扫码支付
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.ketangku.com/wenku/file-612396-down.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(普通高中教科书·信息技术选择性必修4 人工智能初步(粤教版2019).pdf)为本站会员(高****)主动上传,免费在线备课命题出卷组卷网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知免费在线备课命题出卷组卷网(发送邮件至service@ketangku.com或直接QQ联系客服),我们立即给予删除!

普通高中教科书·信息技术选择性必修4 人工智能初步(粤教版2019).pdf

1、普 通 高 中 教 科 书选择性必修信息技术普通高中教科书信息技术4人工智能初步Rengong Zhineng Chubu选择性必修 4人工智能初步广东教育出版社广东教育出版社批准文号:粤发改价格2017434号 举报电话:12358定价:9.51元ook2020信息技术选择性必修-4封面.indd 42020/6/5 上午11:23信息技术广东教育出版社普 通 高 中 教 科 书徐福荫 主编广州人工智能初步Rengong Zhineng Chubu4选择性必修 ook2020信息技术-8扉页.indd 62020/5/28 下午2:5222目录 图书在版编目(CIP)数据 信息技术选择性必修

2、4:人工智能初步/徐福荫主编广州:广东教育出版社,2019.12(2021.1重印)普通高中教科书 ISBN 978-7-5548-3031-4 .信.徐.计算机课高中教材.G634.671 中国版本图书馆CIP数据核字(2019)第202791号 编写单位 广东教育出版社 主 编 徐福荫 副 主 编 朱光明 黄国洪 本册主编 黄国洪 王 腾 核心编写人员(以姓氏笔画为序)王同聚 刘 毅 李建国 吴良辉 沈小锋 曹 萍 覃健诚 责任编辑 李敏怡 熊力闻 李杰静 责任技编 杨启承 陈 瑾 装帧设计 何 维信息技术 选择性必修4 人工智能初步XINXI JISHU XUANZEXING BIXIU

3、 4 RENGONG ZHINENG CHUBU广 东 教 育 出 版 社 出 版(广州市环市东路472号12-15楼)邮政编码:510075网址:http:/广东新华发行集团股份有限公司发行广东新华印刷有限公司南海分公司印刷(佛山市南海区盐步河东中心路)890毫米1240毫米 16开本 8印张 160 000字2019年12月第1版 2021年1月第3次印刷ISBN 978-7-5548-3031-4定价:9.51元批准文号:粤发改价格2017434 号 举报电话:12315著作权所有请勿擅用本书制作各类出版物违者必究如有印装质量或内容质量问题,请与我社联系。质量监督电话:020-87613

4、102 邮箱:gjs-购书咨询电话:020-8777243822Y3228目录.indd 22020/12/3 17:10:02前 言信息技术作为当今先进生产力的代表,已经成为我国经济发展的重要支柱和网络强国的战略支撑。信息技术涵盖了获取、表示、传输、存储和加工信息在内的各种技术。自电子计算机问世以来,信息技术沿着以计算机为核心、到以互联网为核心、再到以数据为核心的发展脉络,深刻影响着社会的经济结构和生产方式,加快了全球范围内的知识更新和技术创新,推动了社会信息化、智能化的建设与发展,催生出现实空间与虚拟空间并存的信息社会,并逐步构建出智慧社会。人工智能是通过智能机器延伸、增强人类改造自然和治

5、理社会能力的新兴技术。近年来,人工智能的发展呈现出深度学习、跨界融合、人机协同等新特征,推动了社会各领域从数字化、网络化向智能化的跃升,深刻改变着人们的生活方式和思维模式。本模块是针对人工智能的发展特征,从基础知识与应用、简单人工智能应用模块搭建及开发等方面设置的选择性必修模块。通过本教科书的学习,同学们应该了解人工智能的发展历程及概念,能描述典型人工智能算法的实现过程,通过搭建简单的人工智能应用模块,亲历设计与实现简单智能系统的基本过程与方法,增强利用智能技术服务人类发展的责任感。本教科书按“人工智能基础”“简单人工智能应用模块开发”“人工智能技术的发展与应用”三部分内容展开,围绕信息技术学

6、科核心素养设计了“调查汉英自动翻译机的人工智能发展历程”“剖析汽车自动导航系统”“剖析垃圾邮件智能分类系统”“开发拍照识物智能玩具系统”“从自动驾驶汽车伤人事件分析人机共处的安全风险和伦理挑战”项目范例,教师围绕“情境主题规划探究实施成果评价”的项目范例主线开展教学活动,帮助同学们掌握本教科书的基础知识、方法和技能,增强信息意识,发展计算思维,提高数字化学习与创新能力,树立正确的信息社会价值观和责任感,从而促进同学们的信息素养提升。121Y3228前言.indd 12019/10/10 14:22:1822本教科书要求同学们对现实世界中的真实性问题进行自主、协作、探究学习。同学们围绕“项目选题

7、项目规划方案交流探究活动项目实施成果交流活动评价”的项目学习主线开展学习活动,体验“做中学、学中创、创中乐”的项目学习理念和“从实践入手、先学后教、先练后讲”的项目学习策略,将知识建构、技能培养与思维发展融入运用数字化工具解决问题和完成任务的过程中,从而促进信息意识、计算思维、数字化学习与创新、信息社会责任的信息技术学科核心素养达成。本教科书设置了“项目范例”“项目选题”“项目规划”“方案交流”“探究活动”“项目实施”“成果交流”“活动评价”等学习栏目,指导同学们开展项目学习活动。其中,“项目范例”是教师通过“情境”“主题”“规划”“探究”“实施”“成果”“评价”等活动,引导同学们了解开展项目

8、学习活动的全过程;“项目选题”是同学们从真实世界选择自己感兴趣的项目主题;“项目规划”是同学们根据项目选题,制订自己的项目方案;“方案交流”是同学们展示交流自己设计的项目方案,师生共同探究、完善其方案;“探究活动”是同学们通过“问题”“观察”“分析”“阅读”“思考”“交流”“实践”“实验”“体验”“调查”“讨论”“拓展”等活动,获取知识和技能的过程;“项目实施”是同学们运用在项目学习过程中所获得的知识和技能来完成项目方案;“成果交流”是教师组织同学们展示交流项目成果,共享创造、分享快乐;“活动评价”是教师组织同学们开展项目评价活动。本教科书每章首页的导言,叙述了本章的学习目的与方式、学习目标与

9、内容,让同学们对整章内容有个总体认识。每章设置了“本章扼要回顾”,通过知识结构图把每章的主要内容及它们之间的关系描述出来,这有助于同学们建立自己的知识结构体系。每章结尾的“本章学业评价”设计了基于学业要求的测试题,并通过本章的项目活动评价,让同学们综合评价自己在信息技术知识与技能、解决实际问题的过程与方法,以及相关情感态度与价值观的形成等方面,是否达到了本章的学习目标。此外,本教科书为同学们提供了配套学习资源包,里面含有贝叶斯分类器、聚类、决策树和人工神经网络等算法,以及“垃圾邮件智能分类系统”“拍照识物智能玩具系统”等Python程序源代码,为同学们提供智能系统实验环境和数据。当然,同学们还

10、可以自己收集素材,让自己的项目学习作品更有特色。前言21Y3228前言.indd 22019/10/10 14:22:191 1目 录目 录CONTENTS 第一章 人工智能概述1项目范例 调查汉英自动翻译机的人工智能发展历程 21.1 人工智能及其特征5111 人工智能 5112 人工智能的基本特征 71.2 人工智能发展历程与趋势9121 人工智能的发展历程 9122 新一代人工智能的兴起12123 人工智能发展的研究趋势131.3 人工智能的应用16131 人工智能在经济领域的应用16132 人工智能在社会领域的应用18 第二章 人工智能基础算法及应用22项目范例 剖析汽车自动导航系统

11、232.1 人工智能编程语言与开发平台26211 常用人工智能编程语言26212 Python在人工智能中的运用2721Y3228目录.indd 12019/10/10 14:07:2322目录213 典型人工智能开发平台292.2 启发式搜索31221 启发式搜索原理31222 启发式搜索的分类33223 启发式搜索的应用342.3 自然语言处理36231 情感分析36232 机器翻译38233 机器阅读理解40234 智能搜索引擎412.4 生物特征识别41241 指纹识别系统42242 人脸识别系统42243 虹膜识别系统45244 指静脉识别系统45 第三章 机器学习与人工智能的核心算

12、法49项目范例 剖析垃圾邮件智能分类系统503.1 机器学习概述53311 机器学习的基本原理54312 机器学习算法的主要类型553.2 贝叶斯分类器57321 朴素贝叶斯分类器57322 朴素贝叶斯分类器的类型60323 朴素贝叶斯分类器的应用6121Y3228目录.indd 22019/10/10 14:07:233 33.3 聚类63331 系统聚类算法64332 K-Means聚类算法65333 K-Means聚类算法的应用663.4 决策树68341 决策树及其类型69342 决策树的生成71343 决策树的应用733.5 人工神经网络75351 人工神经网络的基本原理76352

13、人工神经网络的应用78 第四章 人工智能应用系统开发83项目范例 开发拍照识物智能玩具系统844.1 人工智能应用系统项目分析86411 项目描述86412 需求分析874.2 人工智能应用系统项目设计88421 总体设计89422 硬件系统设计89423 软件模块设计904.3 人工智能应用系统项目实施94431 程序设计94432 图像识别模块开发95433 系统集成98目录21Y3228目录.indd 32019/10/10 14:07:2444目录 第五章 人工智能系统的安全103项目范例 从“自动驾驶汽车伤人事件”分析人机共处的安全风险和伦理挑战 1045.1 人工智能应用系统的安全

14、风险和伦理挑战 107511 常见人工智能应用系统的基本组成107512 人工智能应用系统的安全风险109513 人工智能应用系统的伦理挑战1105.2 维护人工智能应用系统安全的基本方法 111521 安全风险分析与审计跟踪111522 备份与应急处理112523 安全管理教育与制度建设1125.3 人工智能社会化应用的规范与法规 113531 人工智能应用的道德规范和行为守则113532 人工智能应用的民事与刑事法规114附录1 部分术语、缩略语中英文对照表 118附录2 项目活动评价表 11921Y3228目录.indd 42019/10/10 14:07:241 1第一章 人工智能概述

15、人类具有智能,并以此建立了相互联系的生活共同体社会,而智能被认为是推动社会发展的重要因素。从学会使用工具到农业革命、工业革命,再到信息化社会,智能无处不在。智能家居、自动驾驶和智能机器人等智能系统早已在不知不觉中融入我们的生活。人工智能技术将对我们的学习、工作和生活带来哪些影响?我们该如何应对人工智能带来的挑战呢?本章将通过“调查人工智能发展历程”项目,进行自主、协作、探究学习,让同学们学会描述人工智能的概念与基本特征,知道人工智能的发展历程、典型应用与发展趋势,辩证认识人工智能对人类社会未来发展的巨大价值,从而将知识建构、技能培养与思维发展融入运用数字化工具解决问题和完成任务的过程中,促进信

16、息技术学科核心素养达成,完成项目学习目标。人工智能及其特征 人工智能发展历程与趋势 人工智能的应用第一章 人工智能概述第一章人工智能概述21Y3228.indd 12019/10/10 14:23:0722第一章 人工智能概述调查汉英自动翻译机的人工智能发展历程项目范例情 境语言是用来表达意思和交流思想的工具,是人类社会最基本的信息载体,也是人类区别于其他动物的本质特征之一。由于地理位置、生活环境、风俗习惯等诸多因素影响,世界各地形成了不同的语言。为促进人类之间的交流与合作,需要进行语言之间的翻译。拥有一种自动翻译不同语言的工具,成为人类共同的梦想。人工智能的诞生、发展和应用为自动翻译机(如图

17、1-1所示)的研发和制造带来突破,使人类的这个梦想得以实现。主 题调查汉英自动翻译机的人工智能发展历程规 划根据项目范例的主题,在小组中组织讨论,利用思维导图工具,制订项目范例的学习规划,如图1-2所示。图1-1 自动翻译机21Y3228.indd 22019/10/10 14:23:093 3调查汉英自动翻译机的人工智能发展历程探 究根据项目学习规划的安排,通过调查、案例分析、文献阅读和网上资料搜索,开展“调查汉英自动翻译机的人工智能发展历程”项目学习探究活动,如表1-1所示。表1-1“调查汉英自动翻译机的人工智能发展历程”项目学习探究活动探究活动学习内容知识技能汉英自动翻译机的人工智能体验

18、人工智能实例。理解人工智能的概念。描述人工智能的概念与基本特征。分析人工智能的基本特征。描述人工智能的基本特征。人工智能在汉英翻译领域中的发展分析人工智能技术研究的发展趋势。知道人工智能的发展历程。知道人工智能的发展历程、典型应用与发展趋势。辩证认识人工智能对人类社会未来发展的巨大价值。列举人工智能技术在汉英翻译领域取得的成果实例。知道人工智能的典型应用。汉英自动翻译机的发展趋势分析汉英自动翻译机的发展趋势。分析人工智能的发展趋势。图1-2“调查汉英自动翻译机的人工智能发展历程”项目学习规划21Y3228.indd 32019/10/10 14:23:1144第一章 人工智能概述实 施实施项目

19、学习各项探究活动,进一步调查汉英自动翻译机的人工智能发展历程。成 果在小组开展项目范例学习过程中,利用思维导图工具梳理小组成员在“头脑风暴”活动中的观点,建立观点结构图,运用多媒体创作工具(如演示文稿、在线编辑工具等),综合加工和表达,形成项目范例可视化学习成果,并通过各种分享平台发布,共享创造、分享快乐。例如,运用在线编辑工具制作的“调查汉英自动翻译机的人工智能发展历程”可视化报告,可以在教科书的配套学习资源包中查看,其目录截图如图1-3所示。评 价根据教科书附录2的“项目活动评价表”,对项目范例的学习过程和学习成果在小组或班级上进行交流,开展项目学习活动评价。项目选题同学们以36人组成一个

20、小组,选择下面一个参考主题,或者自拟一个感兴趣的主题,开展项目学习。1调查汉日自动翻译机的人工智能发展历程2调查汉德自动翻译机的人工智能发展历程3调查汉俄自动翻译机的人工智能发展历程图1-3“调查汉英自动翻译机的人工智能发展历程”可视化报告目录截图21Y3228.indd 42019/10/10 14:23:125 51.1 人工智能及其特征项目规划各小组根据项目选题,参照项目范例的样式,利用思维导图工具,制订相应的项目方案。方案交流各小组将完成的方案在全班进行展示交流,师生共同探讨、完善相应的项目方案。1.1 人工智能及其特征自有文字记载以来,人类一直梦想着制造智能机器,这些机器能听、能说、

21、能看,会学习、会思考、会决策、会创造、会像人类那样解决问题。1956年的达特茅斯会议开启了人工智能研究的航程。在这之后,人工智能经历了曲折的发展历程。2016和2017年,计算机程序“阿尔法围棋(AlphaGo)”战胜围棋世界冠军的事件,引起了人们对人工智能的兴趣,使人工智能再次进入公众视野,并迎来快速发展的浪潮。1.1.1 人工智能1.人类智能人类智能一般是指知识与智力的总和。其中,知识是智能的基础,而智力是人类获取和运用知识解决问题的能力。学习和记忆的能力是产生智能的前提。为此,人类智能的基本特征表现在以下四个方面:(1)感知。人们通过各种感觉器官(如眼、耳、鼻和手等)来获取客观世界中的各

22、种信息(如图像、声音和气味等),然后将这些信息传入大脑以进行信息处理和识别等智能活动。(2)思维。人的思维是大脑对客观事物能动的、间接的和概括的反映,包括逻辑思维、形象思维和创造性思维。它利用人类语言作为工具,通过归纳、联想、比较、分析和判断等方法对获取的知识进行加工和处理。21Y3228.indd 52019/10/10 14:23:1266第一章 人工智能概述(3)学习与自适应。学习是人类智能的主要标志,也是人类获取知识的基本手段。人们通过与环境的相互作用,不断地学习,通过学习积累知识、培养才能,从而适应环境的变化,并根据环境的变化不断地改变自己的行为。(4)行为。人们通常用语言、表情、眼

23、神和形体动作等对外界的刺激作出反应,传达信息。2.人工智能人工智能是计算机科学的一个分支,是研究计算机模拟人的某些感知能力、思维过程和智能行为(如学习、推理、思考和规划等)的学科。人工智能的研究领域包括机器人、专家系统、语音识别、图像识别、自然语言处理和自动驾驶等。也就是说,人工智能是通过智能机器延伸、增强人类改造自然和治理社会能力的新兴技术。它将深刻地改变人们的生活方式和思维模式。人工智能研究的基本内容包含知识表示、机器感知、机器思维、机器学习、机器行为等。(1)知识表示。知识表示研究如何将人类知识形式化或者模型化。知识表示方法包括符号表示法、连接机制表示法。符号表示法是用各种包含具体含义的

24、符号,以各种不同的方式和顺序组合起来表示知识的方法。连接机制表示法是把各种物理对象以不同的方式和顺序连接起来,并在其间互相传递和加工各种包含具体意义的信息,以此来表示相关的概念及知识。(2)机器感知。机器感知研究如何使计算机具有类似人的感知能力,以机器视觉与机器听觉为主。(3)机器思维。机器思维研究如何有目的地处理通过感知得来的外部信息和机器内部的工作信息。(4)机器学习。机器学习研究如何使计算机具有类似人的学习能力,使它能通过学习自动地获取知识。(5)机器行为。机器行为研究如何使计算机具有表达能力,即“说”“写”“画”等能力。探究活动讨 论以小组合作的形式上网搜索人工智能的不同定义,讨论人工

25、智能是什么。21Y3228.indd 62019/10/10 14:23:137 71.1 人工智能及其特征1.1.2 人工智能的基本特征人工智能的基本特征可概括为以下三点:1.由人类设计,为人类服务,本质为计算,基础为数据人工智能系统的本质体现为计算,通过对数据的采集、处理、分析和挖掘,形成有价值的信息流和知识模型,以延伸人类能力。2.能感知环境,能产生反应,能与人交互,能与人互补人工智能系统能借助传感器等器件感知外界环境,可以像人一样通过视觉、听觉、嗅觉和触觉等接收来自环境的各种信息,让机器会看、会听、会说、会行动、会思考和会学习。人与机器之间甚至可以互动,使机器能够“理解”人类乃至与人类

26、共同协作、优势互补。3.有适应特性,有学习能力,能演化迭代,可连接扩展人工智能系统在理想情况下应具有一定的随环境、数据或任务的变化而自适应地调节参数或更新优化系统的能力,从而使人工智能系统在各行各业广泛应用。调 查调查人工智能在自动翻译领域中的应用。收集相关应用案例,分析自动翻译机的人工智能具有哪些特征。拓 展假如机器能思考,世界会怎样人脑为什么会思考?人脑的结构是怎样的?能不能制造出具有人脑功能的机器?人类文明史告诉我们,许多新技术的发明,大部分都经历了神话科学幻想新技术出现的过程。科学家们是如何使机器学会思考的?1.机器能思考吗?科学家证明:可以用数学逻辑来理解神经活动,用特定的方法将电子

27、线路连接起来,可以模仿神经活动。这拉开了人工大脑研发的序幕。如今,科学家们基于神经单元的数学模型,利用人工神经单元器件,进一步建立了人工神经网络计算机,以模仿人的大脑智能,并已在图形、文字、声音识别和推理等方面取得了许多应用成果。2.什么是会思考的机器?人们一直希望制造出会思考的计算机。然而,到底什么才是真正会思考的计算机呢?一台运算速度为每秒一万亿次的计算机会思考吗?战胜世界围棋冠军的“阿尔法21Y3228.indd 72019/10/10 14:23:1388第一章 人工智能概述围棋”会思考吗?具有专家知识的专家系统会思考吗?1950年,计算机科学理论创始人图灵(A.Turing,1912

28、1954)设计出一种测试方法,以检验机器是否会思考,我们称它为“图灵测试”。图灵测试的设计思想如图1-4所示,它由有智能的被测试者A、测试的机器B和测试者C三部分组成,他们被彼此隔离。首先由测试者C提出有关智能测试的测试题,让被测试者A与机器B分别回答;然后,由测试者C比较被测试者A和机器B的回答,分辨哪个才是人类的问答,以判定机器的思考能力,即其达到的智能水平。3.认知计算系统“沃森”(Watson)认知计算系统“沃森”具备理解、学习和推理能力,可以实现智能人机交互,帮助人们做出决策。“沃森”被运用到许多领域。例如,搭载“沃森”的机器人可以识别文字、图像和语音,甚至还可以通过搭载的“情感引擎

29、”读取人内心的情感变化,与人类正常沟通。在医学保健方面,“沃森”可以协助医疗专家进行疾病的诊断(如图1-5所示),帮助医生了解和挖掘患者的详细病情,以便做出最佳诊断并制订相关的治疗计划。“沃森”在挑战极限、改变世界的同时也将为社会带来一系列新的问题。一位研究员称,“如果沃森诊断出错,而医生又听从了错误的诊断,那么沃森就会面临被患者告上法庭的危险,这是一个需要考虑的应用问题”。科学技术不断发展,人类对人工智能的幻想不断成为现实,人类社会也逐渐变得智能化。试想一下,当机器智能发展到可以像人类一样思考时,世界将会是什么样子?这已经不是单纯的技术问题了,而是涵盖了自然科学和社会科学领域的复杂问题。项目

30、实施各小组根据项目选题及拟订的项目方案,结合本节所学知识,剖析自动翻译领域中的人工智能。1.调查人工智能在自动翻译领域中的应用,并搜集典型案例,在小组中分享与讨论自动翻译领域人工智能的主要特征。2.描述人工智能的概念与基本特征。图1-5 人工智能辅助医学诊断图1-4 图灵测试示意图21Y3228.indd 82019/10/10 14:23:139 91.2 人工智能发展历程与趋势1.2 人工智能发展历程与趋势自古以来,人类就怀着一个美好的愿望从自然的束缚中解放自己,制造出可以代替人类承担某些工作的智能体。在古代的中国,关于人工智能,有着各种各样极富想象力的记载。传说,在远古时期的涿鹿之战中,

31、黄帝为对付蚩尤的雾阵,请风后发明了指南车无论车怎样前进、后退、转弯,木人的手一直牢牢地指向南方。这可以算得上是机器人的雏形了。而列子汤问中记载的“偃师献技”(如图1-6所示),更是将机器人的概念推到一个新的高度。这个用皮革、木头、树脂等材料制作的歌舞艺人,不仅外貌与真人无异,而且能歌善舞,这已经接近我们心目中对人工智能的印象。现代,人类有了更多的想象和向往,其中最典型的就是各种各样的智能机器人,它们不但能够帮助人类进行生产劳作,还可以帮助人类料理日常家务等。这些都反映了人们对人工智能的美好希冀。1.2.1 人工智能的发展历程人工智能始于20世纪50年代。在半个多世纪的发展历程中,由于受到智能算

32、法、计算速度、存储能力等多方面因素的影响,人工智能的发展历程经历了多次繁荣和低谷,至今大致分为三个发展阶段,如图1-7所示。1.第一阶段(20世纪50年代至80年代)这一阶段人工智能刚诞生,基于抽象数学推理的可编程数字计算机已经出现。符号主义者认为人类的认知过程就是各种符号进行运算的过程,而计算机也应该基于各种符号进行运算。在这一阶段,知识表示、知识推理、知识运用是人工智能的核心。尽管符号主义得到快速发展,但是由于很多事物不能进行形式化表达,建立的模型存在一定的局限性。此外,随着计算任务的复杂性不断加大,人工智能发展一度遇到瓶颈。2.第二阶段(20世纪80年代至90年代末)在这一阶段,专家系统

33、得到快速发展,在数学建模方面有重大突破。专家系统是一个具有大量专门知识与经验的程序系统。它应用人工智能技术和计算机技术,根据某领图1-6 偃师献技21Y3228.indd 92019/10/10 14:23:131010第一章 人工智能概述域的一个或多个专家提供的知识和经验,进行推理和判断,模拟人类专家的决策过程,以便解决那些需要人类专家处理的复杂问题。但由于专家系统在知识获取、推理能力等方面的不足,以及开发成本高等因素,人工智能的发展又一次进入低谷期。3.第三阶段(21世纪初至今)随着大数据的积聚、理论算法的革新、计算能力的提升,人工智能能够训练出更加智能化的算法模型。人工智能的发展模式也从

34、过去追求“用计算机模拟人工智能”,逐步转向机器与人结合而成的增强型混合智能系统,研究如何用机器、人、网络结合成新的群智系统,以及用机器、人、网络和物结合成更加复杂的智能系统。人工智能在很多应用领域取得了突破性进展,迎来了又一个繁荣时期。探究活动调 查任何新生事物的成长都不是一帆风顺的,人工智能也不例外。人工智能自萌芽以来,图1-7 人工智能的发展历程21Y3228.indd 102019/10/10 14:23:1511 111.2 人工智能发展历程与趋势不断引起人们的争论,不同人工智能学派对人工智能的基本理论和研究方法有不同的见解。以小组合作的形式,调查人工智能的主要学派,并填写表1-2。表

35、1-2 人工智能的主要学派符号主义主要观点取得的主要成就代表人物局限性连接主义主要观点取得的主要成就代表人物局限性行为主义主要观点取得的主要成就代表人物局限性统计主义主要观点取得的主要成就代表人物局限性仿真主义主要观点取得的主要成就代表人物局限性21Y3228.indd 112019/10/10 14:23:151212第一章 人工智能概述1.2.2 新一代人工智能的兴起1新一代人工智能的发展方向21世纪,人工智能发展进入新阶段,特别是在移动互联网、大数据、超级计算、物联网、虚拟现实、传感网、脑科学等新理论、新技术,以及经济社会发展强烈需求的共同驱动下,人工智能加速发展,呈现出深度学习、跨界融

36、合、人机协同、群智开放、自主操控等新特征。新一代人工智能正向以下几个方面发展。(1)大数据智能。从人工知识表达技术到大数据驱动知识学习。大数据智能理论突破了无监督学习、综合深度推理等难点,建立了由数据驱动,以自然语言理解为核心的认知计算模型,实现了从大数据到知识、从知识到决策的功能发展。(2)跨媒体智能。从处理单一类型的数据到跨媒体认知、学习和推理。跨媒体智能主要研究超越人类视觉能力的感知获取、面向真实世界的主动视觉感知及计算、自然声学场景的听觉感知及计算、自然交互环境的言语感知及计算、面向异步序列的类人感知及计算、面向媒体智能感知的自主学习和城市全维度智能感知推理引擎等领域。(3)混合增强智

37、能。从追求机器智能到迈向人机混合的增强智能。机器智能和人类智能各有所长,因此需要取长补短,融合多种智能模式的智能技术有广阔的应用前景。“人机器”的组合将是人工智能研究的主流方向,“人机共存”将是人类社会的新常态。(4)群体智能。从聚焦研究个体智能到基于互联网络的群体智能。群体智能主要研究群体智能结构理论与组织方法、群体智能激励机制与涌现机理、群体智能学习理论与方法、群体智能通用计算范式与模型等。(5)自主无人系统。从“人智能”到自主智能系统。自主智能系统是一种人工系统,它不需要人为干预,利用先进智能技术即可自动实现各种操作与管理。自主无人系统主要研究面向自主无人系统的协同感知与交互、协同控制与

38、优化决策、知识驱动的人、机、物三元协同与交互操作等理论和方法。(6)高级机器学习智能。高级机器学习智能主要研究统计学习基础理论、不确定性推理与决策、分布式学习与交互、隐私保护学习、少样本学习、深度强化学习、无监督学习、半监督学习和主动学习等学习理论和高效模型。(7)类脑智能。类脑智能主要研究类脑感知、类脑学习、类脑记忆机制与计算融合、类脑复杂系统、类脑控制等理论与方法。(8)量子智能。探索脑认知的量子模式与内在机制。量子智能主要研究高效的量子智能模型和算法、高性能高比特的量子人工智能处理器、可与外界环境交互信息的实时量子人工智能系统等。21Y3228.indd 122019/10/10 14:

39、23:1513 131.2 人工智能发展历程与趋势2新一代人工智能发展的战略目标我国为实现新一代人工智能的发展战略目标将分三步走:第一步,到2020年人工智能总体技术和应用与世界先进水平同步,人工智能产业成为新的重要经济增长点,人工智能技术应用成为改善民生的新途径,有力支撑进入创新型国家行列和实现全面建成小康社会的奋斗目标。第二步,到2025年人工智能基础理论实现重大突破,部分技术与应用达到世界领先水平,人工智能成为带动我国产业升级和经济转型的主要动力,智能社会建设取得积极进展。第三步,到2030年人工智能理论、技术与应用总体达到世界领先水平,成为世界主要人工智能创新中心,智能经济、智能社会取

40、得明显成效,为跻身创新型国家前列和经济强国奠定重要基础。1.2.3 人工智能发展的研究趋势推动人工智能技术革命的研究正在经历快速变革,各方面的研究共同掀起了人工智能研究的热潮。主要研究趋势如下:1大规模的机器学习、深度学习与强化学习(1)机器学习。许多机器学习(Machine Learning)的基本问题(如有监督学习和无监督学习)都很好理解。目前机器学习研究的一个重点是如何将现有的机器学习算法扩展到更加庞大和复杂的数据集上。(2)深度学习。深度学习(Deep Learning)成功训练卷积神经网络的能力很大程度上促进了计算机视觉领域的发展。深度学习在计算机视觉领域中已有一些比较成功的应用,包

41、括目标识别、视频标签、物体检测和物体跟踪等。深度学习也正在进军感知方面的其他领域,如音频、语音和自然语言处理等。(3)强化学习。传统机器学习研究集中于模式挖掘,而强化学习(Reinforcement Learning)将研究重点转移到决策上,强调在一系列的情境下,根据外部奖惩信号,通过多步恰当的决策来达到一个目标,是一种序列多步决策技术。这种技术有助于人工智能在真实世界中进入更深入的相关研究和实践领域。作为一种由经验驱动渐进决策过程的框架,强化学习已经存在了几十年,但是该技术在实践中仍未取得巨大成功。然而,深度学习的出现为强化学习提供了一次发展的契机。“阿尔法围棋”取得胜利的一个关键在于大量的

42、强化学习。它利用深度学习、强化学习与蒙特卡洛树搜索算法,有效锁定最有可能胜出的棋步,减少搜寻的范围。2智能机器人智能机器人(如图1-8所示)至少要具备三个要素:感觉要素、反应要素和思考要素。目前在静态环境中机器人的导航问题在很大程度上已经得到解决,以后的研究方向是21Y3228.indd 132019/10/10 14:23:151414第一章 人工智能概述如何训练机器人与周围环境进行更高层次的交互,即从周围环境中感知、学习、判断和推理,实现环境预测,并根据客观环境规划自己的行为。3计算机视觉计算机视觉(Computer Vision)是目前机器感知中最活跃的领域之一。随着深度学习的崛起,计算

43、机视觉在物体识别、图像问答、物体检测和物体跟踪等方面的应用中均取得了较大的成功。特别是图形处理器(Graphics Processing Unit,简称GPU)大规模计算能力的提升、可用大型数据集的建立和人工神经网络算法的改进使得计算机视觉系统迅猛发展,甚至在图像识别挑战中超越了人类进行物体识别分类的能力。4自然语言处理自然语言处理(Natural Language Processing,简称NLP)是机器感知的另一个比较活跃的领域。借助移动互联网技术、机器学习领域深度学习技术的发展,以及大数据语料的积累,自然语言处理技术取得了突飞猛进的进步。据统计,目前20的移动查询是通过语音实现的,神经网

44、络机器翻译系统可以将翻译准确率提高到90%以上,证明了实时翻译的可能性。自然语言处理技术研究现在已经逐步转向开发能够精准地理解用户的需求,可以与用户进行对话式搜索与智能交互的系统。5分布式人工智能20世纪80年代末,分布式人工智能(Distributed Artificial Intelligence,简称DAI)就是人工智能活跃的研究分支之一。互联网大规模的发展促进了分布式人工智能的开发与应用。分布式人工智能主要研究在逻辑上或物理上分散的智能系统如何并行地、相互协作地进行问题求解。多智能体系统(Multi-Agent System,简称MAS)是分布式人工智能研究的一个前沿领域。目前,多智能

45、体系统的研究重点是如何协调多个行为实体的动作,从而协同地完成大型且复杂的工作任务。6神经形态计算传统计算机执行计算时,将存放信息和程序指令的内存与处理信息的处理器分离。随着需要处理的信息量逐渐增多,信息处理复杂程度越来越高,人工智能研究者正在积极追求能够提高硬件效率和计算系统稳健性的执行计算替代模型。由于深度神经网络在一系列任务中的成功,神经形态计算(Neuromorphic Computing)受到研究者的关注。目前这种“神经形态”的计算机尚未获得巨大成功,只是刚开始有望实现商业化。但在不久的将来,神经形态计算可能会变得普遍。深度神经网络已经在应用架构方面实现了飞跃,若这些网络可以在专门的神

46、经形态硬件上被训练和执行,一个更大的飞跃即将到来。图1-8 智能机器人21Y3228.indd 142019/10/10 14:23:1615 151.2 人工智能发展历程与趋势交 流人工智能技术发展到现在,取得了一系列丰硕成果。调查人工智能在汉英自动翻译或其他领域取得的相关应用成果实例,并填写表1-3,在小组内部围绕人工智能技术取得的成果和发展趋势进行交流。表1-3 人工智能技术成果和发展趋势技术类型代表性研究领域取得成果发展趋势模式识别拓 展人工智能研究的三种途径仅靠现阶段人工智能的技术和方法,还远远不能制造出具有智能的机器。下面我们用一个简单的例子来说明,要使机器有智能,还需要解决的诸多

47、问题。如果我们想泡茶喝,那就要规划操作步骤:烧开水洗茶杯放茶叶泡茶或:洗茶杯烧开水放茶叶泡茶这两种操作步骤,一般人会选哪一种呢?当然是前者。因为人的智能会为实现一个目标制订规划,并选择最优的实现步骤。但是如果这个工作让只会做简单动作的机器人来做的话,它可能会选择后者,甚至会不断地洗茶杯放茶叶洗茶杯放茶叶那样,我们就有可能永远喝不到茶。这是因为现时机器人的智能还不能根据目标做出规划,并选择最优的实现步骤去完成预定的工作。可见,人工智能的研究任重而道远。科学家研究人工智能的途径有哪些呢?人工智能是数学、计算机科学、自动化、生理学、心理学和哲学等相结合的学科。可以从不同的角度去研究人工智能的问题,从

48、技术上来说,主要有以下三种途径:(1)以数理逻辑、计算机科学、心理学为基础,把人的智能表示为一种符号系统,然后再用智能技术和方法,处理智能符号系统中的数据,得到结果。这种方法在博弈、语言翻译、图像识别和专家系统等方面取得显著的应用成果。(2)从仿生学、人脑神经生理学的角度去研究人工智能,基于人脑神经模型,研究人工神经网络,用人工神经网络联结的过程模拟人的智能活动。这种方法通过训练神经网络进行机器学习,使机器获取知识,在文字和声音识别等方面取得了显著的应用成果,并在神经网络计算机研制方面取得了很大的进展。21Y3228.indd 152019/10/10 14:23:171616第一章 人工智能

49、概述(3)以控制理论为基础,认为人的智能取决于感知和行动,在智能机器人的研究方面取得了突出的应用成果。以上三种途径,各有所长,共同促进了人工智能技术的发展。项目实施各小组根据项目选题及拟订的项目方案,结合本节所学知识,剖析人工智能的成果及发展趋势。1.调查人工智能的主要学派,并填写表1-2。2.调查人工智能技术在汉英自动翻译或其他领域取得的成果实例,并填写表1-3。3.分析人工智能研究的发展趋势。1.3 人工智能的应用随着人工智能快速发展,人工智能技术和工具在制造、农业、金融、交通、安防、医疗、教育等经济和社会领域发挥着重要作用。1.3.1 人工智能在经济领域的应用1.智能制造智能制造是基于新

50、一代信息通信技术与先进制造技术深度融合,贯穿设计、生产、管理、服务等制造活动的各个环节,具有自感知、自学习、自决策、自执行、自适应等功能的新型生产方式,如图1-9所示。智能制造主要包括三个方面:一是智能装备,包括自动识别设备、人机交互系统、工业机器人和数控机床等设备,涉及跨媒体分析推理、自然语言处理、虚拟现实智能建模和自主无人系统等关键技术。二是智能工厂,包括智能设计、智能生产、智能管理和集成优化等内容,涉及跨媒体分析推理、大数据智能和机器学习等关键技术。三是智能服务,包括大规模个性化定制、远程运维和预测性维护等服务模式,涉及跨媒体分析推理、自然语言处理、大数据智能和高级机器学习等关键技术。图

51、1-9 智能制造21Y3228.indd 162019/10/10 14:23:1717 171.3 人工智能的应用2.智能农业智能农业以互联网、云计算和物联网技术为基础,依托部署在农业生产现场的各种传感节点和无线通信网络,运用人工智能技术实现农业生产环境的智能感知、智能预警、智能决策、智能分析、灾变预警、远程控制和专家在线指导等功能,为农业生产提供精准化种植、可视化管理和智能化决策。人工智能技术在大中型农业种植基地、设施园艺、畜禽水产养殖和农产品物流等方面均有应用。如在种植基地中布设各种类型的传感节点,监测环境温度和湿度、光照强度、二氧化碳浓度等数据,通过低功耗自组织网络的无线通信技术实现传

52、感器数据的无线传输。然后把所有数据汇集到中心节点,通过无线网关与互联网或移动网络相连,实现农业信息的多尺度(个域、视域、区域、地域)传输。用户通过手机或计算机可以实时掌握农场的环境信息,系统根据环境参数诊断农作物生长状况和病虫害状况。若检测到环境参数超标或不足,系统可远程对灌溉施肥等农业装备进行控制,实现农业生产的产前、产中、产后的过程监控,进而达到农业生产集约、高产、优质、高效、生态、安全等可持续发展的目标。3.智能金融人工智能技术可以提高金融服务的质量,为授信、各类金融交易和金融分析提供决策支持,还可用于风险防控和监督。人工智能技术的应用将大幅改变金融现有格局,使金融服务更加个性化与智能化

53、。人工智能在金融领域的应用多种多样。如智能获取客户,依托大数据对金融用户进行画像,通过需求响应模型,从而提升获客效率。身份识别,以人工智能为内核,通过人脸识别、声纹识别、指静脉识别等生物识别手段,再加上各类票据、身份证、银行卡等证件票据的识别技术手段,对用户身份进行验证,从而降低核验成本,提高安全性。大数据风控,通过大数据、算力、算法的结合,搭建反欺诈、信用风险等模型,多维度控制金融机构的信用风险和操作风险,避免资产损失。智能投资顾问,基于大数据和算法能力,对用户与资产信息进行标签化,精准匹配用户与资产,提供投资建议。智能客服,基于自然语言处理和语音识别技术,拓展客服领域的深度和广度,大幅降低

54、服务成本,提升服务体验。金融云,依托云计算能力,为金融机构提供更安全高效的全套金融解决方案。4.智能交通智能交通系统是通信、信息和控制技术在交通系统中集成应用的产物。智能交通借助现代科技手段和设备,将各核心交通元素联通,实现信息互通与共享,以及各交通元素的彼此协调、优化配置和高效使用,形成人、车和交通高效协同的环境,从而建立安全、高效、便捷和低碳的交通模式。如图1-10所示,通过交通信息采集系统监测道路中的车辆数量、运动状态、行车图1-10 人工智能采集道路信息21Y3228.indd 172019/10/10 14:23:171818第一章 人工智能概述速度等信息,经信息分析系统处理后生成实

55、时路况信息。决策系统据此调整道路红绿灯时长,调整可变车道或潮汐车道的通行方向等,同时通过信息发布系统将路况推送到导航软件和广播中,让人们合理规划行驶路线。此外,通过电子不停车收费系统(Electronic Toll Collection,简称ETC),可以实现过往车辆信息的自动采集、处理,对过往车辆收费和放行,有效提高通行能力,简化收费管理。1.3.2 人工智能在社会领域的应用1.智能安防智能安防技术是一种利用人工智能存储和分析视频、图像,从中识别安全隐患并对其进行处理的技术。智能安防与传统安防的最大区别在于智能化,传统安防对人的依赖性比较强,用户面对海量的视频数据,无法简单利用人海战术进行检

56、索和分析。采用人工智能专家系统作为辅助手段,可以实时分析视频内容,探测异常信息,进行风险预测。从技术方面来讲,智能安防分析技术主要集中于两大类:一类是采用画面分割和前景提取等方法提取视频画面中的目标进行检测,依照不同的规则来区分不同的事件,从而实现不同的判断并产生相应的报警联动,如区域入侵分析、打架检测、人员聚集分析(如图1-11所示)、交通事件检测等应用。另一类是利用模式识别技术,对画面中特定的物体进行建模,并通过大量样本训练,从而达到对视频画面中的特定物体进行识别,如车辆检测、人脸检测、人头检测(人流统计)等应用。2.智能医疗智能医疗在辅助诊疗、疾病预测、医学影像辅助诊断和药物开发等方面均

57、发挥了重要作用。在辅助诊疗方面,人工智能技术可以有效提高医护人员的工作效率,提升一线全科医生的诊断治疗水平。如利用智能语音技术可以实现电子病历的智能语音录入;利用智能影像识别技术,可以实现医学图像的自动读片(如图1-12所图1-11 人工智能分析地区人员聚集情况图1-12 医学影像辅助诊断系统21Y3228.indd 182019/10/10 14:23:1819 191.3 人工智能的应用示);利用智能技术和大数据平台,可以构建辅助诊疗系统。在疾病预测方面,人工智能借助大数据技术可以进行疫情监测,及时有效地预测并防止疫情的进一步扩散和发展。以流感为例,很多国家都有规定,当医生发现新型流感病例

58、时需告知疾病控制与预防中心。但由于人们可能患病不及时就医,而且信息传达回疾控中心也需要时间,新流感病例通告往往会有一定的延迟,人工智能通过疫情监测能够有效缩短响应时间。在医学影像辅助诊断方面,影像判读系统通过结合人工智能技术得到发展。早期的影像判读系统主要靠人手工编写判定规则,存在耗时长、临床应用难度大等问题,从而未能得到广泛推广。人工智能影像判读系统通过提取医学影像特征并进行分析,为患者预前和预后的诊断和治疗提供评估方法和精准诊疗决策。3.智能教育人工智能技术的发展使教育也将发生重大的结构性变革。智能教育通过广泛利用智能设备、社会网络、传感器等,架构新型智能学习环境,从而支持情境觉知、学习过

59、程记录、学习数据分析、学习服务维护、学习诊断与评价等诸多重要功能。人工智能技术在教育领域的应用场景主要有智能教育环境、智能学习过程支持、智能教育评价、智能教师助理、教育智能管理与服务等。智能教育旨在促进学生充分利用智能设备无缝接入,自由订制个性化服务,参与学习活动,从而培养具有良好价值取向、较高思维品质和较强思维能力的人才。探究活动以小组合作的形式,讨论人工智能的应用领域,以及对社会未来发展的价值。项目实施各小组根据项目选题及拟订的项目方案,结合本节所学知识,调查人工智能的发展历程,进一步完善该项目方案中的各项学习活动,并参照项目范例的样式,撰写相应的项目成果报告。成果交流各小组运用数字化学习

60、工具,将所完成的项目成果,在小组或班级上进行展示与交流,共享创造、分享快乐。活动评价各小组根据项目选题、拟订的项目方案、实施情况以及所形成的项目成果,利用教科书附录2的“项目活动评价表”,开展项目学习活动评价。21Y3228.indd 192019/10/10 14:23:182020第一章 人工智能概述本章扼要回顾同学们通过本章学习,根据“人工智能概述”知识结构图,扼要回顾、总结、归纳学过的内容,建立自己的知识结构体系。回顾与总结21Y3228.indd 202019/10/10 14:23:2021 21本章学业评价本章学业评价同学们完成下列测试题(更多的测试题可以在教科书的配套学习资源包

61、中查看),并通过“本章扼要回顾”以及本章的项目活动评价,综合评价自己在信息技术知识与技能、解决实际问题的过程与方法,以及相关情感态度与价值观的形成等方面,是否达到了本章的学习目标。1.单选题(1)人工智能是研究计算机模拟人的某些思维过程和智能行为(如学习、推理、思考和规划等)的()。A方式 B学科 C流派 D能力(2)借助传感器等器件,人工智能系统能()外界环境,可以像人一样通过视觉、听觉、嗅觉和触觉等接收来自环境的各种信息,让机器会看、会听、会说、会行动、会思考和会学习。A判断 B分析 C感知 D辨别(3)推动人工智能技术革命的研究正在经历快速变革,各方面的研究共同掀起了人工智能研究的热潮。

62、主要的研究趋势有大规模的机器学习、()与强化学习。A.自主学习 B.深度学习 C.网络学习 D.探究学习2.思考题自动语音翻译是人工智能应用的一个发展领域,根据自己的理解,说说自动语音翻译需要用到哪些硬件设备和控制技术来实现。3.情境题某同学暑假买了一台智能音箱,能够通过语音来指挥智能音箱点播歌曲、背诵诗词、预报天气,还可以对智能家居设备进行控制,比如开合窗帘、调节空调温度、遥控电视等。简要说明智能音箱通过语音识别来实现人机交互的基本原理。21Y3228.indd 212019/10/10 14:23:202222第二章 人工智能基础算法及应用第二章人工智能基础算法及应用人工智能已经进入蓬勃发

63、展的时期,智能网联汽车、智能服务机器人、智能无人机、医学影像辅助诊断系统、视频图像身份识别系统、智能语音交互系统、智能翻译系统和智能家居产品等应用百花齐放,人工智能成为社会未来发展的重要方向。本章将通过“剖析人工智能自动导航系统”项目,进行自主、协作、探究学习,让同学们通过剖析具体案例,了解人工智能的核心算法(如启发式搜索),熟悉智能技术应用的基本过程和实现原理,知道特定领域人工智能应用系统的开发工具和开发平台,通过具体案例了解这些工具的特点、应用模式及局限性,从而将知识建构、技能培养与思维发展融入运用数字化工具解决问题和完成任务的过程中,促进信息技术学科核心素养达成,完成项目学习目标。人工智

64、能编程语言与开发平台 启发式搜索 自然语言处理 生物特征识别21Y3228.indd 222019/10/10 14:23:2123 23剖析汽车自动导航系统剖析汽车自动导航系统项目范例情 境在日常生活中,各类导航系统应用广泛。在导航系统标准中,路径规划模块为导航或其他路径规划程序提供了路径计算、地图匹配和道路引导等功能,如图2-1所示。其中路径计算基于道路网络图,寻找由起点到目的地的最短路径。导航还是自动驾驶汽车和自主移动机器人的关键技术。自主移动机器人的导航就是让机器人可以自动按照内部预设的信息,或者依据传感器获取的外部环境信息进行路径规划,从而得到一条适合机器人在对应环境中移动的路径。主

65、 题剖析汽车自动导航系统规 划根据项目范例的主题,在小组中组织讨论,利用思维导图工具,制订项目范例的学习规划,如图2-2所示。图2-2“剖析汽车自动导航系统”项目学习规划图2-1 路径规划示意图21Y3228.indd 232019/10/10 14:23:252424第二章 人工智能基础算法及应用探 究根据项目学习规划的安排,通过调查、案例分析、文献阅读和网上资料搜索,开展“剖析汽车自动导航系统”项目学习探究活动,如表2-1所示。表2-1“剖析汽车自动导航系统”项目学习探究活动探究活动学习内容知识技能导航软件具体感知应用软件系统,分析系统构造,描述系统的基本功能。汽车自动导航系统的组成。知道

66、特定领域人工智能应用系统的开发工具和开发平台,通过具体案例了解这些工具的特点、应用模式及局限性。汽车自动导航智能分析的步骤。汽车自动导航智能分析的方法。数据分析处理了解数据分析处理的基本方式。自动导航系统的数据来源。熟悉智能技术应用的基本过程和实现原理。自动导航系统数据格式处理。自动导航系统数据存储和运算方法。搜索算法知道搜索算法的基本原 理,描 述 算 法 总 体思路。状态空间搜索问题求解。了解人工智能的核心算法(如启发式搜索)。启发式搜索策略。A*算法。实 施实施项目学习各项探究活动,进一步剖析汽车自动导航系统。成 果在小组开展项目范例学习过程中,利用思维导图工具梳理小组成员在“头脑风暴”

67、活动中的观点,建立观点结构图,运用多媒体创作工具(如演示文稿、在线编辑工具等),综合加工和表达,形成项目范例可视化学习成果,并通过各种分享平台发布,共享创造、分享快乐。例如,运用在线编辑工具制作的“剖析汽车自动导航系统”可视化报告,可以在教科书的配套学习资源包中查看,其目录截图如图2-3所示。21Y3228.indd 242019/10/10 14:23:2525 25剖析汽车自动导航系统评 价根据教科书附录2的“项目活动评价表”,对项目范例的学习过程和学习成果在小组或班级上进行交流,开展项目学习活动评价。项目选题同学们以36人组成一个小组,选择下面一个参考主题,或者自拟一个感兴趣的主题,开展

68、项目学习。1剖析船舶自动导航系统 2剖析无人机自动导航系统3剖析扫地机器人自动导航系统项目规划各小组根据项目选题,参照项目范例的样式,利用思维导图工具,制订相应的项目方案。方案交流各小组将完成的方案在全班进行展示交流,师生共同探讨、完善相应的项目方案。图2-3“剖析汽车自动导航系统”可视化报告目录截图21Y3228.indd 252019/10/10 14:23:272626第二章 人工智能基础算法及应用2.1 人工智能编程语言与开发平台汽车自动导航系统是一类典型的人工智能系统。它可以在限定的平面区域内,标识所有道路并收集道路实时车辆行驶状况,在此基础上规划出从A地到B地的驾驶路线。要实现汽车

69、自动导航的路线规划,需要对道路网络和车辆行驶状况进行数据建模、确定搜索算法和编写算法程序,以及进行一系列分析工作。而在这过程中需要用到基本的人工智能编程语言。人工智能编程语言是一类适用于人工智能和知识工程领域,具有符号处理和逻辑推理能力的计算机程序设计语言。主要用于求解非数值计算、知识处理、推理、规划、决策等需要智能解决的各种复杂问题。一般来说,人工智能编程语言具有以下特点:具有符号处理能力;适合于结构化程序设计,编程便捷;具有递归功能和回溯功能;具有人机交互能力;适合于推理。2.1.1 常用人工智能编程语言人工智能是一个广阔的领域,很多编程语言都可以用于人工智能开发。根据不同的情况,开发人员

70、可以选择不同的编程语言以提高效率、节省时间。探究活动典型的人工智能编程语言有Lisp、Prolog、C+、Java和Python等。调查常用人工智能编程语言的优点与局限性,讨论不同语言的适用场景,并填写表2-2。表2-2 人工智能编程语言调研编程语言优点局限性适用场景C+Python21Y3228.indd 262019/10/10 14:23:2727 272.1 人工智能编程语言与开发平台1.LispLisp的名字源自“列表处理器”(List Processor),于1958年提出,是历史悠久且仍广泛使用的高级编程语言。自第一台电子计算机问世以来,各类大、中、小、微型电子计算机相继被研发出

71、来,它们完成了大量繁重、重复的科学计算和管理工作,减轻了人类一部分脑力劳动。与此同时,不少先驱者已经开始考虑用计算机来完成人类的智能活动,如语言翻译、推理、决策和学习归纳等。作为最早期的高级编程语言之一,Lisp因其出色的原型设计能力和对符号表达式的支持,再加上垃圾收集技术、动态类型、数据函数、统一的语法、交互式环境和可扩展性等特性,非常适用于人工智能研究。2.PrologProlog(Programming in Logic)是一种基于谓词逻辑理论的逻辑编程语言。Prolog提供模式匹配、自动回溯和基于树的数据结构化机制,还能与Lisp有效结合。Prolog的特性使得实现事实(facts)和

72、规则(rules)变得简单直接,因此被广泛应用于人工智能研究中,可以用来建造专家系统、智能知识库以及理解自然语言等。3.C/C+C+是C的超集,在这里我们把它们归为一类。C/C+能够在硬件层面进行通信,是执行速度最快的编程语言之一,适用于编写底层软件(如操作系统的核心部分或网络协议)。出于同样的原因,它们也是执行机器学习底层算法的通用选项。C/C+还可用于构建人工智能项目中的统计技术,如神经网络。通常游戏中的人工智能部分和搜索引擎也会使用C/C+语言编写,以获得更快的响应速度。4.JavaJava是一种面向对象的编程语言,能为人工智能项目开发提供所需的功能。Java提供了内置的垃圾回收机制,其

73、完善丰富的社区生态可以帮助开发人员随时随地查询问题的解决思路和方法。算法是人工智能项目的灵魂,无论是搜索算法、自然语言处理算法还是神经网络,Java都可以通过简单快速的编码实现。另外,Java的可移植性和扩展性也为人工智能项目开发提供便利。5.PythonPython是一种被广泛使用的面向对象的解释型高级通用编程语言,可以视为一种改良的Lisp语言。作为一种解释型语言,Python的设计哲学强调代码的可读性和语法的简洁性。相比于C+或Java,Python让开发者能够用更少的代码实现自己的想法。不管是小型还是大型程序,该语言都试图让程序的结构清晰明了。Python拥有动态类型系统和垃圾回收功能

74、,能够自动管理内存使用,并且支持多种编程范式,包括面向对象、命令式、函数式和过程式编程,且拥有一个巨大而广泛的标准库。2.1.2 Python在人工智能中的运用Python将许多高级编程语言的优点集于一身,兼顾了可读性和易用性,不仅可以像脚本语言一样,用非常精练易读的代码,就可以完成使用C语言需要通过复杂编码才能完成21Y3228.indd 272019/10/10 14:23:272828第二章 人工智能基础算法及应用的程序任务,还具备面向对象编程等各式各样的强大功能。不同于C语言等编译型语言,Python作为一门解释型语言,也非常便于调试代码。同时,Python免费使用和跨平台的特性,也使

75、这门编程语言吸引了越来越多开源库的贡献者和使用者。使用Python编程至少有以下四项优势:1.方便调试的解释型语言Python是一门解释型编程语言,源代码都要通过解释器(Interpreter)转换为独特的字节码,这个过程不需要保证全部代码一次性通过编译。相反,Python解释器会逐行处理这些代码,这样方便了程序调试,也特别适合于使用不同机器学习模型进行增量式开发。2.跨平台执行作业通过在不同的平台安装用于运行上述字节码的虚拟机,Python便可以执行跨平台作业。由于机器学习任务通常会在多种平台执行,因此以Python这类解释型语言作为编码媒介不失为一种好的选择。3.丰富的应用程序编程接口除了

76、编程人员所使用的第三方程序库以外,许多著名公司用于科研和商业的云平台都为互联网用户提供了支持机器学习功能的Python应用程序编程接口(Application Programming Interface,简称API)。许多平台的机器学习功能模块不需要由用户来编写,用户只需要像搭积木一样,通过Python语言并且遵照云平台的编写协议与规则,把各个模块串接起来即可实现不同的功能。4.丰富完备的开源工具包软件工程中有一个非常重要的理念,便是代码与程序的重复利用性。为了构建功能强大的机器学习系统,如果没有特殊的开发需求,通常情况下,我们都不会从零开始编程。比如,机器学习算法中经常会使用的向量计算,如果

77、Python中没有直接提供用于向量计算的工具,我们还需要自己花时间编写这样的基础功能吗?答案是否定的。Python自身免费开源的特性使得大量专业的编程人员参与到Python第三方开源工具包(程序库)的构建中。更为可喜的是,大多数的工具包都允许个人免费使用,乃至商用。这其中就包括便于向量、矩阵和复杂科学计算的NumPy与SciPy,便于绘图的Matplotlib,包含大量经典机器学习模型的Scikit-learn,对数据进行快捷分析与处理的Pandas,以及集成了上述所有第三方程序库的综合实践平台Anaconda。下面介绍几种常用的Python第三方开源工具包。(1)NumPy与SciPy。Nu

78、mPy是最基础的Python工具包,除了提供高级数学运算机制以外,还具备非常高效的向量和矩阵运算功能,这些功能对于机器学习的计算任务尤为重要。而NumPy更为突出的是它内部独到的设计,使得矩阵和向量计算的处理效率比Python自带程序库的运行效率高出许多。SciPy则是在NumPy的基础上构建的更为强大,应用领域也更为广泛的科学计算包,SciPy需要依赖NumPy的支持运行。(2)Matplotlib。Matplotlib是Python编程环境下的开源2D绘图工具包,可以在跨平台的交互式环境中生21Y3228.indd 282019/10/10 14:23:2729 292.1 人工智能编程语

79、言与开发平台成出版质量级别的图形和图像。通过Matplotlib,开发者只需要几行代码,便能生成各种绘图,如直方图、条形图和散点图等。(3)Pandas。Pandas是一款用于数据处理和分析的开源Python工具包,包含大量库和一些标准的数据模型,提供了高效操作大型数据集所需的工具,便于进行数据读写、清洗、填充和分析等操作。研发人员借助该工具包能节省大量用于数据预处理工作的代码,从而有更多精力专注于具体的机器学习任务。(4)Scikit-learn。Scikit-learn是Python的一个开源机器学习工具包,它建立在NumPy、SciPy和Matplotlib模块之上,能够为用户提供各种机

80、器学习算法接口,可以让用户简单、高效地进行数据挖掘和数据分析。这使它成为开发者经常使用的核心工具包。(5)TensorFlow。TensorFlow是一个采用数据流图(Data Flow Graphs)表示数值计算的开源工具包。图中的节点(Nodes)表示数学操作,图中的线(Edges)表示在节点间相互联系的多维数据数组,即张量(Tensor)。它灵活的架构使计算可以在多种平台上展开,例如台式计算机中的一个或多个CPU(或GPU)、服务器和移动设备等。TensorFlow最初用于机器学习和深度神经网络方面的研究,但这个系统的通用性使其也可被广泛用于其他计算领域。(6)Anaconda。Anac

81、onda是Python的一个发行版本,是包含了Conda管理工具、虚拟环境(Environment)、多个科学包(Packages)及其依赖项的管理系统,主要应用于数据科学与机器学习等相关领域(如大规模数据处理、预测分析和科学计算等)。2.1.3 典型人工智能开发平台为了推进新一代人工智能发展规划和重大科技项目的组织实施,强化对人工智能研发应用的基础支撑,形成促进人工智能软件、硬件和智能云之间相互协同的生态链,中华人民共和国科学技术部秉承开放共享的创新理念,先后公布建设了多个“国家新一代人工智能开放创新平台”。1自动驾驶国家新一代人工智能开放创新平台未来,自动驾驶系统将依靠人工智能、视觉计算、

82、雷达、监控装置和全球定位系统协同合作,让计算机可以在没有任何人类主动的操作下,自动安全地操作机动车辆。2城市大脑国家新一代人工智能开放创新平台城市大脑是人工智能公共系统的一种,可以对整个城市进行全局实时分析。例如,某城市大脑接管了全市128个信号灯路口,试点区域通行时间平均减少15.3%,高架道路出行时间平均节省4.6分钟。如图2-4所示,城市大脑通过大量数据的收集和分析,掌握城市运行的规律,将更好地反哺城市发展和建设,使人们生活的方方面面更便捷。21Y3228.indd 292019/10/10 14:23:273030第二章 人工智能基础算法及应用3医疗影像国家新一代人工智能开放创新平台2

83、017年8月,一款人工智能医学影像产品“觅影”发布。这是首款人工智能食管癌筛查系统,检测准确率超过90%;在肺结节方面,“觅影”可以检测出3毫米及以上的微小结节,检测准确率超过95%。人工智能医学影像技术以非侵入方式检测人体或人体某部分,取得内部组织影像,以便更好地观察人体的健康状况,并进行进一步诊治。未来,“觅影”将与医学院和医疗结构合作,助力更多病种检测。4智能语音国家新一代人工智能开放创新平台现在我国人工智能语音识别的准确率已经达到95%,其中语音听写、合成、测评、翻译、声纹识别等人工智能核心技术,促进了人工智能应用的落地,实现了人机对话交互等。5智能视觉国家新一代人工智能开放创新平台人

84、脸识别、图像识别、文字识别、图像与视频分析、图像与视频编辑等智能视觉技术已广泛应用于安全防护、智慧城市、自动驾驶、遥感探测和工业生产等领域,给地区管理和人们的生活带来便捷,如统计果实数量,分析农作物成长情况;探测地区人口密度,预警踩踏事件发生的可能性;监测人员外貌与行为特征,捕捉罪犯行踪等。随着人工智能技术的发展,越来越多的“国家新一代人工智能开放创新平台”相继投入使用,对提升社会的创新力与生产力起着重要作用。项目实施各小组根据项目选题及拟订的项目方案,结合本节所学知识,剖析自动驾驶系统的功能。1.分析自动导航系统的构造,描述其基本功能。2.在地图上人工规划一条从A地到B地的行驶线路。3.调查

85、常用人工智能编程语言,并填写表2-2,了解人工智能开发平台。图2-4 杭州城市数据大脑21Y3228.indd 302019/10/10 14:23:2731 312.2 启发式搜索2.2 启发式搜索启发式搜索(Heuristic Search)是人工智能领域解决问题常用的方法之一。基于已有知识和经验,根据问题的实际情况,不断寻找可利用知识,从而构造一条效率最高的推理路线,使问题得以解决的过程称为搜索。对于人工智能系统而言,问题的状态空间随搜索的深入呈现指数或阶乘增长。为了准确地找出正确答案,启发式搜索将沿最有希望的路径穿越状态空间来降低解决问题的复杂性;同时,把没有希望的状态及这些状态的后代

86、排除,这样便可以克服组合“爆炸”,找到可接受的解。探究活动讨 论下面以如图2-5所示的简化地图为例,探讨导航问题(真实的地图导航虽然更复杂,但两者基本原理一致)。图中每一步都有上下左右四种可能的走法,所有可能的走法所构成的路径全集组成了问题的状态空间,而其中任意一条从起点到终点的通路就是问题的一个解,没有通路就代表问题无解。启发式搜索在求解的过程中,并非穷举上下左右四个方向盲目搜索,而是根据当前位置与目标之间的一些相关信息(例如与终点的距离等),优先选择最有希望的方向去搜索,如果路线不通,再搜索其次有希望的方向,从而尽可能快地找到通路。2.2.1 启发式搜索原理由于求解条件的不确定性和不完备性

87、,求解问题的过程可能会有很多分支。我们把每条可能的分支画成一幅图,这幅图表示的就是问题的状态空间。问题的状态空间即问题的解空间,或称其为“状态树”,如图2-6所示。图中的节点Si(i=1,2,3,)表示状态,状态之间的连接采用有向线段来表示状态之间的转换关系。图2-5 简化地图导航问题图2-6 问题的状态空间21Y3228.indd 312019/10/10 14:23:293232第二章 人工智能基础算法及应用搜索即设法在庞大状态空间图中找到目标。启发式搜索又称为有信息搜索,它基于问题的状态空间,利用问题的启发信息来引导搜索,达到减少搜索范围、降低问题复杂度的目的。启发式搜索依据某种知识及信

88、息的指导,通过逐一状态比较而找到符合规定条件的目标状态解。1.状态空间搜索状态空间搜索的问题求解过程表现为在状态空间中寻找从初始状态到目标状态的可行路径。通俗地说,就是在求解问题时,找到解题的过程,最终得到问题的解答。常用的状态空间搜索有广度优先和深度优先两种方法。广度优先是从初始状态一层一层向下找,直到找到目标为止;深度优先是按照一定的顺序先查找完一个分支,再查找另一个分支,直到找到目标为止。广度优先和深度优先搜索都有一个很大的缺陷,就是它们都是在一个给定的状态空间中穷举。这在状态空间不大的情况下是合适的算法,可是当状态空间十分庞大的情况下就不可取了,它们的效率实在太低,甚至不可完成。2.估

89、价函数启发式搜索在解决问题的过程中,由于只有有限的信息(比如当前状态的描述),要想进一步预测搜索过程中状态空间的具体行为很难。因此,启发式搜索极易出错。通过启发式搜索可能得到一个最优解,也可能一无所获。这是启发式搜索固有的局限性,且这种局限性不能由所谓更好的启发式策略或更有效的搜索算法来消除。一般来说,启发信息越强,扩展的无用节点就越少,就越可能大大降低搜索工作量,但不能保证找到最佳路径。因此,在实际应用中,最好在引入降低搜索工作量的启发信息的同时,不降低找到最佳路径的可能性。在启发式搜索中,用于评价状态空间节点x重要性的函数称为估价函数,其一般形式为f(x)=g(x)+h(x)其中,g(x)

90、为从初始节点到节点 x 付出的实际代价,h(x)为从节点 x 到目标节点的最优路径的估计代价,也称为启发函数。估价函数 f(x)是根据具体问题的不同而人为设定的,设定的有效性会直接影响搜索算法的效率。如图2-5所示的简化地图导航问题,可以把实际代价 g(x)设定为已经走过的路径长度,估计代价 h(x)设定为当前位置与终点之间的直线距离,也可以设置权重等。3.启发函数启发性信息主要包含在启发函数 h(x)中,其形式要根据问题的特点来确定。虽然启发式搜索有望很快到达目标节点,但需要花费一些时间来评价新生节点。因此,在启发式搜索中,估价函数的定义十分重要。如定义不当,搜索算法不一定能找到问题的解,即

91、使找到解,也不一定是最优的。启发函数 h(x)的启发性信息通俗地说就是在估计下一个节点的值时的约束条件。约束条件的多少会影响计算的耗时与准确性。如果信息越多或约束条件越多,则排除的节点就越多,计算准确度就越高;但同时,启发函数 h(x)包含的信息越多,它的计算量就越大,计算耗费的时间就越多。因此,适当地设定启发函数 h(x)所包含的信息量、平衡准确度与耗时的关系非常重要。21Y3228.indd 322019/10/10 14:23:2933 332.2 启发式搜索分 析根据如图2-5所示的简化地图,分析应如何设计估价函数。2.2.2 启发式搜索的分类在具体选取最佳搜索节点时,基于使用策略的不

92、同,启发式搜索算法可以分为局部择优搜索算法、最佳优先搜索算法和A*算法等。1.局部择优搜索算法局部择优搜索算法又叫爬山法。在搜索的过程中扩展当前状态空间时,该算法将在选取最佳子节点后,舍弃其他的兄弟节点和父节点,而一直搜索下去。这种搜索的局限性很明显,由于舍弃了其他的节点,搜索结果可能把最好的节点都舍弃了,因此求解的“最佳节点”只是该阶段的最佳,并不一定是全局的最佳。这种算法不保存任何历史记录,所以它不具有从失败中恢复的能力。因此,局部择优搜索算法的主要问题在于容易陷入局部最优值。2.最佳优先搜索算法对比局部择优搜索算法,最佳优先搜索算法就智能多了,该算法在搜索时,不会舍弃节点(除非该节点是死

93、节点),在每一步的估价中,把当前节点和以前节点的估价值做比较,从而得到“最佳节点”,这样可以有效地防止“最佳节点”丢失。最佳优先搜索算法使用优先队列,使得算法可以从陷入局部优先等情况中恢复,从而使启发式搜索更加灵活。最佳优先搜索算法使用列表来维护状态,用open列表来记录搜索的当前状态,用close列表来记录已经访问过的状态。这种算法的创新之处是对open列表中的状态进行排序,排序的依据是对状态与目标“接近程度”的启发性估计。最佳优先搜索算法总是选择最有希望的状态做进一步扩展。由于它正在使用的启发信息可能被证明是错误的,所以它并不会抛弃所有状态,而是把它们记录在open列表中。一旦发现启发信息

94、将搜索引导到一条证明不正确的路径,那么算法会从open列表中取出“次优先”的状态,从而把搜索的焦点转移到状态空间的另一部分。3.A*算法A*算法是当今自动导航和游戏软件开发中十分常用的一种路径寻找算法,它可以保证在任何起点和任何终点间找到最佳的路径。A*算法是人工智能在实际应用中的代表,是一种典型的启发式搜索算法。A*算法是一种在静态路网中求解最短路径的直接搜索方法,也是解决许多搜索问题的有效算法。算法中的距离估算值 h(x)与实际值越接近,最终搜索速度越快。保证找到最短路径(最优解)条件的关键在于估价函数 f(x)的选取或者说 h(x)的选取。我们以 d(x)表达状态 x 到目标状态的实际距

95、离,那么 h(x)的值大致有如下三种情况:(1)若 h(x)d(x),即估计距离大于实际距离,则搜索的节点数少,搜索范围小,效率高,但不能保证得到最优解。A*算法按 f(x)递增的顺序来排列可能被扩展的节点,因而优先扩展 f(x)值最小的节点,体现了“最佳优先”的搜索思想,但只有当 h(x)d(x)时,才能找到最优解。实践证明,应用这样的估价函数是可以找到最短路径的。体 验试用A*算法解决如图2-5所示的简化地图导航问题。估价函数 f(x)的设定方法和算法的大致步骤如下:(1)建立一个搜索队列Q,用来存放待搜索的点,以及该点的来路(即上一步是从哪个点过来的)。队列Q的初始状态为空。(2)当有新

96、的点加入队列Q时,计算该点的估价函数 f(x),并且队列Q中所有的点按照 f(x)从小到大排列,f(x)相同时按照先来后到的顺序排列。(3)首先把导航的起点加入队列Q中,起点的来路为空。(4)从队列Q中取出第一个点P(估价函数值最小的点),如果已经无点可取(队列Q为空),则输出结果:“导航没有通路,算法结束”。否则继续下一步。(5)如果点P就是终点,则已经找到一条通路,只要沿着点P的来路一个个点输出,直至起点,就能输出这条通路,算法结束。否则继续下一步。(6)把点P上下左右四个方向的邻接点依次取出,排除掉其中路不通的点,以及曾经进入过队列Q的点,余下的点作为待搜索的点加入队列Q中依照步骤(2)

97、的方法。(7)重复步骤(4),直至算法在步骤(4)或步骤(5)处结束,或者队列Q满了,无法继续搜索而结束。启发式搜索的启发式信息通过设定估价函数 f(x)来调整。特别地,如果设定 f(x)等于常数C,则A*算法退化成广度优先算法;如果设定 f(x)值等于来路(上一点)的 f(x)值的常数C倍(0C80:return 照片相似度:+str(score)+,同一个人 else:return 照片相似度:+str(score)+,不是同一个人if _name_=_main_:print(输入第一张图片:)file1=raw_input()print(输入第二张图片:)file2=raw_input(

98、)print(开始对比)res=img(./img/+file1,./img/+file2)print(res)人脸识别的核心功能由人工智能开放创新平台的底层程序实现。可以尝试自行修改Python程序代码,观察运行结果的变化,了解程序运行的机制;或者改变人脸识别功能,例如将程序变为从一批图片之中选取跟指定图片相似度最高的一张等。21Y3228.indd 442019/10/10 14:23:3745 452.4 生物特征识别2.4.3 虹膜识别系统人的眼球结构由角膜、巩膜、瞳孔、虹膜、晶状体、视网膜等部分组成。虹膜是位于黑色瞳孔和白色巩膜之间的圆环状部分,包含很多相互交错的斑点、细丝、冠状、条

99、纹和隐窝等细节特征。如图2-13所示,虹膜识别系统基于眼睛中的虹膜进行身份识别,主要应用于安防设备(如门禁、设备开关等),以及有高度保密需求的场所。2.4.4 指静脉识别系统指静脉识别是静脉识别技术的一种。如图2-14所示,通过近红外光线照射手指,利用图像传感器获取个人手指静脉分布图,然后从手指静脉分布图提取特征值并存入计算机系统,等待进行识别。图2-13 虹膜识别系统图2-14 指静脉识别系统21Y3228.indd 452019/10/10 14:23:394646第二章 人工智能基础算法及应用进行识别时,实时采集静脉图,提取特征值,运用滤波、图像二值化、细化等手段,提取数字图像特征,然后

100、和存储在主机中的手指静脉特征值比对,采用匹配算法对手指静脉特征进行匹配,从而实现个人身份鉴定,确认身份。同其他生物识别技术相比,指静脉认证技术具备以下主要优势:(1)密码不会遗失、不会被窃,无记忆密码负担。(2)指静脉特征是人体内部信息,不受表皮粗糙、外部环境(温度、湿度)的影响。(3)适用人群广,准确率高,不可复制、不可伪造,安全便捷。(4)安全等级高,有活体识别、内部特征和非接触式三个方面的特征,确保了使用者的手指静脉特征很难被伪造。项目实施各小组根据项目选题及拟订的项目方案,结合本节所学知识,剖析人工智能自动导航系统,进一步完善该项目方案中的各项学习活动,并参照项目范例的样式,撰写相应的

101、项目成果报告。成果交流各小组运用数字化学习工具,将所完成的项目成果,在小组或班级上进行展示与交流,共享创造、分享快乐。活动评价各小组根据项目选题、拟订的项目方案、实施情况以及所形成的项目成果,根据教科书附录2的“项目活动评价表”,开展项目学习活动评价。21Y3228.indd 462019/10/10 14:23:3947 47本章扼要回顾本章扼要回顾同学们通过本章学习,根据“人工智能基础算法及应用”知识结构图,扼要回顾、总结、归纳学过的内容,建立自己的知识结构体系。回顾与总结21Y3228.indd 472019/10/10 14:23:424848第二章 人工智能基础算法及应用本章学业评价

102、同学们完成下列测试题(更多的测试题可以在教科书的配套学习资源包中查看),并通过“本章扼要回顾”以及本章的项目活动评价,综合评价自己在信息技术知识与技能、解决实际问题的过程与方法,以及相关情感态度与价值观的形成等方面,是否达到了本章的学习目标。1单选题(1)下列不属于常用人工智能编程语言的是()。AC/C+BPython CJavaScript DProlog(2)自动导航系统需要用到的核心技术之一是()。A逻辑推理 B启发式搜索 C分布式存储 D数据加密(3)以下人工智能技术水平尚未达到实用程度的是()。A机器翻译 B人脸识别 C语音识别 D股票分析2思考题如何处理自然语言中带有潜在歧义的语句

103、?3情境题在简化地图上利用启发式搜索完成导航任务。已知当前搜索点P的相关信息如下:(1)点P坐标为(100,100),导航的终点坐标为(200,150),起点坐标为(50,80)。(2)地图上任意一点(x,y)可以有上下左右四个方向的邻接点,坐标分别为(x,y-1),(x,y+1),(x-1,y),(x+1,y)。(3)点P的来路是点(99,100),其余三个方向的邻接点都是通的,并且都未加入过搜索队列。(4)根据点P的来路回溯数据,起点到点P所经过的路径长度分别为:水平路径(左右方向)70,垂直路径(上下方向)50。问题1:如果采用A*算法搜索,其中当前点R(x,y)的估价函数 f(R)=g

104、(R)+h(R)的设计如下:g(R)等于从起点到点R所经过的路径长度,h(R)等于从R到终点的直线距离。那么,上述搜索点P的四个邻接点的估价函数值分别是多少?程序会优先选择哪个点来搜索?问题2:将估价函数的设计改为:g(R)值权重降低,起点到点R的水平路径乘权值0.5,垂直路径乘权值0.8;而 h(R)值计算点R到终点的直线距离时要先把垂直距离乘权值2.5。那么,上述搜索点P的四个邻接点的估价函数值分别是多少?程序会优先选择其中哪个点来搜索?21Y3228.indd 482019/10/10 14:23:4449 492.4 生物特征识别第三章机器学习与人工智能的核心算法算法是计算机科学领域最

105、重要的基石之一。计算机语言和开发平台日新月异,但万变不离其宗的是那些算法及其理论。真正掌握计算机知识的人都在数学上有相当的造诣,他们既能用科学家的严谨思维来求证猜想,也能用工程师的务实手段来解决问题。这种思维和手段的最佳演绎就是“算法”。人工智能编程语言和核心算法作为人工智能学习的基础内容,是深入了解并进一步掌握人工智能的必备知识。本章将通过“剖析人工智能分类系统”项目,进行自主、协作、探究学习,让同学们通过剖析具体案例,了解人工智能的核心算法(如贝叶斯分类器、聚类、决策树和人工神经网络等),熟悉智能技术应用的基本过程和实现原理,从而将知识建构、技能培养与思维发展融入运用数字化工具解决问题和完

106、成任务的过程中,促进信息技术学科核心素养达成,完成项目学习目标。机器学习概述 贝叶斯分类器 聚类 决策树 人工神经网络21Y3228.indd 492019/10/10 14:23:455050第三章 机器学习与人工智能的核心算法剖析垃圾邮件智能分类系统项目范例情 境人们在饱受环境污染的痛苦之后逐渐形成一个共识:自然环境与人的生产生活和健康幸福息息相关,“绿水青山就是金山银山”。然而,在网络时代,医药宣传、招生广告、假证假发票等垃圾信息充斥于互联网。如图3-1所示,打开电子邮箱,一堆垃圾邮件扑面而来,不慎点进去还可能使计算机中毒,甚至因为受骗而损失钱财。这是不少人都会遇到的烦心事。网络空间是亿

107、万民众共同的精神家园,网络空间天朗气清、生态良好,符合人民利益。网络空间也要有“绿水青山”。垃圾邮件通常定义为:未经用户请求,强行发送到用户信箱中,可能带有广告、宣传资料和病毒等内容的电子邮件,一般具有批量发送的特征。垃圾邮件可以分为良性和恶性。良性垃圾邮件是指各种宣传广告、资料等对收件人影响不大的信息邮件。恶性垃圾邮件是指具有破坏性的电子邮件,例如计算机病毒邮件,夸张不实,甚至包括色情内容的广告,钓鱼网站等。垃圾邮件智能分类系统利用人工智能技术,可以识别接收到的邮件中哪些是对接收方完全没有意义的邮件,并进行拦截、删除等操作,从而有效过滤垃圾邮件,减少垃圾邮件对用户的干扰,改善用户体验。主 题

108、剖析垃圾邮件智能分类系统规 划根据项目范例的主题,在小组中组织讨论,利用思维导图工具,制订项目范例的学习规划,如图3-2所示。图3-1 垃圾邮件21Y3228.indd 502019/10/10 14:23:4751 51剖析垃圾邮件智能分类系统探 究根据项目学习规划的安排,通过调查、案例分析、文献阅读和网上资料搜索,开展“剖析垃圾邮件智能分类系统”项目学习探究活动,如表3-1所示。表3-1“剖析垃圾邮件智能分类系统”项目学习探究活动探究活动学习内容知识技能了解垃圾邮件分类问题分析生活中的垃圾邮件分类问题。了解垃圾邮件的影响。熟悉智能技术应用的基本过程和实现原理。了解垃圾邮件处理的相关法律法规

109、。了解垃圾邮件的技术处理方法。认识垃圾邮件智能分类系统认识垃圾邮件分类系统,了解分类原理。认识垃圾邮件智能分类系统的组成。了解垃圾邮件智能分类的步骤。了解垃圾邮件智能分类的方法。图3-2“剖析垃圾邮件智能分类系统”项目学习规划21Y3228.indd 512019/10/10 14:23:495252第三章 机器学习与人工智能的核心算法探究活动学习内容知识技能人工智能算法在垃圾邮件分类中的应用体验利用人工智能算法进行垃圾邮件分类。认识朴素贝叶斯分类器。了解人工智能的核心算法。了解朴素贝叶斯分类器类型。体验朴素贝叶斯分类器的应用。实 施实施项目学习各项探究活动,进一步剖析垃圾邮件智能分类系统。成

110、 果在小组开展项目范例学习过程中,利用思维导图工具梳理小组成员在“头脑风暴”活动中的观点,建立观点结构图,运用多媒体创作工具(如演示文稿、在线编辑工具等)综合加工和表达,形成项目范例可视化学习成果,并通过各种分享平台发布,共享创造、分享快乐。例如,运用在线编辑工具制作的“剖析垃圾邮件智能分类系统”可视化报告,可以在教科书的配套学习资源包中查看,其目录截图如图3-3所示。评 价根据教科书附录2的“项目活动评价表”,对项目范例的学习过程和学习成果在小组或班级上进行交流,开展项目学习活动评价。(续表)图3-3 “剖析垃圾邮件智能分类系统”可视化报告目录截图21Y3228.indd 522019/10

111、/10 14:23:5153 533.1 机器学习概述项目选题同学们以36人组成一个小组,选择下面一个参考主题,或者自拟一个感兴趣的主题,开展项目学习。1.剖析垃圾短信智能分类系统2.剖析鸢尾花智能分类系统3.剖析手写数字智能识别分类系统项目规划各小组根据项目选题,参照项目范例的样式,利用思维导图工具,制订相应的项目方案。方案交流各小组将完成的方案在全班进行展示交流,师生共同探讨、完善相应的项目方案。3.1 机器学习概述机器学习是一门多领域交叉学科,涉及概率论、统计学、逼近论和算法复杂度理论等多门学科。机器学习专门研究如何让计算机模拟或实现人类的学习行为,以获取新的知识或技能,并且重新组织已有

112、的知识结构,使之不断改善自身的性能。更为严格的说法是,机器学习是一门研究机器获取新知识和新技能,并识别现有知识的学问。这里所说的“机器”,指的是计算机,如电子计算机、中子计算机、光子计算机或神经计算机等。机器学习是人工智能的核心,是使计算机具有智能的根本途径,其应用遍及人工智能的各个领域,主要使用归纳、综合而不是演绎的方法实现功能。探究活动思 考机器的能力能否超越人类?21Y3228.indd 532019/10/10 14:23:515454第三章 机器学习与人工智能的核心算法持否定意见的一方的一个主要论据是:机器是人造的,其性能和动作完全是由设计者规定的,因此无论如何其能力也不会超过设计者

113、本人。这种意见对不具备学习能力的机器来说是对的,可是对具备学习能力的机器来说就值得商榷了,因为这种机器的能力在应用中能不断提高,一段时间之后,连设计者本人也不知它的能力到了什么水平。机器学习广泛应用于多个领域,如数据挖掘、计算机视觉、自然语言处理、生物特征识别、搜索引擎、医学诊断、信用卡欺诈检测、证券市场分析、DNA测序、语音和手写识别、战略游戏和机器人运用等。3.1.1 机器学习的基本原理讨 论机器能否像人类一样具有学习能力呢?1959年,某科学家设计了一个西洋跳棋程序,这个程序具有学习能力,可以在不断的对弈中提高自己的棋艺。1962年,这个程序战胜了职业选手,向人们展示了机器学习的能力,引

114、出了许多令人深思的社会问题与哲学问题。从广义上来说,机器学习是一种能够赋予计算机学习能力,并以此完成直接编程无法完成的功能的科学。从实践的意义上来说,机器学习是利用数据训练模型,然后使用模型进行预测的一种方法。在上述语义层次探讨的基础上,我们对机器学习给出如下语法定义:对于某类任务 T(Tasks)和性能指标 P(Performance),如果一个计算机程序在任务 T 中以 P 衡量的性能随着经验 E(Experience)自我完善,那么就称这个计算机程序在从经验 E 中学习。通常,为了很好地定义一个学习问题,我们必须明确以下三个要素:任务T,任务性能指标P,经验来源E。以垃圾邮件分类系统为例

115、,机器学习的三个要素如下:(1)任务(T):区分正常邮件与垃圾邮件。(2)性能指标(P):成功过滤垃圾邮件的百分比。(3)经验(E):“阅读”现有的邮件内容。以“阿尔法围棋”为例,机器学习的三个要素如下:(1)任务(T):确定当前局面下一步的落子位置。(2)性能指标(P):落子后击败对手的概率。(3)经验(E):与自己进行对弈。机器学习的基本思路如图3-4所示,以现有的或部分数据(训练集)为学习素材(输入),通过特定的学习方法(机器学习算法),让机器学习(输出),使其能够满足现实21Y3228.indd 542019/10/10 14:23:5155 553.1 机器学习概述需求(解决现实问题

116、),或具有处理未来的或全部数据的新能力(获得目标函数)。以垃圾邮件的检测为例,垃圾邮件检测是指计算机能够根据邮件特征,判断其为垃圾邮件还是正常邮件。在人工智能技术发展的初期,人们尝试通过人工编写规则来解决许多问题。例如,在垃圾邮件的检测中,当邮件中出现事先指定的一些可能属于垃圾邮件的词语时,这封邮件很可能就是垃圾邮件。同时,当邮件里出现网址时,它也很可能是垃圾邮件。这些规则在一定程度上对垃圾邮件的检测起到了作用,但是随着规则越来越多,这样的检测系统也变得越来越复杂。这时候,人们发现解决这种问题的根本途径是如何自动地从数据的某些特征中学习它们之间的关系,并且随着对数据的不断学习,提升垃圾邮件检测

117、的性能。机器学习是从数据中提取和学习有用的信息,不断提升机器性能的一种方法。那么,对于一个具体的机器学习问题,数据的收集是很重要的一部分,我们称这部分数据为训练数据。机器学习的基本工作是从这些数据中学习规则,利用学习到的规则来对新的数据做出预测。总之,与其他人工智能技术不同的是,机器学习中的“智能”并不是通过程序“预定义”的,而是计算机系统根据机器学习算法通过自主学习,从“经验”中得到的。机器学习的理论基础涉及多个学科领域,包括人工智能、统计学、信息论、概率论、计算复杂性理论、心理学和神经生物学等。3.1.2 机器学习算法的主要类型调 查通过网络资料搜索,调查机器学习算法的应用领域,以及在不同

118、的应用情境下,机器学习算法分别有什么特点。图3-4 机器学习的基本思路21Y3228.indd 552019/10/10 14:23:535656第三章 机器学习与人工智能的核心算法机器学习随着研究的不断深入,产生了很多适用于不同情况的算法。主要的机器学习算法类型有:1.监督学习监督学习是常见的机器学习方法。在监督学习中,训练数据由一组训练实例组成。每一实例都是由一个输入对象(通常是一个向量)和一个期望的输出值(也被称为监督信号)组成。机器进行学习时,用已知某种或某些特性的样本作为训练集,以建立一个数学模型(如模式识别中的判别模型),再用已建立的模型来预测未知样本。监督学习算法主要用来解决两类

119、任务:分类(对实例数据预测合适的类别,如应用分类器对邮件是否包含垃圾信息进行分类)和回归(对实例数据预测具体的数值,如应用决策树对房屋的价格进行预测)。2.无监督学习无监督学习,顾名思义,就是不受监督的学习,一种自由的学习方式。例如,应用聚类算法的学习方式就不需要先验知识进行指导,而是不断地自我认知,自我巩固,最后进行自我归纳。在机器学习中,无监督学习可以被简单理解为不为训练集提供对应的类别标签。3.半监督学习与监督学习和无监督学习不同,半监督学习综合了监督学习和无监督学习的特征。它主要考虑如何利用少量有标签的样本和大量没有标签的样本进行学习和预测。单独使用有标签的样本,能够生成监督分类算法;

120、单独使用无标签样本,能够生成无监督聚类算法。一般而言,半监督学习通过在监督分类算法中加入无标签样本来实现半监督分类,或者是在无标签样本中加入有标签样本,增强无监督聚类的效果。4.强化学习强化学习是机器学习的一个重要分支,是多学科多领域交叉的产物。它的目的是解决自动决策的问题,并且可以做连续决策。它主要包含四个元素:agent,环境状态,行动和奖励。所谓强化学习,就是智能系统从环境到行为映射的学习,从而使奖励信号(强化信号)函数值最大。强化学习不同于监督学习,强化学习中由环境提供的强化信号对产生动作的好坏做评价(通常为标量信号),而不是告诉强化学习系统如何去产生正确的动作。由于外部环境提供的信息

121、很少,强化学习系统必须靠自身的经历进行学习。通过这种方式,强化学习系统在行动评价的环境中获得知识,改进行动方案以适应环境。强化学习通常应用在机器人技术上。机器人中的强化学习算法是通过感知机器人当前的环境状态,训练机器人做出各种特定行为。机器人在训练过程中不断尝试,错了就扣分,对了就奖励,由此训练得到在各个环境状态下最好的决策。即机器人从以往的行动经验中得到提升并最终找到最好的知识内容来帮助它做出最有效的行为决策。在实际应用中,环境、知识库和执行部分决定了机器学习具体的工作内容。系统的学习部分所需要解决的问题完全由上述三部分确定。环境向学习部分提供信息,学习部分利22Y3228内文.indd 5

122、62020/11/3 17:42:3757 573.2 贝叶斯分类器用这些信息修改知识库,以增进系统执行部分完成任务的效能,执行部分根据知识库完成任务的同时,把获得的信息反馈给学习部分。项目实施各小组根据项目选题及拟订的项目方案,结合本节所学知识,对机器学习进行剖析。1.结合案例,分析机器学习的原理。2.结合案例,讨论机器学习对社会的正面和负面影响。3.2 贝叶斯分类器人工智能领域的很多问题都属于如何让计算机学会对样本进行分类的问题。而机器学习中的许多分类算法都可以用来构造分类器,常用的有朴素贝叶斯、决策树、随机森林、逻辑回归、支持向量机和神经网络等。不过分类器有时候也会给出错误的结果,这时候

123、就可以要求分类器给出一个最优的类别猜测结果,同时给出这个猜测的概率估计值。概率论是许多机器学习算法的基础,因此深刻理解概率论十分重要。本节将从最简单的概率分类器开始,通过一些案例来学习构造朴素贝叶斯分类器(Naive Bayes Classifier)。之所以称之为“朴素”,是因为整个形式化过程中只有最原始、最简单的假设。我们还将充分利用Python的文本处理能力,构建一个垃圾邮件分类器,观察该分类器在真实的垃圾邮件数据集中的过滤效果。3.2.1 朴素贝叶斯分类器在概率统计理论中,条件概率是指事件A在另外一个事件B已经发生的条件下的发生概率。表示为 ,读作“在B的条件下A发生的概率”。贝叶斯(

124、T.Bayes,约17021761),提出了下面的条件概率公式贝叶斯公式:其中,P(AB)代表A和B同时发生的概率,P(B)代表B发生的概率,代表在B发生的情况下A发生的概率。21Y3228.indd 572019/10/10 14:23:535858第三章 机器学习与人工智能的核心算法探究活动观 察在现实生活中,我们经常要根据观测到的现象(特征数据)推测现象背后的原因。例如,我们看到草地湿了,需要判断是不是下雨导致的;今天股市的交易量大涨,需要判断是有新资金入场,还是存量资金博弈了一把;去医院体检,检查结果为阳性,是因为真的患病,还是因为医院误诊;邮箱收到一封电子邮件,这封邮件是广告公司投放

125、的垃圾邮件,还是从朋友那里发来的重要信件朴素贝叶斯分类器可以利用历史数据的分布,推测一个最有可能的结果,使犯错误的概率最小化。调 查以小组合作的形式,完成下述调查任务,并分小组进行汇报。(1)调查日常生活中的哪些情境可以使用朴素贝叶斯的思想来做选择判断。(2)通过网络搜索和文献查找的方式,了解朴素贝叶斯分类器的原理以及朴素贝叶斯在人工智能领域的典型应用案例。下面我们通过一个例子来理解贝叶斯定理。某种疾病,年轻人得病的概率远远小于年长者。如图3-5所示,列举了各种不同的得病情况,箭头附近的数字表示各种情况的概率。例如,没患病检查结果却为阳性(误诊了)的概率是1%,没患病而且检查结果为阴性的概率是

126、99%。如果一个年轻人去医院体检,体检结果为阳性,那么这个人到底是真患病还是被误诊呢?有的人可能会说,既然检查结果为阳性的人99%的概率会被确诊患病,得病的概率至少比没病的概率要高吧?然而,如果一个年轻人的检查结果为阳性,真正得病的概率其实比没病的概率还要低。图3-5 疾病诊断情况示意图21Y3228.indd 582019/10/10 14:23:5459 593.2 贝叶斯分类器现在我们来分析一下,假设人群中有20 000人,按照如图3-5所示的患病概率,约18 000人是正常的,约2000人患此病;在18 000个健康人中,年轻人的概率为95%,检查结果为阳性的概率为1%,那么同时满足“

127、年轻人”“检查结果为阳性”“无此病”的人数为18 00095%1%=171(人);在2000个病人中,年轻人的概率是5%,检查结果为阳性的概率是99%。那么同时满足“年轻人”“患此病”“检查结果为阳性”的人数为20005%99%=99(人)。如果我们现在只知道这个人是年轻人,而且检查结果呈阳性,那么他有可能是本身真的患病并且被检查出来的人,也有可能是误诊了的人。患病概率为%。误诊概率为。显然,我们有更大的可能性相信他没有患病(所以现实生活中,医生会让我们多复诊几次)。上述分析过程分别用到了特征条件独立假设、贝叶斯定理、后验概率最大化这几个知识点。1.特征条件独立假设我们的目的是通过“目前已知的

128、数据”判断未知的结果。这个“目前已知的数据”被称为特征。在本节例子中,特征就是这个人“是否年轻”以及“检查结果是否为阳性”。这里我们要做一个重要的假设:在判断这个人有没有患病的时候,我们认为上述两个特征之间是独立的,即这个人“是否年轻”和“检查结果是否为阳性”之间没有联系。因此,随机抽取一个检查者,他“年轻”并且“检查结果为阳性”的概率就等于“年轻”的概率乘“检查结果为阳性”的概率。上面这个假设就是条件独立假设。如果变量不满足独立性,则不可以将两者的概率相乘,比如“天空有云”的概率是0.5,“下雨”的概率是0.33,但“下雨”不能独立于“天空中有没有云”而存在,就不能得到“既有云又下雨”的概率

129、为0.50.33这个结论。2.贝叶斯定理贝叶斯定理主要用于在给定特征数据的情况下,判定样本属于某个类别的概率。在下面的公式中,样本的数据用 X=x 表示,样本的类别属于某个类别用 Y=ck 表示。在本节例子中,检查结果呈阳性的年轻人患病的概率:其中,A为真实得病的人中“检查为阳性”并且“年轻”的人数,B为人群中所有“检查结果为阳性”并且“年轻”的人数。这个公式就是贝叶斯定理的公式。3.后验概率最大化已知一个“年轻”人的“检查结果为阳性”,那么他有没有患病呢?我们只需要用贝叶斯公式计算,看看这个“年轻”并且“检查结果为阳性”的人到底是得病的概率更高,还是没得病的概率更高。这个就是后验概率最大化的

130、直观解释。在本节的例子中,我们可21Y3228.indd 592019/10/10 14:23:546060第三章 机器学习与人工智能的核心算法以得出结论,检查结果为阳性也不意味着年轻人就得病了,但是为了保险起见,需要后续跟进复查或者分析有无其他症状特征。3.2.2 朴素贝叶斯分类器的类型在使用朴素贝叶斯分类器进行条件概率估计的时候,我们需要知道独立事件的先验概率。比如本节的例子直接告诉我们“人群中90%的人都无此病”这一先验概率。但我们在分析其他事件的时候,可能会面临不同的特征(独立事件)分布。例如投掷一枚骰子,我们会假设任意一个点数朝上这一事件是一个等概率模型,于是任意一个点数朝上的先验概

131、率=特征分布的假设被称为朴素贝叶斯分类器的事件模型。下面我们了解一些常用的事件建模方法。对于文档分类(包括垃圾邮件过滤)这样的离散特征建模,多项式模型和伯努利模型很常用。1.高斯模型在处理实际数值这样的连续型变量时,通常会假设这些连续数值服从高斯分布。这时,只需要估计训练数据的平均值和标准差。假设训练集包含一个连续型的属性 x,我们首先根据类别对数据进行分段,然后计算每个类别中 x 的均值和方差。设为 x 中与类别 c 相关联值的均值,为 x 中与类别 c 相关联值的方差。假设我们已经收集了一些观测值 v,那么根据高斯分布公式,v 中类别 c 的概率分布2.多项式模型在多项式模型中,样本(特征

132、向量)表示特定事件发生的次数。这一模型通常用于文本分类,特征是单词,值是单词的出现次数。用 pci 表示事件 i 发生的概率,其中 xi 表示事件 i 在特定的对象中被观察到的次数,于是概率分布3.伯努利模型在伯努利模型中,每个特征的取值是布尔型的,即true和false,或者1和0。和多项式模型一样,这个模型在文本分类中也非常流行,就是看某个特征有没有在文档中出现。如果 xi 表示第 i 个词汇有没有出现在文档中,那么这篇文档属于类别 c 的可能性其中,pci 表示类别为 c 的文档中出现词汇 xi 的概率。这个模型通常用于短文本分类。e21Y3228.indd 602019/10/10 1

133、4:23:5461 613.2 贝叶斯分类器3.2.3 朴素贝叶斯分类器的应用朴素贝叶斯分类器有许多有意思的应用。例如在线社区的留言板中,为了不影响社区的发展,屏蔽侮辱性的言论是很有必要的。如果某条留言使用了负面或侮辱性的语言,该留言将被标识为内容不当。因此,利用朴素贝叶斯分类器构建一个快速过滤器来过滤这类内容,是一个很常见的需求。信息时代,我们每天会面对大量信息,如果不根据重要性设定优先级分别处理,我们将会耗费大量精力,因此对垃圾邮件或垃圾短信进行智能过滤非常重要。下面我们将利用朴素贝叶斯分类器,用Python构建一个垃圾邮件过滤器。构建机器学习模型首先得有足够的样本数据进行训练,我们利用网

134、络上开源的中文邮件数据集,提取其中的5000封正常邮件和5000封垃圾邮件进行训练。通过解析所有邮件,提取并计算每个词语在正常邮件和垃圾邮件中的出现频率,基于贝叶斯原理推断这封邮件是否需要过滤。正常邮件示例:发信人:pbdq(dp),信区:LostFound 标 题:报失IC卡 请尽可能详细地描述您丢失物品的特征:IC卡。姓名:丁强,学号:2018210502。您丢失该物品大致的时间是?8月24日上午9时左右。您丢失该物品大致的地点是?清华大学校医院体检处。如果有人拾获,如何和您联系?电话:62779634。补充表达一下您焦急的心情或感谢的方式_祝您好运:谢谢!垃圾邮件示例:有情之人,天天是节

135、。一句寒暖,一线相喧;一句叮咛,一笺相传;一份相思,一心相盼;一份爱意,一生相恋。在此祝大家七夕情人快乐!友情提示:2018年七夕情人节8月17日,别忘了给她(他)送祝福哦!为了更好地体验邮件收发过程,我们可以利用TCP通信简单模拟邮件传输协议,用客户端向服务器端通信的过程模拟邮件发送的过程,用服务器端接收消息的过程模拟邮件收信的过程。所以朴素贝叶斯分类器会在服务器端运行。21Y3228.indd 612019/10/10 14:23:546262第三章 机器学习与人工智能的核心算法实 践打开并运行server.py程序,建立TCP通信服务器端,模拟邮件的接收。其中垃圾邮件分类器建立的关键过程

136、如下:(1)训练分类器前,要先将邮件中的句子分成一个个词汇,jieba模块为我们提供了方便的汉语分词功能。import jiebares=list(set(list(jieba.cut(email)wordlistdirt.extend(res)(2)使用collections统计模块分别计算正常(normal)邮件和垃圾(trash)邮件中某词占邮件总词汇数的比例,计算该词的,也就是在该词影响下,该邮件是垃圾邮件的概率当收到一封未知邮件时,在不确定的前提下,我们假定它是垃圾邮件和正常邮件的概率各为50%,即P(s)=P(n)=50%。#导入sklearn模块的朴素贝叶斯分类器高斯模型Gaus

137、sianNB from sklearn.naive_bayes import GaussianNB#创建分类器 clf=GaussianNB()#训练分类器 X=features_train Y=labels_train clf.fit(X,Y)(3)提取该邮件中出现概率最高的15个词,联合概率设定阈值P0.9为垃圾邮件,P 0.9:typ=trash else:typ=normal实验结果表明,朴素贝叶斯垃圾邮件分类器在该数据集上达到了近96%的准确率。但即使这样,垃圾邮件分类器还可能将正常的邮件当作垃圾邮件过滤掉。通过继续调整模型的参数,垃圾邮件分类器还可以达到更好的效果。为了测试垃圾邮件

138、分类器能否工作,运行client.py程序,建立与服务器端的连接后,发送想要传输的内容,看看服务器端收到消息后会给出什么样的判断。项目实施各小组根据项目选题及拟订的项目方案,结合本节所学知识,剖析贝叶斯分类器算法。1.运行配套学习资源包中的程序,体验朴素贝叶斯分类器的应用。2.运行配套学习资源包中的程序,调整朴素贝叶斯垃圾邮件分类器的参数,提高垃圾邮件分类能力。3.3 聚类聚类就是一种寻找数据之间内在结构的技术。聚类把全体数据实例组织成一些相似组,这些相似组被称作“簇”。簇内的对象之间越相似,不同簇间对象差别越大,聚类效果越好。聚类通常又被称为无监督学习,与监督学习不同,聚类没有表示数据类别的

139、分类或者分组信息。在商业上,聚类分析常被用来发现不同的客户群,并且通过客户的购买模式刻画不同客户群的特征。聚类分析是细分市场的有效工具。同时聚类也可用于研究消费者行为,寻找新的潜在市场,进行多元分析的预处理。在生物学上,聚类分析常被用来进行动植物分类和基因分类,认识种群固有结构。在保险行业,聚类分析通过平均消费来进行汽车保险单的持有者分组,同时根据住宅类型、价值、地理位置等特征来进行一个城市的房产分21Y3228.indd 632019/10/10 14:23:556464第三章 机器学习与人工智能的核心算法组。在互联网应用上,聚类分析常被用来进行文档归类以修复信息。在电子商务领域,聚类分析在

140、网站建设的数据挖掘中产生了重要作用,通过聚类具有相似浏览行为的客户和分析客户的共同特征,可以更好地帮助电子商务的商家了解自己的客户,从而向客户提供更合适的服务。3.3.1 系统聚类算法探究活动调 查围绕以下问题,展开调查,分小组进行汇报。(1)调查在日常生活中的哪些情境下,可以使用聚类分析的思维解决问题。(2)通过网络搜索和文献查找的方式,了解聚类算法的基本原理,搜集聚类算法在人工智能领域的典型应用案例。聚类是最常用的数据分析技术之一。与其相关的各种算法的提出、发展和演化,使得聚类算法家族“人丁兴旺”。聚类算法很难简单地进行分类,因为这些类别可能相互重叠,有的算法甚至具有几种类别的特点。一般而

141、言,主要的基本聚类算法可以划分为如下几类:1.划分方法大部分划分方法(Partitioning Methods)通过度量数据之间的距离进行聚类。该方法根据需要划分的簇数k,先创建一个初始划分,然后采用迭代计算,把对象从一个簇移动到另一个簇来改进划分。好的划分准则是:同一个簇中的对象尽可能相互“接近”或相似,不同簇中的对象尽可能“远离”或不同。为了达到全局最优,基于划分的聚类可能需要穷举所有的划分,计算量极大。实际上,大多数划分方法的实现都采用了启发式方法,如K-Means和K-Medoids算法,渐进地提高聚类质量,逼近局部最优解。这些启发式聚类方法很适合发现中小型数据库中的球状簇。若要发现复

142、杂形状的簇和对超大型数据集进行聚类,就需要进一步扩展划分方法。2.层次方法根据层次分解的形式不同,层次方法(Hierarchical Methods)又可以分为凝聚层次聚类和分裂层次聚类。(1)凝聚层次聚类:又叫自底向上方法。一开始将每个对象作为同一类,然后与其相近的对象或类合并,直到所有小的类别合并成一个类,或者收敛,即满足终止条件为止。(2)分裂层次聚类:又叫自顶向下方法,一开始将所有对象置于一个簇中,在迭代的每一步中,类会被分裂成更小的类,直到最终每个对象在一个单独的类中,或者收敛,即满足终止条件为止。21Y3228.indd 642019/10/10 14:23:5565 653.3

143、聚类3.基于密度的方法大部分聚类算法都通过衡量对象之间的距离来划分簇。因此这样划分出来的簇都会呈球状分布,导致在发现任意形状的簇时,会遇到困难。而基于密度的方法(Density-Based Methods)的主要思想是:只要“领域”中的密度(对象或数据点的数量)超过阈值,就继续增长给定的簇。也就是说,对给定簇中的每个数据点,在给定半径的领域中必须至少包含最少数目的点。这样的方法可以用来过滤噪声或离群点,发现任意形状的簇。基于这一思想的典型方法有DBSCAN,如图3-6所示。4.基于网格的方法基于网格的方法(Grid-Based Methods)把对象空间量化为有限数目的单元,形成网格结构,所有

144、的聚类操作都在这个网格结构(即量化空间)中进行。该算法的优点是处理速度快,其处理时间常常独立于数据对象的数量,只与量化空间中每一维的单元数量有关。3.3.2 K-Means聚类算法K-Means聚类是发现给定数据集的k个簇的算法。簇个数k是用户给定的,每个簇通过其质心(Centroid),即簇中所有点的中心来描述。K-Means聚类算法工作时,首先随机确定k个初始点作为质心;接着将数据集中的每个点分配到一个簇中,即为每个点找距其最近的质心,并将其分配给该质心所对应的簇;然后把每个簇的质心更新为该簇所有点的平均值。上述流程可用如下伪代码表示:输入:簇个数k,数据点集合X1,Xn 为k个簇随机初始

145、化它们的质心C1,Ck重复以下步骤直到收敛:对于每个点Xi:找到距其最近的质心Cj:argminD(Xi,Cj)将点Xi分配到簇 j 中图3-6 DBSCAN聚类结果图21Y3228.indd 652019/10/10 14:23:556666第三章 机器学习与人工智能的核心算法 对于每一个簇 j=1,k:使新的质心Cj更新为该簇中所有点Xi的平均值:其中a=1,d,d为簇的总数 将新的质心运用于下一轮点Xi的分配中直到没有簇的质心因为点的分配而改变时,算法结束上面提到的距离计算方法D(Xi,Cj)可以使用任何合适的距离度量方法。K-Means算法在数据集上的性能会受到所选距离计算的影响。3.

146、3.3 K-Means聚类算法的应用K-Means算法通常可以用于处理维数、数值都很小且连续的数据集,主要应用于从随机分布的事物集合中对相似事物进行分组。例如,对一个营销组织来说,将不同客户根据他们的特点分组,从而有针对性地定制营销活动;对学校老师来说,将学生根据特点分组,从而有所侧重地进行教育活动。K-Means在不同领域都有类似的应用案例。实 践鸢尾花数据集(Iris)是一类多重变量分析的数据集。它最初是从鸢尾属花朵样本中提取的地理变异数据。后来作为判别分析的一个例子,运用到统计学中。鸢尾花数据集包含150组数据,分为三类,包含山鸢尾(Iris Setosa)、变色鸢尾(Iris Vers

147、icolour)和维吉尼亚鸢尾(Iris Virginica),如图3-7所示。每类50组数据,除花卉种类信息以外,每组数据还包含四个属性,分别是花萼长度(Sepal.Length,单位cm)、花萼宽度(Sepal.Width,单位cm)、花瓣长度(Petal.Length,单位cm)、花瓣宽度(Petal.Width,单位cm)。可通过四个属性预测鸢尾花属于三个种类中的哪一类。其中的一个种类与另外两个种类是线性可分离的,其余两个种类是非线性可分离的。使用鸢尾花数据集,根据花瓣长度、花瓣宽度和萼片长度三个特征对花的种类进行聚类。图3-7 鸢尾花21Y3228.indd 662019/10/10

148、 14:23:5667 673.3 聚类Scikit-learn为我们提供了封装好的K-Means聚类算法,这里仅仅演示怎么使用封装好的K-Means聚类算法来进行聚类,并使用Matplotlib库绘制聚类结果以便直观感受。(1)首先调用Scikit-learn中的K-Means聚类算法和数据集,然后加载Iris数据集。from sklearn.cluster import KMeansfrom sklearn import datasetsiris=datasets.load_iris()#加载鸢尾花数据集IrisX=iris.datay=iris.target(2)初始化三个不同的K-Me

149、ans聚类模型。对第三个模型,将参数“n_init”固定为1,减少算法用不同簇心运行的次数而只运行一次,默认连续运行10次输出最佳结果。estimators=(k_means_iris_8,KMeans(n_clusters=8),(k_means_iris_3,KMeans(n_clusters=3),(k_means_iris_bad_init,KMeans(n_clusters=3,n_init=1,init=random)(3)可视化三个模型的聚类结果,并进行比较。fignum=1titles=8个簇,3个簇,3个簇,随机初始化较差for name,est in estimators:

150、fig=plt.figure(fignum,figsize=(4,3)ax=Axes3D(fig,rect=0,0,.95,1,elev=48,azim=134)est.fit(X)labels=est.labels_ax.scatter(X:,3,X:,0,X:,2,c=labels.astype(np.float),edgecolor=k)ax.w_xaxis.set_ticklabels()ax.w_yaxis.set_ticklabels()ax.w_zaxis.set_ticklabels()ax.set_xlabel(花瓣宽度)ax.set_ylabel(萼片长度)ax.set_z

151、label(花瓣长度)ax.set_title(titlesfignum-1)ax.dist=12fignum=fignum+121Y3228.indd 672019/10/10 14:23:566868第三章 机器学习与人工智能的核心算法实验结束后,得到的3D投影图如图3-8所示,其中不同的簇用不同的颜色区分。项目实施各小组根据项目选题及拟订的项目方案,结合本节所学知识,剖析聚类算法。1.运行配套学习资源包中的程序,体验K-Means聚类算法的应用。2.运行配套学习资源包中的程序,对鸢尾花数据集进行分类。3.结合案例,探讨聚类算法在不同领域的应用。3.4 决策树决策树(Decision Tr

152、ee)是一种通过对历史数据进行测算,实现对新数据进行分类和预测的算法。机器学习中,决策树是一个预测模型,代表的是对象属性与对象值之间的一种映射关系。该算法由于逻辑结构为树形结构,所以被称为“决策树”。图3-8 K-Means聚类实验结果21Y3228.indd 682019/10/10 14:23:5669 693.4 决策树图3-9 预测用户还贷能力的简单决策树探究活动体 验如图3-9所示是预测贷款用户是否具有偿还贷款能力的决策树。贷款用户主要具备三个属性:是否拥有房产,是否结婚和平均月收入。每一个内部节点都表示一个属性条件判断,最终节点表示贷款用户是否具有偿还能力。例如:用户甲没有房产,没

153、有结婚,月收入5000。通过决策树先判断是否拥有房产,用户甲符合右边分支(“是否拥有房产”为“否”);再判断是否结婚,用户甲符合左边分支(“是否结婚”为“否”);然后判断月收入是否大于4000,用户甲符合左边分支(月收入大于 4000),该用户落在“可以偿还”的叶子节点上。所以预测用户甲具备偿还贷款能力。3.4.1 决策树及其类型1.决策树的结构如图3-10所示,决策树主要由三个部分组成,分别为决策节点、分支和叶子节点。其中决策树最顶部的决策节点是根决策节点,每一个分支都有一个新的决策节点,决策节点下面是叶子节点。每个内部节点表示一个属性的测试,每个分支代表一个测试输出,每个叶子节点代表一种类

154、别。整个决策的过程从根决策节点开始,由上到下,根据数据的分类在每个决策节点给出不同的结果。决策树仅有单一输出,若需要多个输出,可以建立独立的决策树以处理不同输出。图3-10 决策树的结构21Y3228.indd 692019/10/10 14:23:597070第三章 机器学习与人工智能的核心算法2.决策树的优缺点决策树模型呈树形结构,在分类问题中表示基于特征对实例进行分类的过程。它既可以被认为是“如果则”条件规则的集合,也可以被认为是定义在特征空间与类空间上的条件概率分布。决策树的构造过程不需要任何领域的知识或参数设置,因此在实际应用中,对于探测式的知识发现非常有用。决策树具备以下优点:易于

155、理解和实现,在学习过程中不需要使用者了解很多背景知识;能够直接体现数据的特点,通过解释后,使用者都有能力去理解决策树所表达的意义。数据的预处理往往是简单或者是不必要的;能够同时处理数值型和常规型数据,在较短时间内能够对大型数据集做出可行且效果良好的预测模型。易于通过静态测试来对模型进行评测,可以测定模型可信度;如果给定一个观察模型,那么所产生的决策树很容易推出相应的逻辑表达式。同时,决策树也存在一定的问题:对连续性的字段比较难预测。对时序数据,需要进行较多预处理工作。当类别太多时,错误率可能会大幅上升。3.决策树的分类决策树学习根据数据的属性,采用树状结构建立决策模型,决策树模型常常用来解决分

156、类和回归问题。常见的构造决策树算法包括ID3、C4.5和CART等。(1)ID3算法。ID3算法最早于1975年提出,是一种分类预测算法,核心是“信息熵”。ID3算法认为“互信息”高的属性是好属性,通过计算历史数据中每个类别或属性的“信息熵”获得“互信息”,并选择“互信息”最高的类别或属性作为决策树中的决策节点,将类别或属性的值作为分支继续进行分裂。不断重复这个过程,直到生成一棵完整的决策树。使用信息增益存在一个缺点,那就是它偏向于具有大量值的属性。就是说在训练集中,某个属性所取的不同值的个数越多,越有可能拿它来作为分裂属性,而这样做有时候是没有意义的,另外ID3不能处理连续分布的数据特征,于

157、是就有了C4.5算法。此外,CART算法也支持连续分布的数据特征。(2)C4.5算法。C4.5算法继承了ID3算法的优点,并在以下几个方面对ID3算法进行了改进:用信息增益率来选择属性,克服了用信息增益选择属性时偏向选择取值多的属性的不足。在树构造过程中进行剪枝。C4.5算法采用了悲观剪枝的方法,使用训练集生成决策树,又用训练集来进行剪枝。能够完成对连续属性的离散化处理。能够对不完整数据进行处理。C4.5算法产生的分类规则易于理解,准确率较高,但因构造过程中,需要对数据集进行多次顺序扫描和排序,计算效率低。也正因为必须多次扫描数据集,C4.5只适合于能够21Y3228.indd 702019/

158、10/10 14:23:5971 713.4 决策树驻留于内存的数据集。在实现过程中,C4.5算法在结构与递归上与ID3完全相同,区别只在于选取决策特征时的决策依据不同,二者都有“贪心”性质,即通过局部最优构造全局最优。(3)CART算法。CART算法采用一种二分递归分割的技术,将当前的样本集分为两个子样本集,使得生成的每个非叶子节点都有两个分支。因此,CART算法生成的决策树是结构简洁的二叉树。3.4.2 决策树的生成从数据产生决策树的机器学习技术叫作决策树学习。每棵决策树都表述了一种树型结构,由它的分支来对该类型的对象依靠属性进行分类。决策树学习包含特征选择、决策树的生成与剪枝过程。决策树

159、学习算法通常采用递归法选择最优特征,并用最优特征对数据集进行分割。决策树生成时,首先构建根节点,选择最优特征,该特征有几种不同取值就分割为几个子集,每个子集分别递归调用此方法,返回的就是上一层的子节点。直到所有特征都已经用完,或者数据集只有一维特征为止。决策树的生成是一个递归的过程,在决策树生成过程中,有三种情况会导致递归返回:(1)当前节点包含的样本属于同一类别,无须划分。(2)当前样本属性集为空,或者所有样本在所有属性上的取值相同,无法划分。(3)当前节点包含的样本集合为空,不能划分。1.特征选择 决策树算法的关键在于如何选择最优划分属性,随着划分的不断进行,应使决策树的分支节点所包含的样

160、本尽可能属于同一类别。特征选择问题希望选取对训练数据具有良好分类能力的特征,这样可以提高决策树学习的效率。如果利用一个特征进行分类的结果与随机分类的结果没有很大差别,则称这个特征没有分类能力。拓 展认识信息熵为了解决特征选择问题,找出最优特征,我们先要认识信息熵。熵的概念首先在热力学中引入,用于表述热力学第二定律,度量一个热力学系统的无序程度。信息熵(Information Entropy)是信息论中的一个重要的指标,是由香农(C.Shannon,19162001)在1948年提出的,香农借用了热力学中熵的概念来描述信息的不确定性。(1)信息熵。信息熵是用来衡量一元模型中信息不确定性的指标,信

161、息的不确定性越大,熵的值也21Y3228.indd 712019/10/10 14:23:597272第三章 机器学习与人工智能的核心算法就越大。这里所说的一元模型指的是单一事件,而不确定性指的是事件出现不同结果的可能性。例如,抛硬币可能出现的结果有两个,分别是正面和反面,而每次抛硬币的结果是一个非常不确定的信息。如表3-2所示,根据我们的经验和实验数据,一质量均匀的硬币出现正面和反面的概率几乎相等,都约等于50%,因此很难判断下一次出现的是正面还是反面,这时抛硬币这个事件的熵值很高。假如实验数据显示这枚硬币在过去的100次抛掷试验中,99次结果都是正面,说明这枚硬币的质量不均匀,出现正面结果

162、的概率很高。那么我们就很容易判断下一次的结果了。这时的熵值很低,只有0.08。表3-2 抛硬币事件的熵值决定信息的不确定性(复杂程度)的主要因素是概率,熵在信息论中是随机变量不确定性的度量。设有一个离散型随机变量X,其概率分布为p(x),则X的信息熵H(X)可定义为简单地说,信息熵H(X)是衡量随机变量X的不确定性或混乱程度的指标。随机变量X的不确定性越高,熵值H(X)越高;随机变量X的不确定性越低,熵值H(X)越低。(2)条件熵。设有离散型随机变量(X,Y),X的概率分布为p(x),Y的概率分布为p(y),Y对X的条件分布为 ,X和Y的联合分布为p(xy)。条件熵表示在已知随机变量X的条件下

163、随机变量Y的不确定性,定义为在给定条件X下,Y的条件概率分布的熵对X的数学期望。我们首先考虑当X取值为x时,=x是带条件的随机变量,按照信息熵的定义,可以得到根据X的概率分布p(x)求上述信息熵的数学期望值,可以得到在随机变量X给定的条件下随机变量Y的条件熵其中表示在已知X取值的前提下,Y取值的不确定性;即在变量X的条件下(变量X的每个值都会取),变量Y的信息熵对X的期望。硬币状态出现次数概率熵硬币状态出现次数概率熵正面990.99-0.01正面510.51-0.50反面10.01-0.07反面490.49-0.50合计1001.000.08合计1001.001.0021Y3228.indd

164、722019/10/10 14:23:5973 733.4 决策树(3)互信息与信息增益。互信息指的是两个随机变量之间的相关程度,是用来衡量信息之间相关性的指标。当两个信息完全相关时,互信息为1,不相关时为0。互信息可以等价地表示成其中,H(X)表示信息熵,是条件熵。因此,条件熵越大,互信息越小,条件熵越小,互信息越大。信息增益指的是在一定条件下,信息不确定性减少的程度。表示在条件Y确定的情况下,信息的不确定性减少的程度。也就是说,按照条件Y对数据进行分类之后,分类数据的确定性是否比划分之前更高。因此,我们可以通过计算信息增益来选择使用哪个特征作为决策树的节点更合适。如果被称为“互信息”时,两

165、个随机变量的地位是相同的;如果被称为“信息增益”时,一个变量是减小另一个变量不确定度的手段。但其实两者的数值是相等的。“互信息”或者“信息增益”经常作为决策树中选择特征的标准,两种称呼都很常见。2.过拟合处理在决策树学习中,为了尽可能地正确分类训练样本,节点划分过程将不断重复,有时会造成决策树分支过多,导致过拟合,因此可以通过主动去掉一些分支来降低过拟合的风险。剪枝的基本策略包括预剪枝和后剪枝。(1)预剪枝是在决策树生成的过程中,对每个节点在划分前先进行预估,若当前节点的划分不能使决策树泛化性能提升,则停止划分并将当前节点标记为叶子节点。(2)后剪枝是先从训练集中生成一棵完整的决策树,然后自底

166、向上地考察非叶子节点,若将该节点对应的子树替换为叶子节点能提高泛化能力,则进行替换。3.4.3 决策树的应用实 践使用鸢尾花数据集,调用Scikit-learn内嵌的决策树分类器构造决策树:from sklearn.datasets import load_irisfrom sklearn import treeiris=load_iris()clf=tree.DecisionTreeClassifier()clf=clf.fit(iris.data,iris.target),21Y3228.indd 732020/3/27 15:47:437474第三章 机器学习与人工智能的核心算法调用Py

167、thon数据可视化模块graphviz,导出上面构造的决策树,结果保存在文件iris.pdf中,构造的决策树如图3-11所示。import graphviz dot_data=tree.export_graphviz(clf,out_file=None,feature_names=iris.feature_names,class_names=iris.target_names,filled=True,rounded=True,special_characters=True)graph=graphviz.Source(dot_data)graph.render(iris)当我们遇到一株新的鸢尾花

168、时,如果想知道它属于哪个品种,可以根据如图3-11所示的决策树来帮助判断。从树的根节点来看,应该首先判断它的花瓣长度。如果花瓣长度小于或等于2.45厘米,那么它应该属于山鸢尾;否则再判断花瓣宽度是否小于等于1.75厘米,得出这一层的判断结果后,根据分支走向依此类推,直到找到叶子节点的位置,即没有分支再需要判断时,叶子节点给出的类别也就是我们想要的答案。项目实施各小组根据项目选题及拟订的项目方案,结合本节所学知识,剖析决策树算法。1.运行配套学习资源包中的程序,体验决策树的应用。2.结合案例,探讨决策树在不同领域的应用。图3-11 基于鸢尾花数据集生成的决策树21Y3228.indd 74201

169、9/10/10 14:24:0275 753.5 人工神经网络3.5 人工神经网络机器学习是计算机科学的一个分支,它会从数据中自主学习规律,并生成算法。而深度学习是机器学习的一个分支,是数据科学里最热门的研究课题之一,已经在图像识别、自然语言处理、机器人等领域取得了重要成果。比如自动驾驶、游戏人工智能、字迹识别等。深度学习受到人脑运作机制的启发,其核心算法是人工神经网络。探究活动思 考人类识别手写数字的过程是怎样的?与人类相比,计算机应如何识别手写数字?人类视觉系统是大自然的一大奇迹。观察如图3-12所示的手写数字序列。大部分人能够毫不费力地识别出这些数字是504192,然而这种简单性只是我们

170、人类的“想当然”。在我们大脑里,有一个主要的视觉皮层V1,它包含1.4亿个神经元以及数百亿的神经元连接。而且人类除了有V1,还有一系列的视觉皮层V2、V3、V4和V5,它们能够执行更加复杂的图像处理。我们可以将大脑想象成一台超级计算机,经过几千万年的不断进化,最终形成我们身上的视觉处理系统。我们人类能非常迅速地理解我们眼睛所看到的一切,而且这一切几乎都是在不知不觉中完成的。然而,要让计算机识别手写数字,并不是一件容易的事。视觉模式识别的困难在于如何让计算机程序快速识别上面的数字。我们识别这个形状的简单直觉是“数字9头上有一个圆圈,右下角有一笔竖线”。但是如果试图利用程序构造精确的规则,让计算机

171、认识“9”(如图3-13所示),算法将迅速迷失在大量的例外、警告和特殊案例中,而且似乎看不到解决的希望。图3-12 手写数字“504192”图3-13 不同的手写数字“9”21Y3228.indd 752019/10/10 14:24:027676第三章 机器学习与人工智能的核心算法人工神经网络用不同的方法来处理这个问题,其思想就是利用大量的手写数字(训练样本),开发出一套从训练样本中进行学习的系统。换句话说,人工神经网络使用如图3-14所示的样本来自动推理出识别手写数字的规则。此外,通过增加训练样本规模,神经网络能学到手写数字的更多规则,从而提升它的识别精度。本节我们将使用Python编写一

172、段计算机程序来实现一个能识别手写数字的人工神经网络,这段程序能够在没有人工干预的情况下达到98%的识别精度。实际上,最好的商业神经网络已经应用于银行支票处理和邮政编码识别等领域。3.5.1 人工神经网络的基本原理调 查进行下述任务的调查,分小组进行汇报。(1)通过网络搜索和文献查找的方式,了解人脑神经网络的结构和各结构的主要作用。(2)以小组合作的形式,调查人工神经网络在人工智能领域的典型应用。“神经网络”一词是对人脑结构的比喻。神经网络的基本构成单元是神经元。1.感知机感知机(Perceptron)是最简单的一种神经网络,由单个神经元构成。如图3-15所示,就像生物神经元具有树突和轴突一样,

173、人工神经元呈树状结构,有多个输入节点和一个输出节点。图3-14 手写数字训练样本21Y3228.indd 762019/10/10 14:24:0477 773.5 人工神经网络人工神经网络用不同的方法来处理这个问题,其思想就是利用大量的手写数字(训练样本),开发出一套从训练样本中进行学习的系统。换句话说,人工神经网络使用如图3-14所示的样本来自动推理出识别手写数字的规则。此外,通过增加训练样本规模,神经网络能学到手写数字的更多规则,从而提升它的识别精度。本节我们将使用Python编写一段计算机程序来实现一个能识别手写数字的人工神经网络,这段程序能够在没有人工干预的情况下达到98%的识别精度

174、。实际上,最好的商业神经网络已经应用于银行支票处理和邮政编码识别等领域。3.5.1 人工神经网络的基本原理调 查进行下述任务的调查,分小组进行汇报。(1)通过网络搜索和文献查找的方式,了解人脑神经网络的结构和各结构的主要作用。(2)以小组合作的形式,调查人工神经网络在人工智能领域的典型应用。“神经网络”一词是对人脑结构的比喻。神经网络的基本构成单元是神经元。1.感知机感知机(Perceptron)是最简单的一种神经网络,由单个神经元构成。如图3-15所示,就像生物神经元具有树突和轴突一样,人工神经元呈树状结构,有多个输入节点和一个输出节点。图3-14 手写数字训练样本图3-15 生物神经元与人

175、工神经元人工神经网络(Artificial Neural Network,简称ANN)由六大组件组成,分别为:(1)输入节点。输入节点关联着一个个数值xi,可以是任意实数:正数或负数,整数或小数。(2)连接。每一个从输入节点出来的连接,都关联着一个权重值(Weight)wi,这个值也可以是任意整数。(3)输入和权重的结合。对输入数值求加权和y=f(wixi),即y=f(w1x1+w2x2+wnxn)(4)激活函数。最简单的激活函数(Activation Function)就是恒等函数(Identity Function),其输入输出相等,即 f(x)=x。这里的x就是输入与连接的加权和。就像生

176、物神经元的突触只在特定条件下激活一样,人工神经元也只在超过阈值时激活。假设这个阈值是0,那么激活函数这个激活函数叫作线性整流函数(Rectified Linear Unit),又称为修正线性单元,是一种人工神经网络中常用的激活函数。其他常用的还有sigmoid、tanh和softmax等。(5)输出节点。输出节点呈现激活函数的结果。(6)偏置。偏置(Bias)可以认为是一个值固定为1的输入节点,它可以调节激活函数,提高学习算法性能。注意,感知机只能处理数值数据。也就是说,需要把字符等数据都转换为数值格式。感知机控制的是阈值,可以将其用作样本分类:高于特定阈值的输出,表示样本属于某一类;而低于阈

177、值就归为另一类。直线“输出=阈值”就是两个类别的决策边界。2.多层感知机感知机组成的网络就是多层感知机(Multilayer Perceptron,简称MLP),多层感知机又称为前馈神经网络。神经元以层级结构组织在一起,层数一般是二三层,但是理论上层数是无限的。所以这种具有多个层级结构的神经网络算法人们通常叫作深度学习。网络的层就像生物神经元:一层的输出,是下一层的输入。21Y3228.indd 772019/10/10 14:24:057878第三章 机器学习与人工智能的核心算法网络层分为输入层、隐含层和输出层。多层感知机通常是全连接(Fully-Connected)的,一层之中的每一个感知

178、机都与下一层的每一个感知机相连接,尽管这不是强制性的,但通常是标准配置。感知机只能表征线性可分的问题,而多层感知机结合非线性的激活函数就突破了这一限制,可以表征更加复杂的决策边界。如图3-16所示,在人工神经网络中,最左边一层被称为输入层,其中的神经元被称为输入神经元。最右边为输出层,其中的神经元是输出神经元,输出神经元的个数通常与分类的个数有关。图3-16只有一个单一的输出神经元,常用于二分类问题;在手写数字识别的例子中,要将图像分为09这10个数字类别,也就是说会用到10个输出神经元。中间层被称为隐含层,因为里面的神经元既会有输入也会有输出。图3-16中的人工神经网络包含了两层隐含层,但是

179、一些网络可能只有一层或者多层。人工神经网络中输入层和输出层的设计通常很简单。假设我们试图判断一幅手写数字图像是否代表“9”,设计网络的一种方式是将图像像素强度编码进输入层的神经元。如果图像是一幅28像素28像素的灰度图,那么我们可以在输入层设计2828=784个神经元,每一个神经元的输入值为01的像素强度。若输出层只包含一个神经元时,输出值小于0.5表示“输入图像不是9”,大于0.5表示“输入图像是9”。虽然人工神经网络的输入层和输出层很简单,设计好隐含层却是一门艺术。将隐含层的设计过程总结出简单的经验规则是一项有挑战性的任务。人工神经网络研究者们已经为隐含层开发出许多启发式设计,它们能帮助大

180、家获取所期望行为的网络。例如,一些启发式算法能协助平衡隐含层数量与样本训练所耗时间的关系。3.5.2 人工神经网络的应用开始学习编程的时候,第一件事往往是学习在计算机屏幕上显示“Hello World”。对应地,机器学习的入门有MNIST。MNIST是一个入门级的计算机视觉数据集,它包含成千上万的手写数字图像,还包括它们对应的数字分类。MNIST数据集被分成两部分:60 000行的训练数据集和10 000行的测试数据集。这样的切分很重要,在机器学习模型设计时必须有一个单独的测试数据集不用于训练,而是用图3-16 人工神经网络21Y3228.indd 782019/10/10 14:24:057

181、9 793.5 人工神经网络来评估这个模型的性能,从而更加容易把设计的模型推广到其他数据集上(泛化)。每一个MNIST数据单元由两部分组成:一幅手写数字的图像和一个对应的标签。每一幅图像都是28像素28像素。如图3-17所示,可以用一个数字数组来表示这张图。再把这个数组展开,就得到一个长度是 2828=784的向量。把图像数字化之后,就可以交给神经网络模型来处理了。实 践使用机器学习中的手写数字数据集MNIST,根据图像数字化后的数组对图像中的数字进行分类。Scikit-learn为我们提供了一个封装好的双层神经网络算法,这里仅仅演示怎样使用封装好的多层感知机算法来进行分类,并使用matplo

182、tlib绘制分类结果以便直观感受。(1)首先引入机器学习库Scikit-learn中的多层感知机分类器方法和数据集,然后加载MNIST数据集。import matplotlib.pyplot as pltfrom sklearn.datasets import load_digitsfrom sklearn.neural_network import MLPClassifierfrom sklearn.model_selection import train_test_splitmnist=load_digits()X,y=mnist.images/255.,mnist.target(2)把加

183、载的手写数字图像数字化,转化成分类器容易接受的二维矩阵,然后划分成两部分数据集,一部分用来训练,另一部分用来测试。n_samples=len(X)X=X.reshape(n_samples,-1)X_train,X_test,y_train,y_test=train_test_split(X,y,test_size=0.2)图3-17 图像数字化21Y3228.indd 792019/10/10 14:24:068080第三章 机器学习与人工智能的核心算法(3)初始化多层感知机分类器的参数。这里可以自定义不同的隐含层大小来尝试不同结构的神经网络在这个分类任务里面的性能表现。初始化分类器之后,就

184、可以将训练样本与标签传给分类器开始训练了。mlp=MLPClassifier(hidden_layer_sizes=(50,),max_iter=10,alpha=1e-4,solver=adam,verbose=10,tol=1e-4,random_state=1,learning_rate_init=.1)mlp.fit(X_train,y_train)print(Training set score:%f%mlp.score(X_train,y_train)print(Test set score:%f%mlp.score(X_test,y_test)其实,人工神经网络能进行图像分类,是

185、因为它会计算每一幅输入图像所属类别的概率分布,概率得分最高的那个类别将作为预测结果执行输出。而人工神经网络进行训练的过程,就是输入尽可能多的图像给模型“看”,然后利用算法让模型优化到一个状态,能让尽可能多的图像得到正确的概率分布。项目实施各小组根据项目选题及拟订的项目方案,结合本节所学知识,剖析人工智能分类系统,进一步完善该项目方案中的各项学习活动,并参照项目范例的样式,撰写相应的项目成果报告。成果交流各小组运用数字化学习工具,将所完成的项目成果,在小组或班级上进行展示与交流,共享创造、分享快乐。活动评价各小组根据项目选题、拟订的项目方案、实施情况以及所形成的项目成果,根据教科书附录2的“项目

186、活动评价表”,开展项目学习活动评价。21Y3228.indd 802019/10/10 14:24:0681 81本章扼要回顾本章扼要回顾同学们通过本章学习,根据“机器学习与人工智能的核心算法”知识结构图,扼要回顾、总结、归纳学过的内容,建立自己的知识结构体系。回顾与总结21Y3228.indd 812019/10/10 14:24:158282第三章 机器学习与人工智能的核心算法本章学业评价同学们完成下列测试题(更多的测试题可以在教科书的配套学习资源包中查看),并通过“本章扼要回顾”以及本章的项目活动评价,综合评价自己在信息技术知识与技能、解决实际问题的过程与方法,以及相关情感态度与价值观的

187、形成等方面,是否达到了本章的学习目标。1单选题(1)下列说法中,机器学习的合理描述是()。A机器学习是计算机编程的技术B机器学习是使计算机无须明确编程即可进行学习的研究领域C机器学习意味着给数据打标签D机器学习是让机器人行动变得智能的研究领域(2)假设气象站每天在天气的三种可能(晴天、多云或者多雨)中选择一种进行天气预报。如果用机器学习算法来做预测的话,可以把这当作()问题来处理。A回归 B分类 C聚类 D都可以(3)假设气象站想预测明天的气温。如果用机器学习算法来做预测的话,可以把这当作()问题来处理。A回归 B分类 C聚类 D都可以2思考题在工作与生活中,哪些事情可以通过机器学习让计算机帮

188、我们完成?可能对我们的生活产生什么影响?3情境题(1)尝试基于C4.5算法,根据如下西瓜数据集生成一棵决策树。西瓜编号色泽瓜蒂纹理脐部敲声质感1青绿蜷缩清晰凹陷浊响硬滑2乌黑蜷缩清晰凹陷沉闷硬滑3乌黑蜷缩清晰凹陷浊响硬滑4青绿蜷缩清晰凹陷沉闷硬滑5浅白蜷缩清晰凹陷浊响硬滑6青绿稍蜷清晰稍凹浊响软黏7乌黑稍蜷稍糊稍凹浊响软黏8乌黑稍蜷清晰稍凹浊响硬滑9乌黑稍蜷稍糊稍凹沉闷硬滑(2)尝试使用上面的西瓜数据集训练一个朴素贝叶斯分类器,然后对下表所示的测试例进行分类。西瓜编号色泽瓜蒂纹理脐部敲声质感测试青绿蜷缩清晰凹陷浊响硬滑21Y3228.indd 822019/10/10 14:24:1783 8

189、33.5 人工神经网络第四章人工智能应用系统开发人工智能技术正在逐渐融入人们的生产和生活中。在自动驾驶、城市大脑、医疗影像、智能语音和智能视觉等领域,人工智能为其注入了强大的生命力。人们借助各种工具和平台来学习人工智能知识,基于生产和生活的需要,开发人工智能应用系统来提高工作效率、优化生活品质。本章将通过“开发人工智能应用系统”项目,进行自主、协作、探究学习,让同学们体验人工智能应用系统项目的开发过程,利用开源人工智能应用框架,搭建简单的人工智能应用模块,并根据实际需要,配置适当的环境参数和自然交互方式等,从而将知识建构、技能培养与思维发展融入运用数字化工具解决问题和完成任务的过程中,促进信息

190、技术学科核心素养达成,完成项目学习目标。人工智能应用系统项目分析 人工智能应用系统项目设计 人工智能应用系统项目实施21Y3228.indd 832019/10/10 14:24:208484第四章 人工智能应用系统开发开发拍照识物智能玩具系统项目范例情 境识别物体是人类的一种基本能力,对于计算机来说却是一个困难的任务。近年来,随着深度学习的发展,计算机也能学习识别物体了。我们可以利用树莓派卡片式计算机,开发人工智能物体识别应用模块,甚至把它制作成拍照识物玩具。主 题开发拍照识物智能玩具系统规 划根据项目范例的主题,在小组中组织讨论,利用思维导图工具,制订项目范例的学习规划,如图4-1所示。探

191、 究根据项目学习规划的安排,通过调查、案例分析、文献阅读和网上资料搜索,开展“开发拍照识物智能玩具系统”项目学习探究活动,如表4-1所示。图4-1“开发拍照识物智能玩具系统”项目规划21Y3228.indd 842019/10/10 14:24:2685 85开发拍照识物智能玩具系统表4-1“开发拍照识物智能玩具系统”项目学习探究活动探究活动学习内容知识技能人工智能应用系统项目分析人工智能应用模块开发。智能系统开发的需求分析。利用开源人工智能应用框架,搭建简单的人工智能应用模块,并能根据实际需要配置适当的环境、参数及自然交互方式等。人工智能应用系统项目设计智能系统开发的总体设计。人工智能应用系

192、统项目实施智能系统的程序开发与系统集成。实 施实施项目学习各项探究活动,进一步开发拍照识物智能玩具系统。成 果在小组开展项目范例学习过程中,利用思维导图工具梳理小组成员在“头脑风暴”活动中的观点,建立观点结构图,运用多媒体创作工具(如演示文稿、在线编辑工具等)综合加工和表达,形成项目范例可视化学习成果;充分利用丰富的开源硬件和人工智能应用框架等资源,制作拍照识物的智能玩具,并通过各种分享平台发布,共享创造、分享快乐。例如,运用在线编辑工具制作的“开发拍照识物智能玩具系统”可视化报告,可以在教科书的配套学习资源包中查看,其目录截图如图4-2所示。图4-2“开发拍照识物智能玩具系统”可视化报告目录

193、截图21Y3228.indd 852019/10/10 14:24:278686第四章 人工智能应用系统开发评 价根据教科书附录2的“项目活动评价表”,对项目范例的学习过程和学习成果在小组或班级上进行交流,开展项目学习活动评价。项目选题同学们以36人组成一个小组,选择下面一个参考主题,或者自拟一个感兴趣的主题,开展项目学习。1.开发语音识别智能应用系统2.开发人脸识别智能应用系统3.开发文本翻译智能应用系统项目规划各小组根据项目选题,参照项目范例的样式,利用思维导图工具,制订相应的项目方案。方案交流各小组将完成的方案在全班进行展示交流,师生共同探讨,完善相应的项目方案。4.1 人工智能应用系统

194、项目分析目前,人工智能应用系统已经融入我们生活的方方面面。如通过语音识别软件,使用各种语言进行文字输入;通过导航系统,了解实时交通状况,获得路线指引;利用图像识别软件,识别眼前的植物类型这些改变我们生活的人工智能应用系统,其开发的第一步就是进行需求分析。4.1.1 项目描述智能玩具是把信息技术和传统玩具整合而形成的新型玩具,是玩具市场的一个细分领21Y3228.indd 862019/10/10 14:24:2787 874.1 人工智能应用系统项目分析域,近年来越来越流行。智能玩具通常以动物或者娃娃造型、会“说话”、能与人互动等功能吸引着少年儿童。本项目学习范例中的拍照识物智能玩具,是以传统

195、玩具小熊为造型进行设计和制作的。当使用者面向可爱的小熊,用手按下小熊手上的按钮时,小熊的眼睛会把眼前的景物拍摄下来,然后通过智能识别,把识别的结果在显示屏上输出,如图4-3所示。4.1.2 需求分析需求分析是指系统设计人员经过深入细致的调研和分析,准确理解用户对项目的功能、性能、可靠性等具体要求,将用户的需求表述转化为完整的需求定义,从而确定系统必须做什么的过程。需求分析是项目分析阶段的重要环节,该阶段主要分析系统在功能上需要“实现什么”,而不是考虑如何去“实现”。需求分析的目标是通过分析与整理用户对系统提出的需求,最终形成描述完整、清晰与规范的文字,以确定系统需要实现哪些功能,完成哪些工作,

196、以及满足哪一些非功能性需求(如性能、可靠性、响应时间、可扩展性和系统设计约束条件等)。清晰明确地描述项目的需求,是项目顺利进行的关键。在本项目范例学习中,根据拍照识物智能玩具系统的项目描述,进行需求分析,如表4-2所示。表4-2 拍照识物智能玩具系统需求分析表功能性需求1.具有拍照功能,并可以保存为图像。2.能对图像中的物体进行识别,得到识别结果。3.能输出图像识别的结果。非功能性需求1.拍照识物智能系统在微型计算机中开发,体积较小。2.人工智能模块运行速度较快。设计约束1.能够在树莓派的操作系统上运行。2.使用Python作为程序开发语言。3.使用开源人工智能应用框架TensorFlow实现

197、识物功能。图4-3 拍照识物智能玩具设计示意图拍摄显示“橙子”21Y3228.indd 872019/10/10 14:24:288888第四章 人工智能应用系统开发探究活动思 考需求分析在项目开发中是否必不可少?如果项目缺少需求分析的环节,会有什么后果?分 析根据小组项目选题,分析人工智能应用需求,并填写表4-3。表4-3 项目需求分析表功能性需求非功能性需求设计约束项目实施各小组根据项目选题及拟订的项目方案,结合本节所学知识,完成对所选人工智能应用项目的分析。1.撰写项目说明,明确项目分析的重要性。2.对项目进行需求分析,并填写表4-3,列出项目的功能性需求、非功能性需求和设计约束。4.2

198、 人工智能应用系统项目设计对人类来说,描述我们眼睛所看到的事物是自然而然的事。对熟悉的事物,我们通常都不需要过多地思考,就能立刻识别出来。但是对于计算机来说,区分和识别不同的事物却是相当困难的。计算机识别物体一般要经过图像采集、存储、识别、输出结果四个步骤。光线通过镜头进入图像采集设备(如数码相机、摄像机等)后,成像元件将光线转化为数字信号,数21Y3228.indd 882019/10/10 14:24:2889 894.2 人工智能应用系统项目设计字信号经影像运算芯片处理后,储存在存储设备中。图像识别是利用计算机程序及预训练好的模型实现对存储图像的识别,并得出识别结果。如深度神经网络Inc

199、eption v3模型通过进行大量的图像学习与物体分类训练,从而得到类似人的识别物体能力。当图像识别完成后,计算机可以通过显示器或扬声器等输出设备以合适的方式把识别结果告知人们。4.2.1 总体设计拍照识物智能玩具系统由硬件系统和软件模块两部分组成。硬件部分选用卡片大小的开源硬件树莓派作为计算机,用于运行开源人工智能应用框架;以按钮和摄像头作为输入设备,显示屏作为输出设备。软件部分,使用Python语言作为开发语言,利用开源人工智能应用框架TensorFlow开发,实现玩具的智能识物功能。项目总体设计图如图4-4所示。4.2.2 硬件系统设计1.控制设备智能系统常采用开源硬件作为控制设备。树莓

200、派计算机(如图4-5所示)是一款基于Linux系统的卡片式计算机,尺寸只有银行卡大小,可以直接连接鼠标、键盘和显示器,作为计算机使用,也可以结合各种价格低廉的电子元件(如发图4-4 拍照识物智能玩具项目总体设计图图4-5 树莓派卡片式计算机21Y3228.indd 892019/10/10 14:24:299090第四章 人工智能应用系统开发光二极管、电阻或各类传感器等)作为硬件控制器,设计智能物件。在树莓派的操作系统Raspbian中,已集成Scratch图形化编程环境和Python编程环境。2.输入设备键盘、鼠标、摄像头、光照传感器和麦克风等是常见的输入设备。树莓派可以通过USB接口连接各

201、种输入设备,也可以通过通用输入/输出接口(General-Purpose Input/Output,简称GPIO)连接电子元件(如图4-6所示,按键和摄像头等)控制树莓派运行程序。在本章项目范例学习中,可使用树莓派专用相机串行接口(Camera Serial Interface,简称CSI)摄像头获取图像信息。3.输出设备音箱和显示屏是常用的输出设备。树莓派可以通过高清多媒体接口(High-Definition Multimedia Interface,简称HDMI)连接显示器和音箱设备。本章项目范例学习选用CSI接口的显示屏(如图4-7所示)作为显示输出设备。4.外观设计与实现近年来,激光切

202、割机、3D扫描仪、3D打印机和数控机床等桌面制造设备为智能作品制作提供了方便、有效的工具,有助于作品外观的设计与美化。本章项目范例学习选用传统玩具作为拍照识物智能玩具系统的外观。4.2.3 软件模块设计1.软件模块设计如图4-8所示是拍照识物智能玩具系统软件模块设计示意图。软件模块控制程序使用图4-7 拍照识物智能玩具输出设备树莓派显示屏幕(a)按键(b)摄像头图4-6 拍照识物智能玩具输入设备21Y3228.indd 902019/10/10 14:24:2991 914.2 人工智能应用系统项目设计Python语言编写,通过程序实现拍照、图像识别和结果输出三个主要功能,其中图像识别是实现人

203、工智能应用的核心功能。2.图像识别模块设计图像识别是指利用计算机处理、分析和理解图像,以识别各种不同模式的目标和对象的技术。心理学研究认为,人类在识别图像过程中,既要使用当时通过感官得到的信息,也要使用记忆中存储的信息。只有把存储的信息与当前获得的信息进行比较,才能实现对图像的识别。而在长时记忆中存储的并不是所要识别的无数个图像的模板,而是图像的某些“相似性”。从图像中抽象出来的“相似性”就可以作为原型,用来比对所要识别的图像。如果能找到一个相似的原型,这个图像也就被识别了。人类视觉系统的信息处理是分层的,从低层的V1区提取边缘特征,到V2区识别形状或者目标的一部分等,再到更高层识别整个目标和

204、目标的行为等。高层特征是低层特征的组合,从低层到高层,特征表示越来越抽象,越来越能表现意义。而抽象层面越高,存在的不确定性就越少,越利于进行图像分类。卷积神经网络(Convolutional Neural Network,简称CNN)就是受此启发而提出的。卷积神经网络是一种多层人工神经网络。进行图像识别时,其输入层是一个向量(图像的原始像素信息)。接着,卷积神经网络各隐含层会对由图像转化的向量做变换,即在每一层中使用激活函数进行数据处理,并把结果从上一层传递到下一层。每个隐含层都由若干神经元组成,每个神经元都与上一层中的所有神经元连接。但是,在同图4-8 拍照识物智能玩具系统软件模块设计示意图

205、21Y3228.indd 912019/10/10 14:24:319292第四章 人工智能应用系统开发一层中神经元相互独立且不进行任何连接。最后的输出层(全连接层)输出识别结果。总的来说,卷积神经网络识别图像的过程就是一层一层地将图像从原始像素信息逐渐变换成最终的图像分类概率,概率越高代表越有可能是对应的事物。卷积神经网络的图像识别过程如图4-9所示。Inception是著名的开源卷积神经网络模型,基于大型图像数据库ImageNet中的数据训练而成。我们可以直接利用Inception模型来实现图像识别。把图像输入Inception v3模型,获得物体被识别的概率分布向量softmax。3.图

206、像识别应用模块算法流程图根据卷积神经网络的工作原理和Inception v3的图像识别功能,程序实现流程如图4-10所示。图4-10 图像识别应用模块程序实现流程图图4-9 卷积神经网络图像识别过程示意图21Y3228.indd 922019/10/10 14:24:3393 934.2 人工智能应用系统项目设计探究活动根据小组自选项目选题,设计人工智能应用项目,并填写表4-4。表4-4 项目系统设计表项目选题项目总体设计硬件系统设计软件模块设计重要算法流程图项目实施各小组根据项目选题及拟订的项目方案,结合本节所学知识,完成对所选人工智能应用项目的总体设计。1.画出项目的总体设计图。2.对所选

207、项目进行硬件系统设计,列出要用的控制设备、输入设备和输出设备。3.画出项目的软件模块设计图。4.画出项目的主要算法流程图。21Y3228.indd 932019/10/10 14:24:349494第四章 人工智能应用系统开发4.3 人工智能应用系统项目实施4.3.1 程序设计Python语言已经成为新一代人工智能的首选编程语言,基于Python发展了很多成熟的人工智能应用框架和平台,如Scikit-learn、TensorFlow、人工智能开放创新平台等。拍照识物智能玩具项目需要在玩具中嵌入微型计算机树莓派,使玩具可在无网络环境下运行。可选择Python语言,基于TensorFlow框架来实

208、现其功能。1.编程环境本章项目范例学习将使用Python作为编程语言,Python有适用于各种操作系统的官方编程环境IDLE供编程和调试使用。也可使用文本编辑工具编写Python程序代码,然后保存为Python的文件格式“.py”运行。2.TensorFlow本章的项目范例学习需要利用开源人工智能框架TensorFlow进行程序开发。TensorFlow 基本用法如下:将计算流程表示成图。通过sessions来执行图计算。将数据表示为tensors。使用variables来保持状态信息。分别使用feeds和fetches来填充数据和抓取任意的操作结果。探究活动实 践TensorFlow可安装在

209、多种操作系统中,在安装了TensorFlow的树莓派操作系统中启动Python,在Python的交互编程环境中可进行TensorFlow测试,过程如下:$python import tensorflow as tf hello=tf.constant(Hello,TensorFlow!)sess=tf.Session()21Y3228.indd 942019/10/10 14:24:3495 954.3 人工智能应用系统项目实施 print(sess.run(hello)Hello,TensorFlow!a=tf.constant(8)b=tf.constant(31)print(sess.r

210、un(a+b)394.3.2 图像识别模块开发1.Inception v3模型文件从教科书配套学习资源包下载Inception v3模型压缩包“inception.zip”,解压缩到程序的目录下,如图4-11所示。2.程序实现(1)头部注释。#!/usr/bin/env python#_*_coding:utf-8 _*_图4-11 Inception v3模型文件21Y3228.indd 952019/10/10 14:24:359696第四章 人工智能应用系统开发(2)导入相关模块。TensorFlow是开源人工智能框架。os模块提供了处理文件和目录的方法。NumPy是Python的一种开

211、源数值计算扩展工具,用来存储和处理大型矩阵,可用于处理TensorFlow返回的数值。import tensorflow as tfimport osimport numpy as np(3)将分类代号转换为人类易懂的名称。因为通过Inception v3识别的结果是物体对应的概率分布值,要从高概率结果得出被识别物体名称还需要进行数据处理。如图4-12所示,创建一个类NodeLookup,将分类代号转换为人类易懂的名称,其中,id_to_string()函数提供了调用接口。class NodeLookup(object):#输入分类编号11000,返回分类名称 def id_to_string

212、(self,node_id):if node_id not in self.node_lookup:return return self.node_lookupnode_id(4)指定模型目录。指定当前目录下的“inception”文件夹为图像识别使用的模型目录。图4-12 识别结果编号与物件名称的对称关系21Y3228.indd 962020/3/27 15:47:4597 974.3 人工智能应用系统项目实施model_dir=./inception(5)存放训练模型。读取并创建一个图“graph”来存放训练好的Inception v3模型。with tf.gfile.FastGFile(

213、os.path.join(model_dir,classify_image_graph_def.pb),rb)as f:graph_def=tf.GraphDef()graph_def.ParseFromString(f.read()tf.import_graph_def(graph_def,name=)(6)识别物体。创建会话,识别图片中的事物,并输出结果。with tf.Session()as sess:#设置Inception v3模型的最后一层softmax的输出 softmax_tensor=sess.graph.get_tensor_by_name(softmax:()#遍历被测试

214、图像目录文件夹 for root,dirs,files in os.walk(image/):for file in files:#载入图片 image_data=tf.gfile.FastGFile(os.path.join(root,file),rb).read()#通过TensorFlow的会话输入图像(jpg格式)数据#得到该图片对应每个物体类别的softmax概率分布向量#并赋值给predictions predictions=sess.run(softmax_tensor,DecodeJpeg/contents:0:image_data)#把结果转为一维数据 predictions

215、=np.squeeze(predictions)#对识别结果概率值进行排序,取出前5个概率最大的值(top-5)的索引值#argsort()返回的是数组值从小到大排列所对应的索引值,然后赋值给top_k#top_k记录了5个最大概率物体的索引值 top_k=predictions.argsort()-5:-1#创建类,将类别ID转换为人类易读的标签 node_lookup=NodeLookup()21Y3228.indd 972019/10/10 14:24:369898第四章 人工智能应用系统开发#输出概率最高的5个类别名称及对应概率值 for node_id in top_k:#获取分类名

216、称 human_string=node_lookup.id_to_string(node_id)#获取该分类的概率值 score=predictionsnode_id#输出结果的事物名称和概率值 print(%s(score=%.5f)%(human_string,score)print()体 验从教科书配套学习资源包中打开第四章目录中的操作说明,按操作说明执行“recognition.py”,利用 Inception v3模型进行图像识别。1.运行程序,程序自动识别子目录image下的图片,显示图片,并显示识别图片的类别。2.记录所识别的图片和识别结果。3.统计图像识别的错误率,思考是什么原

217、因造成的。通过查阅相关资料,了解提高图像识别准确率的方法。4.3.3 系统集成系统集成是将分散的设备、功能和信息等集成到相互关联、统一和协调的系统之中。拍照识物智能玩具项目就是把系统开发的软、硬件集成在一起。1.玩具集成本章项目范例学习以玩具小熊作为外观。在小熊眼睛处放置摄像头以拍摄图像,在手部放置按键开关以启动程序拍照识别功能,树莓派和移动电源放置在小熊身体内,在小熊的胸腹部嵌入显示屏幕,显示识别结果,如图4-13所示。图4-13 拍照识物智能系统玩具集成21Y3228.indd 982019/10/10 14:24:3999 994.3 人工智能应用系统项目实施2.树莓派和主要部件连接将树

218、莓派作为智能玩具的一部分,使用移动电源供电。通过树莓派的专用接口连接摄像头和显示器,通过GPIO接口连接按键,如图4-14所示。3.软件部署将本章项目范例设计的程序设置为开机运行,部署于树莓派中。4.系统测试系统测试是将硬件、软件、操作人员看作一个整体,对整个系统进行测试,以检验系统是否有不符合需求的地方。这种测试可以发现系统分析和设计中的错误。测试步骤如图4-15所示。图4-14 树莓派与主要部件连接图4-15 系统测试步骤21Y3228.indd 992019/10/10 14:24:40100100第四章 人工智能应用系统开发项目实施各小组根据项目选题及拟订的项目方案,结合本节所学知识,

219、开发人工智能应用系统,进一步完善该项目方案中的各项学习活动,并参照项目范例的样式,撰写相应的项目成果报告。成果交流各小组运用数字化学习工具,将所完成的项目成果,在小组或班级上进行展示与交流,共享创造、分享快乐。活动评价各小组根据项目选题、拟订的项目方案、实施情况以及所形成的项目成果,根据教科书附录2的“项目活动评价表”,开展项目学习活动评价。21Y3228.indd 1002019/10/10 14:24:40101101本章扼要回顾本章扼要回顾同学们通过本章学习,根据“人工智能应用系统开发”知识结构图,扼要回顾、总结、归纳学过的内容,建立自己的知识结构体系。回顾与总结21Y3228.indd

220、 1012019/10/10 14:24:43102102第四章 人工智能应用系统开发本章学业评价同学们完成下列测试题(更多的测试题可以在教科书的配套学习资源包中查看),并通过“本章扼要回顾”以及本章的项目活动评价,综合评价自己在信息技术知识与技能、解决实际问题的过程与方法,以及相关情感态度与价值观的形成等方面,是否达到了本章的学习目标。1单选题(1)()不是人工智能应用系统的开发工具与平台。A.Scikit-learn B.国家人工智能开放创新平台C.TensorFlow D.Photoshop(2)某同学想开发一个做社会调查时候用的手机程序。程序要实现的核心功能是将受访者的语音直接记录为文

221、字,首选的开发工具是()。A.Scikit-learn B.国家人工智能开放创新平台C.TensorFlow D.Python(3)人工智能应用模块基本开发流程,不包括()。A.调研 B.设计 C.实现 D.测试2思考题如何根据实际条件,选择合适的人工智能开发平台与工具?谈谈自己的方法或经验。3情境题自然语言是人类智慧的结晶,自然语言处理是人工智能的一个发展领域,是人工智能中最困难的问题之一,而自然语言处理技术的研究却充满挑战和魅力。自然语言处理可用于智能对话系统、个性化内容推荐、舆情监控和拼写纠错等各种应用场景。(1)下列两个句子中的“它们”代表什么?“我们把香蕉给猴子,因为它们饿了。”“我

222、们把香蕉给猴子,因为它们熟透了。”自然语言处理可以通过什么方法来确定“它们”是什么?(2)若要设计一个能猜出评论者心情的程序,应该如何着手,依据是什么?21Y3228.indd 1022019/10/10 14:24:45103103第五章 人工智能系统的安全第五章人工智能系统的安全自人工智能的概念被提出以来,人类一直致力于通过智能机器延伸、增强自身改造自然和治理社会的能力。随着信息技术的发展,人工智能在数值计算、信息记录和博弈等领域已在某种程度上超越了人类。由此,也引发了人们对人工智能安全风险的普遍忧虑。所以,人类要保持对人工智能的控制能力,防范人工智能失控的风险。同时,应用人工智能要合乎伦

223、理。本章将通过“分析人机共处的安全风险和伦理挑战”项目,进行自主、协作、探究学习,让同学们通过智能系统的应用体验,了解社会智能化所面临的伦理及安全挑战,知道维护信息系统安全的基本方法和措施,增强安全防护意识和责任感;同时辩证认识人工智能对人类社会未来发展的巨大价值和潜在威胁,自觉维护和遵守人工智能社会化应用的规范与法规,从而将知识建构、技能培养与思维发展融入运用数字化工具解决问题和完成任务的过程中,促进信息技术学科核心素养达成,完成项目学习目标。人工智能应用系统的安全风险和伦理挑战 维护人工智能应用系统安全的基本方法 人工智能社会化应用的规范与法规21Y3228.indd 1032019/10

224、/10 14:24:47104104第五章 人工智能系统的安全从“自动驾驶汽车伤人事件”分析人机共处的安全风险和伦理挑战项目范例情 境自动驾驶汽车是人类从快捷出行到轻松出行的追求,是目前人工智能领域最受关注和最具市场潜力的产品之一。尽管自动驾驶汽车的人工智能系统能通过探测汽车周围的障碍物位置(如图5-1所示),从而相应调整汽车的行驶方向与速度,但是自动驾驶汽车在道路测试的过程中,发生了多起交通事故,甚至造成人员伤亡,由此也引发了人们对人工智能技术安全性的担忧。主 题从“自动驾驶汽车伤人事件”分析人机共处的安全风险和伦理挑战规 划根据项目范例的主题,在小组中组织讨论,利用思维导图工具,制订项目范

225、例的学习规划,如图5-2所示。图5-2 从“自动驾驶汽车伤人事件”分析人机共处的安全风险和伦理挑战图5-1 自动驾驶汽车与行人(示意图)21Y3228.indd 1042019/10/10 14:24:52105105探 究根据项目学习规划的安排,通过调查、案例分析、文献阅读和网上资料搜索,开展“从自动驾驶汽车伤人事件分析人机共处的安全风险和伦理挑战”项目学习探究活动,如表5-1所示。表5-1“从自动驾驶汽车伤人事件分析人机共处的安全风险和伦理挑战”项目学习探究活动探究活动学习内容知识技能了解“自动驾驶汽车伤人事件”背后的技术和人为的原因人工智能应用系统设备的基本结构。了解自动驾驶汽车的基本结

226、构。通过智能系统的应用体验,了解社会智能化所面临的伦理及安全挑战。辩证认识人工智能对人类社会未来发展的巨大价值和潜在威胁。人机协同技术机制。了解自动驾驶汽车的人车协同机制。了解人工智能应用系统的安全风险和伦理挑战人工智能应用系统的安全风险。认识自动驾驶汽车存在的安全风险。人工智能应用系统的伦理挑战。认识智能设备带来的伦理挑战。知道维护人工智能应用系统安全的基本方法和措施信息系统安全的目标。了解系统安全的目标。知道维护信息系统安全的基本方法和措施,增强安全防护意识和责任感。安全策略。了解信息系统安全的基本方法和措施。维护和遵守人工智能社会化应用的规范与法规人工智能应用的道德行为规范与法规。了解人

227、工智能应用的道德行为规范与法规。自觉维护和遵守人工智能 社 会 化 应 用 的 规 范 与法规。实 施实施项目学习各项探究活动,进一步从“自动驾驶汽车伤人事件”分析人机共处的安全风险和伦理挑战。成 果在小组开展项目范例学习过程中,利用思维导图工具梳理小组成员在“头脑风暴”活动中的观点,建立观点结构图,运用多媒体创作工具(如演示文稿、在线编辑工具等),综合加工和表达,形成项目范例可视化学习成果,并通过各种分享平台发布,共享创造、分享快乐。例如,运用在线编辑工具制作的“从自动驾驶汽车伤人事件分析人机共处的安全风险和伦理挑战”可视化报告,可以在教科书的配套学习资源包中查看,其目录截图如图5-3所示。

228、从“自动驾驶汽车伤人事件”分析人机共处的安全风险和伦理挑战22Y3228内文.indd 1052020/6/3 10:46:40106106第五章 人工智能系统的安全评 价根据教科书附录2的“项目活动评价表”,对项目范例的学习过程和学习成果在小组或班级上进行交流,开展项目学习活动评价。项目选题同学们以36人组成一个小组,选择下面一个参考主题,或者自拟一个感兴趣的主题,开展项目学习。1从“刷脸支付安全漏洞事件”分析人机共处的安全风险和伦理挑战2从“聊天机器人的不当言语事件”分析人机共处的安全风险和伦理挑战3从“智能摄像头泄露隐私事件”分析人机共处的安全风险和伦理挑战项目规划各小组根据项目选题,参

229、照项目范例的样式,利用思维导图工具,制订相应的项目方案。方案交流各小组将完成的方案在全班进行展示交流,师生共同探讨、完善相应的项目方案。图5-3“从自动驾驶汽车伤人事件分析人机共处的安全风险和伦理挑战”可视化报告目录截图21Y3228.indd 1062019/10/10 14:24:541071075.1 人工智能应用系统的安全风险和伦理挑战5.1 人工智能应用系统的安全风险 和伦理挑战随着人工智能技术的发展,人工智能渐渐与我们的工作、学习和生活密不可分。然而,人工智能应用系统的安全风险和伦理挑战渐渐显现出来。在探讨以上风险和挑战之前,需要先了解常见智能机器或智能系统的基本组成。5.1.1

230、常见人工智能应用系统的基本组成在常见的人工智能应用系统中,自动驾驶汽车是一种人工智能技术应用较为全面的智能机器。它依靠人工智能、视觉计算、雷达、监控装置和全球定位系统协同工作,让计算机可以在没有任何人类的主动操作下,自动安全地控制车辆。探究活动分 析以小组合作的形式,分析自动驾驶汽车应该具备怎样的功能模块,并填写表5-2。表5-2 自动驾驶汽车的功能模块序号自动驾驶功能实现方法1自动行驶功能23和伦理挑战21Y3228.indd 1072019/10/10 14:24:54108108第五章 人工智能系统的安全如图5-4所示,自动驾驶汽车通常在普通汽车上加装自动驾驶控制模块、单目或多目摄像头、

231、车载微波雷达、激光测距仪、定位导航系统、车辆状态传感器和控制执行器等设备,使汽车具备自动驾驶功能,包括自动行驶功能、自动变速功能、自动刹车功能、四周环境自动监测功能、自动变道功能、自动转向功能、自动信号提醒功能和网联式自动驾驶辅助功能等。自动驾驶控制模块是自动驾驶汽车的大脑,它接收各种传感输入信息(交通标志、车距、行人方位、路况和车况等),并输出相应的决策控制信息(转向、加速、换挡和制动等)。同时它具备知识库,能够存储各种路况行驶资料;具有人工智能分析能力,能够自主规划路线并预判各种紧急状况。视频摄像头利用视觉计算技术,让汽车能够实时识别交通信号灯、交通标志、车道线、近距离低速障碍物等;同时与

232、道路基础设施以及云端数据库通信,让汽车按照交通规则行驶,并进行相应的路线规划。车载微波雷达能够探测车辆周围的环境以及较远的路障。激光测距仪能够精确绘制周边数百米内的3D地形图,为汽车提供控制决策参考。定位导航系统加上高精度地图,能够为车辆提供精确的路径规划和导航服务。车辆上的车辆状态传感器(如车速、加速度和转角等传感设备)和控制执行器(转向、加速和制动等执行器)将确保汽车能够安全、有效地被驾驶者操控。根据以上对自动驾驶汽车的基本结构和工作原理的分析,可以知道常见人工智能应用系统将感知、计算、通信与控制集于一体。它通过人机交互接口实现与物理系统的交互,使用网络化空间以远程的、可靠的、实时的、安全

233、的、协作的方式操控一个物理实体。人工智能应用系统包含无处不在的环境感知、嵌入式计算、网络通信和网络控制等系统工程,使物理系统具有环境感知、计算、通信、精确控制、远程协作和自适应功能。图5-4 自动驾驶汽车上的智能设备21Y3228.indd 1082019/10/10 14:24:551091095.1 人工智能应用系统的安全风险和伦理挑战5.1.2 人工智能应用系统的安全风险人工智能应用系统最大的特征是能够实现无人干预、基于知识并能够自我修正的自动化运行。在启动人工智能系统后,人工智能系统进行决策不再需要操控者进一步的指令,这种决策可能会产生预料不到的结果,引发危及人类安全的问题。人工智能应

234、用系统面临的安全风险主要包括物理安全、数据安全、程序安全和运行安全等几个方面。1.物理安全风险人工智能应用系统是计算机信息系统和物理系统的统一体。物理安全风险包括计算机设备、设施(含网络、物理装置等)以及其他媒体因遇到地震、水灾、火灾、有害气体或其他环境事故(如电磁污染等)而遭受破坏的问题。物理安全的首要问题是保障设备的稳定性、可靠性和可用性。2.数据安全风险人工智能应用系统依赖传感器和训练数据进行深度学习,形成自身的知识库,如果传感器被干扰或训练数据被恶意篡改,系统自身可能被欺骗或入侵。因此,数据安全风险指数据财产被故意地或偶然地非授权泄露、更改、破坏,或使数据被非法系统辨识、控制。确保数据

235、信息的完整性、保密性、可用性和可控性,对数据安全至关重要。3.程序安全风险人工智能应用系统的“大脑”是经过数据训练的计算机信息系统。计算机信息系统的运行逻辑是靠程序实现的。程序是算法的表达,因此算法及其程序的正确性和可靠性直接影响到人工智能应用系统的安全。例如,基于机器学习算法的人工智能应用系统是大量数据训练出来的概率判断系统,也许可以有99.99%的概率保证识别是正确的,但是对于安全来讲,它只要出现一次识别错误,就会造成严重后果。4.运行安全风险系统的运行安全是人工智能应用系统安全的重要环节,因为只有系统运行安全得到保证,才能完成对信息的正确处理,达到发挥系统各项功能的目的。然而,由于系统可

236、能存在漏洞,很多木马和病毒具有极强的隐蔽性,在被触发以前,看不出有任何的危害,一旦触发,就会对系统造成极强的破坏,如拒绝服务攻击、降维攻击、逃逸攻击、控制流劫持和数据污染等。利用人工智能可以达到攻击规模和攻击效率两者平衡。更高效、更精准、更隐蔽将成为安全威胁的新特征。以更高效为例,传统计算机攻击中,攻击者往往需要在攻击规模和攻击效率两者之间取舍,而人工智能系统使得自动完成的网络攻击更高效。以更精准为例,在规模和效率均能达到最优效果之后,攻击者便有精力将其攻击限制在特定目标上,识别和分析潜在目标进行更为精准的攻击。以更隐蔽为例,攻击者只需使用人工智能自动化攻击系统进行攻击,而无须亲自执行,事后难

237、以查出罪魁祸首。21Y3228.indd 1092019/10/10 14:24:56110110第五章 人工智能系统的安全5.1.3 人工智能应用系统的伦理挑战人工智能发展为人类社会发展带来新机遇的同时,也带来了新挑战。人工智能是影响面广泛的颠覆性新技术,新技术发展的不成熟和不确定性带来很多安全风险,如出现合成声波、自动黑客攻击和数据下毒等新型数据安全攻击。不法分子将无人机或其他物理系统变成攻击的武器,利用人工智能技术做有针对性的宣传而造成侵犯隐私和左右舆论等安全威胁。这些问题可能会造成就业结构改变、法律与社会伦理冲击、个人隐私侵犯、国际关系准则受挑战等问题,将对政府管理、经济安全和社会稳定

238、乃至全球治理产生深远影响。1.国家安全影响人工智能在国防领域、涉密系统、关键信息基础设施等的应用,可能对国家安全产生影响。未来的人工智能技术有可能与核武器、飞机、计算机和生物技术一样,成为给国家安全带来深刻变化的颠覆性技术。2.社会安全风险人工智能可使机器实现自动化、智能化操作,这将对某些行业和工种造成潜在影响,导致薪酬降低、中低技术要求的职业消失,可能影响社会安全与稳定。3.人身安全风险随着人工智能与物联网的深入结合,智能产品日益融入人们的家居、医疗和交通等工作生活,一旦这些智能产品(如智能医学诊断设备、自动驾驶汽车等)遭受网络攻击,用户的人身安全可能受到威胁。4.网络安全风险人工智能算法、

239、系统和应用可能遭受恶意网络攻击。例如通过实施一些干扰技术,计算机在进行深度学习时容易被欺骗。因此,有些不法分子可能会利用数据欺诈等手段远程控制自动驾驶汽车,让汽车偏航甚至逼停汽车造成事故。5.隐私保护风险人工智能应用需要建立丰富的数据集,数据收集和使用时可能会遇到数据安全风险和隐私保护问题。以无人驾驶为例,自动驾驶车辆网络的有效运转需要依赖大量位置数据及其他个人数据,这种大规模的数据实践可能带来诸多层面的数据安全和隐私保护风险。6.法律伦理挑战人工智能的发展目标是使机器像人类一样思考和行动,但随着社会智能化程度的提高,人工智能将面临现行法律、社会规范和道德伦理方面的挑战。如何确定人工智能产品或

240、系统的法律主体、权利、义务和责任,如何确保研究人员开发出与现行法律、社会规范和道德伦理相符的算法和架构,都是人工智能的发展道路上需要考量的。讨 论随着智能应用系统的发展与普及,不同的安全风险与伦理挑战逐渐凸显。以小组为单位,讨论我们身边因为人工智能引发的相关问题,探讨我们应如何应对这些风险和挑战。21Y3228.indd 1102019/10/10 14:24:561111115.2 维护人工智能应用系统安全的基本方法项目实施各小组根据项目选题及拟订的项目方案,结合本节所学知识,剖析自动驾驶汽车伤人事件的原因。1.探究自动驾驶汽车的功能模块,并填写表5-2。2.结合自动驾驶汽车的功能,分析自动

241、驾驶汽车伤人事件的技术原因和人为原因。3.认识人工智能应用系统的安全风险和伦理挑战。5.2 维护人工智能应用系统安全的 人工智能技术已经广泛渗透到人们的生产和生活中,或改变了人们的出行方式,或改善了人们的工作环境,或提高了人们的劳动效率等。人工智能技术推动人类社会发展进程的同时,也给社会带来一定的负面影响。研究人工智能应用系统的安全策略,对人工智能发展和人类社会发展具有重大的现实意义和深远的历史意义。针对人工智能应用系统面临的物理安全、数据安全、程序安全和运行安全等问题,人们提出的人工智能应用系统的安全策略如下。探究活动调 查调查人工智能给社会带来的正面和负面的影响。5.2.1 安全风险分析与

242、审计跟踪安全风险分析是指评估威胁发生的可能性、系统的脆弱性(受攻击的难易度)和因此引起的潜在损失,是风险管理程序的基础,其最终目的是帮助系统管理人员进行安全防护选择并将风险降低到可接受的程度。人工智能应用系统在设计前和运行前,要先进行静态分析,旨在发现系统的潜在安全隐患;其次对系统进行动态分析,即进行系统运行测试,基本方法21Y3228.indd 1112019/10/10 14:24:56112112第五章 人工智能系统的安全跟踪并记录其活动状况,旨在发现系统运行期的安全漏洞;最后是系统运行后的分析,并生成相应的系统脆弱性分析报告。常见的系统风险有后门、陷阱门、犯大错误、拒绝使用、无法使用、

243、伪造、故意破坏程序或数据、逻辑炸弹、错误传递、计算机病毒和超级处理等。审计跟踪是利用对人工智能应用系统审计的方法,对系统工作过程中的状态变化进行详尽的审计跟踪和记录,如用户使用系统的时间、日期和具体操作,对程序和文件的使用监控等。审计跟踪通过保存、维护和管理审计日志,实现对各种安全事故的定位。5.2.2 备份与应急处理在人工智能应用系统运行中,洪水、地震等自然灾害会直接导致计算机系统不能正常运行;发电厂的事故、信息服务商的问题也会导致计算机系统的非正常运行;计算机系统本身也可能出现故障,如系统升级时发生差错、严重的操作错误、备份中心发生故障和系统管理员的恶意操作等都可能导致重要数据丢失,引发计

244、算机系统灾难。备份是指对重要的系统文件和数据进行复制和保存,甚至单独放置,有时甚至对重要设备也会备份,以确保在系统崩溃或数据丢失后,系统能及时准确恢复,保障信息处理操作仍能正常进行。应急处理主要是指当人工智能应用系统受到损害、面临崩溃或发生灾难事件时,具备完善可行的应急计划和快速恢复的应急措施,基本做到反应迅速、备份完备和恢复及时,使系统尽快恢复正常运行,以尽可能减少由此而造成的损失。灾难事件发生后的恢复工作主要包括两个方面:一方面是硬件的恢复,使计算机系统重新运行起来;另一方面是数据的恢复。一般来讲,数据的恢复更为重要,难度也更大。目前运用的数据恢复技术主要是瞬时复制技术、远程磁盘镜像技术和

245、数据库恢复技术。5.2.3 安全管理教育与制度建设提高安全意识,有效保障人工智能系统安全。由于人工智能系统安全是一个综合性的概念,是一项系统工程,综合性强、涉及面广,需各方面密切合作与配合。因此应从全局着手,提高全员系统安全意识,增长系统安全知识,自觉遵守安全管理制度,规范化操作,从整体上提高信息安全的防范能力。提高技术水平,增强系统的技术防范能力。人工智能系统安全是动态的,没有一劳永逸的安全防范措施,因此要及时更新安全技术,提高技术水平,不断调整安全策略,选用安全性较强的操作系统和数据库系统,制定统一的安全标准、算法和协议等,不能只注重效率而忽视了安全。建立和健全安全管理和防范规章制度,切实

246、发挥安全管理的重要作用。安全和管理是21Y3228.indd 1122019/10/10 14:24:561131135.3 人工智能社会化应用的规范与法规分不开的,即使有好的安全设备和系统,没有一套好的安全管理方法,并贯彻实施,安全就是空谈。在人工智能系统安全中,人是安全管理的关键因素,要培养高素质的安全技术人才,在管理体制上要制定相应的安全管理和防范规章制度,严格执行,自觉遵守。讨 论以小组合作的形式,讨论应如何制订人工智能应用系统的安全维护策略。项目实施各小组根据项目选题及拟订的项目方案,结合本节所学知识,探讨如何维护人工智能系统应用安全。1.了解人工智能应用系统面临的安全问题。2.调查

247、维护人工智能应用系统安全的基本方法和措施。5.3 人工智能社会化应用的规范与法规人类社会的发展经历了原始社会、奴隶社会、封建社会、资本主义社会和社会主义社会等社会形态。社会形态的更替取决于社会的发展、科技的进步、人类的发展理念与价值选择等因素。中国古代思想家们对技术工具的利用及环境的保护有了较深层次的认识,认为天地万物与人类是密不可分的有机整体,人仅是自然界的一部分,强调资源可持续发展,形成了“天、地、人合一”的生态伦理思想。5.3.1 人工智能应用的道德规范和行为守则人工智能技术的发展目的是利用客观世界的本质和规律,改造客观世界,满足人类的需求,实现可持续发展。因此,人工智能技术发展和应用应

248、该秉承先贤的技术生态伦理观,在良好外部环境的影响下,对人工智能技术做出合理性选择,在伦理规范的作用下舍弃该否定的技术;通过发挥良性协调机制来解决不确定的技术的伦理争议问题,使技术主体的研究始终围绕着可靠的技术展开,从而实现人工智能技术与伦理的协同发展。我国是一个具有上下五千年文化积淀的文明国家,在正确处理人与人、人与社会、人与自然之间的关系中,形成了“爱国守法、明礼诚信、团结友善、勤俭自强、敬业奉献”21Y3228.indd 1132019/10/10 14:24:56114114第五章 人工智能系统的安全的道德规范,在社会交往和公共生活中遵循“文明礼貌、助人为乐、爱护公物、保护环境、遵纪守法

249、”的行为准则。在现代社会,公共生活领域不断扩大,人们相互交往日益频繁,社会公德在维护公众利益、公共秩序,保持社会稳定方面的作用更加突出,成为公民个人道德修养和社会文明程度的重要表现。人工智能的社会应用也不例外。人工智能的应用理应避免伤害他人,要诚实可靠,不干扰别人的系统工作,不窥探别人的数据文件,不应用人工智能技术进行偷窃,不应用人工智能技术作伪证,要公正且不采取歧视性行为,尊重包括版权和专利在内的财产权,尊重知识产权,尊重他人的隐私等。探究活动分 析运用所学到的知识和思维方法,结合社交应用的使用情况,分析人工智能与伦理道德的协同发展机制。5.3.2 人工智能应用的民事与刑事法规自动驾驶机器人

250、、工业机器人、翻译机器人和护理机器人等人工智能产品在带给人们便利、舒适生活的同时,也带来了新的挑战。就法律而言,如何认定责任主体、适用的民事与刑事法规有哪些等成为重要的研究课题。人工智能应用系统的本质属性,决定了人工智能应用的民事与刑事法规的适用性。由全国人民代表大会常务委员会于2016年11月7日发布,自2017年6月1日起施行的中华人民共和国网络安全法,就是为保障网络安全,维护网络空间主权和国家安全、社会公共利益,保护公民、法人和其他组织的合法权益,促进经济社会信息化健康发展而制定的。阅 读中华人民共和国网络安全法主要内容包括:维护网络主权和战略规划、保障网络产品和服务安全、保障网络运行安

251、全、保障网络数据安全、保障网络信息安全、监测预警与应急处置、网络安全监督管理体制等,具体目录如下:第一章 总则第二章 网络安全支持与促进第三章 网络运行安全 第一节 一般规定 第二节 关键信息基础设施的运行安全21Y3228.indd 1142019/10/10 14:24:561151155.3 人工智能社会化应用的规范与法规第四章 网络信息安全第五章 监测预警与应急处置第六章 法律责任第七章 附则其中第六章规定了法律责任的主体是网络运营者,网络产品、服务的提供者,电子信息发送者,应用软件提供者等。交 流认真研读中华人民共和国网络安全法的各项条文,交流“自动驾驶汽车伤人事件”的民事或刑事责任

252、。项目实施各小组根据项目选题及拟订的项目方案,结合本节所学知识,分析人机共处的安全风险和伦理挑战,进一步完善该项目方案中的各项学习活动,并参照项目范例的样式,撰写本组的项目成果报告。成果交流各小组运用数字化学习工具,将所完成的项目成果,在小组或班级上进行展示与交流,共享创造、分享快乐。活动评价各小组根据项目选题、拟订的项目方案、实施情况以及所形成的项目成果,根据教科书附录2的“项目活动评价表”,开展项目学习活动评价。21Y3228.indd 1152019/10/10 14:24:57116116第五章 人工智能系统的安全本章扼要回顾同学们通过本章学习,根据“人工智能系统的安全”知识结构图,扼

253、要回顾、总结、归纳学过的内容,建立自己的知识结构体系。回顾与总结21Y3228.indd 1162019/10/10 14:25:03117117本章学业评价本章学业评价同学们完成下列测试题(更多的测试题可以在教科书的配套学习资源包中查看),并通过“本章扼要回顾”以及本章的项目活动评价,综合评价自己在信息技术知识与技能、解决实际问题的过程与方法,以及相关情感态度与价值观的形成等方面,是否达到了本章的学习目标。1单选题(1)计算机设备、设施(含网络、物理装置等),以及其他媒体因遇到地震、水灾、火灾、有害气体和其他环境事故(如电磁污染等)而遭受破坏,导致的人工智能系统的安全风险属于()。A物理安全

254、风险 B数据安全风险 C程序安全风险 D运行安全风险(2)针对人工智能应用系统面临的物理安全、数据安全、程序安全和运行安全等几种安全风险,人工智能应用系统的安全策略不包括()。A风险分析 B审计跟踪 C备份与恢复 D减少使用(3)人工智能应用中,()行为是有违道德规范的。A避免伤害他人 B获取一切能获取的数据C尊重知识产权 D尊重他人的隐私2思考题某手机购物软件运行的时候,仿佛可以猜中用户的心意,向用户推荐他近期在搜寻的商品。人工智能在为用户提供个性化服务的时候,是否会危及个人的隐私安全?思考这其中是否存在人工智能领域的道德规范问题。3情境题某地图的街景应用面向世界范围拍摄实景,该公司组建了自

255、己专门的街景拍摄团队。该团队上得了高山,走得了平原,既能走街串巷,也能潜水下海,且采集设备非常专业,拍摄内容自然也是意料之中的丰富。因此需要进行复杂的数据收集和处理。(1)采集海量图像后,通过机器学习,不但可以使系统识别照片上的街道名字、编号,商铺的名字和商标等信息,而且可以将数据增添到自己的数据库中。请从道德规范角度分析这种做法存在的问题。(2)在以上案例中,应该建立什么规则,能让人们享受人工智能带来的便利的同时,保护人们的权益?21Y3228.indd 1172019/10/10 14:25:03118118附录1 部分术语、缩略语中英文对照表ANN(Artificial Neural N

256、etwork)人工神经网络(3)API(Application Programming Interface)应用程序编程接口(2)Biometrics 生物特征识别(2)CNN(Convolutional Neural Network)卷积神经网络(4)Computer Vision 计算机视觉(1)CSI(Camera Serial Interface)相机串行接口(4)DAI(Distributed Artificial Intelligence)分布式人工智能(1)Decision tree 决策树(3)Deep Learning 深度学习(1)Density-Based Methods

257、 基于密度的方法(3)Feature Extraction 特征提取(2)GPIO(General-Purpose Input/Output)通用输入/输出接口(4)GPU(Graphics Processing Unit)图形处理器(1)Grid-Based Methods 基于网格的方法(3)HDMI(High-Definition Multimedia Interface)高清多媒体接口(4)Heuristic Search 启发式搜索(2)Hierarchical Methods 层次方法(3)Machine Learning 机器学习(1)MAS(Multi-Agent System

258、)多智能体系统(1)MCTS(Monte Carlo Tree Search)蒙特卡洛树搜索(2)Naive Bayes Classifier 朴素贝叶斯分类器(3)Neuromorphic Computing 神经形态计算(1)NLP(Natural Language Processing)自然语言处理(1)Partitioning Methods 划分方法(3)Perceptron 感知机(3)Reinforcement Learning 强化学习(1)附录1 部分术语、缩略语中英文对照表21Y3228.indd 1182019/10/10 14:25:04119119附录2 项目活动评价

259、表附录2 项目活动评价表以培养信息素养为目标,以知识体系为载体,以项目学习活动过程与评价为途径,促进同学们的信息技术学科核心素养达成。项目学习主题:项目学习过程学科核心素养达成一级指标二级指标评价结果支撑材料选定项目从现实世界中选择明确的项目主题,形成对信息的敏感度和信息价值的判断力。分析项目目标与可行性。项目选题从现实世界选择项目主题的能力。化抽象概念为现实问题的能力。对信息的敏感度和价值的判断力。优秀 良好中等仍需努力项目分析分析项目目标的能力。分析项目可行性的能力。从现实世界发现项目素材的能力。优秀 良好中等仍需努力规划设计组建团队与明确项目任务,体现正确的信息社会责任意识。规划项目与交

260、流方案。项目规划组建团队与明确项目任务的能力。规划项目学习工具与方法的能力。预期项目成果的能力。优秀 良好中等仍需努力方案交流交流项目方案的能力。完善项目方案的能力。体现正确的信息社会责任意识。优秀 良好中等仍需努力活动探究通过团队合作,围绕项目进行自主、协作学习。开展探究活动,提升信息获取、处理与应用、创新能力。团队合作自主学习能力。分工与协作能力。交流与沟通能力。优秀 良好中等仍需努力探究活动信息获取与处理能力。探究与联想能力。实践与创新能力。优秀 良好中等仍需努力21Y3228.indd 1192019/10/10 14:25:05120120项目学习过程学科核心素养达成一级指标二级指标

261、评价结果支撑材料项目实施针对给定的任务进行分解,明确需要 解 决 的 关 键 问题,并采用计算机科学领域的思想方法,在形成问题解决 方 案 的 过 程 中产 生 一 系 列 思 维活动。完成方案中预设的目标。工具方法采用计算机领域的思想方法能力。使用数字化工具与资源能力。数字化学习能力。优秀 良好中等仍需努力实施方案针对给定的任务进行分解。明确需要解决的关键问题。完成方案中预设的目标。优秀 良好中等仍需努力项目成果交流与评价与团队成员共享创造与分享快乐,提 升 批 判 性 思 维能力与信息社会责任感。评价项目目标与成果质量效果。成果交流清晰表达项目主题与过程。与团队成员共享创造与分享快乐。提升

262、批判性思维能力与信息社会责任感。优秀 良好中等仍需努力项目评价运用新知识与技能实现项目目标。项目成果的可视化表达质量。项目成果解决现实问题效果。优秀 良好中等仍需努力综合评价优秀 良好 中等 仍需努力注:1评价得分90100分为优秀(A);7589分为良好(B);6074分为中等(C);60分以下为仍需努力(D)。2综合得分=互评30%+自评30%+教师评40%。(续表)附录2 项目活动评价表21Y3228.indd 1202019/10/10 14:25:05普 通 高 中 教 科 书选择性必修信息技术普通高中教科书信息技术4人工智能初步Rengong Zhineng Chubu选择性必修 4人工智能初步广东教育出版社广东教育出版社批准文号:粤发改价格2017434号 举报电话:12358定价:9.51元ook2020信息技术选择性必修-4封面.indd 42020/6/5 上午11:23

网站客服QQ:123456
免费在线备课命题出卷组卷网版权所有
经营许可证编号:京ICP备12026657号-3