什么是符号人工智能
今天,人工智能主要是关于人工神经网络和深度学习。但这并非总是如此。事实上,在其 6 年历史的大部分时间里,该领域由符号人工智能主导,也被称为“经典人工智能”、“基于规则的人工智能”和“优秀的老式人工智能”。
符号人工智能涉及将人类知识和行为规则显式嵌入到计算机程序中。这种做法在人工智能研究的最初几十年中显示出很大的希望。但近年来,随着神经网络(也称为连接主义人工智能)获得关注,符号人工智能已被抛在一边。
符号在人工智能中的作用
符号是我们用来表示其他事物的事物。符号在人类的思维和推理过程中起着至关重要的作用。如果我告诉你我在树上看到了一只猫,你的脑海里会很快浮现出一个画面。
我们一直使用符号来定义事物(猫、汽车、飞机等)和人(老师、警察、售货员)。符号可以代表抽象概念(银行交易)或物理上不存在的事物(网页、博客文章等)。它们还可以描述动作(运行)或状态(非活动)。符号可以组织成层次结构(汽车由门、窗、轮胎、座椅等组成)。它们也可用于描述其他符号(耳朵蓬松的猫、红地毯等)。
能够用符号进行交流是使我们变得聪明的主要因素之一。因此,符号在人工智能的创造中也发挥了至关重要的作用。
人工智能的早期先驱认为,“原则上可以精确地描述学习的各个方面或智能的任何其他特征,以至于可以用机器来模拟它。” 因此,符号人工智能占据了中心位置,并成为研究项目的重点。科学家们开发了定义和操作符号的工具。
您在计算机科学中发现的许多概念和工具都是这些努力的结果。符号 AI 程序基于创建明确的结构和行为规则。
符号 AI 工具的一个例子是面向对象的编程。OOP 语言允许您定义类,指定它们的属性,并在层次结构中组织它们。您可以创建这些类(称为对象)的实例并操作它们的属性。类实例还可以执行操作,也称为函数、方法或过程。每个方法都执行一系列基于规则的指令,这些指令可能会读取和更改当前和其他对象的属性。
使用 OOP,您可以创建执行各种任务的广泛而复杂的符号 AI 程序。
符号人工智能的好处和局限性
符号人工智能在人工智能和计算的曙光中显示出早期进展。您可以轻松地可视化基于规则的程序的逻辑、传达它们并对其进行故障排除。
符号人工智能对于规则非常清晰的设置非常方便,您可以轻松获取输入并将其转换为符号。事实上,基于规则的系统仍然是当今大多数计算机程序的一部分,包括那些用于创建深度学习应用程序的程序。
但是当你必须处理世界的混乱时,象征性人工智能开始崩溃。例如,考虑计算机视觉,这是一门使计算机能够理解图像和视频内容的科学。假设您有一张猫的照片,并且想要创建一个程序来检测包含您的猫的图像。您创建了一个基于规则的程序,该程序将新图像作为输入,将像素与原始猫图像进行比较,然后回答您的猫是否在这些图像中。
这仅在您向程序提供原始图像的精确副本时才有效。与您的猫略有不同的照片会得出否定的答案。例如,如果您从稍微不同的角度拍摄猫的照片,程序就会失败。
一种解决方案是从不同角度拍摄您的猫的照片,并为您的应用程序创建新规则以将每个输入与所有这些图像进行比较。即使你给你的猫拍了一百万张照片,你仍然不会考虑到所有可能的情况。光照条件或图像背景的变化会改变像素值并导致程序失败。您将需要数百万张其他图片和规则。
如果您想创建一个可以检测任何猫的程序怎么办?您需要为此创建多少规则?
猫的例子可能听起来很傻,但这些都是符号 AI 程序一直在努力解决的问题。您无法为现实世界中存在的杂乱数据定义规则。例如,您如何定义自动驾驶汽车检测它可能面临的所有不同行人的规则?
此外,某些任务无法转换为直接规则,包括语音识别和自然语言处理。
已经做出了一些努力来创建复杂的符号 AI 系统,这些系统包含某些领域的大量规则。这些被称为专家系统的符号 AI 模型使用硬编码的知识和规则来处理复杂的任务,例如医疗诊断。但是它们需要领域专家和软件工程师的大量努力,并且只能在非常狭窄的用例中工作。一旦你概括了这个问题,就会有大量的新规则要添加(还记得猫检测问题吗?),这将需要更多的人力。正如一些 AI 科学家指出的那样,符号 AI 系统无法扩展。