本书是在原书第1版的基础上,经过全面的修订、更新和扩展,保留了相同的可读性和解决问题的方法,同时介绍了新的素材和*新发展。全书分为5个部分,重点介绍了人工智能中常见的关键的技术。本书第1部分介绍了基于逻辑的方法,第2部分则重点介绍了基于概率的方法,第3部分介绍了新兴的涌现智能,探讨了基于群体智能的进化计算及其方法。接下来是*新的发展,第4部分详细介绍了神经网络和深度学习。本书*后一部分重点介绍了自然语言理解。
译者序
当前业界与学界流行的热词是人工智能、区块链、云计算、数据科学与大数据、物联网、虚拟现实,而人工智能则包含了机器学习与深度学习。三位深度学习之父Yoshua Bengio、Yann LeCun、Geoffrey Hinton因他们在神经计算领域的突出贡献而获得了2019年度计算机科学界的奖图灵奖。人工智能技术在60多年前就已萌芽,早年由于缺乏足够强劲的硬件和海量数据支撑,导致其发展迟缓。如今,得益于硬件算力的增强和深度学习算法的进步,加上互联网及移动计算产生的海量数据,人工智能技术的发展和应用具备了成熟条件。越来越多的国家和地区将人工智能上升为发展战略,并将其视作促进经济繁荣、社会福祉、国家安全的重要筹码。在近数年中,计算机视觉、语音识别、自然语言处理和机器人取得的爆炸性进展都离不开人工智能与机器学习。
为满足业界急剧上升的人才需求,全国已有500余所高校设立了大数据与人工智能类专业,科技前沿公司也纷纷布局自己的研发战略及产品生态。本书从独特的视野介绍了人工智能中出现的关键技术。全书分为5个部分:第1部分介绍了基于逻辑的方法;而第2部分重点介绍了基于概率的方法;第3部分介绍了涌现智能的特点,探讨了基于群体智能的进化计算方法;接下来是的发展,介绍了人工神经网络和深度学习;后一部分重点介绍了自然语言理解。
本书的两位作者是人工智能领域的学科引领者及创业者。Richard E.Neapolitan博士是美国东北伊利诺伊州大学的计算机科学名誉教授和美国西北大学的生物信息学教授,同时也是贝叶斯网络解决方案公司总裁。其研究兴趣包括概率和统计、决策支持系统、认知科学以及概率模型等在医学、生物学和金融等领域的应用。Xia Jiang博士是美国匹兹堡大学医学院生物医学信息学系的副教授。她在人工智能、机器学习、贝叶斯网络和因果学习等方面拥有超过16年的教学和研究经验,并将这些方法用于建模和解决生物学、医学和转化科学领域的问题。
本书适合作为本科教学参考书及高职院校培训教材,对研究生自修也有极大帮助,对自学及实战者也是不可多得的辅助参考。本书的翻译出版得益于机械工业出版社编辑的推荐与鼓励,在此特致感谢。我的研究生们在全书的初稿形成、图表编辑等诸多方面给予了帮助,在此一并致谢。由于译者水平有限,加之人工智能与机器学习领域新兴概念繁多,难免误译或词不达意,敬请读者赐教与原谅。
译者谨识2021.5原 书 前 言原 书 前 言
近年来,我对人工智能(AI)课程的认识产生了巨大转变。曾经认为该课程应该讨论为建立一个可以在复杂、变化的环境中进行学习和决策、影响该环境并将所获知识和决策传达给人类的人工实体的工作,即一个可以思考的实体。因此,在课程中会引入那些未能扩展的弱人工智能方法。但是,随着强人工智能方法在有限领域解决挑战性问题时越来越重要,我们的课程也越来越关注于这些方法。现在将引入反向链、正向链、规划、贝叶斯网络推理、规范决策分析、进化计算、决策树学习、贝叶斯网络、监督学习、无监督学习以及强化学习,我们将展示这些方法的实际应用。这些技术对于计算机科学专业的学生来说已经变得与分治法、贪婪方法、分支定界法等技术同等重要。然而,除非学生选修了人工智能课程,否则将不会学到上述方法。因此,我的人工智能课程演变成了一门本科学生可以同时或跟随在算法分析课程之后学习的课程,它将涵盖我认为比较重要的人工智能领域的问题求解方案。我觉得这样的课程应该像数据结构和算法分析一样,成为计算机相关专业本科培养计划中的核心课程之一。
由于以下两个原因,尚未有图书能满足我所教授课程的需要:
1)人工智能是一个广阔的领域,在过去的50年中,发展出了许多各种各样的技术。现有的图书试图涵盖全部内容,而不是简单地提供有用的方法和算法。
2)目前没有图书可供美国东北伊利诺伊州大学等主要大学的学生使用。我对算法分析课程也有同样的困惑,这也是写作《算法基础》的原因。
因此,我使用自己的《贝叶斯网络》课本和课堂笔记来教授该课程。后,我决定将这些笔记变成这本著作,以便其他高校的教授也可以提供类似的课程。虽然我竭力使所有计算机科学专业的学生都能读懂这本书,但依旧很难在严格意义上进行折中。我觉得本书适合在任何开设人工智能课程的高校中使用。
本书撰写的目的不是要成为AI的百科全书或呈现AI发展史,而是在一个学期有限的时间内,尽量涵盖AI内容,并且向学生讲授那些我认为与AI相关的为有用的技术。这些技术包括:
1)基于逻辑的方法;
2)基于概率的方法;
3)基于群体智能的进化计算与方法;
4)神经网络与深度学习;
5)语言理解。
本书清楚地反映了我自己的偏好。书中没有讨论模糊逻辑、支持向量机以及AI中的许多其他分支。例如没有包括搜索技术,因为大多数搜索技术都出现在数据结构和算法图书中。书中几乎一半的内容是有关概率的方法,可能有部分原因是我对这些方法为了解,因为这是我自己的研究领域,也可能因为我认为它们是为重要的(这就是为什么概率成为我的研究领域)。在第2版中,增加了关于神经网络和深度学习的部分,因为它们在语音和图像识别等领域的使用越来越广泛。
本书的撰写是以我讲授的顺序为基础。因此,建议大家从头至尾按顺序学习这些章节。如果没有时间学习整本书,建议可以跳过9.3~9.6节内容,这些章节探讨了决策分析中的高阶主题,而11.6节则涉及因果学习。标有(*)的部分所包含的内容与书中的其他内容相比,难度较高,但确涵盖了重要的主题,如果学生有足够的能力来掌握它们,则不应跳过这些章节。
感谢Dawn Holmes和Kevin Korb阅读了手稿并提供了有用的评论。我还要感谢Prentice Hall出版社允许节选了我的著作Learning Bayesian Networks,以及感谢Morgan Kaufmann出版社允许节选了我的著作Probabilistic Methods for Financial and Marketing Informatics和Probabilistic Methods for Bioinformatics。
Richard E.Neapolitan RE-Neapolitan@neiu.edu
程国建,博士,教授,西安培华学院智能科学与信息工程学院(中兴电信学院)院长。1990年12月获中国石油大学(华东)计算机应用专业工学学士学位;1994年6月获西安电子科技大学计算机与人工智能专业工学硕士学位;1997年9月至2001年12月留学德国图宾根大学,获理学博士学位(Dr.rer.nat.)。2002年3月至2003年8月在戴姆勒集团(Daimler AG,奔驰汽车公司)从事汽车嵌入式软件产品线构造、车载多媒体互连架构(Telematics)等方面的研究工作。2004年9月回国任教,2008年底破格晋升教授职称,2009年7月荣获陕西省优秀留学回国人员荣誉称号,2010年12月赴美国西弗吉尼亚大学石油工程系进行访学活动。近几年主持并完成十余项科研项目,包括国家自然科学基金项目2项,指导研究生50余名,在相关学术研究领域及国际会议发表文章150余篇,其中核心期刊70余篇,三大检索(SCI/ISTP/EI)论文50余篇,出版专(译)著十余部。主要科研领域及研究方向包括:计算智能、机器学习、模式识别、图像处理、智能数字油田、商业智能、大数据与智慧城市等。
目录
译者序
原书前言
作者简介
第1章人工智能入门1
1.1人工智能的历史2
1.1.1什么是人工智能2
1.1.2人工智能的出现3
1.1.3认知科学与人工智能3
1.1.4人工智能的逻辑方法4
1.1.5基于知识的系统4
1.1.6人工智能的概率方法5
1.1.7进化计算和群体智能6
1.1.8神经网络与深度学习6
1.1.9创建HAL6
1.2大纲7
第1部分逻 辑 智 能
第2章命题逻辑8
2.1命题逻辑基础9
2.1.1语法9
2.1.2语义10
2.1.3重言式和逻辑含义13
2.1.4逻辑参数14
2.1.5派生系统17
2.2归结20
2.2.1范式20
2.2.2归结的推导21
2.2.3归结算法24
2.3人工智能应用25
2.3.1基于知识的系统25
2.3.2wumpus world35
2.4讨论和扩展阅读41
练习41
第3章一阶逻辑44
3.1一阶逻辑基础44
3.1.1语法44
3.1.2语义46
3.1.3有效性和逻辑蕴涵49
3.1.4推导系统51
3.1.5一阶逻辑的分离规则54
3.2人工智能应用57
3.2.1重访wumpus world57
3.2.2计划57
3.3讨论和扩展阅读60
练习60
第4章特定知识表示63
4.1分类学知识63
4.1.1语义网64
4.1.2人类知识的组织模型65
4.2框架65
4.2.1框架数据结构65
4.2.2使用框架做旅行规划66
4.3非单调逻辑68
4.3.1界限68
4.3.2默认逻辑69
4.3.3难点70
4.4讨论和扩展阅读70
练习71
第5章学习确定性模型72
5.1监督学习72
5.2回归72
5.2.1简单线性回归73
5.2.2多元线性回归75
5.2.3过拟合和交叉验证76
5.3参数估计78
5.3.1简单线性回归的参数估计78
5.3.2梯度下降80
5.3.3逻辑回归和梯度下降82
5.3.4随机梯度下降82
5.4决策树的学习83
5.4.1信息论85
5.4.2信息增益和ID3算法87
5.4.3过拟合89
练习89
第2部分概 率 智 能
第6章概率论92
6.1概率基本知识94
6.1.1概率空间94
6.1.2条件概率与独立性96
6.1.3贝叶斯定理98
6.2随机变量99
6.2.1随机变量的概率分布99
6.2.2随机变量的独立性103
6.3概率的含义106
6.3.1概率的相对频率法106
6.3.2主观概率108
6.4应用中的随机变量110
6.5wumpus world的概率112
练习114
第7章不确定性知识的表示117
7.1贝叶斯网络的直观介绍118
7.2贝叶斯网络的性质120
7.2.1贝叶斯网络的定义120
7.2.2贝叶斯网络的表示123
7.3贝叶斯网络的因果网络124
7.3.1因果关系124
7.3.2因果关系和马尔可夫条件125
7.3.3没有因果关系的马尔可夫条件128
7.4贝叶斯网络的推理129
7.4.1推理示例129
7.4.2推理算法和包131
7.4.3使用Netica推断132
7.5具有连续变量的网络133
7.5.1高斯贝叶斯网络133
7.5.2混合网络135
7.6取得概率137
7.6.1多继承的固有问题137
7.6.2基本noisy OR- gate模型137
7.6.3leaky noisy OR-gate模型138
7.6.4附加模型140
7.7大规模应用:Promedas140
练习142
第8章贝叶斯网络的高级特性144
8.1附带条件独立性144
8.1.1附带条件独立性实例145
8.1.2d-分离147
8.2忠实性150
8.2.1非忠实概率分布150
8.2.2忠实条件151
8.3马尔可夫等价152
8.4马尔可夫毯和边界155
练习155
第9章决策分析159
9.1决策树160
9.1.1简单的例子160
9.1.2求解更复杂的决策树163
9.2影响图172
9.2.1用影响图表示决策问题172
9.2.2求解影响图177
9.2.3求解影响图的技术177
9.2.4使用Netica求解影响图181
9.3风险建模偏好185
9.3.1指数效用函数185
9.3.2评估r186
9.4分析直接风险187
9.4.1使用方差来衡量风险187
9.4.2风险列表188
9.4.3决策的地位190
9.5良好的决策与良好的结果192
9.6敏感性分析193
9.7信息的价值195
9.7.1完备信息的预期值195
9.7.2不完备信息的预期值198
9.8讨论和扩展阅读199
9.8.1学者199
9.8.2商业和金融199
9.8.3资本设备199
9.8.4计算机游戏200
9.8.5计算机视觉200
9.8.6计算机软件200
9.8.7医学200
9.8.8自然语言处理200
9.8.9规划201
9.8.10心理学201
9.8.11可靠性分析201
9.8.12调度201
9.8.13语音识别201
9.8.14车辆控制与故障诊断201
练习201
第10章学习概率模型参数207
10.1学习单个参数207
10.1.1二项式随机变量207
10.1.2多项式随机变量210
10.2在贝叶斯网络中学习参数211
10.2.1学习参数的步骤211
10.2.2等效样本量212
10.3缺少数据的学习参数214
练习220
第11章学习概率模型结构222
11.1结构学习问题222
11.2基于分数的结构学习223
11.2.1贝叶斯分数223
11.2.2BIC分数229
11.2.3一致的评分准则231
11.2.4DAG评分的数量231
11.2.5使用学习网络进行推理*231
11.2.6缺少数据的学习结构*232
11.2.7近似结构学习238
11.2.8模型平均242
11.2.9近似模型平均*244
11.3基于约束的结构学习246
11.3.1学习一个服从于P的DAG246
11.3.2学习一个可信嵌入P中的DAG251
11.4应用:MENTOR251
11.4.1开发网络251
11.4.2验证MENTOR253
11.5用于学习的软件包254
11.6因果学习254
11.6.1因果置信假设254
11.6.2因果嵌入置信假设256
11.6.3应用:大学生保留率问题258
11.7类概率树261
11.7.1类概率树理论261
11.7.2目标广告应用262
11.8讨论和扩展阅读265
11.8.1生物学265
11.8.2商业和金融265
11.8.3因果学习266
11.8.4数据挖掘266
11.8.5医学266
11.8.6天气预报266
练习266
第12章无监督学习和强化学习270
12.1无监督学习270
12.1.1聚类270
12.1.2自动发现271
12.2强化学习271
12.2.1多臂强盗算法272
12.2.2动态网络*274
12.3讨论和扩展阅读282
练习283
第3部分涌 现 智 能
第13章进化计算284
13.1遗传学评论284
13.2遗传算法286
13.2.1算法286
13.2.2说明性示例287
13.2.3旅行的销售人员问题289
13.3遗传编程296
13.3.1说明性示例296
13.3.2人工蚂蚁299
13.3.3金融交易应用300
13.4讨论和扩展阅读302
练习303
第14章群体智能305
14.1蚂蚁系统305
14.1.1真实蚁群305
14.1.2求解TSP人工蚂蚁算法306
14.2鸟群308
14.3讨论和扩展阅读310
练习311
第4部分神 经 智 能
第15章神经网络和深度学习312
15.1感知器312
15.1.1学习感知器的权重313
15.1.2感知器和逻辑回归316
15.2前馈神经网络318
15.2.1XOR建模318
15.2.2两个隐层示例319
15.2.3前馈神经网络的结构322
15.3激活函数323
15.3.1输出节点323
15.3.2隐层节点326
15.4应用于图像识别327
15.5讨论和扩展阅读327
练习328
第5部分语 言 理 解
第16章自然语言理解331
16.1语法解析332
16.1.1递归语法解析器334
16.1.2歧义性335
16.1.3动态编程语法解析器337
16.1.4概率语法解析器340
16.1.5获得PCFG的概率342
16.1.6词典化的PCFG343
16.2语义解释344
16.3概念/知识解释345
16.4信息检索346
16.4.1信息检索的应用346
16.4.2信息检索系统的体系结构347
16.5讨论和扩展阅读348
练习348
参考文献350