完成条件
2. 表征与推理(中学指南)
核心观点
- 表征是数据结构;推理方法是算法(人工智能运用计算机科学的工具:数据结构与算法)
- 表征支持推理;推理方法作用于表征(表征和推理是相互依存的)
- 知识表征的两种主要类型是符号表征和数值表征(使用符号表征进行推理是通过逻辑推理规则来实现的,而使用数值表征进行推理则会利用诸如神经网络之类的复杂数学函数)
- “知晓” 某事物意味着具备对其进行表示以及运用其进行推理的能力(书籍和视频能够呈现知识,但它们并不 “知晓” 事物,因为它们无法利用这些知识)
- 如果智能体采用一种并非简单的 “感知 - 思考 - 行动” 循环机制来朝着实现自身目标取得进展,那么它们就会被视作是智能的(要被认定为智能的,在 “感知”“思考(推理)” 或 “行动” 这些组成部分中,至少有一个部分必须需要复杂的计算方法或强大的计算能力。车库门开启装置并非智能体,因为它们的感知、推理和行动过程都非常简单)
表征:抽象(2-A-1)
- 学习目标:描述如何将一个概念表示为一种模式(架构)。
- 基本理解:一种模式(架构)通过列出其上位概念并定义其属性来描述一个概念,其中一些属性可能是从上位概念继承而来的。示例可在 schema.org 网站上找到。
- 详细说明:数以百万计的网站使用模式(架构)表示法,以使利用知识图谱的人工智能程序能够理解信息,例如搜索引擎和推荐系统。示例包括针对诸如餐馆之类的商业机构的模式(架构),以及描述诸如书籍、电影和电视剧之类的创意作品的模式(架构)。
表征:符号表征(2-A-2)
- 学习目标:将用英语表达的三段论的前提翻译成逻辑符号表示,并正确完成该三段论。
- 基本理解:三段论以一种特定方式来表示关于类别和实例的陈述,这种方式使得计算机能够依据简单的推理规则,从现有知识中推导出新知识。三段论的组成部分包括大前提、小前提和结论。
- 详细说明:人类的推理丰富且复杂,我们尚未完全掌握其运作机制。三段论推理是一种特殊情况,它足够简单,以至于我们能够为其制定精确的规则。三段论推理是一种逻辑演绎形式,在使用分类信息的人工智能推理器中较为常见。例如:所有人都是哺乳动物,所有哺乳动物都是生物,所以所有人都是生物。三段论可以使用多种符号表示法。以下是一种基于谓词逻辑的表示法:
∀x [ Human(x) → Mammal(x) ]
∀x [ Mammal(x) → LivingThing(x) ]
________________________________________
∀x [ Human(x) → LivingThing(x) ]
表征:数据结构(2-A-3)
- 学习目标:描述在知识图谱中模式(架构)是如何被用来构建关于人物、地点或事物的信息的。
- 基本理解:一种模式(架构)会指定所描述概念的属性,以及该概念与其他概念之间的关系。例如,“餐馆” 模式(架构)会从 “餐饮场所” 模式(架构)继承属性。
- 详细说明:知识图谱对有关事物及其相互关系的信息进行编码。像谷歌这样的搜索引擎依靠知识图谱在搜索结果中生成知识面板。“餐馆” 模式(架构)和 “餐饮场所” 模式(架构)是在schema.org网站上定义的。
表征:特征向量(2-A-4)
- 学习目标:描述 Transformer 网络的运行方式。
- 基本理解:Transformer 网络将输入单词序列映射为输出单词序列,其中单词以特征向量的形式表示。
- 详细说明:诸如机器翻译或问答系统之类的神经网络自然语言处理应用程序,是由作为特征向量的词嵌入表示来驱动的。单词每次以一个向量的形式输入,并且网络每次输出一个向量。
- 活动:https://app.inferkit.com/demo
搜索:状态空间与算子(2-B-1)
- 学习目标:识别现实世界中属于搜索问题的问题类型,并描述这些问题的状态和操作符。
- 基本理解:如果一个问题能够描述为从起始状态找到一条通向目标状态的路径,那么计算机就可以使用搜索技术来解决许多类型的此类问题。
- 详细说明:示例包括任务规划问题、调度问题和资源分配问题。搜索算法会确定应用哪些操作符以及应用的顺序。即使对于那些其解决方案并非是一个序列的问题,也可以通过寻找一系列合法的操作(操作符)来达到目标状态。例如,如果问题是将各种大小的一组对象打包到一组具有不同容量的容器中,那么解决方案就是将对象分配到容器中,使得没有容器被装得过满,并且没有对象被遗漏。这可以被表述为一个搜索问题,其中操作符是将一个对象放置到能够容纳它的容器中,而目标状态则是所有对象都已放置好。对于这类问题,应用操作符的顺序并不重要。
搜索:组合搜索(2-B-2)
- 学习目标:举例说明广度优先搜索、深度优先搜索和最佳优先搜索算法,以针对图搜索问题生成搜索树。
- 基本理解:有多种用于生成搜索树的算法,每种算法都有其自身的优势。
- 详细说明:可以通过绘制搜索树来进行说明;对于程度较高的学生(如参加美国大学预修课程计算机科学 A(AP CSA——Advanced Placement Computer Science A)的学生)来说,编写代码是合适的做法。如果存在较浅层次的解决方案,广度优先搜索能够快速找到这些方案,但它需要大量的内存。在每一层节点数量呈指数增长的情况下,深度优先搜索比广度优先搜索更具优势,因为它占用的内存更少。在能够对解决方案的 “代价” 进行准确度量(例如,在路线图上的总距离)的情况下,最佳优先搜索能够找到最优(代价最小)的解决方案,而广度优先搜索和深度优先搜索所找到的解决方案并不能保证是最优的,因为它们没有考虑到代价因素。
推理:推理问题的类型(2-C-1)
- 学习目标:将现实世界中的问题归类为分类问题、预测问题、序列决策问题、组合搜索问题、启发式搜索问题、对抗搜索问题、逻辑演绎问题或统计推断问题。
- 基本理解:推理问题可以根据所提供的输入类型、要产生的输出类型以及(如果适用的话)搜索空间的特征进行分类。
- 详细说明:当状态空间太大以至于无法检查所有可能的状态时,就需要启发式搜索。启发式搜索使用经验法则(启发式方法),通过关注最有希望的状态来限制搜索范围。在用于博弈的对抗搜索中,算法会在为玩家找到最佳走法和为对手找到最佳应对策略(从玩家的角度来看,这可能是最糟糕的走法)之间交替进行。如果游戏很复杂,比如国际象棋或围棋,对抗搜索可能需要使用启发式方法。在逻辑演绎中,推理者从一组事实出发,通过应用推理规则推导出新的事实。逻辑演绎可以使用形式逻辑(如命题逻辑或谓词逻辑)来完成,也可以使用与语义网络一起使用的临时推理规则,或者专家系统中常见的 “如果 - 那么”(IF-THEN)规则。统计推断涉及基于概率进行推理。
推理:推理算法(2-C-2)
- 学习目标:对于每一种推理问题类型(分类问题、预测问题、序列决策问题、组合搜索问题、启发式搜索问题、对抗搜索问题、逻辑演绎问题以及统计推断问题),列出一个可用于解决该问题的算法。
- 基本理解:人工智能包含各种各样的推理算法,用于解决不同类型的推理问题。有些算法使用符号表示(例如,搜索树),而另一些算法本质上是数值型的(例如,对特征向量进行操作的神经网络)。
- 详细说明:推理问题在 2-C-i 中进行了讨论。算法的选择取决于输入数据的特征以及要做出的决策的复杂程度。启发式搜索算法包括最佳优先搜索和 A * 搜索。对抗搜索可以使用组合搜索的变体来完成,或者通过使用 α-β 剪枝的启发式方法来实现。逻辑演绎可以使用归结定理证明的方法来完成,或者通过应用临时的 “如果 - 那么”(IF-THEN)规则来实现。统计推断涉及基于概率或分布进行推理,比如贝叶斯网络。