文档内容
普
通
高
中
普 通 高 中 教 科 书
教
科
书
信
息
技
术
选
择
信息技术
性
必
4
修
选择性必修
4
人
人 工 智 能 初 步
工
智
能
初
Rengong Zhineng Chubu
步
广
东
教
育
出
版
社
广东教育出版社
定价:9.51元
批准文号:粤发改价格[2017]434号 举报电话:12358
ook2020信息技术选择性必修-4封面.indd 4 2020/6/5 上午11:23普 通 高 中 教 科 书
信息技术
4
选择性必修
人 工 智 能 初 步
Rengong Zhineng Chubu
徐福荫 主编
广东教育出版社
·广州·
ook2020信息技术-8扉页.indd 6 2020/5/28 下午2:52目录
图书在版编目(CIP)数据
信息技术.选择性必修4:人工智能初步 / 徐福荫
主编.—广州:广东教育出版社,2019.12(2021.1重印)
普通高中教科书
ISBN 978-7-5548-3031-4
Ⅰ. ①信… Ⅱ. ①徐… Ⅲ. ①计算机课—高中—教材
Ⅳ. ①G634.671
中国版本图书馆CIP数据核字(2019)第202791号
编写单位 广东教育出版社
主 编 徐福荫
副 主 编 朱光明 黄国洪
本册主编 黄国洪 王 腾
核心编写人员(以姓氏笔画为序)
王同聚 刘 毅 李建国 吴良辉
沈小锋 曹 萍 覃健诚
责任编辑 李敏怡 熊力闻 李杰静
责任技编 杨启承 陈 瑾
装帧设计 何 维
信息技术 选择性必修4 人工智能初步
XINXI JISHU XUANZEXING BIXIU 4 RENGONG ZHINENG CHUBU
广 东 教 育 出 版 社 出 版
(广州市环市东路472号12-15楼)
邮政编码:510075
网址:http://www.gjs.cn
广东新华发行集团股份有限公司发行
广东新华印刷有限公司南海分公司印刷
(佛山市南海区盐步河东中心路)
890毫米×1240毫米 16开本 8印张 160 000字
2019年12月第1版 2021年1月第3次印刷
ISBN 978-7-5548-3031-4
定价:9.51元
批准文号:粤发改价格[2017]434号 举报电话:12315
著作权所有·请勿擅用本书制作各类出版物·违者必究
如有印装质量或内容质量问题,请与我社联系。
质量监督电话:020-87613102 邮箱:gjs-quality@nfcb.com.cn
购书咨询电话:020-87772438
2 2
22Y3228目录.indd 2 2020/12/3 17:10:02
前 言
信息技术作为当今先进生产力的代表,已经成为我国经济发展的重要支
柱和网络强国的战略支撑。信息技术涵盖了获取、表示、传输、存储和加工
信息在内的各种技术。自电子计算机问世以来,信息技术沿着以计算机为核
心、到以互联网为核心、再到以数据为核心的发展脉络,深刻影响着社会的
经济结构和生产方式,加快了全球范围内的知识更新和技术创新,推动了社
会信息化、智能化的建设与发展,催生出现实空间与虚拟空间并存的信息社
会,并逐步构建出智慧社会。
人工智能是通过智能机器延伸、增强人类改造自然和治理社会能力的新
兴技术。近年来,人工智能的发展呈现出深度学习、跨界融合、人机协同等
新特征,推动了社会各领域从数字化、网络化向智能化的跃升,深刻改变着
人们的生活方式和思维模式。本模块是针对人工智能的发展特征,从基础知
识与应用、简单人工智能应用模块搭建及开发等方面设置的选择性必修
模块。
通过本教科书的学习,同学们应该了解人工智能的发展历程及概念,能
描述典型人工智能算法的实现过程,通过搭建简单的人工智能应用模块,亲
历设计与实现简单智能系统的基本过程与方法,增强利用智能技术服务人类
发展的责任感。
本教科书按“人工智能基础”“简单人工智能应用模块开发”“人工
智能技术的发展与应用”三部分内容展开,围绕信息技术学科核心素养设
计了“调查汉英自动翻译机的人工智能发展历程”“剖析汽车自动导航系
统”“剖析垃圾邮件智能分类系统”“开发拍照识物智能玩具系统”“从
‘自动驾驶汽车伤人事件’分析人机共处的安全风险和伦理挑战”项目范
例,教师围绕“情境→主题→规划→探究→实施→成果→评价”的项目范例
主线开展教学活动,帮助同学们掌握本教科书的基础知识、方法和技能,增
强信息意识,发展计算思维,提高数字化学习与创新能力,树立正确的信息
社会价值观和责任感,从而促进同学们的信息素养提升。
1
21Y3228前言.indd 1 2019/10/10 14:22:18前言
本教科书要求同学们对现实世界中的真实性问题进行自主、协作、探究
学习。同学们围绕“项目选题→项目规划→方案交流→探究活动→项目实施
→成果交流→活动评价”的项目学习主线开展学习活动,体验“做中学、学
中创、创中乐”的项目学习理念和“从实践入手、先学后教、先练后讲”的
项目学习策略,将知识建构、技能培养与思维发展融入运用数字化工具解决
问题和完成任务的过程中,从而促进信息意识、计算思维、数字化学习与创
新、信息社会责任的信息技术学科核心素养达成。
本教科书设置了“项目范例”“项目选题”“项目规划”“方案交
流”“探究活动”“项目实施”“成果交流”“活动评价”等学习栏目,指
导同学们开展项目学习活动。其中,“项目范例”是教师通过“情境”“主
题”“规划”“探究”“实施”“成果”“评价”等活动,引导同学们了解
开展项目学习活动的全过程;“项目选题”是同学们从真实世界选择自己感
兴趣的项目主题;“项目规划”是同学们根据项目选题,制订自己的项目方
案;“方案交流”是同学们展示交流自己设计的项目方案,师生共同探究、
完善其方案;“探究活动”是同学们通过“问题”“观察”“分析”“阅
读”“思考”“交流”“实践”“实验”“体验”“调查”“讨论”“拓
展”等活动,获取知识和技能的过程;“项目实施”是同学们运用在项目学
习过程中所获得的知识和技能来完成项目方案;“成果交流”是教师组织同
学们展示交流项目成果,共享创造、分享快乐;“活动评价”是教师组织同
学们开展项目评价活动。
本教科书每章首页的导言,叙述了本章的学习目的与方式、学习目标与
内容,让同学们对整章内容有个总体认识。每章设置了“本章扼要回顾”,
通过知识结构图把每章的主要内容及它们之间的关系描述出来,这有助于同
学们建立自己的知识结构体系。每章结尾的“本章学业评价”设计了基于学
业要求的测试题,并通过本章的项目活动评价,让同学们综合评价自己在信
息技术知识与技能、解决实际问题的过程与方法,以及相关情感态度与价值
观的形成等方面,是否达到了本章的学习目标。此外,本教科书为同学们提
供了配套学习资源包,里面含有贝叶斯分类器、聚类、决策树和人工神经网
络等算法,以及“垃圾邮件智能分类系统”“拍照识物智能玩具系统”等
Python程序源代码,为同学们提供智能系统实验环境和数据。当然,同学们
还可以自己收集素材,让自己的项目学习作品更有特色。
2 2
21Y3228前言.indd 2 2019/10/10 14:22:19CONTENTS
目目 录录
第一章 人工智能概述 1
项目范例 调查汉英自动翻译机的人工智能发展历程��������������������������������2
�����������������������������������������������������������������������
1.1 人工智能及其特征 5
������������������������������������������������������������������������������������������
1�1�1 人工智能 5
������������������������������������������������������������������������
1�1�2 人工智能的基本特征 7
�������������������������������������������������������������
1.2 人工智能发展历程与趋势 9
������������������������������������������������������������������������
1�2�1 人工智能的发展历程 9
�������������������������������������������������������������������
1�2�2 新一代人工智能的兴起 12
����������������������������������������������������������������
1�2�3 人工智能发展的研究趋势 13
�������������������������������������������������������������������������
1.3 人工智能的应用 16
������������������������������������������������������������
1�3�1 人工智能在经济领域的应用 16
������������������������������������������������������������
1�3�2 人工智能在社会领域的应用 18
第二章 人工智能基础算法及应用 22
������������������������������������������������������������
项目范例 剖析汽车自动导航系统 23
����������������������������������������������������
2.1 人工智能编程语言与开发平台 26
�������������������������������������������������������������������
2�1�1 常用人工智能编程语言 26
�����������������������������������������������������������
2�1�2 Python在人工智能中的运用 27
1 1
21Y3228目录.indd 1 2019/10/10 14:07:23目录
�������������������������������������������������������������������
2�1�3 典型人工智能开发平台 29
�������������������������������������������������������������������������������
2.2 启发式搜索 31
�����������������������������������������������������������������������������
2�2�1 启发式搜索原理 31
��������������������������������������������������������������������������
2�2�2 启发式搜索的分类 33
��������������������������������������������������������������������������
2�2�3 启发式搜索的应用 34
����������������������������������������������������������������������������
2.3 自然语言处理 36
����������������������������������������������������������������������������������������
2�3�1 情感分析 36
����������������������������������������������������������������������������������������
2�3�2 机器翻译 38
���������������������������������������������������������������������������������
2�3�3 机器阅读理解 40
���������������������������������������������������������������������������������
2�3�4 智能搜索引擎 41
����������������������������������������������������������������������������
2.4 生物特征识别 41
���������������������������������������������������������������������������������
2�4�1 指纹识别系统 42
���������������������������������������������������������������������������������
2�4�2 人脸识别系统 42
���������������������������������������������������������������������������������
2�4�3 虹膜识别系统 45
�����������������������������������������������������������������������������
2�4�4 指静脉识别系统 45
第三章 机器学习与人工智能的核心算法 49
�����������������������������������������������
项目范例 剖析垃圾邮件智能分类系统 50
�����������������������������������������������������������������������������
3.1 机器学习概述 53
����������������������������������������������������������������������
3�1�1 机器学习的基本原理 54
����������������������������������������������������������������
3�1�2 机器学习算法的主要类型 55
����������������������������������������������������������������������������
3.2 贝叶斯分类器 57
��������������������������������������������������������������������������
3�2�1 朴素贝叶斯分类器 57
����������������������������������������������������������������
3�2�2 朴素贝叶斯分类器的类型 60
����������������������������������������������������������������
3�2�3 朴素贝叶斯分类器的应用 61
2 2
21Y3228目录.indd 2 2019/10/10 14:07:23目录
������������������������������������������������������������������������������������������
3.3 聚类 63
���������������������������������������������������������������������������������
3�3�1 系统聚类算法 64
������������������������������������������������������������������������
3�3�2 K-Means聚类算法 65
�������������������������������������������������������������
3�3�3 K-Means聚类算法的应用 66
��������������������������������������������������������������������������������������
3.4 决策树 68
�����������������������������������������������������������������������������
3�4�1 决策树及其类型 69
���������������������������������������������������������������������������������
3�4�2 决策树的生成 71
���������������������������������������������������������������������������������
3�4�3 决策树的应用 73
����������������������������������������������������������������������������
3.5 人工神经网络 75
����������������������������������������������������������������
3�5�1 人工神经网络的基本原理 76
����������������������������������������������������������������������
3�5�2 人工神经网络的应用 78
第四章 人工智能应用系统开发 83
�����������������������������������������������
项目范例 开发拍照识物智能玩具系统 84
�������������������������������������������������������
4.1 人工智能应用系统项目分析 86
����������������������������������������������������������������������������������������
4�1�1 项目描述 86
����������������������������������������������������������������������������������������
4�1�2 需求分析 87
�������������������������������������������������������
4.2 人工智能应用系统项目设计 88
����������������������������������������������������������������������������������������
4�2�1 总体设计 89
���������������������������������������������������������������������������������
4�2�2 硬件系统设计 89
���������������������������������������������������������������������������������
4�2�3 软件模块设计 90
�������������������������������������������������������
4.3 人工智能应用系统项目实施 94
����������������������������������������������������������������������������������������
4�3�1 程序设计 94
��������������������������������������������������������������������������
4�3�2 图像识别模块开发 95
����������������������������������������������������������������������������������������
4�3�3 系统集成 98
3 3
21Y3228目录.indd 3 2019/10/10 14:07:24目录
第五章 人工智能系统的安全 103
项目范例 从“自动驾驶汽车伤人事件”分析人机共处的安全风险
�������������������������������������������������������������������
和伦理挑战 104
��������������������������������
5.1 人工智能应用系统的安全风险和伦理挑战 107
������������������������������������������������
5�1�1 常见人工智能应用系统的基本组成 107
�������������������������������������������������������
5�1�2 人工智能应用系统的安全风险 109
�������������������������������������������������������
5�1�3 人工智能应用系统的伦理挑战 110
�����������������������������������
5.2 维护人工智能应用系统安全的基本方法 111
��������������������������������������������������������������
5�2�1 安全风险分析与审计跟踪 111
���������������������������������������������������������������������������
5�2�2 备份与应急处理 112
��������������������������������������������������������������
5�2�3 安全管理教育与制度建设 112
������������������������������������������
5.3 人工智能社会化应用的规范与法规 113
��������������������������������������������
5�3�1 人工智能应用的道德规范和行为守则 113
���������������������������������������������������
5�3�2 人工智能应用的民事与刑事法规 114
������������������������������������������
附录1 部分术语、缩略语中英文对照表 118
������������������������������������������������������������������
附录2 项目活动评价表 119
4 4
21Y3228目录.indd 4 2019/10/10 14:07:24第一章
第一章 人工智能概述
人工智能概述
第一章
人工智能概述
人类具有智能,并以此建立了相互联系的生活共同体——社
会,而智能被认为是推动社会发展的重要因素。从学会使用工具
到农业革命、工业革命,再到信息化社会,智能无处不在。智能
家居、自动驾驶和智能机器人等智能系统早已在不知不觉中融入
我们的生活。人工智能技术将对我们的学习、工作和生活带来哪
些影响?我们该如何应对人工智能带来的挑战呢?
本章将通过“调查人工智能发展历程”项目,进行自主、协
作、探究学习,让同学们学会描述人工智能的概念与基本特征,
知道人工智能的发展历程、典型应用与发展趋势,辩证认识人工
智能对人类社会未来发展的巨大价值,从而将知识建构、技能
培养与思维发展融入运用数字化工具解决问题和完成任务的过程
中,促进信息技术学科核心素养达成,完成项目学习目标。
人工智能及其特征
人工智能发展历程与趋势
人工智能的应用
1 1
21Y3228.indd 1 2019/10/10 14:23:07第一章 人工智能概述
调查汉英自动翻译机的人工智能发展历程
项目范例
情 境
语言是用来表达意思和交流思想的工具,是人类社会最基本的信息载体,也是人类区
别于其他动物的本质特征之一。由于地理位置、生活环境、风俗习惯等诸多因素影响,世
界各地形成了不同的语言。为促进人类之间的交流与合作,需要进行语言之间的翻译。拥
有一种自动翻译不同语言的工具,成为人类共同的梦想。人工智能的诞生、发展和应用为
自动翻译机(如图1-1所示)的研发和制造带来突破,使人类的这个梦想得以实现。
图1-1 自动翻译机
主 题
调查汉英自动翻译机的人工智能发展历程
规 划
根据项目范例的主题,在小组中组织讨论,利用思维导图工具,制订项目范例的学习
规划,如图1-2所示。
2 2
21Y3228.indd 2 2019/10/10 14:23:09调查汉英自动翻译机的人工智能发展历程
图1-2 “调查汉英自动翻译机的人工智能发展历程”项目学习规划
探 究
根据项目学习规划的安排,通过调查、案例分析、文献阅读和网上资料搜索,开展
“调查汉英自动翻译机的人工智能发展历程”项目学习探究活动,如表1-1所示。
表1-1 “调查汉英自动翻译机的人工智能发展历程”项目学习探究活动
探究活动 学习内容 知识技能
体验人工智能实例。 理解人工智能的概念。
汉英自动翻译机的 描述人工智能的概念
人工智能 分析人工智能的基本 描述人工智能的基本 与基本特征。
特征。 特征。
分析人工智能技术研 知道人工智能的发展
究的发展趋势。 历程。
人工智能在汉英翻译 知道人工智能的发展
领域中的发展 列举人工智能技术在 历程、典型应用与发展
知道人工智能的典型
汉英翻译领域取得的成 趋势。
应用。
果实例。 辩证认识人工智能对
人类社会未来发展的巨
汉英自动翻译机的 分析汉英自动翻译机 分析人工智能的发展 大价值。
发展趋势 的发展趋势。 趋势。
3 3
21Y3228.indd 3 2019/10/10 14:23:11第一章 人工智能概述
实 施
实施项目学习各项探究活动,进一步调查汉英自动翻译机的人工智能发展历程。
成 果
在小组开展项目范例学习过程中,利用思维导图工具梳理小组成员在“头脑风暴”活
动中的观点,建立观点结构图,运用多媒体创作工具(如演示文稿、在线编辑工具等),
综合加工和表达,形成项目范例可视化学习成果,并通过各种分享平台发布,共享创造、
分享快乐。例如,运用在线编辑工具制作的“调查汉英自动翻译机的人工智能发展历程”
可视化报告,可以在教科书的配套学习资源包中查看,其目录截图如图1-3所示。
图1-3 “调查汉英自动翻译机的人工智能发展历程”可视化报告目录截图
评 价
根据教科书附录2的“项目活动评价表”,对项目范例的学习过程和学习成果在小组
或班级上进行交流,开展项目学习活动评价。
项目选题
同学们以3~6人组成一个小组,选择下面一个参考主题,或者自拟一个感兴趣的主
题,开展项目学习。
1.调查汉日自动翻译机的人工智能发展历程
2.调查汉德自动翻译机的人工智能发展历程
3.调查汉俄自动翻译机的人工智能发展历程
4 4
21Y3228.indd 4 2019/10/10 14:23:121.1 人工智能及其特征
项目规划
各小组根据项目选题,参照项目范例的样式,利用思维导图工具,制订相应的项目
方案。
方案交流
各小组将完成的方案在全班进行展示交流,师生共同探讨、完善相应的项目方案。
1.1
人工智能及其特征
自有文字记载以来,人类一直梦想着制造智能机器,这些机器能听、能说、能看,会
学习、会思考、会决策、会创造、会像人类那样解决问题。1956年的达特茅斯会议开启了
人工智能研究的航程。在这之后,人工智能经历了曲折的发展历程。2016和2017年,计算
机程序“阿尔法围棋(AlphaGo)”战胜围棋世界冠军的事件,引起了人们对人工智能的
兴趣,使人工智能再次进入公众视野,并迎来快速发展的浪潮。
1 . 1 . 1 人工智能
1. 人类智能
人类智能一般是指知识与智力的总和。其中,知识是智能的基础,而智力是人类获取
和运用知识解决问题的能力。学习和记忆的能力是产生智能的前提。为此,人类智能的基
本特征表现在以下四个方面:
(1)感知。
人们通过各种感觉器官(如眼、耳、鼻和手等)来获取客观世界中的各种信息(如图
像、声音和气味等),然后将这些信息传入大脑以进行信息处理和识别等智能活动。
(2)思维。
人的思维是大脑对客观事物能动的、间接的和概括的反映,包括逻辑思维、形象思维
和创造性思维。它利用人类语言作为工具,通过归纳、联想、比较、分析和判断等方法对
获取的知识进行加工和处理。
5 5
21Y3228.indd 5 2019/10/10 14:23:12第一章 人工智能概述
(3)学习与自适应。
学习是人类智能的主要标志,也是人类获取知识的基本手段。人们通过与环境的相互
作用,不断地学习,通过学习积累知识、培养才能,从而适应环境的变化,并根据环境的
变化不断地改变自己的行为。
(4)行为。
人们通常用语言、表情、眼神和形体动作等对外界的刺激作出反应,传达信息。
2. 人工智能
人工智能是计算机科学的一个分支,是研究计算机模拟人的某些感知能力、思维过
程和智能行为(如学习、推理、思考和规划等)的学科。人工智能的研究领域包括机器
人、专家系统、语音识别、图像识别、自然语言处理和自动驾驶等。也就是说,人工智
能是通过智能机器延伸、增强人类改造自然和治理社会能力的新兴技术。它将深刻地改
变人们的生活方式和思维模式。
人工智能研究的基本内容包含知识表示、机器感知、机器思维、机器学习、机器行为等。
(1)知识表示。
知识表示研究如何将人类知识形式化或者模型化。知识表示方法包括符号表示法、连
接机制表示法。符号表示法是用各种包含具体含义的符号,以各种不同的方式和顺序组合
起来表示知识的方法。连接机制表示法是把各种物理对象以不同的方式和顺序连接起来,
并在其间互相传递和加工各种包含具体意义的信息,以此来表示相关的概念及知识。
(2)机器感知。
机器感知研究如何使计算机具有类似人的感知能力,以机器视觉与机器听觉为主。
(3)机器思维。
机器思维研究如何有目的地处理通过感知得来的外部信息和机器内部的工作信息。
(4)机器学习。
机器学习研究如何使计算机具有类似人的学习能力,使它能通过学习自动地获取知识。
(5)机器行为。
机器行为研究如何使计算机具有表达能力,即“说”“写”“画”等能力。
探究活动
讨 论
以小组合作的形式上网搜索人工智能的不同定义,讨论人工智能是什么。
6 6
21Y3228.indd 6 2019/10/10 14:23:131.1 人工智能及其特征
1 . 1 . 2 人工智能的基本特征
人工智能的基本特征可概括为以下三点:
1. 由人类设计,为人类服务,本质为计算,基础为数据
人工智能系统的本质体现为计算,通过对数据的采集、处理、分析和挖掘,形成有价
值的信息流和知识模型,以延伸人类能力。
2. 能感知环境,能产生反应,能与人交互,能与人互补
人工智能系统能借助传感器等器件感知外界环境,可以像人一样通过视觉、听觉、嗅
觉和触觉等接收来自环境的各种信息,让机器会看、会听、会说、会行动、会思考和会学
习。人与机器之间甚至可以互动,使机器能够“理解”人类乃至与人类共同协作、优势
互补。
3. 有适应特性,有学习能力,能演化迭代,可连接扩展
人工智能系统在理想情况下应具有一定的随环境、数据或任务的变化而自适应地调节
参数或更新优化系统的能力,从而使人工智能系统在各行各业广泛应用。
调 查
调查人工智能在自动翻译领域中的应用。收集相关应用案例,分析自动翻译机的人工
智能具有哪些特征。
拓 展
假如机器能思考,世界会怎样
人脑为什么会思考?人脑的结构是怎样的?能不能制造出具有人脑功能的机器?人类
文明史告诉我们,许多新技术的发明,大部分都经历了神话—科学幻想—新技术出现的过
程。科学家们是如何使机器学会思考的?
1. 机器能思考吗?
科学家证明:可以用数学逻辑来理解神经活动,用特定的方法将电子线路连接起来,
可以模仿神经活动。这拉开了人工大脑研发的序幕。如今,科学家们基于神经单元的数学
模型,利用人工神经单元器件,进一步建立了人工神经网络计算机,以模仿人的大脑智
能,并已在图形、文字、声音识别和推理等方面取得了许多应用成果。
2. 什么是会思考的机器?
人们一直希望制造出会思考的计算机。然而,到底什么才是真正会思考的计算机呢?
一台运算速度为每秒一万亿次的计算机会思考吗?战胜世界围棋冠军的“阿尔法
7 7
21Y3228.indd 7 2019/10/10 14:23:13第一章 人工智能概述
围棋”会思考吗?具有专家知识的专家系统会思考吗?1950
年,计算机科学理论创始人图灵(A. Turing,1912—1954)
设计出一种测试方法,以检验机器是否会思考,我们称它为
“图灵测试”。
图灵测试的设计思想如图1-4所示,它由有智能的被测试
者A、测试的机器B和测试者C三部分组成,他们被彼此隔离。
首先由测试者C提出有关智能测试的测试题,让被测试者A与
机器B分别回答;然后,由测试者C比较被测试者A和机器B的
回答,分辨哪个才是人类的问答,以判定机器的思考能力,即
其达到的智能水平。
图1-4 图灵测试示意图
3. 认知计算系统“沃森”(Watson)
认知计算系统“沃森”具备理解、学习和推理能力,可以实现智能人机交互,帮助人
们做出决策。
“沃森”被运用到许多领域。例
如,搭载“沃森”的机器人可以识别
文字、图像和语音,甚至还可以通过搭
载的“情感引擎”读取人内心的情感变
化,与人类正常沟通。在医学保健方
面,“沃森”可以协助医疗专家进行疾
病的诊断(如图1-5所示),帮助医生
了解和挖掘患者的详细病情,以便做出
最佳诊断并制订相关的治疗计划。“沃
森”在挑战极限、改变世界的同时也将
图1-5 人工智能辅助医学诊断
为社会带来一系列新的问题。一位研究
员称,“如果‘沃森’诊断出错,而医生又听从了错误的诊断,那么‘沃森’就会面临被
患者告上法庭的危险,这是一个需要考虑的应用问题”。
科学技术不断发展,人类对人工智能的幻想不断成为现实,人类社会也逐渐变得智能
化。试想一下,当机器智能发展到可以像人类一样思考时,世界将会是什么样子?这已经
不是单纯的技术问题了,而是涵盖了自然科学和社会科学领域的复杂问题。
项目实施
各小组根据项目选题及拟订的项目方案,结合本节所学知识,剖析自动翻译领域中的
人工智能。
1. 调查人工智能在自动翻译领域中的应用,并搜集典型案例,在小组中分享与讨论
自动翻译领域人工智能的主要特征。
2. 描述人工智能的概念与基本特征。
8 8
21Y3228.indd 8 2019/10/10 14:23:131.2 人工智能发展历程与趋势
1.2
人工智能发展历程与趋势
自古以来,人类就怀着一个美好的愿望——从自然
的束缚中解放自己,制造出可以代替人类承担某些工作
的智能体。在古代的中国,关于人工智能,有着各种各
样极富想象力的记载。传说,在远古时期的涿鹿之战
中,黄帝为对付蚩尤的雾阵,请风后发明了指南车——
无论车怎样前进、后退、转弯,木人的手一直牢牢地
指向南方。这可以算得上是机器人的雏形了。而《列
子·汤问》中记载的“偃师献技”(如图1-6所示),
更是将机器人的概念推到一个新的高度。这个用皮革、
木头、树脂等材料制作的歌舞艺人,不仅外貌与真人无
异,而且能歌善舞,这已经接近我们心目中对人工智能
的印象。
现代,人类有了更多的想象和向往,其中最典型的
就是各种各样的智能机器人,它们不但能够帮助人类进
图1-6 偃师献技
行生产劳作,还可以帮助人类料理日常家务等。这些都
反映了人们对人工智能的美好希冀。
1 . 2 . 1 人工智能的发展历程
人工智能始于20世纪50年代。在半个多世纪的发展历程中,由于受到智能算法、计
算速度、存储能力等多方面因素的影响,人工智能的发展历程经历了多次繁荣和低谷,
至今大致分为三个发展阶段,如图1-7所示。
1. 第一阶段(20世纪50年代至80年代)
这一阶段人工智能刚诞生,基于抽象数学推理的可编程数字计算机已经出现。符号
主义者认为人类的认知过程就是各种符号进行运算的过程,而计算机也应该基于各种符
号进行运算。在这一阶段,知识表示、知识推理、知识运用是人工智能的核心。尽管符
号主义得到快速发展,但是由于很多事物不能进行形式化表达,建立的模型存在一定的
局限性。此外,随着计算任务的复杂性不断加大,人工智能发展一度遇到瓶颈。
2. 第二阶段(20世纪80年代至90年代末)
在这一阶段,专家系统得到快速发展,在数学建模方面有重大突破。专家系统是一
个具有大量专门知识与经验的程序系统。它应用人工智能技术和计算机技术,根据某领
9 9
21Y3228.indd 9 2019/10/10 14:23:13第一章 人工智能概述
域的一个或多个专家提供的知识和经验,进行推理和判断,模拟人类专家的决策过程,
以便解决那些需要人类专家处理的复杂问题。但由于专家系统在知识获取、推理能力等
方面的不足,以及开发成本高等因素,人工智能的发展又一次进入低谷期。
3. 第三阶段(21世纪初至今)
随着大数据的积聚、理论算法的革新、计算能力的提升,人工智能能够训练出更加
智能化的算法模型。人工智能的发展模式也从过去追求“用计算机模拟人工智能”,逐
步转向机器与人结合而成的增强型混合智能系统,研究如何用机器、人、网络结合成新
的群智系统,以及用机器、人、网络和物结合成更加复杂的智能系统。人工智能在很多
应用领域取得了突破性进展,迎来了又一个繁荣时期。
图1-7 人工智能的发展历程
探究活动
调 查
任何新生事物的成长都不是一帆风顺的,人工智能也不例外。人工智能自萌芽以来,
10 10
21Y3228.indd 10 2019/10/10 14:23:151.2 人工智能发展历程与趋势
不断引起人们的争论,不同人工智能学派对人工智能的基本理论和研究方法有不同的见
解。以小组合作的形式,调查人工智能的主要学派,并填写表1-2。
表1-2 人工智能的主要学派
主要观点
取得的主要成就
符号主义
代表人物
局限性
主要观点
取得的主要成就
连接主义
代表人物
局限性
主要观点
取得的主要成就
行为主义
代表人物
局限性
主要观点
取得的主要成就
统计主义
代表人物
局限性
主要观点
取得的主要成就
仿真主义
代表人物
局限性
11 11
21Y3228.indd 11 2019/10/10 14:23:15第一章 人工智能概述
1 . 2 . 2 新一代人工智能的兴起
1.新一代人工智能的发展方向
21世纪,人工智能发展进入新阶段,特别是在移动互联网、大数据、超级计算、物联
网、虚拟现实、传感网、脑科学等新理论、新技术,以及经济社会发展强烈需求的共同驱
动下,人工智能加速发展,呈现出深度学习、跨界融合、人机协同、群智开放、自主操控
等新特征。新一代人工智能正向以下几个方面发展。
(1)大数据智能。
从人工知识表达技术到大数据驱动知识学习。大数据智能理论突破了无监督学习、综
合深度推理等难点,建立了由数据驱动,以自然语言理解为核心的认知计算模型,实现了
从大数据到知识、从知识到决策的功能发展。
(2)跨媒体智能。
从处理单一类型的数据到跨媒体认知、学习和推理。跨媒体智能主要研究超越人类视
觉能力的感知获取、面向真实世界的主动视觉感知及计算、自然声学场景的听觉感知及计
算、自然交互环境的言语感知及计算、面向异步序列的类人感知及计算、面向媒体智能感
知的自主学习和城市全维度智能感知推理引擎等领域。
(3)混合增强智能。
从追求机器智能到迈向人机混合的增强智能。机器智能和人类智能各有所长,因此需
要取长补短,融合多种智能模式的智能技术有广阔的应用前景。“人+机器”的组合将是
人工智能研究的主流方向,“人机共存”将是人类社会的新常态。
(4)群体智能。
从聚焦研究个体智能到基于互联网络的群体智能。群体智能主要研究群体智能结构理
论与组织方法、群体智能激励机制与涌现机理、群体智能学习理论与方法、群体智能通用
计算范式与模型等。
(5)自主无人系统。
从“人+智能”到自主智能系统。自主智能系统是一种人工系统,它不需要人为干
预,利用先进智能技术即可自动实现各种操作与管理。自主无人系统主要研究面向自主无
人系统的协同感知与交互、协同控制与优化决策、知识驱动的人、机、物三元协同与交互
操作等理论和方法。
(6)高级机器学习智能。
高级机器学习智能主要研究统计学习基础理论、不确定性推理与决策、分布式学习与
交互、隐私保护学习、少样本学习、深度强化学习、无监督学习、半监督学习和主动学习
等学习理论和高效模型。
(7)类脑智能。
类脑智能主要研究类脑感知、类脑学习、类脑记忆机制与计算融合、类脑复杂系统、
类脑控制等理论与方法。
(8)量子智能。
探索脑认知的量子模式与内在机制。量子智能主要研究高效的量子智能模型和算法、
高性能高比特的量子人工智能处理器、可与外界环境交互信息的实时量子人工智能系统等。
12 12
21Y3228.indd 12 2019/10/10 14:23:151.2 人工智能发展历程与趋势
2.新一代人工智能发展的战略目标
我国为实现新一代人工智能的发展战略目标将分三步走:
第一步,到2020年人工智能总体技术和应用与世界先进水平同步,人工智能产业成为
新的重要经济增长点,人工智能技术应用成为改善民生的新途径,有力支撑进入创新型国
家行列和实现全面建成小康社会的奋斗目标。
第二步,到2025年人工智能基础理论实现重大突破,部分技术与应用达到世界领先水
平,人工智能成为带动我国产业升级和经济转型的主要动力,智能社会建设取得积极进展。
第三步,到2030年人工智能理论、技术与应用总体达到世界领先水平,成为世界主要
人工智能创新中心,智能经济、智能社会取得明显成效,为跻身创新型国家前列和经济强
国奠定重要基础。
1 . 2 . 3 人工智能发展的研究趋势
推动人工智能技术革命的研究正在经历快速变革,各方面的研究共同掀起了人工智能
研究的热潮。主要研究趋势如下:
1.大规模的机器学习、深度学习与强化学习
(1)机器学习。
许多机器学习(Machine Learning)的基本问题(如有监督学习和无监督学习)都很好
理解。目前机器学习研究的一个重点是如何将现有的机器学习算法扩展到更加庞大和复杂
的数据集上。
(2)深度学习。
深度学习(Deep Learning)成功训练卷积神经网络的能力很大程度上促进了计算机视
觉领域的发展。深度学习在计算机视觉领域中已有一些比较成功的应用,包括目标识别、
视频标签、物体检测和物体跟踪等。深度学习也正在进军感知方面的其他领域,如音频、
语音和自然语言处理等。
(3)强化学习。
传统机器学习研究集中于模式挖掘,而强化学习(Reinforcement Learning)将研究重
点转移到决策上,强调在一系列的情境下,根据外部奖惩信号,通过多步恰当的决策来达
到一个目标,是一种序列多步决策技术。这种技术有助于人工智能在真实世界中进入更深
入的相关研究和实践领域。作为一种由经验驱动渐进决策过程的框架,强化学习已经存在
了几十年,但是该技术在实践中仍未取得巨大成功。然而,深度学习的出现为强化学习
提供了一次发展的契机。“阿尔法围棋”取得胜利的一个关键在于大量的强化学习。它
利用深度学习、强化学习与蒙特卡洛树搜索算法,有效锁定最有可能胜出的棋步,减少
搜寻的范围。
2.智能机器人
智能机器人(如图1-8所示)至少要具备三个要素:感觉要素、反应要素和思考要
素。目前在静态环境中机器人的导航问题在很大程度上已经得到解决,以后的研究方向是
1313
21Y3228.indd 13 2019/10/10 14:23:15第一章 人工智能概述
如何训练机器人与周围环境进行更
高层次的交互,即从周围环境中感
知、学习、判断和推理,实现环境
预测,并根据客观环境规划自己的
行为。
3.计算机视觉
计算机视觉(Computer Vision)
是目前机器感知中最活跃的领域之
一。随着深度学习的崛起,计算机
视觉在物体识别、图像问答、物体
检测和物体跟踪等方面的应用中均 图1-8 智能机器人
取得了较大的成功。特别是图形处理器(Graphics Processing Unit,简称GPU)大规模计算
能力的提升、可用大型数据集的建立和人工神经网络算法的改进使得计算机视觉系统迅猛
发展,甚至在图像识别挑战中超越了人类进行物体识别分类的能力。
4.自然语言处理
自然语言处理(Natural Language Processing,简称NLP)是机器感知的另一个比较活跃
的领域。借助移动互联网技术、机器学习领域深度学习技术的发展,以及大数据语料的积
累,自然语言处理技术取得了突飞猛进的进步。据统计,目前20%的移动查询是通过语音
实现的,神经网络机器翻译系统可以将翻译准确率提高到90%以上,证明了实时翻译的可
能性。自然语言处理技术研究现在已经逐步转向开发能够精准地理解用户的需求,可以与
用户进行对话式搜索与智能交互的系统。
5.分布式人工智能
20世纪80年代末,分布式人工智能(Distributed Artificial Intelligence,简称DAI)就是
人工智能活跃的研究分支之一。互联网大规模的发展促进了分布式人工智能的开发与应
用。分布式人工智能主要研究在逻辑上或物理上分散的智能系统如何并行地、相互协作地
进行问题求解。多智能体系统(Multi-Agent System,简称MAS)是分布式人工智能研究的
一个前沿领域。目前,多智能体系统的研究重点是如何协调多个行为实体的动作,从而协
同地完成大型且复杂的工作任务。
6.神经形态计算
传统计算机执行计算时,将存放信息和程序指令的内存与处理信息的处理器分离。随
着需要处理的信息量逐渐增多,信息处理复杂程度越来越高,人工智能研究者正在积极追
求能够提高硬件效率和计算系统稳健性的执行计算替代模型。由于深度神经网络在一系列
任务中的成功,神经形态计算(Neuromorphic Computing)受到研究者的关注。
目前这种“神经形态”的计算机尚未获得巨大成功,只是刚开始有望实现商业化。但
在不久的将来,神经形态计算可能会变得普遍。深度神经网络已经在应用架构方面实现了飞
跃,若这些网络可以在专门的神经形态硬件上被训练和执行,一个更大的飞跃即将到来。
14 14
21Y3228.indd 14 2019/10/10 14:23:161.2 人工智能发展历程与趋势
交 流
人工智能技术发展到现在,取得了一系列丰硕成果。调查人工智能在汉英自动翻译或
其他领域取得的相关应用成果实例,并填写表1-3,在小组内部围绕人工智能技术取得的
成果和发展趋势进行交流。
表1-3 人工智能技术成果和发展趋势
技术类型 代表性研究领域 取得成果 发展趋势
模式识别
拓 展
人工智能研究的三种途径
仅靠现阶段人工智能的技术和方法,还远远不能制造出具有智能的机器。下面我们用
一个简单的例子来说明,要使机器有智能,还需要解决的诸多问题。
如果我们想泡茶喝,那就要规划操作步骤:
烧开水→洗茶杯→放茶叶→泡茶
或:洗茶杯→烧开水→放茶叶→泡茶
这两种操作步骤,一般人会选哪一种呢?当然是前者。因为人的智能会为实现一个目
标制订规划,并选择最优的实现步骤。但是如果这个工作让只会做简单动作的机器人来做
的话,它可能会选择后者,甚至会不断地洗茶杯→放茶叶→洗茶杯→放茶叶……那样,我
们就有可能永远喝不到茶。这是因为现时机器人的智能还不能根据目标做出规划,并选择
最优的实现步骤去完成预定的工作。
可见,人工智能的研究任重而道远。科学家研究人工智能的途径有哪些呢?人工智能
是数学、计算机科学、自动化、生理学、心理学和哲学等相结合的学科。可以从不同的角
度去研究人工智能的问题,从技术上来说,主要有以下三种途径:
(1)以数理逻辑、计算机科学、心理学为基础,把人的智能表示为一种符号系统,
然后再用智能技术和方法,处理智能符号系统中的数据,得到结果。这种方法在博弈、语
言翻译、图像识别和专家系统等方面取得显著的应用成果。
(2)从仿生学、人脑神经生理学的角度去研究人工智能,基于人脑神经模型,研究
人工神经网络,用人工神经网络联结的过程模拟人的智能活动。这种方法通过训练神经网
络进行机器学习,使机器获取知识,在文字和声音识别等方面取得了显著的应用成果,并
在神经网络计算机研制方面取得了很大的进展。
1515
21Y3228.indd 15 2019/10/10 14:23:17第一章 人工智能概述
(3)以控制理论为基础,认为人的智能取决于感知和行动,在智能机器人的研究方
面取得了突出的应用成果。
以上三种途径,各有所长,共同促进了人工智能技术的发展。
项目实施
各小组根据项目选题及拟订的项目方案,结合本节所学知识,剖析人工智能的成果及
发展趋势。
1. 调查人工智能的主要学派,并填写表1-2。
2. 调查人工智能技术在汉英自动翻译或其他领域取得的成果实例,并填写表1-3。
3. 分析人工智能研究的发展趋势。
1.3
人工智能的应用
随着人工智能快速发展,人工智能技术和工具在制造、农业、金融、交通、安防、
医疗、教育等经济和社会领域发挥着重要作用。
1 . 3 . 1 人工智能在经济领域的应用
1. 智能制造
智能制造是基于新一代信息通信技术与先进制
造技术深度融合,贯穿设计、生产、管理、服务等
制造活动的各个环节,具有自感知、自学习、自决
策、自执行、自适应等功能的新型生产方式,如图
1-9所示。
智能制造主要包括三个方面:一是智能装备,
包括自动识别设备、人机交互系统、工业机器人和
数控机床等设备,涉及跨媒体分析推理、自然语言
处理、虚拟现实智能建模和自主无人系统等关键技
图1-9 智能制造
术。二是智能工厂,包括智能设计、智能生产、智
能管理和集成优化等内容,涉及跨媒体分析推理、大数据智能和机器学习等关键技术。三
是智能服务,包括大规模个性化定制、远程运维和预测性维护等服务模式,涉及跨媒体分
析推理、自然语言处理、大数据智能和高级机器学习等关键技术。
16 16
21Y3228.indd 16 2019/10/10 14:23:171.3 人工智能的应用
2. 智能农业
智能农业以互联网、云计算和物联网技术为基础,依托部署在农业生产现场的各种传
感节点和无线通信网络,运用人工智能技术实现农业生产环境的智能感知、智能预警、智
能决策、智能分析、灾变预警、远程控制和专家在线指导等功能,为农业生产提供精准化
种植、可视化管理和智能化决策。
人工智能技术在大中型农业种植基地、设施园艺、畜禽水产养殖和农产品物流等方面
均有应用。如在种植基地中布设各种类型的传感节点,监测环境温度和湿度、光照强度、
二氧化碳浓度等数据,通过低功耗自组织网络的无线通信技术实现传感器数据的无线传
输。然后把所有数据汇集到中心节点,通过无线网关与互联网或移动网络相连,实现农业
信息的多尺度(个域、视域、区域、地域)传输。用户通过手机或计算机可以实时掌握农
场的环境信息,系统根据环境参数诊断农作物生长状况和病虫害状况。若检测到环境参数
超标或不足,系统可远程对灌溉施肥等农业装备进行控制,实现农业生产的产前、产中、
产后的过程监控,进而达到农业生产集约、高产、优质、高效、生态、安全等可持续发展
的目标。
3. 智能金融
人工智能技术可以提高金融服务的质量,为授信、各类金融交易和金融分析提供决策
支持,还可用于风险防控和监督。人工智能技术的应用将大幅改变金融现有格局,使金融
服务更加个性化与智能化。
人工智能在金融领域的应用多种多样。如智能获取客户,依托大数据对金融用户进行
画像,通过需求响应模型,从而提升获客效率。身份识别,以人工智能为内核,通过人脸
识别、声纹识别、指静脉识别等生物识别手段,再加上各类票据、身份证、银行卡等证件
票据的识别技术手段,对用户身份进行验证,从而降低核验成本,提高安全性。大数据风
控,通过大数据、算力、算法的结合,搭建反欺诈、信用风险等模型,多维度控制金融机
构的信用风险和操作风险,避免资产损失。智能投资顾问,基于大数据和算法能力,对用
户与资产信息进行标签化,精准匹配用户与资产,提供投资建议。智能客服,基于自然语
言处理和语音识别技术,拓展客服领域的深度和广度,大幅降低服务成本,提升服务体
验。金融云,依托云计算能力,为金融机构提供更安全高效的全套金融解决方案。
4. 智能交通
智能交通系统是通信、信息和控制技术
在交通系统中集成应用的产物。智能交通借
助现代科技手段和设备,将各核心交通元素
联通,实现信息互通与共享,以及各交通元
素的彼此协调、优化配置和高效使用,形成
人、车和交通高效协同的环境,从而建立安
全、高效、便捷和低碳的交通模式。
如图1-10所示,通过交通信息采集系
统监测道路中的车辆数量、运动状态、行车
图1-10 人工智能采集道路信息
1717
21Y3228.indd 17 2019/10/10 14:23:17第一章 人工智能概述
速度等信息,经信息分析系统处理后生成实时路况信息。决策系统据此调整道路红绿灯时
长,调整可变车道或潮汐车道的通行方向等,同时通过信息发布系统将路况推送到导航软
件和广播中,让人们合理规划行驶路线。此外,通过电子不停车收费系统(Electronic Toll
Collection,简称ETC),可以实现过往车辆信息的自动采集、处理,对过往车辆收费和放
行,有效提高通行能力,简化收费管理。
1 . 3 . 2 人工智能在社会领域的应用
1. 智能安防
智能安防技术是一种利用人工智能
存储和分析视频、图像,从中识别安全
隐患并对其进行处理的技术。智能安防
与传统安防的最大区别在于智能化,传
统安防对人的依赖性比较强,用户面对
海量的视频数据,无法简单利用人海战
术进行检索和分析。采用人工智能专家
系统作为辅助手段,可以实时分析视频
内容,探测异常信息,进行风险预测。
从技术方面来讲,智能安防分析技术主
要集中于两大类:一类是采用画面分割
和前景提取等方法提取视频画面中的目
标进行检测,依照不同的规则来区分不
同的事件,从而实现不同的判断并产生 图1-11 人工智能分析地区人员聚集情况
相应的报警联动,如区域入侵分析、打
架检测、人员聚集分析(如图1-11所示)、交通事件检测等应用。另一类是利用模式识别
技术,对画面中特定的物体进行建模,并通过大量样本训练,从而达到对视频画面中的特
定物体进行识别,如车辆检测、人脸检测、人头检测(人流统计)等应用。
2. 智能医疗
智能医疗在辅助诊疗、疾病预
测、医学影像辅助诊断和药物开发等
方面均发挥了重要作用。在辅助诊疗
方面,人工智能技术可以有效提高医
护人员的工作效率,提升一线全科医
生的诊断治疗水平。如利用智能语音
技术可以实现电子病历的智能语音录
入;利用智能影像识别技术,可以实
现医学图像的自动读片(如图1-12所
图1-12 医学影像辅助诊断系统
18 18
21Y3228.indd 18 2019/10/10 14:23:181.3 人工智能的应用
示);利用智能技术和大数据平台,可以构建辅助诊疗系统。在疾病预测方面,人工智能
借助大数据技术可以进行疫情监测,及时有效地预测并防止疫情的进一步扩散和发展。以
流感为例,很多国家都有规定,当医生发现新型流感病例时需告知疾病控制与预防中心。
但由于人们可能患病不及时就医,而且信息传达回疾控中心也需要时间,新流感病例通告
往往会有一定的延迟,人工智能通过疫情监测能够有效缩短响应时间。在医学影像辅助诊
断方面,影像判读系统通过结合人工智能技术得到发展。早期的影像判读系统主要靠人手
工编写判定规则,存在耗时长、临床应用难度大等问题,从而未能得到广泛推广。人工智
能影像判读系统通过提取医学影像特征并进行分析,为患者预前和预后的诊断和治疗提供
评估方法和精准诊疗决策。
3. 智能教育
人工智能技术的发展使教育也将发生重大的结构性变革。智能教育通过广泛利用智能
设备、社会网络、传感器等,架构新型智能学习环境,从而支持情境觉知、学习过程记
录、学习数据分析、学习服务维护、学习诊断与评价等诸多重要功能。人工智能技术在教
育领域的应用场景主要有智能教育环境、智能学习过程支持、智能教育评价、智能教师助
理、教育智能管理与服务等。智能教育旨在促进学生充分利用智能设备无缝接入,自由订
制个性化服务,参与学习活动,从而培养具有良好价值取向、较高思维品质和较强思维能
力的人才。
探究活动
以小组合作的形式,讨论人工智能的应用领域,以及对社会未来发展的价值。
项目实施
各小组根据项目选题及拟订的项目方案,结合本节所学知识,调查人工智能的发展历
程,进一步完善该项目方案中的各项学习活动,并参照项目范例的样式,撰写相应的项目
成果报告。
成果交流
各小组运用数字化学习工具,将所完成的项目成果,在小组或班级上进行展示与
交流,共享创造、分享快乐。
活动评价
各小组根据项目选题、拟订的项目方案、实施情况以及所形成的项目成果,利用教科
书附录2的“项目活动评价表”,开展项目学习活动评价。
1919
21Y3228.indd 19 2019/10/10 14:23:18第一章 人工智能概述
本章扼要回顾
同学们通过本章学习,根据“人工智能概述”知识结构图,扼要回顾、总结、归纳学
过的内容,建立自己的知识结构体系。
回顾与总结
20 20
21Y3228.indd 20 2019/10/10 14:23:20本章学业评价
本章学业评价
同学们完成下列测试题(更多的测试题可以在教科书的配套学习资源包中查看),并
通过“本章扼要回顾”以及本章的项目活动评价,综合评价自己在信息技术知识与技能、
解决实际问题的过程与方法,以及相关情感态度与价值观的形成等方面,是否达到了本章
的学习目标。
1. 单选题
(1)人工智能是研究计算机模拟人的某些思维过程和智能行为(如学习、推理、思
考和规划等)的( )。
A.方式 B.学科 C.流派 D.能力
(2)借助传感器等器件,人工智能系统能( )外界环境,可以像人一样通过视
觉、听觉、嗅觉和触觉等接收来自环境的各种信息,让机器会看、会听、会说、会行动、
会思考和会学习。
A.判断 B.分析 C.感知 D.辨别
(3)推动人工智能技术革命的研究正在经历快速变革,各方面的研究共同掀起了人
工智能研究的热潮。主要的研究趋势有大规模的机器学习、( )与强化学习。
A. 自主学习 B. 深度学习 C. 网络学习 D. 探究学习
2. 思考题
自动语音翻译是人工智能应用的一个发展领域,根据自己的理解,说说自动语音翻译
需要用到哪些硬件设备和控制技术来实现。
3. 情境题
某同学暑假买了一台智能音箱,能够通过语音来指挥智能音箱点播歌曲、背诵诗词、
预报天气,还可以对智能家居设备进行控制,比如开合窗帘、调节空调温度、遥控电
视等。
简要说明智能音箱通过语音识别来实现人机交互的基本原理。
2121
21Y3228.indd 21 2019/10/10 14:23:20第二章 人工智能基础算法及应用
第二章
人工智能基础算法及应用
人工智能已经进入蓬勃发展的时期,智能网联汽车、智能服
务机器人、智能无人机、医学影像辅助诊断系统、视频图像身份
识别系统、智能语音交互系统、智能翻译系统和智能家居产品等
应用百花齐放,人工智能成为社会未来发展的重要方向。
本章将通过“剖析人工智能自动导航系统”项目,进行自
主、协作、探究学习,让同学们通过剖析具体案例,了解人工
智能的核心算法(如启发式搜索),熟悉智能技术应用的基本
过程和实现原理,知道特定领域人工智能应用系统的开发工具
和开发平台,通过具体案例了解这些工具的特点、应用模式及
局限性,从而将知识建构、技能培养与思维发展融入运用数字
化工具解决问题和完成任务的过程中,促进信息技术学科核心
素养达成,完成项目学习目标。
人工智能编程语言与开发平台
启发式搜索
自然语言处理
生物特征识别
22 22
21Y3228.indd 22 2019/10/10 14:23:21剖析汽车自动导航系统
剖析汽车自动导航系统
项目范例
情 境
在日常生活中,各类导航系统应用广泛。在导航系统标准中,路径规划模块为导航
或其他路径规划程序提供了路径计算、地图匹配和道路引导等功能,如图2-1所示。其中
路径计算基于道路网络图,寻找由起点
到目的地的最短路径。导航还是自动驾
驶汽车和自主移动机器人的关键技术。
自主移动机器人的导航就是让机器人可
以自动按照内部预设的信息,或者依据
传感器获取的外部环境信息进行路径规
划,从而得到一条适合机器人在对应环
境中移动的路径。
图2-1 路径规划示意图
主 题
剖析汽车自动导航系统
规 划
根据项目范例的主题,在小组中组织讨论,利用思维导图工具,制订项目范例的学习
规划,如图2-2所示。
图2-2 “剖析汽车自动导航系统”项目学习规划
2323
21Y3228.indd 23 2019/10/10 14:23:25第二章 人工智能基础算法及应用
探 究
根据项目学习规划的安排,通过调查、案例分析、文献阅读和网上资料搜索,开展
“剖析汽车自动导航系统”项目学习探究活动,如表2-1所示。
表2-1 “剖析汽车自动导航系统”项目学习探究活动
探究活动 学习内容 知识技能
汽车自动导航系统的组成。
知道特定领域人工智能应用
具体感知应用软件系
系统的开发工具和开发平台,
导航软件 统,分析系统构造,描 汽车自动导航智能分析的步骤。
通过具体案例了解这些工具的
述系统的基本功能。
特点、应用模式及局限性。
汽车自动导航智能分析的方法。
自动导航系统的数据来源。
数据分析 了解数据分析处理的 自动导航系统数据格式处理。 熟悉智能技术应用的基本过
处理 基本方式。 程和实现原理。
自动导航系统数据存储和运算
方法。
状态空间搜索问题求解。
知道搜索算法的基本
了解人工智能的核心算法
搜索算法 原理,描述算法总体 启发式搜索策略。
(如启发式搜索)。
思路。
A*算法。
实 施
实施项目学习各项探究活动,进一步剖析汽车自动导航系统。
成 果
在小组开展项目范例学习过程中,利用思维导图工具梳理小组成员在“头脑风暴”活
动中的观点,建立观点结构图,运用多媒体创作工具(如演示文稿、在线编辑工具等),
综合加工和表达,形成项目范例可视化学习成果,并通过各种分享平台发布,共享创造、
分享快乐。例如,运用在线编辑工具制作的“剖析汽车自动导航系统”可视化报告,可以
在教科书的配套学习资源包中查看,其目录截图如图2-3所示。
24 24
21Y3228.indd 24 2019/10/10 14:23:25剖析汽车自动导航系统
图2-3 “剖析汽车自动导航系统”可视化报告目录截图
评 价
根据教科书附录2的“项目活动评价表”,对项目范例的学习过程和学习成果在小组
或班级上进行交流,开展项目学习活动评价。
项目选题
同学们以3~6人组成一个小组,选择下面一个参考主题,或者自拟一个感兴趣的主
题,开展项目学习。
1.剖析船舶自动导航系统
2.剖析无人机自动导航系统
3.剖析扫地机器人自动导航系统
项目规划
各小组根据项目选题,参照项目范例的样式,利用思维导图工具,制订相应的项目
方案。
方案交流
各小组将完成的方案在全班进行展示交流,师生共同探讨、完善相应的项目方案。
2525
21Y3228.indd 25 2019/10/10 14:23:27第二章 人工智能基础算法及应用
2.1
人工智能编程语言与开发平台
汽车自动导航系统是一类典型的人工智能系统。它可以在限定的平面区域内,标识所
有道路并收集道路实时车辆行驶状况,在此基础上规划出从A地到B地的驾驶路线。要实
现汽车自动导航的路线规划,需要对道路网络和车辆行驶状况进行数据建模、确定搜索算
法和编写算法程序,以及进行一系列分析工作。而在这过程中需要用到基本的人工智能编
程语言。
人工智能编程语言是一类适用于人工智能和知识工程领域,具有符号处理和逻辑推理
能力的计算机程序设计语言。主要用于求解非数值计算、知识处理、推理、规划、决策等
需要智能解决的各种复杂问题。 一般来说,人工智能编程语言具有以下特点:
● 具有符号处理能力;
● 适合于结构化程序设计,编程便捷;
● 具有递归功能和回溯功能;
● 具有人机交互能力;
● 适合于推理。
2 . 1 . 1 常用人工智能编程语言
人工智能是一个广阔的领域,很多编程语言都可以用于人工智能开发。根据不同的情
况,开发人员可以选择不同的编程语言以提高效率、节省时间。
探究活动
典型的人工智能编程语言有Lisp、Prolog、C++、Java和Python等。调查常用人工智能
编程语言的优点与局限性,讨论不同语言的适用场景,并填写表2-2。
表2-2 人工智能编程语言调研
编程语言 优点 局限性 适用场景
C++
Python
26 26
21Y3228.indd 26 2019/10/10 14:23:272.1 人工智能编程语言与开发平台
1. Lisp
Lisp的名字源自“列表处理器”(List Processor),于1958年提出,是历史悠久且仍广
泛使用的高级编程语言。自第一台电子计算机问世以来,各类大、中、小、微型电子计算
机相继被研发出来,它们完成了大量繁重、重复的科学计算和管理工作,减轻了人类一部
分脑力劳动。与此同时,不少先驱者已经开始考虑用计算机来完成人类的智能活动,如语
言翻译、推理、决策和学习归纳等。作为最早期的高级编程语言之一,Lisp因其出色的原
型设计能力和对符号表达式的支持,再加上垃圾收集技术、动态类型、数据函数、统一的
语法、交互式环境和可扩展性等特性,非常适用于人工智能研究。
2. Prolog
Prolog(Programming in Logic)是一种基于谓词逻辑理论的逻辑编程语言。Prolog提供
模式匹配、自动回溯和基于树的数据结构化机制,还能与Lisp有效结合。Prolog的特性使得
实现事实(facts)和规则(rules)变得简单直接,因此被广泛应用于人工智能研究中,可
以用来建造专家系统、智能知识库以及理解自然语言等。
3. C/C++
C++是C的超集,在这里我们把它们归为一类。C/C++能够在硬件层面进行通信,是
执行速度最快的编程语言之一,适用于编写底层软件(如操作系统的核心部分或网络协
议)。出于同样的原因,它们也是执行机器学习底层算法的通用选项。C/C++还可用于构
建人工智能项目中的统计技术,如神经网络。通常游戏中的人工智能部分和搜索引擎也会
使用C/C++语言编写,以获得更快的响应速度。
4. Java
Java是一种面向对象的编程语言,能为人工智能项目开发提供所需的功能。Java提供
了内置的垃圾回收机制,其完善丰富的社区生态可以帮助开发人员随时随地查询问题的解
决思路和方法。算法是人工智能项目的灵魂,无论是搜索算法、自然语言处理算法还是神
经网络,Java都可以通过简单快速的编码实现。另外,Java的可移植性和扩展性也为人工
智能项目开发提供便利。
5. Python
Python是一种被广泛使用的面向对象的解释型高级通用编程语言,可以视为一种改
良的Lisp语言。作为一种解释型语言,Python的设计哲学强调代码的可读性和语法的简洁
性。相比于C++或Java,Python让开发者能够用更少的代码实现自己的想法。不管是小型还
是大型程序,该语言都试图让程序的结构清晰明了。Python拥有动态类型系统和垃圾回收
功能,能够自动管理内存使用,并且支持多种编程范式,包括面向对象、命令式、函数式
和过程式编程,且拥有一个巨大而广泛的标准库。
2 . 1 . 2 Python在人工智能中的运用
Python将许多高级编程语言的优点集于一身,兼顾了可读性和易用性,不仅可以像脚
本语言一样,用非常精练易读的代码,就可以完成使用C语言需要通过复杂编码才能完成
2727
21Y3228.indd 27 2019/10/10 14:23:27第二章 人工智能基础算法及应用
的程序任务,还具备面向对象编程等各式各样的强大功能。不同于C语言等编译型语言,
Python作为一门解释型语言,也非常便于调试代码。同时,Python免费使用和跨平台的特
性,也使这门编程语言吸引了越来越多开源库的贡献者和使用者。使用Python编程至少有
以下四项优势:
1. 方便调试的解释型语言
Python是一门解释型编程语言,源代码都要通过解释器(Interpreter)转换为独特的字
节码,这个过程不需要保证全部代码一次性通过编译。相反,Python解释器会逐行处理这
些代码,这样方便了程序调试,也特别适合于使用不同机器学习模型进行增量式开发。
2. 跨平台执行作业
通过在不同的平台安装用于运行上述字节码的虚拟机,Python便可以执行跨平台作
业。由于机器学习任务通常会在多种平台执行,因此以Python这类解释型语言作为编码媒
介不失为一种好的选择。
3. 丰富的应用程序编程接口
除了编程人员所使用的第三方程序库以外,许多著名公司用于科研和商业的云平
台都为互联网用户提供了支持机器学习功能的Python应用程序编程接口(Application
Programming Interface,简称API)。许多平台的机器学习功能模块不需要由用户来编写,
用户只需要像搭积木一样,通过Python语言并且遵照云平台的编写协议与规则,把各个模
块串接起来即可实现不同的功能。
4. 丰富完备的开源工具包
软件工程中有一个非常重要的理念,便是代码与程序的重复利用性。为了构建功能强
大的机器学习系统,如果没有特殊的开发需求,通常情况下,我们都不会从零开始编程。
比如,机器学习算法中经常会使用的向量计算,如果Python中没有直接提供用于向量计算
的工具,我们还需要自己花时间编写这样的基础功能吗?答案是否定的。Python自身免费
开源的特性使得大量专业的编程人员参与到Python第三方开源工具包(程序库)的构建
中。更为可喜的是,大多数的工具包都允许个人免费使用,乃至商用。这其中就包括便于
向量、矩阵和复杂科学计算的NumPy与SciPy,便于绘图的Matplotlib,包含大量经典机器学
习模型的Scikit-learn,对数据进行快捷分析与处理的Pandas,以及集成了上述所有第三方
程序库的综合实践平台Anaconda。
下面介绍几种常用的Python第三方开源工具包。
(1)NumPy与SciPy。
NumPy是最基础的Python工具包,除了提供高级数学运算机制以外,还具备非常高效
的向量和矩阵运算功能,这些功能对于机器学习的计算任务尤为重要。而NumPy更为突出
的是它内部独到的设计,使得矩阵和向量计算的处理效率比Python自带程序库的运行效率
高出许多。SciPy则是在NumPy的基础上构建的更为强大,应用领域也更为广泛的科学计算
包,SciPy需要依赖NumPy的支持运行。
(2)Matplotlib。
Matplotlib是Python编程环境下的开源2D绘图工具包,可以在跨平台的交互式环境中生
28 28
21Y3228.indd 28 2019/10/10 14:23:272.1 人工智能编程语言与开发平台
成出版质量级别的图形和图像。通过Matplotlib,开发者只需要几行代码,便能生成各种绘
图,如直方图、条形图和散点图等。
(3)Pandas。
Pandas是一款用于数据处理和分析的开源Python工具包,包含大量库和一些标准的数
据模型,提供了高效操作大型数据集所需的工具,便于进行数据读写、清洗、填充和分析
等操作。研发人员借助该工具包能节省大量用于数据预处理工作的代码,从而有更多精力
专注于具体的机器学习任务。
(4)Scikit-learn。
Scikit-learn是Python的一个开源机器学习工具包,它建立在NumPy、SciPy和Matplotlib
模块之上,能够为用户提供各种机器学习算法接口,可以让用户简单、高效地进行数据挖
掘和数据分析。这使它成为开发者经常使用的核心工具包。
(5)TensorFlow。
TensorFlow是一个采用数据流图(Data Flow Graphs)表示数值计算的开源工具包。图
中的节点(Nodes)表示数学操作,图中的线(Edges)表示在节点间相互联系的多维数据
数组,即张量(Tensor)。它灵活的架构使计算可以在多种平台上展开,例如台式计算机
中的一个或多个CPU(或GPU)、服务器和移动设备等。TensorFlow最初用于机器学习和
深度神经网络方面的研究,但这个系统的通用性使其也可被广泛用于其他计算领域。
(6)Anaconda。
Anaconda是Python的一个发行版本,是包含了Conda管理工具、虚拟环境(Environment)、
多个科学包(Packages)及其依赖项的管理系统,主要应用于数据科学与机器学习等相关
领域(如大规模数据处理、预测分析和科学计算等)。
2 . 1 . 3 典型人工智能开发平台
为了推进新一代人工智能发展规划和重大科技项目的组织实施,强化对人工智能研发
应用的基础支撑,形成促进人工智能软件、硬件和智能云之间相互协同的生态链,中华人
民共和国科学技术部秉承开放共享的创新理念,先后公布建设了多个“国家新一代人工智
能开放创新平台”。
1.自动驾驶国家新一代人工智能开放创新平台
未来,自动驾驶系统将依靠人工智能、视觉计算、雷达、监控装置和全球定位系统协
同合作,让计算机可以在没有任何人类主动的操作下,自动安全地操作机动车辆。
2.城市大脑国家新一代人工智能开放创新平台
城市大脑是人工智能公共系统的一种,可以对整个城市进行全局实时分析。例如,某
城市大脑接管了全市128个信号灯路口,试点区域通行时间平均减少15.3%,高架道路出行
时间平均节省4.6分钟。如图2-4所示,城市大脑通过大量数据的收集和分析,掌握城市运
行的规律,将更好地反哺城市发展和建设,使人们生活的方方面面更便捷。
2929
21Y3228.indd 29 2019/10/10 14:23:27第二章 人工智能基础算法及应用
图2-4 杭州城市数据大脑
3.医疗影像国家新一代人工智能开放创新平台
2017年8月,一款人工智能医学影像产品“觅影”发布。这是首款人工智能食管癌筛
查系统,检测准确率超过90%;在肺结节方面,“觅影”可以检测出3毫米及以上的微小结
节,检测准确率超过95%。人工智能医学影像技术以非侵入方式检测人体或人体某部分,
取得内部组织影像,以便更好地观察人体的健康状况,并进行进一步诊治。未来,“觅
影”将与医学院和医疗结构合作,助力更多病种检测。
4.智能语音国家新一代人工智能开放创新平台
现在我国人工智能语音识别的准确率已经达到95%,其中语音听写、合成、测评、翻
译、声纹识别等人工智能核心技术,促进了人工智能应用的落地,实现了人机对话交互等。
5.智能视觉国家新一代人工智能开放创新平台
人脸识别、图像识别、文字识别、图像与视频分析、图像与视频编辑等智能视觉技术
已广泛应用于安全防护、智慧城市、自动驾驶、遥感探测和工业生产等领域,给地区管理
和人们的生活带来便捷,如统计果实数量,分析农作物成长情况;探测地区人口密度,预
警踩踏事件发生的可能性;监测人员外貌与行为特征,捕捉罪犯行踪等。
随着人工智能技术的发展,越来越多的“国家新一代人工智能开放创新平台”相继投
入使用,对提升社会的创新力与生产力起着重要作用。
项目实施
各小组根据项目选题及拟订的项目方案,结合本节所学知识,剖析自动驾驶系统的
功能。
1. 分析自动导航系统的构造,描述其基本功能。
2. 在地图上人工规划一条从A地到B地的行驶线路。
3. 调查常用人工智能编程语言,并填写表2-2,了解人工智能开发平台。
30 30
21Y3228.indd 30 2019/10/10 14:23:272.2 启发式搜索
2.2
启发式搜索
启发式搜索(Heuristic Search)是人工智能领域解决问题常用的方法之一。基于已有
知识和经验,根据问题的实际情况,不断寻找可利用知识,从而构造一条效率最高的推理
路线,使问题得以解决的过程称为搜索。对于人工智能系统而言,问题的状态空间随搜索
的深入呈现指数或阶乘增长。为了准确地找出正确答案,启发式搜索将沿最有希望的路径
穿越状态空间来降低解决问题的复杂性;同时,把没有希望的状态及这些状态的后代排
除,这样便可以克服组合“爆炸”,找到可接受的解。
探究活动
讨 论
下面以如图2-5所示的简化地图为例,探讨导航问题
(真实的地图导航虽然更复杂,但两者基本原理一致)。
图中每一步都有上下左右四种可能的走法,所有可
能的走法所构成的路径全集组成了问题的状态空间,而
其中任意一条从起点到终点的通路就是问题的一个解,
没有通路就代表问题无解。启发式搜索在求解的过程
中,并非穷举上下左右四个方向盲目搜索,而是根据当
前位置与目标之间的一些相关信息(例如与终点的距离
图2-5 简化地图导航问题
等),优先选择最有希望的方向去搜索,如果路线不
通,再搜索其次有希望的方向,从而尽可能快地找到通路。
2 . 2 . 1 启发式搜索原理
由于求解条件的不确定性和不完备性,
求解问题的过程可能会有很多分支。我们把
每条可能的分支画成一幅图,这幅图表示的
就是问题的状态空间。问题的状态空间即问
题的解空间,或称其为“状态树”,如图
2-6所示。图中的节点S(i=1,2,3,…)
i
表示状态,状态之间的连接采用有向线段来
图2-6 问题的状态空间
表示状态之间的转换关系。
3131
21Y3228.indd 31 2019/10/10 14:23:29第二章 人工智能基础算法及应用
搜索即设法在庞大状态空间图中找到目标。启发式搜索又称为有信息搜索,它基于问
题的状态空间,利用问题的启发信息来引导搜索,达到减少搜索范围、降低问题复杂度的
目的。启发式搜索依据某种知识及信息的指导,通过逐一状态比较而找到符合规定条件的
目标状态解。
1. 状态空间搜索
状态空间搜索的问题求解过程表现为在状态空间中寻找从初始状态到目标状态的可行
路径。通俗地说,就是在求解问题时,找到解题的过程,最终得到问题的解答。常用的状
态空间搜索有广度优先和深度优先两种方法。广度优先是从初始状态一层一层向下找,直
到找到目标为止;深度优先是按照一定的顺序先查找完一个分支,再查找另一个分支,直
到找到目标为止。广度优先和深度优先搜索都有一个很大的缺陷,就是它们都是在一个给
定的状态空间中穷举。这在状态空间不大的情况下是合适的算法,可是当状态空间十分庞
大的情况下就不可取了,它们的效率实在太低,甚至不可完成。
2. 估价函数
启发式搜索在解决问题的过程中,由于只有有限的信息(比如当前状态的描述),要
想进一步预测搜索过程中状态空间的具体行为很难。因此,启发式搜索极易出错。通过启
发式搜索可能得到一个最优解,也可能一无所获。这是启发式搜索固有的局限性,且这种
局限性不能由所谓更好的启发式策略或更有效的搜索算法来消除。
一般来说,启发信息越强,扩展的无用节点就越少,就越可能大大降低搜索工作量,
但不能保证找到最佳路径。因此,在实际应用中,最好在引入降低搜索工作量的启发信息
的同时,不降低找到最佳路径的可能性。在启发式搜索中,用于评价状态空间节点x重要
性的函数称为估价函数,其一般形式为
f (x)=g (x) + h (x)
其中,g (x) 为从初始节点到节点 x 付出的实际代价,h (x) 为从节点 x 到目标节点的最优路
径的估计代价,也称为启发函数。
估价函数 f (x) 是根据具体问题的不同而人为设定的,设定的有效性会直接影响搜索算
法的效率。如图2-5所示的简化地图导航问题,可以把实际代价 g (x) 设定为已经走过的路
径长度,估计代价 h (x) 设定为当前位置与终点之间的直线距离,也可以设置权重等。
3. 启发函数
启发性信息主要包含在启发函数 h (x) 中,其形式要根据问题的特点来确定。虽然启发
式搜索有望很快到达目标节点,但需要花费一些时间来评价新生节点。因此,在启发式搜
索中,估价函数的定义十分重要。如定义不当,搜索算法不一定能找到问题的解,即使找
到解,也不一定是最优的。启发函数 h (x) 的启发性信息通俗地说就是在估计下一个节点的
值时的约束条件。约束条件的多少会影响计算的耗时与准确性。如果信息越多或约束条件
越多,则排除的节点就越多,计算准确度就越高;但同时,启发函数 h (x) 包含的信息越
多,它的计算量就越大,计算耗费的时间就越多。因此,适当地设定启发函数 h (x) 所包含
的信息量、平衡准确度与耗时的关系非常重要。
32 32
21Y3228.indd 32 2019/10/10 14:23:292.2 启发式搜索
分 析
根据如图2-5所示的简化地图,分析应如何设计估价函数。
2 . 2 . 2 启发式搜索的分类
在具体选取最佳搜索节点时,基于使用策略的不同,启发式搜索算法可以分为局部择
优搜索算法、最佳优先搜索算法和A*算法等。
1. 局部择优搜索算法
局部择优搜索算法又叫爬山法。在搜索的过程中扩展当前状态空间时,该算法将在选
取最佳子节点后,舍弃其他的兄弟节点和父节点,而一直搜索下去。这种搜索的局限性很
明显,由于舍弃了其他的节点,搜索结果可能把最好的节点都舍弃了,因此求解的“最佳
节点”只是该阶段的最佳,并不一定是全局的最佳。这种算法不保存任何历史记录,所以
它不具有从失败中恢复的能力。因此,局部择优搜索算法的主要问题在于容易陷入局部最
优值。
2. 最佳优先搜索算法
对比局部择优搜索算法,最佳优先搜索算法就智能多了,该算法在搜索时,不会舍弃
节点(除非该节点是死节点),在每一步的估价中,把当前节点和以前节点的估价值做比
较,从而得到“最佳节点”,这样可以有效地防止“最佳节点”丢失。最佳优先搜索算法
使用优先队列,使得算法可以从陷入局部优先等情况中恢复,从而使启发式搜索更加灵
活。最佳优先搜索算法使用列表来维护状态,用open列表来记录搜索的当前状态,用close
列表来记录已经访问过的状态。这种算法的创新之处是对open列表中的状态进行排序,排
序的依据是对状态与目标“接近程度”的启发性估计。最佳优先搜索算法总是选择最有希
望的状态做进一步扩展。由于它正在使用的启发信息可能被证明是错误的,所以它并不会
抛弃所有状态,而是把它们记录在open列表中。一旦发现启发信息将搜索引导到一条证明
不正确的路径,那么算法会从open列表中取出“次优先”的状态,从而把搜索的焦点转移
到状态空间的另一部分。
3. A*算法
A*算法是当今自动导航和游戏软件开发中十分常用的一种路径寻找算法,它可以保证
在任何起点和任何终点间找到最佳的路径。A*算法是人工智能在实际应用中的代表,是一
种典型的启发式搜索算法。
A*算法是一种在静态路网中求解最短路径的直接搜索方法,也是解决许多搜索问题的
有效算法。算法中的距离估算值 h (x) 与实际值越接近,最终搜索速度越快。保证找到最短
路径(最优解)条件的关键在于估价函数 f (x) 的选取[或者说 h (x) 的选取]。我们以 d (x)
表达状态 x 到目标状态的实际距离,那么 h (x) 的值大致有如下三种情况:
(1)若 h (x) < d (x),即估计距离小于实际距离,则搜索的节点数多,搜索范围大,
3333
21Y3228.indd 33 2019/10/10 14:23:29第二章 人工智能基础算法及应用
效率低,但保证能得到最优解。
(2)若 h (x) = d (x),即估计距离等于实际距离,则搜索将严格按照最短路径进行,
此时的搜索效率是最高的。
(3)若 h (x) > d (x),即估计距离大于实际距离,则搜索的节点数少,搜索范围小,
效率高,但不能保证得到最优解。
A*算法按 f (x) 递增的顺序来排列可能被扩展的节点,因而优先扩展 f (x) 值最小的节
点,体现了“最佳优先”的搜索思想,但只有当 h (x) ≤ d (x) 时,才能找到最优解。实践
证明,应用这样的估价函数是可以找到最短路径的。
体 验
试用A*算法解决如图2-5所示的简化地图导航问题。
估价函数 f (x) 的设定方法和算法的大致步骤如下:
(1)建立一个搜索队列Q,用来存放待搜索的点,以及该点的来路(即上一步是从哪
个点过来的)。队列Q的初始状态为空。
(2)当有新的点加入队列Q时,计算该点的估价函数 f (x),并且队列Q中所有的点按
照 f (x) 从小到大排列,f (x) 相同时按照先来后到的顺序排列。
(3)首先把导航的起点加入队列Q中,起点的来路为空。
(4)从队列Q中取出第一个点P(估价函数值最小的点),如果已经无点可取(队列
Q为空),则输出结果:“导航没有通路,算法结束”。否则继续下一步。
(5)如果点P就是终点,则已经找到一条通路,只要沿着点P的来路一个个点输出,
直至起点,就能输出这条通路,算法结束。否则继续下一步。
(6)把点P上下左右四个方向的邻接点依次取出,排除掉其中路不通的点,以及曾经
进入过队列Q的点,余下的点作为待搜索的点加入队列Q中[依照步骤(2)的方法]。
(7)重复步骤(4),直至算法在步骤(4)或步骤(5)处结束,或者队列Q满了,
无法继续搜索而结束。
启发式搜索的启发式信息通过设定估价函数 f (x) 来调整。特别地,如果设定 f (x) 等于
常数C,则A*算法退化成广度优先算法;如果设定 f (x) 值等于来路(上一点)的 f (x) 值的
常数C倍(080:
return '照片相似度:'+str(score)+',同一个人'
else:
return '照片相似度:'+str(score)+',不是同一个人'
if __name__ == '__main__':
print('输入第一张图片:')
file1 = raw_input( )
print('输入第二张图片:')
file2 = raw_input( )
print('开始对比……')
res = img('./img/'+file1,'./img/'+file2)
print(res)
人脸识别的核心功能由人工智能开放创新平台的底层程序实现。可以尝试自行修改
Python程序代码,观察运行结果的变化,了解程序运行的机制;或者改变人脸识别功能,
例如将程序变为从一批图片之中选取跟指定图片相似度最高的一张等。
44 44
21Y3228.indd 44 2019/10/10 14:23:372.4 生物特征识别
2 . 4 . 3 虹膜识别系统
人的眼球结构由角膜、巩膜、瞳孔、虹膜、晶状体、视网膜等部分组成。虹膜是位于
黑色瞳孔和白色巩膜之间的圆环状部分,包含很多相互交错的斑点、细丝、冠状、条纹和
隐窝等细节特征。如图2-13所示,虹膜识别系统基于眼睛中的虹膜进行身份识别,主要应
用于安防设备(如门禁、设备开关等),以及有高度保密需求的场所。
图2-13 虹膜识别系统
2 . 4 . 4 指静脉识别系统
指静脉识别是静脉识别技术的一种。如图2-14所示,通过近红外光线照射手指,利用
图像传感器获取个人手指静脉分布图,然后从手指静脉分布图提取特征值并存入计算机系
统,等待进行识别。
图2-14 指静脉识别系统
4545
21Y3228.indd 45 2019/10/10 14:23:39第二章 人工智能基础算法及应用
进行识别时,实时采集静脉图,提取特征值,运用滤波、图像二值化、细化等手段,
提取数字图像特征,然后和存储在主机中的手指静脉特征值比对,采用匹配算法对手指静
脉特征进行匹配,从而实现个人身份鉴定,确认身份。
同其他生物识别技术相比,指静脉认证技术具备以下主要优势:
(1)密码不会遗失、不会被窃,无记忆密码负担。
(2)指静脉特征是人体内部信息,不受表皮粗糙、外部环境(温度、湿度)的影响。
(3)适用人群广,准确率高,不可复制、不可伪造,安全便捷。
(4)安全等级高,有活体识别、内部特征和非接触式三个方面的特征,确保了使用
者的手指静脉特征很难被伪造。
项目实施
各小组根据项目选题及拟订的项目方案,结合本节所学知识,剖析人工智能自动导航
系统,进一步完善该项目方案中的各项学习活动,并参照项目范例的样式,撰写相应的项
目成果报告。
成果交流
各小组运用数字化学习工具,将所完成的项目成果,在小组或班级上进行展示与交
流,共享创造、分享快乐。
活动评价
各小组根据项目选题、拟订的项目方案、实施情况以及所形成的项目成果,根据教科
书附录2的“项目活动评价表”,开展项目学习活动评价。
46 46
21Y3228.indd 46 2019/10/10 14:23:39本章扼要回顾
本章扼要回顾
同学们通过本章学习,根据 “人工智能基础算法及应用”知识结构图,扼要回顾、
总结、归纳学过的内容,建立自己的知识结构体系。
回顾与总结
4747
21Y3228.indd 47 2019/10/10 14:23:42第二章 人工智能基础算法及应用
本章学业评价
同学们完成下列测试题(更多的测试题可以在教科书的配套学习资源包中查看),并
通过“本章扼要回顾”以及本章的项目活动评价,综合评价自己在信息技术知识与技能、
解决实际问题的过程与方法,以及相关情感态度与价值观的形成等方面,是否达到了本章
的学习目标。
1.单选题
(1)下列不属于常用人工智能编程语言的是( )。
A.C/C++ B.Python C.JavaScript D.Prolog
(2)自动导航系统需要用到的核心技术之一是( )。
A.逻辑推理 B.启发式搜索 C.分布式存储 D.数据加密
(3)以下人工智能技术水平尚未达到实用程度的是( )。
A.机器翻译 B.人脸识别 C.语音识别 D.股票分析
2.思考题
如何处理自然语言中带有潜在歧义的语句?
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(R)+ h(R)的设计如下:
g(R)等于从起点到点R所经过的路径长度,h(R)等于从R到终点的直线距离。那么,上述
搜索点P的四个邻接点的估价函数值分别是多少?程序会优先选择哪个点来搜索?
问题2:
将估价函数的设计改为:g(R)值权重降低,起点到点R的水平路径乘权值0.5,垂直路
径乘权值0.8;而 h(R)值计算点R到终点的直线距离时要先把垂直距离乘权值2.5。那么,
上述搜索点P的四个邻接点的估价函数值分别是多少?程序会优先选择其中哪个点来搜索?
48 48
21Y3228.indd 48 2019/10/10 14:23:442.4 生物特征识别
第三章
机器学习与人工智能的核心算法
算法是计算机科学领域最重要的基石之一。计算机语言和
开发平台日新月异,但万变不离其宗的是那些算法及其理论。
真正掌握计算机知识的人都在数学上有相当的造诣,他们既能
用科学家的严谨思维来求证猜想,也能用工程师的务实手段来
解决问题。这种思维和手段的最佳演绎就是“算法”。人工智
能编程语言和核心算法作为人工智能学习的基础内容,是深入
了解并进一步掌握人工智能的必备知识。
本章将通过“剖析人工智能分类系统”项目,进行自主、
协作、探究学习,让同学们通过剖析具体案例,了解人工智能
的核心算法(如贝叶斯分类器、聚类、决策树和人工神经网络
等),熟悉智能技术应用的基本过程和实现原理,从而将知识
建构、技能培养与思维发展融入运用数字化工具解决问题和完
成任务的过程中,促进信息技术学科核心素养达成,完成项目
学习目标。
机器学习概述
贝叶斯分类器
聚类
决策树
人工神经网络
4949
21Y3228.indd 49 2019/10/10 14:23:45第三章 机器学习与人工智能的核心算法
剖析垃圾邮件智能分类系统
项目范例
情 境
人们在饱受环境污染的痛苦之后逐渐形成一个共识:自然环境与人的生产生活和健康
幸福息息相关,“绿水青山就是金山银山”。然而,在网络时代,医药宣传、招生广告、
假证假发票等垃圾信息充斥于互联网。如图3-1所示,打开电子邮箱,一堆垃圾邮件扑面
而来,不慎点进去还可能使计算机中毒,甚至因为受骗而损失钱财。这是不少人都会遇到
的烦心事。网络空间是亿万民众共同的精神家园,网络空间天朗气清、生态良好,符合人
民利益。网络空间也要有“绿水青山”。
垃圾邮件通常定义为:未经用户请
求,强行发送到用户信箱中,可能带有
广告、宣传资料和病毒等内容的电子邮
件,一般具有批量发送的特征。垃圾
邮件可以分为良性和恶性。良性垃圾邮
件是指各种宣传广告、资料等对收件人
影响不大的信息邮件。恶性垃圾邮件是
指具有破坏性的电子邮件,例如计算机
病毒邮件,夸张不实,甚至包括色情内
容的广告,钓鱼网站等。垃圾邮件智能
分类系统利用人工智能技术,可以识别
接收到的邮件中哪些是对接收方完全没
有意义的邮件,并进行拦截、删除等操
作,从而有效过滤垃圾邮件,减少垃圾
图3-1 垃圾邮件
邮件对用户的干扰,改善用户体验。
主 题
剖析垃圾邮件智能分类系统
规 划
根据项目范例的主题,在小组中组织讨论,利用思维导图工具,制订项目范例的学习
规划,如图3-2所示。
50 50
21Y3228.indd 50 2019/10/10 14:23:47剖析垃圾邮件智能分类系统
图3-2 “剖析垃圾邮件智能分类系统”项目学习规划
探 究
根据项目学习规划的安排,通过调查、案例分析、文献阅读和网上资料搜索,开展
“剖析垃圾邮件智能分类系统”项目学习探究活动,如表3-1所示。
表3-1 “剖析垃圾邮件智能分类系统”项目学习探究活动
探究活动 学习内容 知识技能
了解垃圾邮件的影响。
了解垃圾
分析生活中的垃
邮件分类问 了解垃圾邮件处理的相关法律法规。
圾邮件分类问题。
题
了解垃圾邮件的技术处理方法。
熟悉智能技术应用的基本
过程和实现原理。
认识垃圾邮件智能分类系统的组成。
认识垃圾 认识垃圾邮件分
邮件智能分 类系统,了解分类 了解垃圾邮件智能分类的步骤。
类系统 原理。
了解垃圾邮件智能分类的方法。
5151
21Y3228.indd 51 2019/10/10 14:23:49第三章 机器学习与人工智能的核心算法
(续表)
探究活动 学习内容 知识技能
人工智能 认识朴素贝叶斯分类器。
体验利用人工智
算法在垃圾 了解人工智能的核心算
能算法进行垃圾邮 了解朴素贝叶斯分类器类型。
邮件分类中 法。
件分类。
的应用 体验朴素贝叶斯分类器的应用。
实 施
实施项目学习各项探究活动,进一步剖析垃圾邮件智能分类系统。
成 果
在小组开展项目范例学习过程中,利用思维导图工具梳理小组成员在“头脑风暴”活
动中的观点,建立观点结构图,运用多媒体创作工具(如演示文稿、在线编辑工具等)综
合加工和表达,形成项目范例可视化学习成果,并通过各种分享平台发布,共享创造、分
享快乐。例如,运用在线编辑工具制作的“剖析垃圾邮件智能分类系统”可视化报告,可
以在教科书的配套学习资源包中查看,其目录截图如图3-3所示。
图3-3 “剖析垃圾邮件智能分类系统”可视化报告目录截图
评 价
根据教科书附录2的“项目活动评价表”,对项目范例的学习过程和学习成果在小组
或班级上进行交流,开展项目学习活动评价。
52 52
21Y3228.indd 52 2019/10/10 14:23:513.1 机器学习概述
项目选题
同学们以3~6人组成一个小组,选择下面一个参考主题,或者自拟一个感兴趣的主
题,开展项目学习。
1. 剖析垃圾短信智能分类系统
2. 剖析鸢尾花智能分类系统
3. 剖析手写数字智能识别分类系统
项目规划
各小组根据项目选题,参照项目范例的样式,利用思维导图工具,制订相应的项目
方案。
方案交流
各小组将完成的方案在全班进行展示交流,师生共同探讨、完善相应的项目方案。
3.1
机器学习概述
机器学习是一门多领域交叉学科,涉及概率论、统计学、逼近论和算法复杂度理论等
多门学科。机器学习专门研究如何让计算机模拟或实现人类的学习行为,以获取新的知识
或技能,并且重新组织已有的知识结构,使之不断改善自身的性能。更为严格的说法是,
机器学习是一门研究机器获取新知识和新技能,并识别现有知识的学问。这里所说的“机
器”,指的是计算机,如电子计算机、中子计算机、光子计算机或神经计算机等。机器学
习是人工智能的核心,是使计算机具有智能的根本途径,其应用遍及人工智能的各个领
域,主要使用归纳、综合而不是演绎的方法实现功能。
探究活动
思 考
机器的能力能否超越人类?
5353
21Y3228.indd 53 2019/10/10 14:23:51第三章 机器学习与人工智能的核心算法
持否定意见的一方的一个主要论据是:机器是人造的,其性能和动作完全是由设计者
规定的,因此无论如何其能力也不会超过设计者本人。这种意见对不具备学习能力的机器
来说是对的,可是对具备学习能力的机器来说就值得商榷了,因为这种机器的能力在应用
中能不断提高,一段时间之后,连设计者本人也不知它的能力到了什么水平。
机器学习广泛应用于多个领域,如数据挖掘、计算机视觉、自然语言处理、生物特征
识别、搜索引擎、医学诊断、信用卡欺诈检测、证券市场分析、DNA测序、语音和手写
识别、战略游戏和机器人运用等。
3 . 1 . 1 机器学习的基本原理
讨 论
机器能否像人类一样具有学习能力呢?1959年,某科学家设计了一个西洋跳棋程序,
这个程序具有学习能力,可以在不断的对弈中提高自己的棋艺。1962年,这个程序战胜了
职业选手,向人们展示了机器学习的能力,引出了许多令人深思的社会问题与哲学问题。
从广义上来说,机器学习是一种能够赋予计算机学习能力,并以此完成直接编程无法
完成的功能的科学。
从实践的意义上来说,机器学习是利用数据训练模型,然后使用模型进行预测的一种
方法。
在上述语义层次探讨的基础上,我们对机器学习给出如下语法定义:
对于某类任务 T(Tasks)和性能指标 P(Performance),如果一个计算机程序在任务
T 中以 P 衡量的性能随着经验 E(Experience) 自我完善,那么就称这个计算机程序在从
经验 E 中学习。
通常,为了很好地定义一个学习问题,我们必须明确以下三个要素:任务T,任务性
能指标P,经验来源E。
以垃圾邮件分类系统为例,机器学习的三个要素如下:
(1)任务(T):区分正常邮件与垃圾邮件。
(2)性能指标(P):成功过滤垃圾邮件的百分比。
(3)经验(E):“阅读”现有的邮件内容。
以“阿尔法围棋”为例,机器学习的三个要素如下:
(1)任务(T):确定当前局面下一步的落子位置。
(2)性能指标(P):落子后击败对手的概率。
(3)经验(E):与自己进行对弈。
机器学习的基本思路如图3-4所示,以现有的或部分数据(训练集)为学习素材(输
入),通过特定的学习方法(机器学习算法),让机器学习(输出),使其能够满足现实
54 54
21Y3228.indd 54 2019/10/10 14:23:513.1 机器学习概述
需求(解决现实问题),或具有处理未来的或全部数据的新能力(获得目标函数)。
图3-4 机器学习的基本思路
以垃圾邮件的检测为例,垃圾邮件检测是指计算机能够根据邮件特征,判断其为垃圾
邮件还是正常邮件。在人工智能技术发展的初期,人们尝试通过人工编写规则来解决许多
问题。例如,在垃圾邮件的检测中,当邮件中出现事先指定的一些可能属于垃圾邮件的词
语时,这封邮件很可能就是垃圾邮件。同时,当邮件里出现网址时,它也很可能是垃圾邮
件。这些规则在一定程度上对垃圾邮件的检测起到了作用,但是随着规则越来越多,这样
的检测系统也变得越来越复杂。这时候,人们发现解决这种问题的根本途径是如何自动地
从数据的某些特征中学习它们之间的关系,并且随着对数据的不断学习,提升垃圾邮件检
测的性能。
机器学习是从数据中提取和学习有用的信息,不断提升机器性能的一种方法。那么,
对于一个具体的机器学习问题,数据的收集是很重要的一部分,我们称这部分数据为训练
数据。机器学习的基本工作是从这些数据中学习规则,利用学习到的规则来对新的数据做
出预测。
总之,与其他人工智能技术不同的是,机器学习中的“智能”并不是通过程序“预定
义”的,而是计算机系统根据机器学习算法通过自主学习,从“经验”中得到的。
机器学习的理论基础涉及多个学科领域,包括人工智能、统计学、信息论、概率论、
计算复杂性理论、心理学和神经生物学等。
3 . 1 . 2 机器学习算法的主要类型
调 查
通过网络资料搜索,调查机器学习算法的应用领域,以及在不同的应用情境下,机器
学习算法分别有什么特点。
5555
21Y3228.indd 55 2019/10/10 14:23:53第三章 机器学习与人工智能的核心算法
机器学习随着研究的不断深入,产生了很多适用于不同情况的算法。主要的机器学习
算法类型有:
1. 监督学习
监督学习是常见的机器学习方法。在监督学习中,训练数据由一组训练实例组成。每
一实例都是由一个输入对象(通常是一个向量)和一个期望的输出值(也被称为监督信
号)组成。
机器进行学习时,用已知某种或某些特性的样本作为训练集,以建立一个数学模型
(如模式识别中的判别模型),再用已建立的模型来预测未知样本。
监督学习算法主要用来解决两类任务:分类(对实例数据预测合适的类别,如应用分
类器对邮件是否包含垃圾信息进行分类)和回归(对实例数据预测具体的数值,如应用决
策树对房屋的价格进行预测)。
2. 无监督学习
无监督学习,顾名思义,就是不受监督的学习,一种自由的学习方式。例如,应用
聚类算法的学习方式就不需要先验知识进行指导,而是不断地自我认知,自我巩固,最
后进行自我归纳。在机器学习中,无监督学习可以被简单理解为不为训练集提供对应的
类别标签。
3. 半监督学习
与监督学习和无监督学习不同,半监督学习综合了监督学习和无监督学习的特征。它
主要考虑如何利用少量有标签的样本和大量没有标签的样本进行学习和预测。单独使用有
标签的样本,能够生成监督分类算法;单独使用无标签样本,能够生成无监督聚类算法。
一般而言,半监督学习通过在监督分类算法中加入无标签样本来实现半监督分类,或者是
在无标签样本中加入有标签样本,增强无监督聚类的效果。
4. 强化学习
强化学习是机器学习的一个重要分支,是多学科多领域交叉的产物。它的目的是解决
自动决策的问题,并且可以做连续决策。它主要包含四个元素:agent,环境状态,行动和
奖励。所谓强化学习,就是智能系统从环境到行为映射的学习,从而使奖励信号(强化信
号)函数值最大。强化学习不同于监督学习,强化学习中由环境提供的强化信号对产生动
作的好坏做评价(通常为标量信号),而不是告诉强化学习系统如何去产生正确的动作。
由于外部环境提供的信息很少,强化学习系统必须靠自身的经历进行学习。通过这种方
式,强化学习系统在行动—评价的环境中获得知识,改进行动方案以适应环境。强化学习
通常应用在机器人技术上。机器人中的强化学习算法是通过感知机器人当前的环境状态,
训练机器人做出各种特定行为。机器人在训练过程中不断尝试,错了就扣分,对了就奖
励,由此训练得到在各个环境状态下最好的决策。即机器人从以往的行动经验中得到提升
并最终找到最好的知识内容来帮助它做出最有效的行为决策。
在实际应用中,环境、知识库和执行部分决定了机器学习具体的工作内容。系统的学
习部分所需要解决的问题完全由上述三部分确定。环境向学习部分提供信息,学习部分利
56 56
22Y3228内文.indd 56 2020/11/3 17:42:373.2 贝叶斯分类器
用这些信息修改知识库,以增进系统执行部分完成任务的效能,执行部分根据知识库完成
任务的同时,把获得的信息反馈给学习部分。
项目实施
各小组根据项目选题及拟订的项目方案,结合本节所学知识,对机器学习进行剖析。
1. 结合案例,分析机器学习的原理。
2. 结合案例,讨论机器学习对社会的正面和负面影响。
3.2
贝叶斯分类器
人工智能领域的很多问题都属于如何让计算机学会对样本进行分类的问题。而机器学
习中的许多分类算法都可以用来构造分类器,常用的有朴素贝叶斯、决策树、随机森林、
逻辑回归、支持向量机和神经网络等。不过分类器有时候也会给出错误的结果,这时候就
可以要求分类器给出一个最优的类别猜测结果,同时给出这个猜测的概率估计值。概率论
是许多机器学习算法的基础,因此深刻理解概率论十分重要。
本节将从最简单的概率分类器开始,通过一些案例来学习构造朴素贝叶斯分类器
(Naive Bayes Classifier)。之所以称之为“朴素”,是因为整个形式化过程中只有最原
始、最简单的假设。我们还将充分利用Python的文本处理能力,构建一个垃圾邮件分类
器,观察该分类器在真实的垃圾邮件数据集中的过滤效果。
3 . 2 . 1 朴素贝叶斯分类器
在概率统计理论中,条件概率是指事件A在另外一个事件B已经发生的条件下的发生概
率。表示为 ,读作“在B的条件下A发生的概率”。
贝叶斯(T. Bayes,约1702—1761),提出了下面的条件概率公式——贝叶斯公式:
其中,P( AB )代表A和B同时发生的概率,P(B)代表B发生的概率, 代表在B发生的
情况下A发生的概率。
5757
21Y3228.indd 57 2019/10/10 14:23:53第三章 机器学习与人工智能的核心算法
探究活动
观 察
在现实生活中,我们经常要根据观测到的现象(特征数据)推测现象背后的原因。例
如,我们看到草地湿了,需要判断是不是下雨导致的;今天股市的交易量大涨,需要判断
是有新资金入场,还是存量资金博弈了一把;去医院体检,检查结果为阳性,是因为真的
患病,还是因为医院误诊;邮箱收到一封电子邮件,这封邮件是广告公司投放的垃圾邮
件,还是从朋友那里发来的重要信件……朴素贝叶斯分类器可以利用历史数据的分布,推
测一个最有可能的结果,使犯错误的概率最小化。
调 查
以小组合作的形式,完成下述调查任务,并分小组进行汇报。
(1)调查日常生活中的哪些情境可以使用朴素贝叶斯的思想来做选择判断。
(2)通过网络搜索和文献查找的方式,了解朴素贝叶斯分类器的原理以及朴素贝叶
斯在人工智能领域的典型应用案例。
下面我们通过一个例子来理解贝叶斯定理。某种疾病,年轻人得病的概率远远小于
年长者。如图3-5所示,列举了各种不同的得病情况,箭头附近的数字表示各种情况的概
率。例如,没患病检查结果却为阳性(误诊了)的概率是1%,没患病而且检查结果为阴
性的概率是99%。如果一个年轻人去医院体检,体检结果为阳性,那么这个人到底是真患
病还是被误诊呢?
图3-5 疾病诊断情况示意图
有的人可能会说,既然检查结果为阳性的人99%的概率会被确诊患病,得病的概率至
少比没病的概率要高吧?然而,如果一个年轻人的检查结果为阳性,真正得病的概率其实
比没病的概率还要低。
58 58
21Y3228.indd 58 2019/10/10 14:23:543.2 贝叶斯分类器
现在我们来分析一下,假设人群中有20 000人,按照如图3-5所示的患病概率,约
18 000人是正常的,约2000人患此病;在18 000个健康人中,年轻人的概率为95%,检查
结果为阳性的概率为1%,那么同时满足“年轻人”“检查结果为阳性”“无此病”的人
数为18 000×95%×1%=171(人);在2000个病人中,年轻人的概率是5%,检查结果为
阳性的概率是99%。那么同时满足“年轻人”“患此病”“检查结果为阳性”的人数为
2000×5%×99%=99(人)。如果我们现在只知道这个人是年轻人,而且检查结果呈阳
性,那么他有可能是本身真的患病并且被检查出来的人,也有可能是误诊了的人。患病概
率为 %。误诊概率为 。显然,我们有更大的可能性相信他
没有患病(所以现实生活中,医生会让我们多复诊几次)。
上述分析过程分别用到了特征条件独立假设、贝叶斯定理、后验概率最大化这几个知
识点。
1. 特征条件独立假设
我们的目的是通过“目前已知的数据”判断未知的结果。这个“目前已知的数据”被
称为特征。在本节例子中,特征就是这个人“是否年轻”以及“检查结果是否为阳性”。
这里我们要做一个重要的假设:在判断这个人有没有患病的时候,我们认为上述两个
特征之间是独立的,即这个人“是否年轻”和“检查结果是否为阳性”之间没有联系。因
此,随机抽取一个检查者,他“年轻”并且“检查结果为阳性”的概率就等于“年轻”的
概率乘“检查结果为阳性”的概率。
上面这个假设就是条件独立假设。如果变量不满足独立性,则不可以将两者的概率相
乘,比如“天空有云”的概率是0.5,“下雨”的概率是0.33,但“下雨”不能独立于“天
空中有没有云”而存在,就不能得到“既有云又下雨”的概率为0.5×0.33这个结论。
2. 贝叶斯定理
贝叶斯定理主要用于在给定特征数据的情况下,判定样本属于某个类别的概率。在下
面的公式中,样本的数据用 X = x 表示,样本的类别属于某个类别用 Y = c 表示。
k
在本节例子中,检查结果呈阳性的年轻人患病的概率:
其中,A为真实得病的人中“检查为阳性”并且“年轻”的人数,B为人群中所有“检查结
果为阳性”并且“年轻”的人数。这个公式就是贝叶斯定理的公式。
3. 后验概率最大化
已知一个“年轻”人的“检查结果为阳性”,那么他有没有患病呢?我们只需要用贝
叶斯公式计算,看看这个“年轻”并且“检查结果为阳性”的人到底是得病的概率更高,
还是没得病的概率更高。这个就是后验概率最大化的直观解释。在本节的例子中,我们可
5959
21Y3228.indd 59 2019/10/10 14:23:54第三章 机器学习与人工智能的核心算法
以得出结论,检查结果为阳性也不意味着年轻人就得病了,但是为了保险起见,需要后续
跟进复查或者分析有无其他症状特征。
3 . 2 . 2 朴素贝叶斯分类器的类型
在使用朴素贝叶斯分类器进行条件概率估计的时候,我们需要知道独立事件的先验概
率。比如本节的例子直接告诉我们“人群中90%的人都无此病”这一先验概率。但我们在
分析其他事件的时候,可能会面临不同的特征(独立事件)分布。例如投掷一枚骰子,我
们会假设任意一个点数朝上这一事件是一个等概率模型,于是
任意一个点数朝上的先验概率=
特征分布的假设被称为朴素贝叶斯分类器的事件模型。下面我们了解一些常用的事件
建模方法。对于文档分类(包括垃圾邮件过滤)这样的离散特征建模,多项式模型和伯努
利模型很常用。
1. 高斯模型
在处理实际数值这样的连续型变量时,通常会假设这些连续数值服从高斯分布。这
时,只需要估计训练数据的平均值和标准差。
假设训练集包含一个连续型的属性 x,我们首先根据类别对数据进行分段,然后计算
每个类别中 x 的均值和方差。设 为 x 中与类别 c 相关联值的均值, 为 x 中与类别 c 相
关联值的方差。假设我们已经收集了一些观测值 v ,那么根据高斯分布公式,v 中类别 c
的概率分布
e
2. 多项式模型
在多项式模型中,样本(特征向量)表示特定事件发生的次数。这一模型通常用于文
本分类,特征是单词,值是单词的出现次数。用 p 表示事件 i 发生的概率,其中 x 表示事
ci i
件 i 在特定的对象中被观察到的次数,于是概率分布
3. 伯努利模型
在伯努利模型中,每个特征的取值是布尔型的,即true和false,或者1和0。和多项式
模型一样,这个模型在文本分类中也非常流行,就是看某个特征有没有在文档中出现。如
果 x 表示第 i 个词汇有没有出现在文档中,那么这篇文档属于类别 c 的可能性
i
其中,p 表示类别为 c 的文档中出现词汇 x 的概率。这个模型通常用于短文本分类。
ci i
60 60
21Y3228.indd 60 2019/10/10 14:23:543.2 贝叶斯分类器
3 . 2 . 3 朴素贝叶斯分类器的应用
朴素贝叶斯分类器有许多有意思的应用。例如在线社区的留言板中,为了不影响社区
的发展,屏蔽侮辱性的言论是很有必要的。如果某条留言使用了负面或侮辱性的语言,该
留言将被标识为内容不当。因此,利用朴素贝叶斯分类器构建一个快速过滤器来过滤这类
内容,是一个很常见的需求。
信息时代,我们每天会面对大量信息,如果不根据重要性设定优先级分别处理,我们
将会耗费大量精力,因此对垃圾邮件或垃圾短信进行智能过滤非常重要。下面我们将利用
朴素贝叶斯分类器,用Python构建一个垃圾邮件过滤器。
构建机器学习模型首先得有足够的样本数据进行训练,我们利用网络上开源的中文邮
件数据集,提取其中的5000封正常邮件和5000封垃圾邮件进行训练。通过解析所有邮件,
提取并计算每个词语在正常邮件和垃圾邮件中的出现频率,基于贝叶斯原理推断这封邮件
是否需要过滤。
正常邮件示例:
发信人: pbdq (dp),信区: LostFound
标 题: [报失]IC卡
请尽可能详细地描述您丢失物品的特征:IC卡。
姓名:丁强,学号:2018210502。
您丢失该物品大致的时间是?8月24日上午9时左右。您丢失该物品大致的地点
是?清华大学校医院体检处。如果有人拾获,如何和您联系?电话:62779634。
[补充]表达一下您焦急的心情或感谢的方式^_^祝您好运: 谢谢!
垃圾邮件示例:
有情之人,天天是节。一句寒暖,一线相喧;一句叮咛,一笺相传;一份相思,
一心相盼;一份爱意,一生相恋。
×××在此祝大家七夕情人快乐! ×××友情提示:2018年七夕情人节——8月17
日,别忘了给她(他)送祝福哦!
为了更好地体验邮件收发过程,我们可以利用TCP通信简单模拟邮件传输协议,用客
户端向服务器端通信的过程模拟邮件发送的过程,用服务器端接收消息的过程模拟邮件收
信的过程。所以朴素贝叶斯分类器会在服务器端运行。
6161
21Y3228.indd 61 2019/10/10 14:23:54第三章 机器学习与人工智能的核心算法
实 践
打开并运行server.py程序,建立TCP通信服务器端,模拟邮件的接收。其中垃圾邮件
分类器建立的关键过程如下:
(1)训练分类器前,要先将邮件中的句子分成一个个词汇,jieba模块为我们提供了
方便的汉语分词功能。
import jieba
res = list(set(list(jieba.cut(email))))
wordlist[dirt].extend(res)
(2)使用collections统计模块分别计算正常(normal)邮件和垃圾(trash)邮件中某
词占邮件总词汇数的比例,计算该词的 ,也就是在该词影响下,该邮件是垃圾邮
件的概率
当收到一封未知邮件时,在不确定的前提下,我们假定它是垃圾邮件和正常邮件的概
率各为50%,即P ( s ) = P ( n ) = 50%。
# 导入sklearn模块的朴素贝叶斯分类器高斯模型GaussianNB
from sklearn.naive_bayes import GaussianNB
# 创建分类器
clf = GaussianNB( )
# 训练分类器
X=features_train
Y=labels_train
clf.fit(X,Y)
(3)提取该邮件中出现概率 最高的15个词,联合概率
设定阈值P>0.9为垃圾邮件,P<0.9为正常邮件。
62 62
21Y3228.indd 62 2019/10/10 14:23:553.3 聚类
# 用训练好的分类器去预测测试集的标签值
pred =clf.predict(features_test)
typ = ' '
if pred > 0.9:
typ = 'trash'
else:
typ = 'normal'
实验结果表明,朴素贝叶斯垃圾邮件分类器在该数据集上达到了近96%的准确率。但
即使这样,垃圾邮件分类器还可能将正常的邮件当作垃圾邮件过滤掉。通过继续调整模型
的参数,垃圾邮件分类器还可以达到更好的效果。
为了测试垃圾邮件分类器能否工作,运行client.py程序,建立与服务器端的连接后,
发送想要传输的内容,看看服务器端收到消息后会给出什么样的判断。
项目实施
各小组根据项目选题及拟订的项目方案,结合本节所学知识,剖析贝叶斯分类器算法。
1. 运行配套学习资源包中的程序,体验朴素贝叶斯分类器的应用。
2. 运行配套学习资源包中的程序,调整朴素贝叶斯垃圾邮件分类器的参数,提高垃
圾邮件分类能力。
3.3
聚类
聚类就是一种寻找数据之间内在结构的技术。聚类把全体数据实例组织成一些相似
组,这些相似组被称作“簇”。簇内的对象之间越相似,不同簇间对象差别越大,聚类效
果越好。聚类通常又被称为无监督学习,与监督学习不同,聚类没有表示数据类别的分类
或者分组信息。
在商业上,聚类分析常被用来发现不同的客户群,并且通过客户的购买模式刻画不同
客户群的特征。聚类分析是细分市场的有效工具。同时聚类也可用于研究消费者行为,寻
找新的潜在市场,进行多元分析的预处理。在生物学上,聚类分析常被用来进行动植物分
类和基因分类,认识种群固有结构。在保险行业,聚类分析通过平均消费来进行汽车保险
单的持有者分组,同时根据住宅类型、价值、地理位置等特征来进行一个城市的房产分
6363
21Y3228.indd 63 2019/10/10 14:23:55第三章 机器学习与人工智能的核心算法
组。在互联网应用上,聚类分析常被用来进行文档归类以修复信息。在电子商务领域,聚
类分析在网站建设的数据挖掘中产生了重要作用,通过聚类具有相似浏览行为的客户和分析
客户的共同特征,可以更好地帮助电子商务的商家了解自己的客户,从而向客户提供更合适
的服务。
3 . 3 . 1 系统聚类算法
探究活动
调 查
围绕以下问题,展开调查,分小组进行汇报。
(1)调查在日常生活中的哪些情境下,可以使用聚类分析的思维解决问题。
(2)通过网络搜索和文献查找的方式,了解聚类算法的基本原理,搜集聚类算法在
人工智能领域的典型应用案例。
聚类是最常用的数据分析技术之一。与其相关的各种算法的提出、发展和演化,使得
聚类算法家族“人丁兴旺”。聚类算法很难简单地进行分类,因为这些类别可能相互重
叠,有的算法甚至具有几种类别的特点。一般而言,主要的基本聚类算法可以划分为如下
几类:
1. 划分方法
大部分划分方法(Partitioning Methods)通过度量数据之间的距离进行聚类。该方法根
据需要划分的簇数k,先创建一个初始划分,然后采用迭代计算,把对象从一个簇移动到
另一个簇来改进划分。好的划分准则是:同一个簇中的对象尽可能相互“接近”或相似,
不同簇中的对象尽可能“远离”或不同。为了达到全局最优,基于划分的聚类可能需要穷
举所有的划分,计算量极大。实际上,大多数划分方法的实现都采用了启发式方法,如
K-Means和K-Medoids算法,渐进地提高聚类质量,逼近局部最优解。这些启发式聚类方
法很适合发现中小型数据库中的球状簇。若要发现复杂形状的簇和对超大型数据集进行聚
类,就需要进一步扩展划分方法。
2. 层次方法
根据层次分解的形式不同,层次方法(Hierarchical Methods)又可以分为凝聚层次聚
类和分裂层次聚类。
(1)凝聚层次聚类:又叫自底向上方法。一开始将每个对象作为同一类,然后与其相
近的对象或类合并,直到所有小的类别合并成一个类,或者收敛,即满足终止条件为止。
(2)分裂层次聚类:又叫自顶向下方法,一开始将所有对象置于一个簇中,在迭代
的每一步中,类会被分裂成更小的类,直到最终每个对象在一个单独的类中,或者收敛,
即满足终止条件为止。
64 64
21Y3228.indd 64 2019/10/10 14:23:553.3 聚类
3. 基于密度的方法
大部分聚类算法都通过衡量对象之间的距离来划分簇。因此这样划分出来的簇都会呈
球状分布,导致在发现任意形状的簇时,会遇到困难。而基于密度的方法(Density-Based
Methods)的主要思想是:只要“领域”中的密度(对象或数据点的数量)超过阈值,就
继续增长给定的簇。也就是说,对给定簇中的每个数据点,在给定半径的领域中必须至少
包含最少数目的点。这样的方法可以用来过滤噪声或离群点,发现任意形状的簇。基于这
一思想的典型方法有DBSCAN,如图3-6所示。
图3-6 DBSCAN聚类结果图
4. 基于网格的方法
基于网格的方法(Grid-Based Methods)把对象空间量化为有限数目的单元,形成网格
结构,所有的聚类操作都在这个网格结构(即量化空间)中进行。该算法的优点是处理速
度快,其处理时间常常独立于数据对象的数量,只与量化空间中每一维的单元数量有关。
3 . 3 . 2 K-Means聚类算法
K-Means聚类是发现给定数据集的k个簇的算法。簇个数k是用户给定的,每个簇通过
其质心(Centroid),即簇中所有点的中心来描述。
K-Means聚类算法工作时,首先随机确定k个初始点作为质心;接着将数据集中的每个
点分配到一个簇中,即为每个点找距其最近的质心,并将其分配给该质心所对应的簇;然
后把每个簇的质心更新为该簇所有点的平均值。上述流程可用如下伪代码表示:
输入:簇个数k,数据点集合X , …, X
1 n
为k个簇随机初始化它们的质心C , …, C
1 k
重复以下步骤直到收敛:
对于每个点X :
i
找到距其最近的质心C:argminD( X , C )
j i j
将点X分配到簇 j 中
i
6565
21Y3228.indd 65 2019/10/10 14:23:55第三章 机器学习与人工智能的核心算法
对于每一个簇 j =1, …, k:
使新的质心C更新为该簇中所有点X的平均值:
j i
其中a=1, …, d,d为簇的总数
将新的质心运用于下一轮点X的分配中
i
直到没有簇的质心因为点的分配而改变时,算法结束
上面提到的距离计算方法D( X , C )可以使用任何合适的距离度量方法。K-Means算法
i j
在数据集上的性能会受到所选距离计算的影响。
3 . 3 . 3 K-Means聚类算法的应用
K-Means算法通常可以用于处理维数、数值都很小且连续的数据集,主要应用于从随
机分布的事物集合中对相似事物进行分组。例如,对一个营销组织来说,将不同客户根据
他们的特点分组,从而有针对性地定制营销活动;对学校老师来说,将学生根据特点分
组,从而有所侧重地进行教育活动。K-Means在不同领域都有类似的应用案例。
实 践
鸢尾花数据集(Iris)是一类多重变量分析的数据集。它最初是从鸢尾属花朵样本中提
取的地理变异数据。后来作为判别分析的一个例子,运用到统计学中。
鸢尾花数据集包含150组数据,分为三类,包含山鸢尾(Iris Setosa)、变色鸢尾(Iris
Versicolour)和维吉尼亚鸢尾(Iris Virginica),如图3-7所示。每类50组数据,除花卉种
类信息以外,每组数据还包含四个属性,分别是花萼长度(Sepal.Length,单位cm)、花
萼宽度(Sepal.Width,单位cm)、花瓣长度(Petal.Length,单位cm)、花瓣宽度(Petal.
Width,单位cm)。可通过四个
属性预测鸢尾花属于三个种类中
的哪一类。其中的一个种类与另
外两个种类是线性可分离的,其
余两个种类是非线性可分离的。
使用鸢尾花数据集,根据花瓣长
度、花瓣宽度和萼片长度三个特
征对花的种类进行聚类。
图3-7 鸢尾花
66 66
21Y3228.indd 66 2019/10/10 14:23:563.3 聚类
Scikit-learn为我们提供了封装好的K-Means聚类算法,这里仅仅演示怎么使用封装好
的K-Means聚类算法来进行聚类,并使用Matplotlib库绘制聚类结果以便直观感受。
(1)首先调用Scikit-learn中的K-Means聚类算法和数据集,然后加载Iris数据集。
from sklearn.cluster import KMeans
from sklearn import datasets
iris = datasets.load_iris( ) # 加载鸢尾花数据集Iris
X = iris.data
y = iris.target
(2)初始化三个不同的K-Means聚类模型。对第三个模型,将参数“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 = 1
titles = ['8个簇', '3个簇', '3个簇, 随机初始化较差']
for name, est in estimators:
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_zlabel('花瓣长度')
ax.set_title(titles[fignum - 1])
ax.dist = 12
fignum = fignum + 1
6767
21Y3228.indd 67 2019/10/10 14:23:56第三章 机器学习与人工智能的核心算法
实验结束后,得到的3D投影图如图3-8所示,其中不同的簇用不同的颜色区分。
图3-8 K-Means聚类实验结果
项目实施
各小组根据项目选题及拟订的项目方案,结合本节所学知识,剖析聚类算法。
1. 运行配套学习资源包中的程序,体验K-Means聚类算法的应用。
2. 运行配套学习资源包中的程序,对鸢尾花数据集进行分类。
3. 结合案例,探讨聚类算法在不同领域的应用。
3.4
决策树
决策树(Decision Tree)是一种通过对历史数据进行测算,实现对新数据进行分类和
预测的算法。机器学习中,决策树是一个预测模型,代表的是对象属性与对象值之间的一
种映射关系。该算法由于逻辑结构为树形结构,所以被称为“决策树”。
68 68
21Y3228.indd 68 2019/10/10 14:23:563.4 决策树
探究活动
体 验
如图3-9所示是预测贷款用户是否具有偿
还贷款能力的决策树。贷款用户主要具备三
个属性:是否拥有房产,是否结婚和平均月
收入。每一个内部节点都表示一个属性条件
判断,最终节点表示贷款用户是否具有偿还能
力。例如:用户甲没有房产,没有结婚,月
收入5000。通过决策树先判断是否拥有房产,
用户甲符合右边分支(“是否拥有房产”为
“否”);再判断是否结婚,用户甲符合左
边分支 (“是否结婚”为“否”);然后判
断月收入是否大于4000,用户甲符合左边分支
(月收入大于 4000),该用户落在“可以偿
图3-9 预测用户还贷能力的简单决策树
还”的叶子节点上。所以预测用户甲具备偿还
贷款能力。
3 . 4 . 1 决策树及其类型
1. 决策树的结构
如图3-10所示,决策树主要由三个部分组成,分别为决策节点、分支和叶子节点。其
中决策树最顶部的决策节点是根决策节点,每一个分支都有一个新的决策节点,决策节点
下面是叶子节点。每个内部节点表示一个属性的测试,每个分支代表一个测试输出,每个
叶子节点代表一种类别。整个决策的过程从根决策节点开始,由上到下,根据数据的分类
在每个决策节点给出不同的结果。决策树仅有单一输出,若需要多个输出,可以建立独立
的决策树以处理不同输出。
图3-10 决策树的结构
6969
21Y3228.indd 69 2019/10/10 14:23:59第三章 机器学习与人工智能的核心算法
2. 决策树的优缺点
决策树模型呈树形结构,在分类问题中表示基于特征对实例进行分类的过程。它既可
以被认为是“如果—则”条件规则的集合,也可以被认为是定义在特征空间与类空间上的
条件概率分布。决策树的构造过程不需要任何领域的知识或参数设置,因此在实际应用
中,对于探测式的知识发现非常有用。决策树具备以下优点:
● 易于理解和实现,在学习过程中不需要使用者了解很多背景知识;能够直接体现数
据的特点,通过解释后,使用者都有能力去理解决策树所表达的意义。
● 数据的预处理往往是简单或者是不必要的;能够同时处理数值型和常规型数据,在
较短时间内能够对大型数据集做出可行且效果良好的预测模型。
● 易于通过静态测试来对模型进行评测,可以测定模型可信度;如果给定一个观察模
型,那么所产生的决策树很容易推出相应的逻辑表达式。
同时,决策树也存在一定的问题:
● 对连续性的字段比较难预测。
● 对时序数据,需要进行较多预处理工作。
● 当类别太多时,错误率可能会大幅上升。
3. 决策树的分类
决策树学习根据数据的属性,采用树状结构建立决策模型,决策树模型常常用来解决
分类和回归问题。常见的构造决策树算法包括ID3、C4.5和CART等。
(1)ID3算法。
ID3算法最早于1975年提出,是一种分类预测算法,核心是“信息熵”。ID3算法认为
“互信息”高的属性是好属性,通过计算历史数据中每个类别或属性的“信息熵”获得
“互信息”,并选择“互信息”最高的类别或属性作为决策树中的决策节点,将类别或属
性的值作为分支继续进行分裂。不断重复这个过程,直到生成一棵完整的决策树。
使用信息增益存在一个缺点,那就是它偏向于具有大量值的属性。就是说在训练集
中,某个属性所取的不同值的个数越多,越有可能拿它来作为分裂属性,而这样做有时
候是没有意义的,另外ID3不能处理连续分布的数据特征,于是就有了C4.5算法。此外,
CART算法也支持连续分布的数据特征。
(2)C4.5算法。
C4.5算法继承了ID3算法的优点,并在以下几个方面对ID3算法进行了改进:
● 用信息增益率来选择属性,克服了用信息增益选择属性时偏向选择取值多的属性的
不足。
● 在树构造过程中进行剪枝。C4.5算法采用了悲观剪枝的方法,使用训练集生成决策
树,又用训练集来进行剪枝。
● 能够完成对连续属性的离散化处理。
● 能够对不完整数据进行处理。
C4.5算法产生的分类规则易于理解,准确率较高,但因构造过程中,需要对数据集进
行多次顺序扫描和排序,计算效率低。也正因为必须多次扫描数据集,C4.5只适合于能够
70 70
21Y3228.indd 70 2019/10/10 14:23:593.4 决策树
驻留于内存的数据集。在实现过程中,C4.5算法在结构与递归上与ID3完全相同,区别只
在于选取决策特征时的决策依据不同,二者都有“贪心”性质,即通过局部最优构造全局
最优。
(3)CART算法。
CART算法采用一种二分递归分割的技术,将当前的样本集分为两个子样本集,使得生
成的每个非叶子节点都有两个分支。因此,CART算法生成的决策树是结构简洁的二叉树。
3 . 4 . 2 决策树的生成
从数据产生决策树的机器学习技术叫作决策树学习。每棵决策树都表述了一种树型结
构,由它的分支来对该类型的对象依靠属性进行分类。决策树学习包含特征选择、决策树
的生成与剪枝过程。决策树学习算法通常采用递归法选择最优特征,并用最优特征对数据
集进行分割。决策树生成时,首先构建根节点,选择最优特征,该特征有几种不同取值就
分割为几个子集,每个子集分别递归调用此方法,返回的就是上一层的子节点。直到所有
特征都已经用完,或者数据集只有一维特征为止。决策树的生成是一个递归的过程,在决
策树生成过程中,有三种情况会导致递归返回:
(1)当前节点包含的样本属于同一类别,无须划分。
(2)当前样本属性集为空,或者所有样本在所有属性上的取值相同,无法划分。
(3)当前节点包含的样本集合为空,不能划分。
1. 特征选择
决策树算法的关键在于如何选择最优划分属性,随着划分的不断进行,应使决策树的
分支节点所包含的样本尽可能属于同一类别。特征选择问题希望选取对训练数据具有良好
分类能力的特征,这样可以提高决策树学习的效率。如果利用一个特征进行分类的结果与
随机分类的结果没有很大差别,则称这个特征没有分类能力。
拓 展
认识信息熵
为了解决特征选择问题,找出最优特征,我们先要认识信息熵。
熵的概念首先在热力学中引入,用于表述热力学第二定律,度量一个热力学系统的
无序程度。信息熵(Information Entropy)是信息论中的一个重要的指标,是由香农(C.
Shannon,1916—2001)在1948年提出的,香农借用了热力学中熵的概念来描述信息的不
确定性。
(1)信息熵。
信息熵是用来衡量一元模型中信息不确定性的指标,信息的不确定性越大,熵的值也
7171
21Y3228.indd 71 2019/10/10 14:23:59第三章 机器学习与人工智能的核心算法
就越大。这里所说的一元模型指的是单一事件,而不确定性指的是事件出现不同结果的可
能性。
例如,抛硬币可能出现的结果有两个,分别是正面和反面,而每次抛硬币的结果是一
个非常不确定的信息。如表3-2所示,根据我们的经验和实验数据,一质量均匀的硬币出
现正面和反面的概率几乎相等,都约等于50%,因此很难判断下一次出现的是正面还是反
面,这时抛硬币这个事件的熵值很高。假如实验数据显示这枚硬币在过去的100次抛掷试
验中,99次结果都是正面,说明这枚硬币的质量不均匀,出现正面结果的概率很高。那么
我们就很容易判断下一次的结果了。这时的熵值很低,只有0.08。
表3-2 抛硬币事件的熵值
硬币状态 出现次数 概率 熵 硬币状态 出现次数 概率 熵
正面 99 0.99 -0.01 正面 51 0.51 -0.50
反面 1 0.01 -0.07 反面 49 0.49 -0.50
合计 100 1.00 0.08 合计 100 1.00 1.00
决定信息的不确定性(复杂程度)的主要因素是概率,熵在信息论中是随机变量不确
定性的度量。设有一个离散型随机变量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的条件下随机变量Y的不确定性,定义为在给定
条件X下,Y的条件概率分布的熵对X的数学期望。
我们首先考虑当X取值为x时, =x是带条件的随机变量,按照信息熵的定义,可以
得到
根据X的概率分布p(x)求上述信息熵的数学期望值,可以得到在随机变量X给定的条件
下随机变量Y的条件熵
其中 表示在已知X取值的前提下,Y取值的不确定性;即在变量X的条件下(变量X
的每个值都会取),变量Y的信息熵对X的期望。
72 72
21Y3228.indd 72 2019/10/10 14:23:593.4 决策树
(3)互信息与信息增益。
互信息指的是两个随机变量之间的相关程度,是用来衡量信息之间相关性的指标。当
两个信息完全相关时,互信息为1,不相关时为0。互信息可以等价地表示成
,
其中,H( X )表示信息熵, 是条件熵。因此,条件熵越大,互信息越小,条件熵
越小,互信息越大。
信息增益指的是在一定条件下,信息不确定性减少的程度。 表示在条
件Y确定的情况下,信息的不确定性减少的程度。也就是说,按照条件Y对数据进行分类之
后,分类数据的确定性是否比划分之前更高。因此,我们可以通过计算信息增益来选择使
用哪个特征作为决策树的节点更合适。
如果被称为“互信息”时,两个随机变量的地位是相同的;如果被称为“信息增益”
时,一个变量是减小另一个变量不确定度的手段。但其实两者的数值是相等的。“互信
息”或者“信息增益”经常作为决策树中选择特征的标准,两种称呼都很常见。
2. 过拟合处理
在决策树学习中,为了尽可能地正确分类训练样本,节点划分过程将不断重复,有时
会造成决策树分支过多,导致过拟合,因此可以通过主动去掉一些分支来降低过拟合的风
险。剪枝的基本策略包括预剪枝和后剪枝。
(1)预剪枝是在决策树生成的过程中,对每个节点在划分前先进行预估,若当前节
点的划分不能使决策树泛化性能提升,则停止划分并将当前节点标记为叶子节点。
(2)后剪枝是先从训练集中生成一棵完整的决策树,然后自底向上地考察非叶子节
点,若将该节点对应的子树替换为叶子节点能提高泛化能力,则进行替换。
3 . 4 . 3 决策树的应用
实 践
使用鸢尾花数据集,调用Scikit-learn内嵌的决策树分类器构造决策树:
from sklearn.datasets import load_iris
from sklearn import tree
iris = load_iris( )
clf = tree.DecisionTreeClassifier( )
clf = clf.fit(iris.data, iris.target)
7373
21Y3228.indd 73 2020/3/27 15:47:43第三章 机器学习与人工智能的核心算法
调用Python数据可视化模块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")
图3-11 基于鸢尾花数据集生成的决策树
当我们遇到一株新的鸢尾花时,如果想知道它属于哪个品种,可以根据如图3-11所
示的决策树来帮助判断。从树的根节点来看,应该首先判断它的花瓣长度。如果花瓣长
度小于或等于2.45厘米,那么它应该属于山鸢尾;否则再判断花瓣宽度是否小于等于1.75
厘米,得出这一层的判断结果后,根据分支走向依此类推,直到找到叶子节点的位置,
即没有分支再需要判断时,叶子节点给出的类别也就是我们想要的答案。
项目实施
各小组根据项目选题及拟订的项目方案,结合本节所学知识,剖析决策树算法。
1. 运行配套学习资源包中的程序,体验决策树的应用。
2. 结合案例,探讨决策树在不同领域的应用。
74 74
21Y3228.indd 74 2019/10/10 14:24:023.5 人工神经网络
3.5
人工神经网络
机器学习是计算机科学的一个分支,它会从数据中自主学习规律,并生成算法。而深
度学习是机器学习的一个分支,是数据科学里最热门的研究课题之一,已经在图像识别、自
然语言处理、机器人等领域取得了重要成果。比如自动驾驶、游戏人工智能、字迹识别等。
深度学习受到人脑运作机制的启发,其核心算法是人工神经网络。
探究活动
思 考
人类识别手写数字的过程是怎样的?与人类相比,计算机应如何识别手写数字?
人类视觉系统是大自然的一大奇迹。观察如图3-12所示的手写数字序列。
图3-12 手写数字“504192”
大部分人能够毫不费力地识别出这些数字是504192,然而这种简单性只是我们人类的
“想当然”。在我们大脑里,有一个主要的视觉皮层V1,它包含1.4亿个神经元以及数百
亿的神经元连接。而且人类除了有V1,还有一系列的视觉皮层——V2、V3、V4和V5,它
们能够执行更加复杂的图像处理。我们可以将大脑想象成一台超级计算机,经过几千万年
的不断进化,最终形成我们身上的视觉处理系统。我们人类能非常迅速地理解我们眼睛所
看到的一切,而且这一切几乎都是在不知不觉中完成的。
然而,要让计算机识别手写数字,并不是一件容易的事。视觉模式识别的困难在于如
何让计算机程序快速识别上面的数字。我们识别这个形状的简单直觉是——“数字9头上
有一个圆圈,右下角有一笔竖线”。但是如果试图利用程序构造精确的规则,让计算机认
识“9”(如图3-13所示),算法将迅速迷失在大量的例外、警告和特殊案例中,而且似
乎看不到解决的希望。
图3-13 不同的手写数字“9”
7575
21Y3228.indd 75 2019/10/10 14:24:02第三章 机器学习与人工智能的核心算法
人工神经网络用不同的方法来处理这个问题,其思想就是利用大量的手写数字(训练
样本),开发出一套从训练样本中进行学习的系统。换句话说,人工神经网络使用如图
3-14所示的样本来自动推理出识别手写数字的规则。此外,通过增加训练样本规模,神经
网络能学到手写数字的更多规则,从而提升它的识别精度。
图3-15 生物神经元与人工神经元
图3-14 手写数字训练样本
本节我们将使用Python编写一段计算机程序来实现一个能识别手写数字的人工神经网
络,这段程序能够在没有人工干预的情况下达到98%的识别精度。实际上,最好的商业神
经网络已经应用于银行支票处理和邮政编码识别等领域。
3 . 5 . 1 人工神经网络的基本原理
调 查
进行下述任务的调查,分小组进行汇报。
(1)通过网络搜索和文献查找的方式,了解人脑神经网络的结构和各结构的主要作用。
(2)以小组合作的形式,调查人工神经网络在人工智能领域的典型应用。
“神经网络”一词是对人脑结构的比喻。神经网络的基本构成单元是神经元。
1. 感知机
感知机(Perceptron)是最简单的一种神经网络,由单个神经元构成。如图3-15所
示,就像生物神经元具有树突和轴突一样,人工神经元呈树状结构,有多个输入节点和一
个输出节点。
76 76
21Y3228.indd 76 2019/10/10 14:24:043.5 人工神经网络
人工神经网络用不同的方法来处理这个问题,其思想就是利用大量的手写数字(训练
样本),开发出一套从训练样本中进行学习的系统。换句话说,人工神经网络使用如图
3-14所示的样本来自动推理出识别手写数字的规则。此外,通过增加训练样本规模,神经
网络能学到手写数字的更多规则,从而提升它的识别精度。
图3-15 生物神经元与人工神经元
人工神经网络(Artificial Neural Network,简称ANN)由六大组件组成,分别为:
(1)输入节点。输入节点关联着一个个数值x,可以是任意实数:正数或负数,整数
i
或小数。
(2)连接。每一个从输入节点出来的连接,都关联着一个权重值(Weight)w,这个
i
值也可以是任意整数。
(3)输入和权重的结合。对输入数值求加权和y=f(∑wx ),即
i i
y = f( w x +w x +…+w x )
1 1 2 2 n n
(4)激活函数。最简单的激活函数(Activation Function)就是恒等函数(Identity
图3-14 手写数字训练样本
Function),其输入输出相等,即 f ( x ) = x。这里的x就是输入与连接的加权和。就像生物神
本节我们将使用Python编写一段计算机程序来实现一个能识别手写数字的人工神经网 经元的突触只在特定条件下激活一样,人工神经元也只在超过阈值时激活。假设这个阈值
络,这段程序能够在没有人工干预的情况下达到98%的识别精度。实际上,最好的商业神 是0,那么激活函数
经网络已经应用于银行支票处理和邮政编码识别等领域。
这个激活函数叫作线性整流函数(Rectified Linear Unit),又称为修正线性单元,是
3 . 5 . 1 人工神经网络的基本原理
一种人工神经网络中常用的激活函数。其他常用的还有sigmoid、tanh和softmax等。
(5)输出节点。输出节点呈现激活函数的结果。
调 查 (6)偏置。偏置(Bias)可以认为是一个值固定为1的输入节点,它可以调节激活函
数,提高学习算法性能。
进行下述任务的调查,分小组进行汇报。
注意,感知机只能处理数值数据。也就是说,需要把字符等数据都转换为数值格式。
(1)通过网络搜索和文献查找的方式,了解人脑神经网络的结构和各结构的主要作用。
感知机控制的是阈值,可以将其用作样本分类:高于特定阈值的输出,表示样本属于某一
(2)以小组合作的形式,调查人工神经网络在人工智能领域的典型应用。
类;而低于阈值就归为另一类。直线“输出=阈值”就是两个类别的决策边界。
2. 多层感知机
“神经网络”一词是对人脑结构的比喻。神经网络的基本构成单元是神经元。
感知机组成的网络就是多层感知机(Multilayer Perceptron,简称MLP),多层感知机
1. 感知机
又称为前馈神经网络。神经元以层级结构组织在一起,层数一般是二三层,但是理论上层
感知机(Perceptron)是最简单的一种神经网络,由单个神经元构成。如图3-15所
数是无限的。所以这种具有多个层级结构的神经网络算法人们通常叫作深度学习。网络的
示,就像生物神经元具有树突和轴突一样,人工神经元呈树状结构,有多个输入节点和一
层就像生物神经元:一层的输出,是下一层的输入。
个输出节点。
7777
21Y3228.indd 77 2019/10/10 14:24:05第三章 机器学习与人工智能的核心算法
网络层分为输入层、隐含层和输出层。多层感知机通常是全连接(Fully-Connected)
的,一层之中的每一个感知机都与下一层的每一个感知机相连接,尽管这不是强制性的,
但通常是标准配置。感知机只能表征线性可分的问题,而多层感知机结合非线性的激活函
数就突破了这一限制,可以表征更加复杂的决策边界。
如图3-16所示,在人工神经网络中,最左边一层被称为输入层,其中的神经元被称为
输入神经元。最右边为输出层,其中的神经元是输出神经元,输出神经元的个数通常与分
类的个数有关。图3-16只有一个单一的输出神经元,常用于二分类问题;在手写数字识别
的例子中,要将图像分为0~9这10个数字类别,也就是说会用到10个输出神经元。中间层
被称为隐含层,因为里面的神经元既会有输入也会有输出。图3-16中的人工神经网络包含
了两层隐含层,但是一些网络可能只有一层或者多层。
图3-16 人工神经网络
人工神经网络中输入层和输出层的设计通常很简单。假设我们试图判断一幅手写数字
图像是否代表“9”,设计网络的一种方式是将图像像素强度编码进输入层的神经元。如
果图像是一幅28像素×28像素的灰度图,那么我们可以在输入层设计28×28=784个神经
元,每一个神经元的输入值为0~1的像素强度。若输出层只包含一个神经元时,输出值小
于0.5表示“输入图像不是9”,大于0.5表示“输入图像是9”。
虽然人工神经网络的输入层和输出层很简单,设计好隐含层却是一门艺术。将隐含层
的设计过程总结出简单的经验规则是一项有挑战性的任务。人工神经网络研究者们已经为
隐含层开发出许多启发式设计,它们能帮助大家获取所期望行为的网络。例如,一些启发
式算法能协助平衡隐含层数量与样本训练所耗时间的关系。
3 . 5 . 2 人工神经网络的应用
开始学习编程的时候,第一件事往往是学习在计算机屏幕上显示“Hello World”。对
应地,机器学习的入门有MNIST。MNIST是一个入门级的计算机视觉数据集,它包含成千
上万的手写数字图像,还包括它们对应的数字分类。
MNIST数据集被分成两部分:60 000行的训练数据集和10 000行的测试数据集。这样
的切分很重要,在机器学习模型设计时必须有一个单独的测试数据集不用于训练,而是用
78 78
21Y3228.indd 78 2019/10/10 14:24:053.5 人工神经网络
来评估这个模型的性能,从而更加容易把设计的模型推广到其他数据集上(泛化)。
每一个MNIST数据单元由两部分组成:一幅手写数字的图像和一个对应的标签。每一
幅图像都是28像素×28像素。如图3-17所示,可以用一个数字数组来表示这张图。再把这
个数组展开,就得到一个长度是 28×28=784的向量。把图像数字化之后,就可以交给神
经网络模型来处理了。
图3-17 图像数字化
实 践
使用机器学习中的手写数字数据集MNIST,根据图像数字化后的数组对图像中的数字
进行分类。Scikit-learn为我们提供了一个封装好的双层神经网络算法,这里仅仅演示怎样
使用封装好的多层感知机算法来进行分类,并使用matplotlib绘制分类结果以便直观感受。
(1)首先引入机器学习库Scikit-learn中的多层感知机分类器方法和数据集,然后加
载MNIST数据集。
import matplotlib.pyplot as plt
from sklearn.datasets import load_digits
from sklearn.neural_network import MLPClassifier
from sklearn.model_selection import train_test_split
mnist = load_digits()
X, y = mnist.images / 255., mnist.target
(2)把加载的手写数字图像数字化,转化成分类器容易接受的二维矩阵,然后划分
成两部分数据集,一部分用来训练,另一部分用来测试。
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)
7979
21Y3228.indd 79 2019/10/10 14:24:06第三章 机器学习与人工智能的核心算法
(3)初始化多层感知机分类器的参数。这里可以自定义不同的隐含层大小来尝试不
同结构的神经网络在这个分类任务里面的性能表现。初始化分类器之后,就可以将训练样
本与标签传给分类器开始训练了。
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))
其实,人工神经网络能进行图像分类,是因为它会计算每一幅输入图像所属类别的概
率分布,概率得分最高的那个类别将作为预测结果执行输出。而人工神经网络进行训练的
过程,就是输入尽可能多的图像给模型“看”,然后利用算法让模型优化到一个状态,能
让尽可能多的图像得到正确的概率分布。
项目实施
各小组根据项目选题及拟订的项目方案,结合本节所学知识,剖析人工智能分类系
统,进一步完善该项目方案中的各项学习活动,并参照项目范例的样式,撰写相应的项目
成果报告。
成果交流
各小组运用数字化学习工具,将所完成的项目成果,在小组或班级上进行展示与
交流,共享创造、分享快乐。
活动评价
各小组根据项目选题、拟订的项目方案、实施情况以及所形成的项目成果,根据教科
书附录2的“项目活动评价表”,开展项目学习活动评价。
80 80
21Y3228.indd 80 2019/10/10 14:24:06本章扼要回顾
本章扼要回顾
同学们通过本章学习,根据“机器学习与人工智能的核心算法”知识结构图,扼要回
顾、总结、归纳学过的内容,建立自己的知识结构体系。
回顾与总结
8181
21Y3228.indd 81 2019/10/10 14:24:15第三章 机器学习与人工智能的核心算法
本章学业评价
同学们完成下列测试题(更多的测试题可以在教科书的配套学习资源包中查看),并
通过“本章扼要回顾”以及本章的项目活动评价,综合评价自己在信息技术知识与技能、
解决实际问题的过程与方法,以及相关情感态度与价值观的形成等方面,是否达到了本章
的学习目标。
1.单选题
(1)下列说法中,机器学习的合理描述是( )。
A.机器学习是计算机编程的技术
B.机器学习是使计算机无须明确编程即可进行学习的研究领域
C.机器学习意味着给数据打标签
D.机器学习是让机器人行动变得智能的研究领域
(2)假设气象站每天在天气的三种可能(晴天、多云或者多雨)中选择一种进行天
气预报。如果用机器学习算法来做预测的话,可以把这当作( )问题来处理。
A.回归 B.分类 C.聚类 D.都可以
(3)假设气象站想预测明天的气温。如果用机器学习算法来做预测的话,可以把这
当作( )问题来处理。
A.回归 B.分类 C.聚类 D.都可以
2.思考题
在工作与生活中,哪些事情可以通过机器学习让计算机帮我们完成?可能对我们的生
活产生什么影响?
3.情境题
(1)尝试基于C4.5算法,根据如下西瓜数据集生成一棵决策树。
西瓜编号 色泽 瓜蒂 纹理 脐部 敲声 质感
1 青绿 蜷缩 清晰 凹陷 浊响 硬滑
2 乌黑 蜷缩 清晰 凹陷 沉闷 硬滑
3 乌黑 蜷缩 清晰 凹陷 浊响 硬滑
4 青绿 蜷缩 清晰 凹陷 沉闷 硬滑
5 浅白 蜷缩 清晰 凹陷 浊响 硬滑
6 青绿 稍蜷 清晰 稍凹 浊响 软黏
7 乌黑 稍蜷 稍糊 稍凹 浊响 软黏
8 乌黑 稍蜷 清晰 稍凹 浊响 硬滑
9 乌黑 稍蜷 稍糊 稍凹 沉闷 硬滑
(2)尝试使用上面的西瓜数据集训练一个朴素贝叶斯分类器,然后对下表所示的测
试例进行分类。
西瓜编号 色泽 瓜蒂 纹理 脐部 敲声 质感
测试 青绿 蜷缩 清晰 凹陷 浊响 硬滑
82 82
21Y3228.indd 82 2019/10/10 14:24:173.5 人工神经网络
第四章
人工智能应用系统开发
人工智能技术正在逐渐融入人们的生产和生活中。在自动
驾驶、城市大脑、医疗影像、智能语音和智能视觉等领域,人
工智能为其注入了强大的生命力。人们借助各种工具和平台来
学习人工智能知识,基于生产和生活的需要,开发人工智能应
用系统来提高工作效率、优化生活品质。
本章将通过“开发人工智能应用系统”项目,进行自主、
协作、探究学习,让同学们体验人工智能应用系统项目的开发
过程,利用开源人工智能应用框架,搭建简单的人工智能应用
模块,并根据实际需要,配置适当的环境参数和自然交互方式
等,从而将知识建构、技能培养与思维发展融入运用数字化工
具解决问题和完成任务的过程中,促进信息技术学科核心素养
达成,完成项目学习目标。
人工智能应用系统项目分析
人工智能应用系统项目设计
人工智能应用系统项目实施
8383
21Y3228.indd 83 2019/10/10 14:24:20第四章 人工智能应用系统开发
开发拍照识物智能玩具系统
项目范例
情 境
识别物体是人类的一种基本能力,对于计算机来说却是一个困难的任务。近年来,随
着深度学习的发展,计算机也能学习识别物体了。我们可以利用树莓派卡片式计算机,开
发人工智能物体识别应用模块,甚至把它制作成拍照识物玩具。
主 题
开发拍照识物智能玩具系统
规 划
根据项目范例的主题,在小组中组织讨论,利用思维导图工具,制订项目范例的学习
规划,如图4-1所示。
图4-1 “开发拍照识物智能玩具系统”项目规划
探 究
根据项目学习规划的安排,通过调查、案例分析、文献阅读和网上资料搜索,开展
“开发拍照识物智能玩具系统”项目学习探究活动,如表4-1所示。
84 84
21Y3228.indd 84 2019/10/10 14:24:26开发拍照识物智能玩具系统
表4-1 “开发拍照识物智能玩具系统”项目学习探究活动
探究活动 学习内容 知识技能
人工智能应用系统
智能系统开发的需求分析。
项目分析
利用开源人工智能应用框
架,搭建简单的人工智能应
人工智能应用系统 人工智能应用
智能系统开发的总体设计。 用模块,并能根据实际需要
项目设计 模块开发。
配置适当的环境、参数及自
然交互方式等。
人工智能应用系统 智能系统的程序开发与系统
项目实施 集成。
实 施
实施项目学习各项探究活动,进一步开发拍照识物智能玩具系统。
成 果
在小组开展项目范例学习过程中,利用思维导图工具梳理小组成员在“头脑风暴”活
动中的观点,建立观点结构图,运用多媒体创作工具(如演示文稿、在线编辑工具等)综
合加工和表达,形成项目范例可视化学习成果;充分利用丰富的开源硬件和人工智能应用
框架等资源,制作拍照识物的智能玩具,并通过各种分享平台发布,共享创造、分享快
乐。例如,运用在线编辑工具制作的“开发拍照识物智能玩具系统”可视化报告,可以在
教科书的配套学习资源包中查看,其目录截图如图4-2所示。
图4-2 “开发拍照识物智能玩具系统”可视化报告目录截图
8585
21Y3228.indd 85 2019/10/10 14:24:27第四章 人工智能应用系统开发
评 价
根据教科书附录2的“项目活动评价表”,对项目范例的学习过程和学习成果在小组
或班级上进行交流,开展项目学习活动评价。
项目选题
同学们以3~6人组成一个小组,选择下面一个参考主题,或者自拟一个感兴趣的主
题,开展项目学习。
1. 开发语音识别智能应用系统
2. 开发人脸识别智能应用系统
3. 开发文本翻译智能应用系统
项目规划
各小组根据项目选题,参照项目范例的样式,利用思维导图工具,制订相应的项目方案。
方案交流
各小组将完成的方案在全班进行展示交流,师生共同探讨,完善相应的项目方案。
4.1
人工智能应用系统项目分析
目前,人工智能应用系统已经融入我们生活的方方面面。如通过语音识别软件,使用
各种语言进行文字输入;通过导航系统,了解实时交通状况,获得路线指引;利用图像识
别软件,识别眼前的植物类型……这些改变我们生活的人工智能应用系统,其开发的第一
步就是进行需求分析。
4 . 1 . 1 项目描述
智能玩具是把信息技术和传统玩具整合而形成的新型玩具,是玩具市场的一个细分领
86 86
21Y3228.indd 86 2019/10/10 14:24:274.1 人工智能应用系统项目分析
域,近年来越来越流行。智能玩具通常以动物或者娃
娃造型、会“说话”、能与人互动等功能吸引着少年 拍 摄
儿童。
本项目学习范例中的拍照识物智能玩具,是以传
统玩具小熊为造型进行设计和制作的。
显示
当使用者面向可爱的小熊,用手按下小熊手上的
“橙子”
按钮时,小熊的眼睛会把眼前的景物拍摄下来,然后
通过智能识别,把识别的结果在显示屏上输出,如图
图4-3 拍照识物智能玩具设计示意图
4-3所示。
4 . 1 . 2 需求分析
需求分析是指系统设计人员经过深入细致的调研和分析,准确理解用户对项目的功
能、性能、可靠性等具体要求,将用户的需求表述转化为完整的需求定义,从而确定系统
必须做什么的过程。
需求分析是项目分析阶段的重要环节,该阶段主要分析系统在功能上需要“实现什
么”,而不是考虑如何去“实现”。需求分析的目标是通过分析与整理用户对系统提出的
需求,最终形成描述完整、清晰与规范的文字,以确定系统需要实现哪些功能,完成哪些
工作,以及满足哪一些非功能性需求(如性能、可靠性、响应时间、可扩展性和系统设计
约束条件等)。清晰明确地描述项目的需求,是项目顺利进行的关键。
在本项目范例学习中,根据拍照识物智能玩具系统的项目描述,进行需求分析,如表
4-2所示。
表4-2 拍照识物智能玩具系统需求分析表
1. 具有拍照功能,并可以保存为图像。
功能性需求 2. 能对图像中的物体进行识别,得到识别结果。
3. 能输出图像识别的结果。
1. 拍照识物智能系统在微型计算机中开发,体积较小。
非功能性需求
2. 人工智能模块运行速度较快。
1. 能够在树莓派的操作系统上运行。
设计约束 2. 使用Python作为程序开发语言。
3. 使用开源人工智能应用框架TensorFlow实现识物功能。
8787
21Y3228.indd 87 2019/10/10 14:24:28第四章 人工智能应用系统开发
探究活动
思 考
需求分析在项目开发中是否必不可少?如果项目缺少需求分析的环节,会有什么后果?
分 析
根据小组项目选题,分析人工智能应用需求,并填写表4-3。
表4-3 项目需求分析表
功能性需求
非功能性需求
设计约束
项目实施
各小组根据项目选题及拟订的项目方案,结合本节所学知识,完成对所选人工智能应
用项目的分析。
1. 撰写项目说明,明确项目分析的重要性。
2. 对项目进行需求分析,并填写表4-3,列出项目的功能性需求、非功能性需求和设
计约束。
4.2
人工智能应用系统项目设计
对人类来说,描述我们眼睛所看到的事物是自然而然的事。对熟悉的事物,我们通常
都不需要过多地思考,就能立刻识别出来。但是对于计算机来说,区分和识别不同的事物
却是相当困难的。
计算机识别物体一般要经过图像采集、存储、识别、输出结果四个步骤。光线通过镜
头进入图像采集设备(如数码相机、摄像机等)后,成像元件将光线转化为数字信号,数
88 88
21Y3228.indd 88 2019/10/10 14:24:284.2 人工智能应用系统项目设计
字信号经影像运算芯片处理后,储存在存储设备中。图像识别是利用计算机程序及预训练
好的模型实现对存储图像的识别,并得出识别结果。如深度神经网络Inception v3模型通过
进行大量的图像学习与物体分类训练,从而得到类似人的识别物体能力。当图像识别完成
后,计算机可以通过显示器或扬声器等输出设备以合适的方式把识别结果告知人们。
4 . 2 . 1 总体设计
拍照识物智能玩具系统由硬件系统和软件模块两部分组成。硬件部分选用卡片大小的
开源硬件树莓派作为计算机,用于运行开源人工智能应用框架;以按钮和摄像头作为输入
设备,显示屏作为输出设备。软件部分,使用Python语言作为开发语言,利用开源人工智
能应用框架TensorFlow开发,实现玩具的智能识物功能。项目总体设计图如图4-4所示。
图4-4 拍照识物智能玩具项目总体设计图
4 . 2 . 2 硬件系统设计
1. 控制设备
智能系统常采用开源硬件作为控制设备。树莓派计算机
(如图4-5所示)是一款基于Linux系统的卡片式计算机,尺
寸只有银行卡大小,可以直接连接鼠标、键盘和显示器,作
为计算机使用,也可以结合各种价格低廉的电子元件(如发
图4-5 树莓派卡片式计算机
8989
21Y3228.indd 89 2019/10/10 14:24:29第四章 人工智能应用系统开发
光二极管、电阻或各类传感器等)作为硬件控制器,设计智能物件。在树莓派的操作系统
Raspbian中,已集成Scratch图形化编程环境和Python编程环境。
2. 输入设备
键盘、鼠标、摄像头、光照传感器和麦克风等是常见的输入设备。树莓派可以通
过USB接口连接各种输入设备,也可以通过通用输入/输出接口(General-Purpose Input/
Output,简称GPIO)连接电子元件(如图4-6所示,按键和摄像头等)控制树莓派运行程
序。在本章项目范例学习中,可使用树莓派专用相机串行接口(Camera Serial Interface,简
称CSI)摄像头获取图像信息。
(a)按键 (b)摄像头
图4-6 拍照识物智能玩具输入设备
3. 输出设备
音箱和显示屏是常用的输出设备。树莓派可以
通过高清多媒体接口(High-Definition Multimedia
Interface,简称HDMI)连接显示器和音箱设备。本
章项目范例学习选用CSI接口的显示屏(如图4-7所
示)作为显示输出设备。
4. 外观设计与实现
近年来,激光切割机、3D扫描仪、3D打印机和
数控机床等桌面制造设备为智能作品制作提供了方
便、有效的工具,有助于作品外观的设计与美化。
图4-7 拍照识物智能玩具输出设备——
本章项目范例学习选用传统玩具作为拍照识物
树莓派显示屏幕
智能玩具系统的外观。
4 . 2 . 3 软件模块设计
1. 软件模块设计
如图4-8所示是拍照识物智能玩具系统软件模块设计示意图。软件模块控制程序使用
90 90
21Y3228.indd 90 2019/10/10 14:24:294.2 人工智能应用系统项目设计
Python语言编写,通过程序实现拍照、图像识别和结果输出三个主要功能,其中图像识别
是实现人工智能应用的核心功能。
图4-8 拍照识物智能玩具系统软件模块设计示意图
2. 图像识别模块设计
图像识别是指利用计算机处理、分析和理解图像,以识别各种不同模式的目标和对象
的技术。
心理学研究认为,人类在识别图像过程中,既要使用当时通过感官得到的信息,也要
使用记忆中存储的信息。只有把存储的信息与当前获得的信息进行比较,才能实现对图像
的识别。而在长时记忆中存储的并不是所要识别的无数个图像的模板,而是图像的某些
“相似性”。从图像中抽象出来的“相似性”就可以作为原型,用来比对所要识别的图
像。如果能找到一个相似的原型,这个图像也就被识别了。
人类视觉系统的信息处理是分层的,从低层的V1区提取边缘特征,到V2区识别形状
或者目标的一部分等,再到更高层识别整个目标和目标的行为等。高层特征是低层特征的
组合,从低层到高层,特征表示越来越抽象,越来越能表现意义。而抽象层面越高,存在
的不确定性就越少,越利于进行图像分类。卷积神经网络(Convolutional Neural Network,
简称CNN)就是受此启发而提出的。
卷积神经网络是一种多层人工神经网络。进行图像识别时,其输入层是一个向量
(图像的原始像素信息)。接着,卷积神经网络各隐含层会对由图像转化的向量做变
换,即在每一层中使用激活函数进行数据处理,并把结果从上一层传递到下一层。每个
隐含层都由若干神经元组成,每个神经元都与上一层中的所有神经元连接。但是,在同
9191
21Y3228.indd 91 2019/10/10 14:24:31第四章 人工智能应用系统开发
一层中神经元相互独立且不进行任何连接。最后的输出层(全连接层)输出识别结果。
总的来说,卷积神经网络识别图像的过程就是一层一层地将图像从原始像素信息逐渐变
换成最终的图像分类概率,概率越高代表越有可能是对应的事物。卷积神经网络的图像
识别过程如图4-9所示。
图4-9 卷积神经网络图像识别过程示意图
Inception是著名的开源卷积神经网络模型,基于大型图像数据库ImageNet中的数据训
练而成。我们可以直接利用Inception模型来实现图像识别。把图像输入Inception v3模型,
获得物体被识别的概率分布向量softmax。
3. 图像识别应用模块算法流程图
根据卷积神经网络的工作原理和Inception v3的图像识别功能,程序实现流程如图4-10
所示。
图4-10 图像识别应用模块程序实现流程图
92 92
21Y3228.indd 92 2019/10/10 14:24:334.2 人工智能应用系统项目设计
探究活动
根据小组自选项目选题,设计人工智能应用项目,并填写表4-4。
表4-4 项目系统设计表
项目选题
项目总体设计
硬件系统设计
软件模块设计
重要算法流程图
项目实施
各小组根据项目选题及拟订的项目方案,结合本节所学知识,完成对所选人工智能应
用项目的总体设计。
1. 画出项目的总体设计图。
2. 对所选项目进行硬件系统设计,列出要用的控制设备、输入设备和输出设备。
3. 画出项目的软件模块设计图。
4. 画出项目的主要算法流程图。
9393
21Y3228.indd 93 2019/10/10 14:24:34第四章 人工智能应用系统开发
4.3
人工智能应用系统项目实施
4 . 3 . 1 程序设计
Python语言已经成为新一代人工智能的首选编程语言,基于Python发展了很多成熟的
人工智能应用框架和平台,如Scikit-learn、TensorFlow、人工智能开放创新平台等。拍照
识物智能玩具项目需要在玩具中嵌入微型计算机树莓派,使玩具可在无网络环境下运行。
可选择Python语言,基于TensorFlow框架来实现其功能。
1. 编程环境
本章项目范例学习将使用Python作为编程语言,Python有适用于各种操作系统的官方
编程环境IDLE供编程和调试使用。也可使用文本编辑工具编写Python程序代码,然后保存
为Python的文件格式“.py”运行。
2. TensorFlow
本章的项目范例学习需要利用开源人工智能框架TensorFlow进行程序开发。
TensorFlow 基本用法如下:
● 将计算流程表示成图。
● 通过sessions来执行图计算。
● 将数据表示为tensors。
● 使用variables来保持状态信息。
● 分别使用feeds和fetches来填充数据和抓取任意的操作结果。
探究活动
实 践
TensorFlow可安装在多种操作系统中,在安装了TensorFlow的树莓派操作系统中启动
Python,在Python的交互编程环境中可进行TensorFlow测试,过程如下:
$ python
>>> import tensorflow as tf
>>> hello = tf.constant('Hello, TensorFlow!')
>>> sess = tf.Session( )
94 94
21Y3228.indd 94 2019/10/10 14:24:344.3 人工智能应用系统项目实施
>>> print(sess.run(hello))
Hello, TensorFlow!
>>> a = tf.constant(8)
>>> b = tf.constant(31)
>>> print(sess.run(a + b))
39
>>>
4 . 3 . 2 图像识别模块开发
1. Inception v3模型文件
从教科书配套学习资源包下载Inception v3模型压缩包“inception.zip”,解压缩到程序
的目录下,如图4-11所示。
图4-11 Inception v3模型文件
2. 程序实现
(1)头部注释。
#!/usr/bin/env python
# _*_coding:utf-8 _*_
9595
21Y3228.indd 95 2019/10/10 14:24:35第四章 人工智能应用系统开发
(2)导入相关模块。
TensorFlow是开源人工智能框架。os模块提供了处理文件和目录的方法。NumPy是
Python的一种开源数值计算扩展工具,用来存储和处理大型矩阵,可用于处理TensorFlow
返回的数值。
import tensorflow as tf
import os
import numpy as np
(3)将分类代号转换为人类易懂的名称。
因为通过Inception v3识别的结果是物体对应的概率分布值,要从高概率结果得出被识
别物体名称还需要进行数据处理。如图4-12所示,创建一个类NodeLookup,将分类代号转
换为人类易懂的名称,其中,id_to_string( )函数提供了调用接口。
图4-12 识别结果编号与物件名称的对称关系
class NodeLookup(object):
……
# 输入分类编号1~1000,返回分类名称
def id_to_string(self, node_id):
if node_id not in self.node_lookup:
return ' '
return self.node_lookup[node_id]
……
(4)指定模型目录。
指定当前目录下的“inception”文件夹为图像识别使用的模型目录。
96 96
21Y3228.indd 96 2020/3/27 15:47:454.3 人工智能应用系统项目实施
model_dir = "./inception"
(5)存放训练模型。
读取并创建一个图“graph”来存放训练好的Inception v3模型。
with tf.gfile.FastGFile(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:( )')
# 遍历被测试图像目录文件夹
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 = np.squeeze(predictions)
# 对识别结果概率值进行排序,取出前5个概率最大的值(top-5)的索引值
# argsort( )返回的是数组值从小到大排列所对应的索引值,然后赋值给top_k
# top_k记录了5个最大概率物体的索引值
top_k = predictions.argsort( )[-5:][::-1]
# 创建类,将类别ID转换为人类易读的标签
node_lookup = NodeLookup( )
9797
21Y3228.indd 97 2019/10/10 14:24:36第四章 人工智能应用系统开发
# 输出概率最高的5个类别名称及对应概率值
for node_id in top_k:
# 获取分类名称
human_string = node_lookup.id_to_string(node_id)
# 获取该分类的概率值
score = predictions[node_id]
# 输出结果的事物名称和概率值
print('%s (score = %.5f)' % (human_string, score))
print( )
体 验
从教科书配套学习资源包中打开第四章目录中的操作说明,按操作说明执行
“recognition.py”,利用 Inception v3模型进行图像识别。
1. 运行程序,程序自动识别子目录image下的图片,显示图片,并显示识别图片的
类别。
2. 记录所识别的图片和识别结果。
3. 统计图像识别的错误率,思考是什么原因造成的。通过查阅相关资料,了解提高
图像识别准确率的方法。
4 . 3 . 3 系统集成
系统集成是将分散的设备、功能和信息等集
成到相互关联、统一和协调的系统之中。拍照识
物智能玩具项目就是把系统开发的软、硬件集成
在一起。
1. 玩具集成
本章项目范例学习以玩具小熊作为外观。在
小熊眼睛处放置摄像头以拍摄图像,在手部放置
按键开关以启动程序拍照识别功能,树莓派和移
动电源放置在小熊身体内,在小熊的胸腹部嵌入
显示屏幕,显示识别结果,如图4-13所示。 图4-13 拍照识物智能系统玩具集成
98 98
21Y3228.indd 98 2019/10/10 14:24:394.3 人工智能应用系统项目实施
2. 树莓派和主要部件连接
将树莓派作为智能玩具的一部分,使用移动电源供电。通过树莓派的专用接口连接摄
像头和显示器,通过GPIO接口连接按键,如图4-14所示。
图4-14 树莓派与主要部件连接
3. 软件部署
将本章项目范例设计的程序设置为开机运行,部署于树莓派中。
4. 系统测试
系统测试是将硬件、软件、操作人员看作一个整体,对整个系统进行测试,以检验系
统是否有不符合需求的地方。这种测试可以发现系统分析和设计中的错误。测试步骤如图
4-15所示。
图4-15 系统测试步骤
9999
21Y3228.indd 99 2019/10/10 14:24:40第四章 人工智能应用系统开发
项目实施
各小组根据项目选题及拟订的项目方案,结合本节所学知识,开发人工智能应用系
统,进一步完善该项目方案中的各项学习活动,并参照项目范例的样式,撰写相应的项目
成果报告。
成果交流
各小组运用数字化学习工具,将所完成的项目成果,在小组或班级上进行展示与
交流,共享创造、分享快乐。
活动评价
各小组根据项目选题、拟订的项目方案、实施情况以及所形成的项目成果,根据教科
书附录2的“项目活动评价表”,开展项目学习活动评价。
100100
21Y3228.indd 100 2019/10/10 14:24:40本章扼要回顾
本章扼要回顾
同学们通过本章学习,根据“人工智能应用系统开发”知识结构图,扼要回顾、总
结、归纳学过的内容,建立自己的知识结构体系。
回顾与总结
101101
21Y3228.indd 101 2019/10/10 14:24:43第四章 人工智能应用系统开发
本章学业评价
同学们完成下列测试题(更多的测试题可以在教科书的配套学习资源包中查看),并
通过“本章扼要回顾”以及本章的项目活动评价,综合评价自己在信息技术知识与技能、
解决实际问题的过程与方法,以及相关情感态度与价值观的形成等方面,是否达到了本章
的学习目标。
1.单选题
(1)( )不是人工智能应用系统的开发工具与平台。
A. Scikit-learn B. 国家人工智能开放创新平台
C. TensorFlow D. Photoshop
(2)某同学想开发一个做社会调查时候用的手机程序。程序要实现的核心功能是将
受访者的语音直接记录为文字,首选的开发工具是( )。
A. Scikit-learn B. 国家人工智能开放创新平台
C. TensorFlow D. Python
(3)人工智能应用模块基本开发流程,不包括( )。
A. 调研 B. 设计 C. 实现 D. 测试
2.思考题
如何根据实际条件,选择合适的人工智能开发平台与工具?谈谈自己的方法或经验。
3.情境题
自然语言是人类智慧的结晶,自然语言处理是人工智能的一个发展领域,是人工智能
中最困难的问题之一,而自然语言处理技术的研究却充满挑战和魅力。自然语言处理可用
于智能对话系统、个性化内容推荐、舆情监控和拼写纠错等各种应用场景。
(1)下列两个句子中的“它们”代表什么?
“我们把香蕉给猴子,因为它们饿了。”
“我们把香蕉给猴子,因为它们熟透了。”
自然语言处理可以通过什么方法来确定“它们”是什么?
(2)若要设计一个能猜出评论者心情的程序,应该如何着手,依据是什么?
102102
21Y3228.indd 102 2019/10/10 14:24:45第五章 人工智能系统的安全
第五章
人工智能系统的安全
自人工智能的概念被提出以来,人类一直致力于通过智能
机器延伸、增强自身改造自然和治理社会的能力。随着信息技
术的发展,人工智能在数值计算、信息记录和博弈等领域已在
某种程度上超越了人类。由此,也引发了人们对人工智能安全
风险的普遍忧虑。所以,人类要保持对人工智能的控制能力,
防范人工智能失控的风险。同时,应用人工智能要合乎伦理。
本章将通过“分析人机共处的安全风险和伦理挑战”项
目,进行自主、协作、探究学习,让同学们通过智能系统的应
用体验,了解社会智能化所面临的伦理及安全挑战,知道维护
信息系统安全的基本方法和措施,增强安全防护意识和责任
感;同时辩证认识人工智能对人类社会未来发展的巨大价值和
潜在威胁,自觉维护和遵守人工智能社会化应用的规范与法
规,从而将知识建构、技能培养与思维发展融入运用数字化工
具解决问题和完成任务的过程中,促进信息技术学科核心素养
达成,完成项目学习目标。
人工智能应用系统的安全风险和伦理挑战
维护人工智能应用系统安全的基本方法
人工智能社会化应用的规范与法规
103103
21Y3228.indd 103 2019/10/10 14:24:47第五章 人工智能系统的安全
从“自动驾驶汽车伤人事件”分析人机共处的
项目范例 安全风险和伦理挑战
情 境
自动驾驶汽车是人类从快捷出行到轻松出行
的追求,是目前人工智能领域最受关注和最具市
场潜力的产品之一。尽管自动驾驶汽车的人工智
能系统能通过探测汽车周围的障碍物位置(如图
5-1所示),从而相应调整汽车的行驶方向与速
度,但是自动驾驶汽车在道路测试的过程中,发
生了多起交通事故,甚至造成人员伤亡,由此也
引发了人们对人工智能技术安全性的担忧。
图5-1 自动驾驶汽车与行人(示意图)
主 题
从“自动驾驶汽车伤人事件”分析人机共处的安全风险和伦理挑战
规 划
根据项目范例的主题,在小组中组织讨论,利用思维导图工具,制订项目范例的学习
规划,如图5-2所示。
图5-2 从“自动驾驶汽车伤人事件”分析人机共处的安全风险和伦理挑战
104104
21Y3228.indd 104 2019/10/10 14:24:52从“自动驾驶汽车伤人事件”分析人机共处的安全风险和伦理挑战
探 究
根据项目学习规划的安排,通过调查、案例分析、文献阅读和网上资料搜索,开展
“从‘自动驾驶汽车伤人事件’分析人机共处的安全风险和伦理挑战”项目学习探究活
动,如表5-1所示。
表5-1 “从‘自动驾驶汽车伤人事件’分析人机共处的安全风险和伦理挑战”项目学习探究活动
探究活动 学习内容 知识技能
人工智能应用系统设备 了解自动驾驶汽车的基
了解“自动驾驶
的基本结构。 本结构。
汽车伤人事件”背
通过智能系统的应用体
后的技术和人为的
了解自动驾驶汽车的人 验,了解社会智能化所面
人机协同技术机制。
原因
车协同机制。 临的伦理及安全挑战。辩
证认识人工智能对人类社
人工智能应用系统的安 认识自动驾驶汽车存在
了解人工智能应 会未来发展的巨大价值和
全风险。 的安全风险。
用系统的安全风险 潜在威胁。
人工智能应用系统的伦 认识智能设备带来的伦
和伦理挑战
理挑战。 理挑战。
信息系统安全的目标。 了解系统安全的目标。
知道维护人工智 知道维护信息系统安全
能应用系统安全的 的基本方法和措施,增强
了解信息系统安全的基
安全策略。
基本方法和措施 安全防护意识和责任感。
本方法和措施。
维护和遵守人工 自觉维护和遵守人工智
人工智能应用的道德行 了解人工智能应用的道
智能社会化应用的 能社会化应用的规范与
为规范与法规。 德行为规范与法规。
规范与法规 法规。
实 施
实施项目学习各项探究活动,进一步从“自动驾驶汽车伤人事件”分析人机共处的安
全风险和伦理挑战。
成 果
在小组开展项目范例学习过程中,利用思维导图工具梳理小组成员在“头脑风暴”活
动中的观点,建立观点结构图,运用多媒体创作工具(如演示文稿、在线编辑工具等),
综合加工和表达,形成项目范例可视化学习成果,并通过各种分享平台发布,共享创造、
分享快乐。例如,运用在线编辑工具制作的“从‘自动驾驶汽车伤人事件’分析人机共处
的安全风险和伦理挑战”可视化报告,可以在教科书的配套学习资源包中查看,其目录截
图如图5-3所示。
105105
22Y3228内文.indd 105 2020/6/3 10:46:40第五章 人工智能系统的安全
图5-3 “从‘自动驾驶汽车伤人事件’分析人机共处的安全风险和伦理挑战”可视化报告目录截图
评 价
根据教科书附录2的“项目活动评价表”,对项目范例的学习过程和学习成果在小组
或班级上进行交流,开展项目学习活动评价。
项目选题
同学们以3~6人组成一个小组,选择下面一个参考主题,或者自拟一个感兴趣的主
题,开展项目学习。
1.从“刷脸支付安全漏洞事件”分析人机共处的安全风险和伦理挑战
2.从“聊天机器人的‘不当言语’事件”分析人机共处的安全风险和伦理挑战
3.从“智能摄像头泄露隐私事件”分析人机共处的安全风险和伦理挑战
项目规划
各小组根据项目选题,参照项目范例的样式,利用思维导图工具,制订相应的项目方案。
方案交流
各小组将完成的方案在全班进行展示交流,师生共同探讨、完善相应的项目方案。
106106
21Y3228.indd 106 2019/10/10 14:24:545.1 人工智能应用系统的安全风险和伦理挑战
5.1
人工智能应用系统的安全风险
和伦理挑战和伦理挑战
随着人工智能技术的发展,人工智能渐渐与我们的工作、学习和生活密不可分。然
而,人工智能应用系统的安全风险和伦理挑战渐渐显现出来。在探讨以上风险和挑战之
前,需要先了解常见智能机器或智能系统的基本组成。
5 . 1 . 1 常见人工智能应用系统的基本组成
在常见的人工智能应用系统中,自动驾驶汽车是一种人工智能技术应用较为全面的智
能机器。它依靠人工智能、视觉计算、雷达、监控装置和全球定位系统协同工作,让计算
机可以在没有任何人类的主动操作下,自动安全地控制车辆。
探究活动
分 析
以小组合作的形式,分析自动驾驶汽车应该具备怎样的功能模块,并填写表5-2。
表5-2 自动驾驶汽车的功能模块
序号 自动驾驶功能 实现方法
1 自动行驶功能
2
3
107107
21Y3228.indd 107 2019/10/10 14:24:54第五章 人工智能系统的安全
如图5-4所示,自动驾驶汽车通常在普通汽车上加装自动驾驶控制模块、单目或多目
摄像头、车载微波雷达、激光测距仪、定位导航系统、车辆状态传感器和控制执行器等设
备,使汽车具备自动驾驶功能,包括自动行驶功能、自动变速功能、自动刹车功能、四周
环境自动监测功能、自动变道功能、自动转向功能、自动信号提醒功能和网联式自动驾驶
辅助功能等。
图5-4 自动驾驶汽车上的智能设备
自动驾驶控制模块是自动驾驶汽车的大脑,它接收各种传感输入信息(交通标志、车
距、行人方位、路况和车况等),并输出相应的决策控制信息(转向、加速、换挡和制动
等)。同时它具备知识库,能够存储各种路况行驶资料;具有人工智能分析能力,能够自
主规划路线并预判各种紧急状况。
视频摄像头利用视觉计算技术,让汽车能够实时识别交通信号灯、交通标志、车道
线、近距离低速障碍物等;同时与道路基础设施以及云端数据库通信,让汽车按照交通规
则行驶,并进行相应的路线规划。
车载微波雷达能够探测车辆周围的环境以及较远的路障。
激光测距仪能够精确绘制周边数百米内的3D地形图,为汽车提供控制决策参考。
定位导航系统加上高精度地图,能够为车辆提供精确的路径规划和导航服务。
车辆上的车辆状态传感器(如车速、加速度和转角等传感设备)和控制执行器(转
向、加速和制动等执行器)将确保汽车能够安全、有效地被驾驶者操控。
根据以上对自动驾驶汽车的基本结构和工作原理的分析,可以知道常见人工智能
应用系统将感知、计算、通信与控制集于一体。它通过人机交互接口实现与物理系统
的交互,使用网络化空间以远程的、可靠的、实时的、安全的、协作的方式操控一个
物理实体。人工智能应用系统包含无处不在的环境感知、嵌入式计算、网络通信和网
络控制等系统工程,使物理系统具有环境感知、计算、通信、精确控制、远程协作和
自适应功能。
108108
21Y3228.indd 108 2019/10/10 14:24:555.1 人工智能应用系统的安全风险和伦理挑战
5 . 1 . 2 人工智能应用系统的安全风险
人工智能应用系统最大的特征是能够实现无人干预、基于知识并能够自我修正的自动
化运行。在启动人工智能系统后,人工智能系统进行决策不再需要操控者进一步的指令,
这种决策可能会产生预料不到的结果,引发危及人类安全的问题。人工智能应用系统面临
的安全风险主要包括物理安全、数据安全、程序安全和运行安全等几个方面。
1. 物理安全风险
人工智能应用系统是计算机信息系统和物理系统的统一体。物理安全风险包括计算机
设备、设施(含网络、物理装置等)以及其他媒体因遇到地震、水灾、火灾、有害气体或
其他环境事故(如电磁污染等)而遭受破坏的问题。物理安全的首要问题是保障设备的稳
定性、可靠性和可用性。
2. 数据安全风险
人工智能应用系统依赖传感器和训练数据进行深度学习,形成自身的知识库,如果传
感器被干扰或训练数据被恶意篡改,系统自身可能被欺骗或入侵。因此,数据安全风险指
数据财产被故意地或偶然地非授权泄露、更改、破坏,或使数据被非法系统辨识、控制。
确保数据信息的完整性、保密性、可用性和可控性,对数据安全至关重要。
3. 程序安全风险
人工智能应用系统的“大脑”是经过数据训练的计算机信息系统。计算机信息系统的
运行逻辑是靠程序实现的。程序是算法的表达,因此算法及其程序的正确性和可靠性直接
影响到人工智能应用系统的安全。例如,基于机器学习算法的人工智能应用系统是大量数
据训练出来的概率判断系统,也许可以有99.99%的概率保证识别是正确的,但是对于安全
来讲,它只要出现一次识别错误,就会造成严重后果。
4. 运行安全风险
系统的运行安全是人工智能应用系统安全的重要环节,因为只有系统运行安全得到保
证,才能完成对信息的正确处理,达到发挥系统各项功能的目的。然而,由于系统可能存
在漏洞,很多木马和病毒具有极强的隐蔽性,在被触发以前,看不出有任何的危害,一旦
触发,就会对系统造成极强的破坏,如拒绝服务攻击、降维攻击、逃逸攻击、控制流劫持
和数据污染等。
利用人工智能可以达到攻击规模和攻击效率两者平衡。更高效、更精准、更隐蔽将成
为安全威胁的新特征。以更高效为例,传统计算机攻击中,攻击者往往需要在攻击规模和
攻击效率两者之间取舍,而人工智能系统使得自动完成的网络攻击更高效。以更精准为
例,在规模和效率均能达到最优效果之后,攻击者便有精力将其攻击限制在特定目标上,
识别和分析潜在目标进行更为精准的攻击。以更隐蔽为例,攻击者只需使用人工智能自动
化攻击系统进行攻击,而无须亲自执行,事后难以查出罪魁祸首。
109109
21Y3228.indd 109 2019/10/10 14:24:56第五章 人工智能系统的安全
5 . 1 . 3 人工智能应用系统的伦理挑战
人工智能发展为人类社会发展带来新机遇的同时,也带来了新挑战。人工智能是影响
面广泛的颠覆性新技术,新技术发展的不成熟和不确定性带来很多安全风险,如出现合成
声波、自动黑客攻击和数据下毒等新型数据安全攻击。不法分子将无人机或其他物理系统
变成攻击的武器,利用人工智能技术做有针对性的宣传而造成侵犯隐私和左右舆论等安全
威胁。这些问题可能会造成就业结构改变、法律与社会伦理冲击、个人隐私侵犯、国际关
系准则受挑战等问题,将对政府管理、经济安全和社会稳定乃至全球治理产生深远影响。
1. 国家安全影响
人工智能在国防领域、涉密系统、关键信息基础设施等的应用,可能对国家安全产生
影响。未来的人工智能技术有可能与核武器、飞机、计算机和生物技术一样,成为给国家
安全带来深刻变化的颠覆性技术。
2. 社会安全风险
人工智能可使机器实现自动化、智能化操作,这将对某些行业和工种造成潜在影响,
导致薪酬降低、中低技术要求的职业消失,可能影响社会安全与稳定。
3. 人身安全风险
随着人工智能与物联网的深入结合,智能产品日益融入人们的家居、医疗和交通等工
作生活,一旦这些智能产品(如智能医学诊断设备、自动驾驶汽车等)遭受网络攻击,用
户的人身安全可能受到威胁。
4. 网络安全风险
人工智能算法、系统和应用可能遭受恶意网络攻击。例如通过实施一些干扰技术,计
算机在进行深度学习时容易被欺骗。因此,有些不法分子可能会利用数据欺诈等手段远程
控制自动驾驶汽车,让汽车偏航甚至逼停汽车造成事故。
5. 隐私保护风险
人工智能应用需要建立丰富的数据集,数据收集和使用时可能会遇到数据安全风险和
隐私保护问题。以无人驾驶为例,自动驾驶车辆网络的有效运转需要依赖大量位置数据及
其他个人数据,这种大规模的数据实践可能带来诸多层面的数据安全和隐私保护风险。
6. 法律伦理挑战
人工智能的发展目标是使机器像人类一样思考和行动,但随着社会智能化程度的提
高,人工智能将面临现行法律、社会规范和道德伦理方面的挑战。如何确定人工智能产品
或系统的法律主体、权利、义务和责任,如何确保研究人员开发出与现行法律、社会规范
和道德伦理相符的算法和架构,都是人工智能的发展道路上需要考量的。
讨 论
随着智能应用系统的发展与普及,不同的安全风险与伦理挑战逐渐凸显。以小组为单
位,讨论我们身边因为人工智能引发的相关问题,探讨我们应如何应对这些风险和挑战。
110110
21Y3228.indd 110 2019/10/10 14:24:565.2 维护人工智能应用系统安全的基本方法
项目实施
各小组根据项目选题及拟订的项目方案,结合本节所学知识,剖析自动驾驶汽车伤人
事件的原因。
1. 探究自动驾驶汽车的功能模块,并填写表5-2。
2. 结合自动驾驶汽车的功能,分析自动驾驶汽车伤人事件的技术原因和人为原因。
3. 认识人工智能应用系统的安全风险和伦理挑战。
5.2
维护人工智能应用系统安全的
基本方法
人工智能技术已经广泛渗透到人们的生产和生活中,或改变了人们的出行方式,或改
善了人们的工作环境,或提高了人们的劳动效率等。人工智能技术推动人类社会发展进程
的同时,也给社会带来一定的负面影响。研究人工智能应用系统的安全策略,对人工智能
发展和人类社会发展具有重大的现实意义和深远的历史意义。
针对人工智能应用系统面临的物理安全、数据安全、程序安全和运行安全等问题,人
们提出的人工智能应用系统的安全策略如下。
探究活动
调 查
调查人工智能给社会带来的正面和负面的影响。
5 . 2 . 1 安全风险分析与审计跟踪
安全风险分析是指评估威胁发生的可能性、系统的脆弱性(受攻击的难易度)和因此
引起的潜在损失,是风险管理程序的基础,其最终目的是帮助系统管理人员进行安全防护
选择并将风险降低到可接受的程度。人工智能应用系统在设计前和运行前,要先进行静态
分析,旨在发现系统的潜在安全隐患;其次对系统进行动态分析,即进行系统运行测试,
111111
21Y3228.indd 111 2019/10/10 14:24:56第五章 人工智能系统的安全
跟踪并记录其活动状况,旨在发现系统运行期的安全漏洞;最后是系统运行后的分析,并
生成相应的系统脆弱性分析报告。常见的系统风险有后门、陷阱门、犯大错误、拒绝使
用、无法使用、伪造、故意破坏程序或数据、逻辑炸弹、错误传递、计算机病毒和超级处
理等。
审计跟踪是利用对人工智能应用系统审计的方法,对系统工作过程中的状态变化进行
详尽的审计跟踪和记录,如用户使用系统的时间、日期和具体操作,对程序和文件的使用
监控等。审计跟踪通过保存、维护和管理审计日志,实现对各种安全事故的定位。
5 . 2 . 2 备份与应急处理
在人工智能应用系统运行中,洪水、地震等自然灾害会直接导致计算机系统不能正常
运行;发电厂的事故、信息服务商的问题也会导致计算机系统的非正常运行;计算机系统
本身也可能出现故障,如系统升级时发生差错、严重的操作错误、备份中心发生故障和系
统管理员的恶意操作等都可能导致重要数据丢失,引发计算机系统灾难。
备份是指对重要的系统文件和数据进行复制和保存,甚至单独放置,有时甚至对重要
设备也会备份,以确保在系统崩溃或数据丢失后,系统能及时准确恢复,保障信息处理操
作仍能正常进行。
应急处理主要是指当人工智能应用系统受到损害、面临崩溃或发生灾难事件时,具备
完善可行的应急计划和快速恢复的应急措施,基本做到反应迅速、备份完备和恢复及时,
使系统尽快恢复正常运行,以尽可能减少由此而造成的损失。
灾难事件发生后的恢复工作主要包括两个方面:一方面是硬件的恢复,使计算机系统
重新运行起来;另一方面是数据的恢复。一般来讲,数据的恢复更为重要,难度也更大。
目前运用的数据恢复技术主要是瞬时复制技术、远程磁盘镜像技术和数据库恢复技术。
5 . 2 . 3 安全管理教育与制度建设
提高安全意识,有效保障人工智能系统安全。由于人工智能系统安全是一个综合性的
概念,是一项系统工程,综合性强、涉及面广,需各方面密切合作与配合。因此应从全局
着手,提高全员系统安全意识,增长系统安全知识,自觉遵守安全管理制度,规范化操
作,从整体上提高信息安全的防范能力。
提高技术水平,增强系统的技术防范能力。人工智能系统安全是动态的,没有一劳永
逸的安全防范措施,因此要及时更新安全技术,提高技术水平,不断调整安全策略,选用
安全性较强的操作系统和数据库系统,制定统一的安全标准、算法和协议等,不能只注重
效率而忽视了安全。
建立和健全安全管理和防范规章制度,切实发挥安全管理的重要作用。安全和管理是
112112
21Y3228.indd 112 2019/10/10 14:24:565.3 人工智能社会化应用的规范与法规
分不开的,即使有好的安全设备和系统,没有一套好的安全管理方法,并贯彻实施,安全
就是空谈。在人工智能系统安全中,人是安全管理的关键因素,要培养高素质的安全技术
人才,在管理体制上要制定相应的安全管理和防范规章制度,严格执行,自觉遵守。
讨 论
以小组合作的形式,讨论应如何制订人工智能应用系统的安全维护策略。
项目实施
各小组根据项目选题及拟订的项目方案,结合本节所学知识,探讨如何维护人工智能
系统应用安全。
1. 了解人工智能应用系统面临的安全问题。
2. 调查维护人工智能应用系统安全的基本方法和措施。
5.3
人工智能社会化应用的规范与法规
人类社会的发展经历了原始社会、奴隶社会、封建社会、资本主义社会和社会主义社
会等社会形态。社会形态的更替取决于社会的发展、科技的进步、人类的发展理念与价值
选择等因素。中国古代思想家们对技术工具的利用及环境的保护有了较深层次的认识,认
为天地万物与人类是密不可分的有机整体,人仅是自然界的一部分,强调资源可持续发
展,形成了“天、地、人合一”的生态伦理思想。
5 . 3 . 1 人工智能应用的道德规范和行为守则
人工智能技术的发展目的是利用客观世界的本质和规律,改造客观世界,满足人类的
需求,实现可持续发展。因此,人工智能技术发展和应用应该秉承先贤的技术生态伦理
观,在良好外部环境的影响下,对人工智能技术做出合理性选择,在伦理规范的作用下舍
弃该否定的技术;通过发挥良性协调机制来解决不确定的技术的伦理争议问题,使技术主
体的研究始终围绕着可靠的技术展开,从而实现人工智能技术与伦理的协同发展。
我国是一个具有上下五千年文化积淀的文明国家,在正确处理人与人、人与社会、人
与自然之间的关系中,形成了“爱国守法、明礼诚信、团结友善、勤俭自强、敬业奉献”
113113
21Y3228.indd 113 2019/10/10 14:24:56第五章 人工智能系统的安全
的道德规范,在社会交往和公共生活中遵循“文明礼貌、助人为乐、爱护公物、保护环
境、遵纪守法”的行为准则。在现代社会,公共生活领域不断扩大,人们相互交往日益频
繁,社会公德在维护公众利益、公共秩序,保持社会稳定方面的作用更加突出,成为公民
个人道德修养和社会文明程度的重要表现。
人工智能的社会应用也不例外。人工智能的应用理应避免伤害他人,要诚实可靠,不
干扰别人的系统工作,不窥探别人的数据文件,不应用人工智能技术进行偷窃,不应用人
工智能技术作伪证,要公正且不采取歧视性行为,尊重包括版权和专利在内的财产权,尊
重知识产权,尊重他人的隐私等。
探究活动
分 析
运用所学到的知识和思维方法,结合社交应用的使用情况,分析人工智能与伦理道
德的协同发展机制。
5 . 3 . 2 人工智能应用的民事与刑事法规
自动驾驶机器人、工业机器人、翻译机器人和护理机器人等人工智能产品在带给人们
便利、舒适生活的同时,也带来了新的挑战。就法律而言,如何认定责任主体、适用的民
事与刑事法规有哪些等成为重要的研究课题。
人工智能应用系统的本质属性,决定了人工智能应用的民事与刑事法规的适用性。由
全国人民代表大会常务委员会于2016年11月7日发布,自2017年6月1日起施行的《中华人
民共和国网络安全法》,就是为保障网络安全,维护网络空间主权和国家安全、社会公共
利益,保护公民、法人和其他组织的合法权益,促进经济社会信息化健康发展而制定的。
阅 读
《中华人民共和国网络安全法》主要内容包括:维护网络主权和战略规划、保障网络
产品和服务安全、保障网络运行安全、保障网络数据安全、保障网络信息安全、监测预警
与应急处置、网络安全监督管理体制等,具体目录如下:
第一章 总则
第二章 网络安全支持与促进
第三章 网络运行安全
第一节 一般规定
第二节 关键信息基础设施的运行安全
114114
21Y3228.indd 114 2019/10/10 14:24:565.3 人工智能社会化应用的规范与法规
第四章 网络信息安全
第五章 监测预警与应急处置
第六章 法律责任
第七章 附则
其中第六章规定了法律责任的主体是网络运营者,网络产品、服务的提供者,电子信
息发送者,应用软件提供者等。
交 流
认真研读《中华人民共和国网络安全法》的各项条文,交流“自动驾驶汽车伤人事
件”的民事或刑事责任。
项目实施
各小组根据项目选题及拟订的项目方案,结合本节所学知识,分析人机共处的安全风
险和伦理挑战,进一步完善该项目方案中的各项学习活动,并参照项目范例的样式,撰写
本组的项目成果报告。
成果交流
各小组运用数字化学习工具,将所完成的项目成果,在小组或班级上进行展示与
交流,共享创造、分享快乐。
活动评价
各小组根据项目选题、拟订的项目方案、实施情况以及所形成的项目成果,根据教科
书附录2的“项目活动评价表”,开展项目学习活动评价。
115115
21Y3228.indd 115 2019/10/10 14:24:57第五章 人工智能系统的安全
本章扼要回顾
同学们通过本章学习,根据“人工智能系统的安全”知识结构图,扼要回顾、总结、
归纳学过的内容,建立自己的知识结构体系。
回顾与总结
116116
21Y3228.indd 116 2019/10/10 14:25:03本章学业评价
本章学业评价
同学们完成下列测试题(更多的测试题可以在教科书的配套学习资源包中查看),并
通过“本章扼要回顾”以及本章的项目活动评价,综合评价自己在信息技术知识与技能、
解决实际问题的过程与方法,以及相关情感态度与价值观的形成等方面,是否达到了本章
的学习目标。
1.单选题
(1)计算机设备、设施(含网络、物理装置等),以及其他媒体因遇到地震、水
灾、火灾、有害气体和其他环境事故(如电磁污染等)而遭受破坏,导致的人工智能系统
的安全风险属于( )。
A.物理安全风险 B.数据安全风险 C.程序安全风险 D.运行安全风险
(2)针对人工智能应用系统面临的物理安全、数据安全、程序安全和运行安全等几
种安全风险,人工智能应用系统的安全策略不包括( )。
A.风险分析 B.审计跟踪 C.备份与恢复 D.减少使用
(3)人工智能应用中,( )行为是有违道德规范的。
A.避免伤害他人 B.获取一切能获取的数据
C.尊重知识产权 D.尊重他人的隐私
2.思考题
某手机购物软件运行的时候,仿佛可以猜中用户的心意,向用户推荐他近期在搜寻的
商品。人工智能在为用户提供个性化服务的时候,是否会危及个人的隐私安全?思考这其
中是否存在人工智能领域的道德规范问题。
3.情境题
某地图的街景应用面向世界范围拍摄实景,该公司组建了自己专门的街景拍摄团队。
该团队上得了高山,走得了平原,既能走街串巷,也能潜水下海,且采集设备非常专业,
拍摄内容自然也是意料之中的丰富。因此需要进行复杂的数据收集和处理。
(1)采集海量图像后,通过机器学习,不但可以使系统识别照片上的街道名字、编
号,商铺的名字和商标等信息,而且可以将数据增添到自己的数据库中。请从道德规范角
度分析这种做法存在的问题。
(2)在以上案例中,应该建立什么规则,能让人们享受人工智能带来的便利的同
时,保护人们的权益?
117117
21Y3228.indd 117 2019/10/10 14:25:03附录1 部分术语、缩略语中英文对照表
附录1 部分术语、缩略语中英文对照表
ANN(Artificial Neural Network) 人工神经网络(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 基于密度的方法(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) 多智能体系统(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)
118118
21Y3228.indd 118 2019/10/10 14:25:04附录2 项目活动评价表
附录2 项目活动评价表
以培养信息素养为目标,以知识体系为载体,以项目学习活动过程与评价为途径,促
进同学们的信息技术学科核心素养达成。
项目学习主题:
项目学 学科核心 支撑
一级指标 二级指标 评价结果
习过程 素养达成 材料
从现实世界选择项目主题的能力。 □优秀
从现实世界中选 化抽象概念为现实问题的能力。 □良好
项目选题
择明确的项目主题, 对信息的敏感度和价值的判断 □中等
形成对信息的敏感 力。 □仍需努力
选定项目 度和信息价值的判
断力。 分析项目目标的能力。 □优秀
分析项目目标与 分析项目可行性的能力。 □良好
项目分析
可行性。 从现实世界发现项目素材的能 □中等
力。 □仍需努力
□优秀
组建团队与明确项目任务的能力。
□良好
组建团队与明确 项目规划 规划项目学习工具与方法的能力。
□中等
项目任务,体现正 预期项目成果的能力。
□仍需努力
确的信息社会责任
规划设计
意识。
□优秀
规划项目与交流 交流项目方案的能力。
□良好
方案。 方案交流 完善项目方案的能力。
□中等
体现正确的信息社会责任意识。
□仍需努力
□优秀
自主学习能力。
□良好
通过团队合作, 团队合作 分工与协作能力。
□中等
围绕项目进行自主、 交流与沟通能力。
□仍需努力
协作学习。
活动探究
开展探究活动,
□优秀
提升信息获取、处理 信息获取与处理能力。
□良好
与应用、创新能力。 探究活动 探究与联想能力。
□中等
实践与创新能力。
□仍需努力
119119
21Y3228.indd 119 2019/10/10 14:25:05附录2 项目活动评价表
(续表)
项目学 学科核心 支撑
一级指标 二级指标 评价结果
习过程 素养达成 材料
针对给定的任务
□优秀
进行分解,明确需 采用计算机领域的思想方法能力。
□良好
要解决的关键问 工具方法 使用数字化工具与资源能力。
□中等
题,并采用计算机 数字化学习能力。
□仍需努力
科学领域的思想方
项目实施 法,在形成问题解
决方案的过程中
□优秀
产生一系列思维 针对给定的任务进行分解。
□良好
活动。 实施方案 明确需要解决的关键问题。
□中等
完成方案中预设 完成方案中预设的目标。
□仍需努力
的目标。
清晰表达项目主题与过程。 □优秀
与团队成员共享 与团队成员共享创造与分享快乐。 □良好
成果交流
创造与分享快乐, 提升批判性思维能力与信息社会 □中等
提升批判性思维 责任感。 □仍需努力
项目成果
能力与信息社会责
交流与评价
任感。
□优秀
评价项目目标与 运用新知识与技能实现项目目标。
□良好
成果质量效果。 项目评价 项目成果的可视化表达质量。
□中等
项目成果解决现实问题效果。
□仍需努力
综合评价 □优秀 □良好 □中等 □仍需努力
注:1.评价得分90~100分为优秀(A);75~89分为良好(B);60~74分为中等(C);60分以下为
仍需努力(D)。
2.综合得分=互评×30%+自评×30%+教师评×40%。
120120
21Y3228.indd 120 2019/10/10 14:25:05普
通
高
中
普 通 高 中 教 科 书
教
科
书
信
息
技
术
选
择
信息技术
性
必
4
修
选择性必修
4
人
人 工 智 能 初 步
工
智
能
初
Rengong Zhineng Chubu
步
广
东
教
育
出
版
社
广东教育出版社
定价:9.51元
批准文号:粤发改价格[2017]434号 举报电话:12358
ook2020信息技术选择性必修-4封面.indd 4 2020/6/5 上午11:23