人工智能中的框架

2025 年 7 月 10 日 | 阅读 13 分钟

人工智能 (AI) 框架是一种数据模型,它描绘了刻板的条件或概念,使系统能够有效或高效地编码和操作知识。框架由 Marvin Minsky 在 20 世纪 70 年代引入,它将信息分解为槽(属性)和值,类似于面向对象编程中的对象。这些在信息表示和推理中很重要,这样,在信息不完整的情况下,机器就可以推断、泛化和处理信息。

框架在自然语言处理、专家系统和视觉等领域有许多应用。在使AI系统模拟类人过程中的知识结构化中,框架很重要,因为它们有助于概念化地建模上下文知识结构,这将是符号 AI 和认知建模的基本概念。

框架的结构

支柱和插头

框架由槽(类似于属性或特性)和填充器(赋予它们的值)组成。所有槽都决定了适用于给定框架概念的特定知识的某些部分。一个实例是,一个名为汽车的框架可以有颜色、品牌和类型等槽,填充器分别为红色、丰田和汽油。这些填充器可以是固定值或动态过程,也可以是其他框架的引用。

该框架使机器人能够以人类获取知识的相同方式拥有广泛的有序知识。框架模型对复杂知识库的灵活性和适应性来自于其划分或结构(槽)和内容(填充器)。

默认值和继承

默认值 框架中的槽在未给定值时可以包含默认值。这是一个有效的属性,因为它创建了泛化和专业化的可能性。使用示例:车辆类型通用框架的默认燃料类型可以设置为汽油类型,电动汽车的专业化框架可以将其更改为电力(特定燃料类型)。

Frames in Artificial Intelligence

这种层次结构支持继承,子框架继承其所属框架的属性,除非被修改。这反映了软件开发中面向对象编程的模式,并更好地促进了推理,因为系统可以通过使用默认或继承的槽来推断一些缺失的方面。

过程附件

框架不仅代表了一些预处理条带,还可以包含过程附件。这些是附加到槽的小型可执行函数或例程。典型的有:

  • 如果需要:当需要但缺少槽值时提供。
  • 如果添加:当另一个值分配给槽时进行调查。
  • 如果删除:当槽的值被删除时执行。

这些附件在推理过程中实现活动和智能反应,允许系统执行计算值、槽验证或查找数据等功能。这种交互将框架从存储之外转换,使框架有助于 AI 系统的决策。

嵌套框架、链接框架

其他框架可以作为由其他框架填充的槽,这称为嵌套框架。这允许分层复杂的知识表示。例如,表示一个人的框架可能包含一个名为地址的槽,其填充器是一个地址框架,其中包含街道、城市和邮政编码等槽。在这种组合性下,框架可以以非常结构化的形式描述现实生活中的关系和对象。

框架可以进一步相互耦合,从而创建知识结构的网络或图形状互连。这种关联有助于形成语义网络,从而改进推理和上下文化。

实例和类框架

框架通常分为以下两种类型:实例框架和类框架。类框架定义了许多个体的典型属性(例如,“狗是类”),而实例框架定义了一些特定对象(例如,“Fido 是一只狗”)。实例框架自动继承类框架的属性,这简化了知识组织。

类框架是模板式的,而实例框架是根据模板带来值的框架。这种分离有利于逻辑思维中的抽象和具体。它在对象识别或医疗诊断等领域特别方便,在这些领域中,类建立症状,实例建立特定的患者数据。

框架类型

Frames in Artificial Intelligence

类框架

类框架是具有一般特征的类别或概念形式。它们充当蓝图,决定了一系列相似对象的结构和异常值。例如,一个类框架,即鸟类的框架,可能包含诸如“有翅膀 = 是”、“能飞 =(通常)”以及“腿的数量 = 2”等槽。

更具体的子类或实例框架可能会继承这些槽。类框架在知识分层结构的系统开发中也很重要,因为它们导致了出色的重用、最小的冗余以及通过继承进行推理的能力。在许多 AI 系统中,类框架是现实世界领域抽象和泛化建模的基础。

实例框架

存在基于类框架反映特定对象或实体的实例框架。它们将继承父类框架的结构和默认值,并且还可以覆盖一些值。在某些情况下(例如,类框架鸟的“能飞”槽设置为“通常”),企鹅的实例框架可能会覆盖它,将其设置为“否”。

这种安排使 AI 系统能够分离一般信息和某些事实。专家系统广泛使用实例框架,其中有基于案例的数据需要处理,以及通用规则,这是由于继承知识与确定槽值的综合。

静态框架

那些本质上是固定的被称为静态框架,因为槽中的值在系统运行时永远不会改变。框架是具有固定属性的概念或事物,例如,数学对象或物理常数。例如,一个名为“Pi”的框架可以包含一个不变的槽(值 = 3.14159)。静态框架的使用领域通常是在知识是固定且理解相同事物的地方。

在规则和确定性系统中,这些很重要,因为知识的可预测性和确定性至关重要。它们在编码事实性质时非常方便,这些事实性质不会因上下文或时间而改变,例如系统设置或科学中的基本常数。

动态框架

动态框架与静态框架不同,因为它们的槽值在运行时可以变化。此类框架适用于需要响应不断变化的数据或交互式输入的系统,例如实时系统和对话代理。换句话说,一个充当聊天用户的框架可能会根据新信息处理“当前情绪”字段的变化。

过程附件(即,例如“如果需要”或“如果添加”等过程附件)通常包含在动态框架中,以在槽值更改时触发操作或计算。这意味着它们可以应用于自适应学习、机器人技术和用户建模,因为我们需要不断更新知识库以做出正确的决策。

关于框架的框架

其他框架可以通过元框架进行描述或管理。它们提供更高级别的信息,例如,继承规则、约束或用于对抗其他框架的推理逻辑。它们在知识库系统中的动态规则创建和调试中都有应用。它还包含与其他框架关系相关的元数据,这些元数据可以存储在元框架中以增加灵活性和控制。

它们在更复杂的推理系统中特别有用,在这些系统中,必须以某种方式明确表示和更新帧组件行为的逻辑。

基于框架的知识表示

Frames in Artificial Intelligence

框架的理解

框架的知识表示是一种用于 AI 的知识表示形式,它使用框架(数据结构)来组织和存储知识。每个框架中的信息以槽(属性)和对象或情况的填充器(值)的形式表示。这种表示反映了人类将属性和行为附加到事物上的拟人化方式。例如,一个狗框架可以包含品种、颜色和吠叫=是等槽字段。

框架提供了上下文、模块化和结构化的格式,AI 系统更容易解释和操作。它具有支持继承、过程知识和默认推理的优点,因此非常适用于概念关系至关重要的领域,例如医疗诊断或自然语言处理。

层次组织和继承

基于框架的系统的一个优点是层次结构。可以将框架组织成一个分类法,顶部是通用框架(类框架),特定框架(实例框架)包含继承属性。例如,一个名为“车辆”的框架可以是汽车和自行车的父级,而汽车和自行车又都有自己的子级。继承导致冗余减少,因为通用属性可以声明一次然后重用。

此外,它提供了使 AI 系统通过默认槽值和覆盖机制推理不完整数据的能力。继承还可以用于管理内存、执行抽象和识别知识密集型应用程序中的模式。

过程和上下文知识管理

框架不仅仅是简单的数据持有者;它们可以具有过程附件以执行某些操作或动态访问槽值。例如:这些可以是触发器,例如 IF-NEEDED、IF-ADDED 或 IF-REMOVED,当读取/写入/清除槽时执行。一个例子是,当机器人访问电池电量单元时,将启动 IF-NEEDED 过程以验证电池的当前状态并更新它。

这使得系统不仅可以描述事实,还可以描述对它们的操作或计算。它在专家系统、交互式界面和自适应学习系统中找到了特定应用,在这些系统中,推理和交互的动态性至关重要。

与其他表示的比较

与谓词逻辑或语义网络等基于逻辑的表示相比,基于框架的系统提供了更自然和有序的表示形式。谓词逻辑也是一个选项,但在尝试表示复杂关系或默认值时,它通常不太实用,因为它在数学上是严谨的。语义网络是图形化的。但是,这些结构没有像框架那样的输入-输出槽-填充器结果,也没有特定的过程机制。

相反,框架提供了基于模板的面向对象范式,这与人类的心理功能非常接近。这使得它们在用户建模、自然语言处理和视觉识别等领域更容易应用。此外,模块化使得框架具有灵活性和可伸缩性。

框架系统中的推理

Frames in Artificial Intelligence

基于槽的推理

在框架系统中,很容易看出推理如何从基于槽的推理开始,系统根据框架中槽的值提取推理。在查询时,AI 系统会验证槽中是否存在必要信息。否则,它可能会触发过程附件(例如,如果需要)以动态计算或获取值。此过程实现了有效和情境化的推理,特别是在专家系统中。

例如,如果“患者”框架的“风险级别”槽未根据症状和年龄填充任何值,则过程可以为其分配一个值。基于槽的信息学允许即时上下文响应,而无需诉诸完整的规则引擎。

覆盖和继承机制

基于框架的推理的一个重要属性是继承,其中子框架自动继承父(类)框架的槽值。这有助于知识的重用和信息不完整时的推理。例如,一个“狗”实例框架,继承了另一个种类(例如“哺乳动物”类框架)的家庭,即继承了“有腿 = 4”,除非它覆盖了它。这使得 AI 系统可以通过向上追溯层次结构来推断缺失的信息,直到找到默认值或继承值。

相反,覆盖功能允许在更具体的框架中替换继承值,从而影响专业化。这些机制作为一个整体,允许在完善的层次结构中自然地进行推理,这与人类的逻辑推理方式非常相似。

默认推理

框架系统支持默认推理,其中槽可以预定义默认值,当未指定其他值时假定这些值。这在基于一般知识的假设情况下很方便。当名为“车辆”的框架的关键字“燃料类型”下的槽为空时,系统可以假定该值默认为“汽油”。这使得思维具有连续性,而无需手动输入所有数据。

默认值充当基于公认事实的安全回退。默认推理使 AI 能够做出有根据的猜测,使其更具响应性,并且更少依赖用户反馈或完整的数据集。

动态推理附件程序

过程附件用于丰富框架,以便在运行时促进动态推理。它们是由于某些条件而计划运行的小程序。例如,如果添加了新的槽值,则 if-added 过程可以验证或传播过程更改,而当请求槽值但未找到时,则遵循 if-needed 过程。

此类附件使框架能够做出响应以执行计算、得出结论或检索所需内容。此过程使 AI 系统更具交互性和灵活性。它们在医疗诊断、用户建模和机器人技术中得到广泛应用,其中实时决策是关键。

框架系统链式技术

尽管主要通过框架表示结构化知识,但它们也可以进行推理链,即正向和反向链。正向链的程度提供了槽的现成值以得出新知识(数据驱动方法),而在反向链方法中,系统有一个目标并搜索可以帮助实现目标的槽(目标驱动方法)。这与附加到框架的基于规则的系统结合使用,在专家系统中很常见。

框架在 AI 中的应用

Frames in Artificial Intelligence

自然语言处理 (NLP)

框架在自然语言处理中有大量应用,通过表示现实世界知识和关系来建模句子背后的语义(含义)。在分析句子时,框架中的槽被分配角色和实体。以“约翰给了玛丽一本书”的句子为例,动词“提供”的框架可以有以下属性槽:施事者 = 约翰,客体 = 书,接收者 = 玛丽。

这有助于语义角色标注和消歧。框架语义学还有助于对话系统,甚至问答模型,将语言与上下文联系起来。FrameNet 和其他类似系统被开发用于通过基于框架的方法更好地理解和创建人类语言行为。

专家系统

专家系统通过特定领域知识来模拟人类决策,应用框架。在这里,系统中的症状、疾病和治疗等知识结构以框架的形式存在。一个例子可能是医疗诊断系统,其中有一个名为“患者”的框架,其中包含温度、症状和病史等槽。这些值可以产生推理规则或程序以得出诊断。

借助框架,可以以模块化方式结构化、组织复杂数据,并易于更新或添加到系统中。它们还支持默认值和派生,以免明确地定义所有可能条件而过载。

视觉和机器人系统

在机器人技术和计算机视觉领域,框架也很重要,因为它们允许对世界、物体和动作进行结构化描述。例如,一个在房间里移动的机器人可以提供一个“房间”框架,并在其中包含“尺寸”、“物体”和“照明”等槽。一个框架可以是对象的槽,例如形状、位置或功能。

此类框架帮助机器人识别并智能地与其周围环境连接。框架中的过程附件可以与传感器输入结合使用时触发其他动作(例如避开障碍物或抓取物体)。

智能辅导系统 (ITS)

框架用于教育 AI 系统中内容建模以及学生档案。可以在学生框架中使用的槽示例包括:技能水平、以前的答案、学习偏好。同样,在名为“课程”的框架中,可以有主题、难度级别和相关问题。框架使智能辅导系统能够通过情境化和提供反馈来适应每个学习者。

推理机制或复习材料可以预测可能推荐的常见误解。这增加了学习和教育交付。因此,可以说框架是自适应学习的骨干,其中学习环境需要结构化但灵活的知识以及学习者表示。

虚拟代理

在游戏 AI 和虚拟助手应用程序中,框架成功地用于建模环境、角色、用户偏好和场景。例如,在角色扮演游戏中,一个角色框架可以包含“生命值”、“物品栏”、“能力”和“目标”等槽。可以实时更新这些槽并做出决策。

框架表达虚拟助手中的用户意图、任务和当前会话状态,并使系统能够保持对话上下文并生成上下文敏感的响应。框架与过程附件相结合,有助于使 NPC(非玩家角色)和基于语音的系统(例如 Alexa 或 Siri)具有动态网络行为、修辞或能够做出智能决策或具有智能响应。

场景和情境理解

当框架用于分析视觉空间或上下文信息的系统中时,它们非常方便地表示情境知识或基于场景的知识。例如,一个监控系统将有一个名为“场景”的框架,其中包含人数、物体移动、时间以及异常行为等槽。

通过用一些感官信息填充这些槽,系统能够推断出可疑活动的发生。同样,为了使汽车自动化,框架通过组织诸如路标、交通方向和障碍物等输入来帮助解释实时道路场景。这种表示使得在安全关键系统中进行更高级别的推理、决策和事件检测成为可能。

结论

AI 框架是结构化知识的一种强大而直观的结构,非常接近人类感知和组织信息的方式。基于框架的系统通过将数据组织到槽中并支持继承、默认推理和过程附件,从而在医疗保健、机器人技术和自然语言处理等领域实现有效的特定领域决策。

它们缺乏处理不确定性和学习的能力,但在实时 AI 中,它们因其模块化和可解释性而获得了很大的价值。与现代 AI 方法相结合,框架可以实现一系列符号推理和动态推理方法,从而保证更智能、可解释和适应性更强的 AI 系统。