奎克的藏经阁 · MinerU 解析内容

人工智能时代:破解人机共存密码(套装共10册)

3314 个 PDF 物理页 · 本页显示文件第 331–340 页

PDF 物理页索引 330

文件中的第 331 页 · 印刷页码:未识别

图18 《大富翁》游戏中掷色子的贝叶斯网络

就像命题逻辑一样,有些算法可以用任何证据回答任何贝叶斯网络的任何问题。例如,我们可以问,我落在黄色地皮上的概率是多少,结果是大约3.88%。(这意味着乔治可以先等一等,然后再为黄色地皮买房子。)稍微激进些,我们可以问,在第二次掷色子结果是两个3的情况下,我落在黄色地皮上的概率是多少。在这种情况下,该算法可以自行算出第一次掷色子的结果必须是相同的两个数字,并得出答案约为36.1%。这是贝叶斯更新的一个例子:当添加新的证据(即第二次掷色子结果是两个3)时,落在黄色地皮上的概率从3.88%变为36.1%。同样,我掷3次色子(Doubles<sub>34</sub>为真)的概率约为2.78%,而我掷3次色子并落在黄色地皮上的概率约为20.44%。

贝叶斯网络提供了一种基于知识系统的方法,避免了和20世纪80年代基于规则的专家系统一样的失败。(事实上,人工智能界如果在20世纪80年代初不那么强烈地抗拒概率,就可能会避免基于规则的专家系统泡沫之后的人工智能寒冬。)从提供医学诊断到预防恐怖主义,成千上万个应用已经在各个领域投入使用。<sup>[3]</sup>

贝叶斯网络为表示必要的概率和执行计算提供了机制,为许多复杂任务实现了贝叶斯更新。然而,就像命题逻辑一样,它们表达一般知识的能力也相当有限。在许多应用中,贝叶斯网络表达变得非常庞大且重复,例如,就像用命题逻辑表达围棋规则时每一步棋都需要重复一样,基于概率的《大富翁》规则必须重复每一个玩家、每一个玩家所在的每一个可能位置,以及游戏中的每个动作。如此巨大的网络实际上不可能由人工创建,相反,人们将不得不求助于用传统语言(如C++)编写的代码来生成多个贝叶斯网络片段并将它们拼凑在一起。虽然这作为具体问题的工程解决方案是可行的,但它是通用性的一个障碍,因为每个应用程序的C++代码都必须由人类专家编写。

PDF 物理页索引 331

文件中的第 332 页 · 印刷页码:未识别

一阶概率语言

幸运的是,我们可以将一阶逻辑的表达能力与贝叶斯网络精确获取概率信息的能力结合起来。这种结合让我们得到一加一大于二的效果:基于概率知识的系统能够处理比单用逻辑方法或贝叶斯网络更广泛的现实世界情况。例如,我们可以轻松获取关于基因遗传的概率知识:

对于所有人c、f和m,

如果f是c的父亲,且m是c的母亲,

且f和m都是AB型血,

那么c是AB型血的概率为50%。

实际上,一阶逻辑和概率论的结合给了我们一种表达许多对象的不确定信息的方式。原因是,当我们把不确定性添加到包含对象的世界时,我们就得到了两种新的不确定性:不仅有关于哪些事实是真或假的不确定性,还包括存在哪些对象的不确定性,以及对象的对应关系的不确定性。这类不确定性无处不在。这个世界并不像维多利亚时代的戏剧一样有人物列表,相反,你会通过观察逐渐了解对象的存在。

有时候,你对新对象的了解可能相当明确,比如你打开酒店的窗户,第一次亲眼看到圣心教堂;而有时,这种了解也可能相当不明确,比如当你感觉到轻微的震动时,这可能是地震造成的,也可能是路过的地铁造成的。虽然你对是不是圣心教堂感到非常确定,但关于是不是地铁导致的震动你并不能确定,你可能会乘坐同一列列车几百次,却从未意识到它们是同一列列车。有时我们不需要解决不确定性,我通常不会给一袋圣女果中的所有大果命名,并记录每个圣女果有多好,除非我是在记录圣女果腐烂实验的进展。而对于一个全是研究生的班级,我会尽我最大的努力记住他们的身份。(有一次,我的小组里有两名研究助理,他们的名字和姓氏相同,外貌非常相似,研究的课题也很相关,但至少我非常肯定他们是两个人。)问题是,我们直接感知的不是对象的身份,而是对象的外貌,对象通常没有唯一的标识性小牌子。身份是我们的大脑有时为了我们自己的目的而添加到对象上的东西。

PDF 物理页索引 332

文件中的第 333 页 · 印刷页码:未识别

概率论与有表达能力的正式语言的结合是人工智能的一个非常新的子领域,通常被称为概率编程。<sup>[4]</sup>人们已经开发了几十种概率编程语言(PPL),其中许多都是从普通编程语言而不是从一阶逻辑中获得表达能力的。所有的概率编程语言系统都具有用复杂的、不确定的知识进行表达和推理的能力。其应用有微软的TrueSkill系统,该系统每天为数百万名电子游戏玩家评级;还有以前任何机械假说都无法解释的人类认知方面的模型,例如,根据单个例子学习新的视觉对象类别的能力;<sup>[5]</sup>还有《全面禁止核试验条约》(CTBT)中规定的用于探测秘密核爆炸的全球地震监测。<sup>[6]</sup>

该监测系统从全球网络(由150多台地震仪组成)中搜集实时地面活动数据,旨在识别地球上发生的所有超过一定震级的地震事件,并对可疑的地震事件进行标记。显然,这里存在着大量的不确定性,因为我们事先不知道将会发生什么事件,而且数据中的绝大多数信号都是噪声。另外,身份上的不确定性也有许多,比如,在南极洲的A站探测到的地震能量信号和来自巴西的B站探测到的另一个信号是不是同一事件?聆听地球的声音就像听同时进行的成千上万个对话,它们在传输上会延迟,也会被回声干扰,被地震淹没。

我们如何使用概率编程解决这个问题?有人可能会认为,我们需要一些非常聪明的算法来解释所有的可能性。事实上,通过遵循基于知识系统的方法,我们根本不需要设计任何新算法。我们仅需使用概率编程语言来表达我们对地球物理学的了解:在自然地震活动区发生事件的频率,地震波在地球上的传播速度和衰减速度,探测器的灵敏度,以及噪声的大小。然后我们添加数据并运行概率推理算法。由此产生的监测系统名为NET-VISA,自2018年以来,该系统一直作为条约核查制度的一部分运行。图19展示了NET-VISA检测到的2013年朝鲜核试验情况。卫星照片中标出了隧道入口。NET-VISA估计的位置距离隧道入口约700米,主要基于4 000至10 000公里以外的站点的探测结果。CTBTO(全面禁止核试验条约组织)的定位基于专业地球物理学家的一致估计。

PDF 物理页索引 333

文件中的第 334 页 · 印刷页码:未识别

PDF 物理页索引 334

文件中的第 335 页 · 印刷页码:未识别

PDF 物理页索引 335

文件中的第 336 页 · 印刷页码:未识别

了解世界

概率推理最重要的作用之一是了解世界上无法直接被观察到的部分。在大多数电子游戏和棋类游戏中,这一作用并不是必要的,因为所有相关信息都是可见的,但在现实世界中这种全部可见的情况很少出现。

最早的一起涉及无人驾驶汽车的严重事故就是一个例子。这起事故发生在2017年3月24日,美国亚利桑那州坦佩市东唐卡洛斯大街的南麦克林托克大道上。<sup>[7]</sup>如图20所示,一辆沿着麦克林托克大道向南行驶的沃尔沃无人驾驶汽车(V)正在接近一个红绿灯刚刚变成黄灯的十字路口,以每小时38英里的速度行驶在最右侧的车道上。沃尔沃的车道是畅通的,所以它匀速通过十字路口。另外两条车道的车辆是停着的,红绿灯(标记为L)变成了黄灯。然后一辆不在沃尔沃视野中的车——图20中的本田(H),从停着的两队车后面突然出现,随后发生了碰撞。

PDF 物理页索引 336

文件中的第 337 页 · 印刷页码:未识别

为了推断出可能存在的看不见的本田,沃尔沃可以在接近十字路口时搜集线索。特别值得注意的是,虽然绿灯亮了,但其他两条车道的车辆也是停着的,排在队伍前面的汽车没有缓慢驶入十字路口,它们亮着刹车灯。这并不是对面存在左转车辆的确凿证据,但这不需要确凿证据。即使很小的可能性也足以使沃尔沃放慢速度,更谨慎地驶入十字路口。

这个事件的寓意是,在部分可见的环境中运行的智能体必须根据它们所拥有的线索,尽可能地了解它们看不到的东西。

还有一个与家庭生活关系更密切的例子:你的钥匙在哪里?除非你碰巧在一边阅读本书一边开车(不建议这样做),否则你现在可能看不到它们。而你可能知道它们在哪里:在你现在的衣服口袋里,在你的包里,在床头柜上,在你挂着的外套的口袋里,或者在厨房的挂钩上。你知道这一点是因为你把钥匙放在那里,此后就没动过。这是一个利用知识和推理来了解世界状况的简单例子。

PDF 物理页索引 337

文件中的第 338 页 · 印刷页码:未识别

没有这种能力,我们就会不知所措,多数时候都是如此。例如,当我写这篇文章时,我正看着一间普通旅馆房间的白色墙壁。我在哪里?如果我只能依靠我目前的感知输入,我的确会不知所措。事实上,我知道我在苏黎世,因为我昨天到的苏黎世,而且还没有离开。像人类一样,机器人需要知道自己在哪里,这样它们才能成功地在房间、建筑物、街道、森林和沙漠中导航。

在人工智能领域,我们使用信念状态(belief state)一词来指代智能体对世界状态的当前认知,无论这种认知是多么地不完整和不确定。一般而言,信念状态——而不是当前的感知输入,是决定做什么的正确基础。保持信念状态为最新状态是一切智能体的核心活动。对于信念状态的某些部分,这是自动发生的,例如,我似乎不需要思考就知道我在苏黎世。对于其他部分,这则是按需发生的。例如,当我经过长途旅行,在新城市中醒来时,时差严重的我可能必须有意识地努力重建自己的位置,思考自己应该做什么,以及为什么会如此,我认为这有点像重启笔记本电脑。了解并不意味着总是准确地知道世界上所有事物的状态。显然,这是不可能的,例如,我不知道在苏黎世的这家不起眼的酒店里,其他房间里现在还住着谁,更不用说地球上80亿人中的大多数人现在的位置和活动了。我根本不知道太阳系以外的宇宙其他地方发生了什么。我对当前事态的不确定感既是大量的,也是不可避免的。

了解不确定的世界的基本方法是贝叶斯更新。实现它的算法通常有两个步骤:首先是预测,在这个步骤中,智能体根据最近的动作预测世界的当前状态;然后是更新,在这个步骤中,智能体接收新的感知输入并相应地更新它的信念。为了说明它的工作原理,请考虑一下机器人在确定自身位置时所面临的问题。图21(a)给出了一个典型的例子:机器人在房间中间,它不确定自己的确切位置,并且想要通过一扇门。机器人命令轮子朝门口移动1.5米,不幸的是,它的电机老旧且车轮晃动,因此它对轮子最终会到达哪里的预测非常不确定,如图21(b)所示。如果它现在试图继续前进,那么它很可能会撞墙。幸运的是,它有一个声呐装置可以测量到门柱的距离,如图21(c)所示,测量结果显示机器人距离左门柱约70厘米,距离右门柱约85厘米。最后,机器人通过将图21(b)中的预测与图21(c)中的测量结果相结合来更新其信念状态,得到图21(d)中的新信念状态。现在机器人对自己的位置有了很准确的认识,稍微调整一下路线就能通过这扇门了,跟踪信念状态的算法不仅可以处理位置的不确定性,还可以处理地图本身的不确定性。这就产生了一种叫作SLAM(同步定位与地图构建)的技术。SLAM是许多人工智能应用的核心组件,从增强现实系统到无人驾驶汽车和行星漫游车。

PDF 物理页索引 338

文件中的第 339 页 · 印刷页码:未识别

PDF 物理页索引 339

文件中的第 340 页 · 印刷页码:未识别

图21 一个机器人试图通过一扇门

[1] 2011年,珀尔的工作获得了图灵奖。

[2] 更详细的贝叶斯网络介绍:在给定节点的父节点(即,指向该节点的那些节点)的每个可能值的组合的情况下,网络中的每个节点都用每个可能值的概率进行注释。例如,当D1和D2具有相同的值时,Doubles12的值为真的概率为1.0,否则为0.0。一个可能的世界是给所有节点赋值。这种世界的概率是来自每个节点的适当概率的乘积。

[3] 贝 叶 斯 网 络 的 应 用 概 要 : Olivier Pourret, Patrick Naïm, and BruceMarcot, eds.,Bayesian Networks: A Practical Guide to Applications (Wiley,2008)。

[4] 关 于 概 率 编 程 的 基 础 论 文 : Daphne Koller, David McAllester, and AviPfeffer,“Effective Bayesian inference for stochastic programs,” inProceedings of the 14th National Conference on Artificial Intelligence (AAAIPress, 1997)。更多参考信息,请参见:probabilistic-program-ming.org。