第一章 人工智能概述
1.0引言
1.0.1 人工智能的定义————人造的智能
要确定人工智能的优缺点,就必须首先理解和定义智能。
1.0.2 思维与智能
R.斯腾伯格的定义:
智能是个体从经验中学习、正确推理、记忆重要信息,以及应对日常生活需求的认知能力
以下有三个问题,以及其可能的回答:
1.如何判定某个人或物是否有智能?
可以通过与其他人交流(如发表意见或提出问题)来观察他们的反应,每天多次重复这一过程,来间接地评估他们的智能。
2.动物是否有智能?
依据斯腾博格的定义,有的动物有,有的动物没有,有的生物只在群体中才表现出智能(如蚂蚁)。
3.如果动物有智能,那么如何评估它们的智能?
- 指标1:脑的质量大小以及脑与身体的质量比
- 指标2:工具的使用
人工智能宣称的目标:创建可以与人类思维媲美的计算机软件和/或硬件系统
思维的定义:
- 推理、分析、评估、形成思想和概念的工具
思维与智能的区别
- 不是所有能够思维的物体都有智能,智能也许就是高效以及有效的思维
1.1图灵测试
图灵为了评估机器的智能,寻求可操作的方式来回答智能的问题,想把“功能”和“智能”分开来。
1.1.1 图灵测试的定义
一个人类评估者会与一个机器以及另一个人类通过电脑进行文字交流。如果评估者不能可靠地区分哪个是机器,哪个是人类,那么机器就通过了图灵测试,被认为具有人类水平的智能(第二个模拟游戏)。
1.1.2 图灵测试的争议和批评
- 布洛克的批评:
可以用机械的查表方法而不是智能来通过图灵测试,这样就不能正确评估机器智能了。
- 赛尔的批评(中文房间问题):
图灵测试更多地关注机器接收、处理以及使用符号来回答问题的过程,而不是机器的思维过程或理解。
二者批评的也就是:图灵测试仅从外部观察,不能洞察某个实体的内部状态。
1.2 强人工智能与弱人工智能
人工智能的研究发展出两种截然不同但又普遍存在的学派:
- 弱人工智能:主要关注人工智能能得到令人满意的执行结果,而不要求人工智能是否使用与人类相同的方式执行任务的研究方法
- 强人工智能:基于与人类相同的方法使人造物展现智能行为的研究方法。
1.3 启发式方法
1.定义:启发式方法是解决问题的经验法则 2.启发式方法与算法的区别:
- 算法:算法是预先设定的用于解决问题的一组规则,其输出是完全可预测的
- 启发式方法:其输出可能因情况而异,不像算法那样总是产生相同的结果。启发式方法可能不总是产生最优解,但它们通常在处理复杂问题时更有效
3.启发式方法的部分内容:
- 类比推理:解决一个相对简单但相关的问题(由长方形的对角线推出长方体的对角线)
- 反向倒推(水壶问题)
- 简化问题
4.人工智能的早期研究中里程碑式的研究项目——通用问题求解器(GPS)
GPS使用人类的问题求解方法解决问题。研究员让问题求解人员在解决各种问题时说出问题的解决方法,然后收集解决问题所必需的启发式方法。
求解过程:当前状态与目标状态——>比较二者——>选择可以减小两者之间差距的操作
1.4 识别适用人工智能来求解的问题
大部分人工智能问题主要的特征:
- 人工智能问题往往是大型的问题。
- 它们在计算上非常复杂,并且不能通过简单直接的算法(如穷举)来解决。
- 人工智能问题及其领域倾向于收录大量的人类专门知识,特别是用强人工智能方法时
适合传统计算机科学的方法的问题的主要特征:涉及简单决策或精确计算
如下面的几个例子:
- 医疗诊断:经常利用专家系统
- 具有条码扫描功能的收银机的购物场景:人工智能可以做出智能决策,并以建议的方式提供给顾客
- 自动柜员机:人工智能作为一名财务总顾问来使用
- 二人博弈游戏,比如象棋和跳棋:这些博弈游戏的棋局种类数可以说是个天文数字,
专家系统通常会内置于领域,其中包含大量人类专家的知识以及大量的规则[这些规则的形式为“IF(条件),THEN 动作”],人们将开发这些规则的过程称为知识工程
用于构建专家系统的候选领域具有以下特征:
- 包含大量领域相关的知识(可以是有关特定问题领域的知识,如医疗诊断;也可以是人类努力开拓领域的相关知识,如确保核电站安全操作的控制机制)。
- 允许领域知识分层。
- 可发展成为存储了若干专家知识的知识库
1.5 应用与方法
人工智能研究领域的一些应用:(粗略地看看,后面的章节会更完整地阐述它们的)
- 搜索算法和拼图问题。
- 二人博弈。
- 自动推理。
- 产生式规则和专家系统: IF(条件),THEN 动作或者IF(条件),THEN 事实
- 细胞自动机。
- 神经计算。
- 遗传算法。
- 知识表示。
- 不确定性推理
1.6 人工智能的早期历史
- 人工智能基础的来源——亚里士多德建立的逻辑前提论 公元前 350 年,亚里士多德建立了科学思维和严密思考的模式,这成了当今科学方法的标准。他对物质和形式的区分是数据抽象的先驱性工作
- 将人类思维过程机械化的尝试 卢尔为了证明基督教的教义是真的,建立了一套基于逻辑的系统。他在《伟大的艺术》(Ars Magna)一书中,用几何图和原始逻辑装置来实现这个目标。莱布尼茨将卢尔的想法推进了一步。他认为可以建立一种“逻辑演算”或“通用代数”,从而解决所有的逻辑论证,并推理出几乎任何东西。
- 布尔代数——逻辑定律的数学形式化 19世纪,逻辑学家家乔治·布尔建立了布尔代数这一表达逻辑关系的系统。
- 20世纪,哥德尔不完备定理出现
关键发明——逻辑机器
- 世界上第一台真正的逻辑机器:斯坦诺普演示器 由英国第三代斯坦诺普伯爵查尔斯·斯坦诺普(Charles Stanhope,1753—1816)建造
- 第一台原型的现代计算机:差分机 由查尔斯·巴贝奇建造,但由于资金供应停止,他未能完成这个差分机。
- 巴贝奇设想的分析机
- 第一台可以发挥完整游戏技能的机器:Nimotron 由爱德华·康登、杰拉德·特沃尼和威拉德·德尔设计。他们开发了一个算法,在棋局的任何一步,都可以得到最好的下一步移动。这是机器人技术的前奏。
- 第一个专家系统 由西班牙发明家托雷斯·克韦多(Torresy Quevedo)(1852—1936)建立,用于进行 KRK(King and Rook vs. King)残局游戏
- Z3 由康拉德·楚泽基于真空管和机电存储器改进的计算机之一,是世界上第一台基于浮点数的、可靠的、可自由编程的计算机。
逻辑家
- 克劳德·香农:著有《信息论》,他的开创性工作对电话和计算机的运行都很重要。香农有关计算机学习和博弈的研究,在人工智能领域也做出了贡献。
- 康拉德·楚泽:德国人,他发明了第一台使用电的数字计算机,还开发了一个对应于继电器条件命题的布尔代数的系统。
1.7 人工智能的近期历史到现在
1.7.1 计算机博弈
- 1959年,亚瑟·塞缪尔(Arthur Samuel)采用启发式策略设计了一个西洋跳棋博弈的程序。 这个程序下西洋跳棋很厉害,却从未达到精通的地步,是博弈人工智能青涩期的代表。
- 第一个真正的国际象棋博弈程序: Newell、Simon和Shawn开发了第一个真正的国际象棋博弈程序,这个程序遵循香农-图灵(Shannon-Turing)模式
- 理查德· 格林布拉特(Richard Greenblatt)编写了第一个俱乐部级别的国际象棋博弈程序。
- 20 世纪 70 年代末,一些计算机国际象棋程序的水平已达到顶尖专家水平 如Belle、Hitech以及能对抗卡斯帕罗夫、克拉姆尼克这些世界冠军级别棋手的“深蓝”等
- AlphaGo出现
1.7.2 专家系统
- 专家系统具有的特性:
- 知识库与推理机的分离
- 系统知识超过任何专家的总和
- 知识与搜索技术的关系
- 推理和不确定性等。
- 早期系统例子
- 最早的专家系统DENDRAL:使用启发式方法,用于质谱图鉴定未知化合物。
- MYCIN:著名的专家系统,用于传染性血液疾病研究,树立了基于知识系统的典范。
- 20世纪70年代之后的系统
- PROSPECTOR:用于矿物勘探,使用了推理网络。
- XCON:用于配置VAX计算机上的电路板,有约10000条规则。
- GUIDON:MYCIN的一个分支,用于辅导系统。
- TEIRESIAS:MYCIN的知识获取工具。
- HEARSAY I 和 HEARSAY II:使用黑板架构进行语音理解的早期例子。
- AM系统:由Doug Lenat开发的人工数学家系统。
- 20世纪80年代以来的发展
- 数千个专家系统在配置、诊断、教学、监测、规划、预测病情、治疗和控制等领域得到开发。
- 专家系统嵌入其他软件系统,用于医疗设备和汽车等控制目的。
- 专家系统的壳层如Emycin、OPS、EXSYS和CLIPS成为工业标准。
1.7.3 神经计算
- 早期神经计算研究
- McCulloch和Pitts他们的人工神经网络(ANN)模型缺乏学习机制。
- 感知器学习规则
- Frank Rosenblatt引入了感知器学习规则的迭代算法。
- 以便于在单层网络中找到适当的权重。
- 挑战和障碍
- Minsky和Papert声称单层感知器无法解决某些问题,如异或函数,不能通过单层感知器解决
- 与神经网络研究相关的美国联邦基金大幅削减。
- 1980年代的第二波浪潮
- 在1980年代初,由Hopfield的工作,神经计算领域带来了第二次爆发。
- Hopfield网络使用能量函数找到了NP完全问题的近似解。
- 反向传播算法
- 在1980年代中期,反向传播算法出现,适用于多层网络的学习。
- 广泛应用于预测道琼斯指数和第11章中的光学字符识别。
- 神经网络的应用
- 神经网络,特别是基于反向传播的网络,用于预测金融指数。
- 卡内基·梅隆大学的ALVINN项目将反向传播应用于协助车辆在高速公路上导航。
- 直接应用:在司机判断力减弱导致车辆偏离车道时提醒驾驶员。
1.7.4 进化计算
- 解决组合问题(优化问题)
- John Holland开发了使用概率和并行性的遗传算法来解决这个问题
- Rodney Brooks放弃了基于符号的方法,转用自己的方法成功地创造了一个人类水平的人工智能
- 包容体系架构方法
- Rodney Brooks所创,它可以将智能系统设计为层次结构,其中的高层级依赖于其下面的层级
1.7.5 自然语言处理(NLP)
早期应用(语法分析都发挥了不可或缺的作用):
- 约瑟夫·魏岑鲍姆(Joseph Weizenbaum)的 Eliza Eliza是世界上第一个聊天机器人。然而,它并不能理解谈话者的的话,只是采用关键词检测、搜寻对应关键词回答的模式匹配方式拙劣地伪装成类似于人类的交互。
- 特里·威诺格拉德(Terry Winograd)的 SHRDLU SHRDLU 使用意义、语法、演绎推理来理解和响应英文命令,它的机器人手臂可以与上面放着各种形状、大小和颜色的积木的桌面互动。
- HEARSAY语音识别程序
- 采用了黑板架构
- HWIM
- 使用增强的转移网络来理解口语
NPL进步的最大障碍——常识
- 程序并没有一般的现实世界的知识或者说常识。
- 应对:在过去的 25 年里,得克萨斯州奥斯汀MCC 的道格拉斯·莱纳特(Douglas Lenat)已经建立了最大的常识知识库来解决这个问题。
近年来NLP领域的重大范式转变
- 查尼阿克(Charniak)介绍了如何增强上下文无关的语法,以赋予每条规则相关的概率
- 这些相关概率可以从宾州树库(Penn Treebank)中获取
1.7.6 生物信息学
生物信息学是将计算机科学的算法和技术应用于分子生物学的一门新兴学科,主要关注生 物数据的管理和分析。尤其是在蛋白质结构方面,人工智能技术发挥了不少功用。
1.8 新千年人工智能的发展
人工智能拓展未来可能性,如ALVINN控制车辆、金融决策系统,以及互联网智能体搜索新闻。科技发展将影响寿命、医疗等各个方面。未来机器人展望广泛,但带来新风险。谨慎思考,为未知未来做准备。
与其说是笔记,不如说是摘要吧哈哈哈哈。