Press "Enter" to skip to content

多重性的祝福?!(第一部分)

一种相对较新的计算技术正在革命性地改变机器学习的领域

图1. 1972年斯坦福研究所建造的Shakey机器人(图片来源:维基共享资源)

从达特茅斯到LISP

“我们认为,如果一群精选的科学家在一起为一个夏天共同努力,这些问题中的一个或多个问题都可以取得重大突破,”提案中如此说道。约翰·麦卡锡(John McCarthy)和他的同事们在写下这句话的时候,他们并不知道他们的夏季计划即将引发人类历史上最伟大的技术革命之一。

在很多方面,1956年的达特茅斯人工智能暑期项目 [1,2] 可以被认为是人工智能诞生的地方,也是命名为人工智能的地方。自成立以来,出现了两种不同的思路,每种思路都有其独特的智能系统理解和创建方法。

符号 AI:第一派

可以说,其中一种更“古老”的思路被称为符号 AI(另一种是连接主义 AI)。简单地说,这种思路涉及以下步骤:

  • 创建一个大型的对象数据库(比如动物)
  • 定义操作这些对象的规则(什么使得一个动物成为哺乳动物、爬行动物或昆虫?)
  • 利用前两个步骤进行逻辑推断(“猫是昆虫吗?”)

从形式上来说,符号 AI 强调使用符号和规则来表示和操作知识。与受到人脑结构启发的连接主义 AI 不同,符号 AI 侧重于对概念和关系的明确表示。

在符号 AI 系统中,知识以符号的形式进行编码,这些符号可以表示对象、动作或抽象概念。然后利用推理规则来操作这些符号,使系统能够得出结论和做出决策。这种基于规则的推理使得符号 AI 系统能够以逻辑和结构化的方式解决问题。

非常简单的例子

  1. 我可以加载一个具有以下关于动物的事实数据库:名称、类型和特征
    a. animal(cat, mammal, fur, four_legs).
    b. animal(fish, aquatic, scales, no_legs).
    c. animal(bird, avian, feathers, two_legs).
    d. animal(snake, reptile, scales, no_legs).
  2. 然后根据特征编写以下规则进行分类:
    a. mammal(X) :- animal(X, mammal, fur, four_legs).
    b. aquatic(X) :- animal(X, aquatic, scales, no_legs).
    c. avian(X) :- animal(X, avian, feathers, two_legs).
    d. reptile(X) :- animal(X, reptile, scales, no_legs).
  3. 紧接着,我们就有了一个简单的专家系统,可以对不同的查询进行回应,比如:
    [a] Query: mammal(cat). #我们询问猫是不是哺乳动物。预期回答:true
    [b] Query: mammal(fish)。预期回答:false。

这是一个关于符号 AI 系统工作原理更详细的入门介绍

符号 AI 在需要推理和规划的领域尤其成功,比如专家系统和游戏。一些成功案例包括:

  • Shakey 机器人(见第一张图片)是由当时的斯坦福研究所 SRI International 建造的 [5]。
  • 诊断和治疗人体感染的基于规则的 AI 系统“MYCIN”在70年代由斯坦福大学开发。
  • ELIZA,最早的自然语言处理程序之一,由约瑟夫·魏岑鲍姆在麻省理工学院创建。

符号AI在最初阶段非常成功,并应用于各种应用领域。实际上,整个形式语言家族,如LISP(1950年代),都是为了方便AI系统的思考和编码而创建的[3]。然而,这种思考AI系统的方式存在一些非常根本的缺陷。

图2.与ELIZA的对话(来源:维基共享资源)

符号AI存在的一些问题

  • 处理不确定性– 符号AI系统难以表示和推理不确定性。- 真实世界的情况经常涉及不完整或模糊的信息,传统的符号方法可能无法有效处理不确定性。- 在不确定性固有的领域,如医学诊断或自然语言理解中,符号AI可能提供过于决定性或不准确的结果。
  • (相关) 知识表示和获取– 符号AI系统依赖于以符号和规则的形式明确表示的知识。- 这在捕捉真实世界的广泛而微妙的知识方面具有挑战性。- 例如,高度复杂的任务,比如自动驾驶,无法仅仅表示为一组“如果-那么-否则”命令——你会将如此多的条件编码到AI代理中吗?
  • 缺乏学习和适应性– 没有办法通过新数据和经验进行学习!- AI代理只会执行程序员编码的内容。真实世界的数据只能作为程序员对世界运作方式的了解注入到代理中,而这可能既非常有限又具有偏见。

这些以及其他一些相当严重的缺陷使得符号AI的进展变得非常令人沮丧。然而,在此期间,另一种思维方式正在悄然发展,由研究人员支持。当听到明斯基和帕帕特宣布感知器分类器的异或死亡之钟时[6],他们以挑战的态度回应道:“这还没有结束!”

当连接主义之国发动进攻时,一切都改变了…

连接主义方法是现如今关于人工智能(AI)的主要内容,从自动驾驶的Waymo出租车,到苹果的面部识别系统,再到你在感恩节晚餐上听到的那个机器人大军。

图3.Waymo的自动驾驶车(来源:维基共享资源)

连接主义人工智能(AI)的方法借鉴于人脑的结构和功能,旨在通过模拟神经元的相互连接性来创建智能系统。与依赖明确规则和表示的符号AI不同,连接主义AI利用称为“人工神经网络”(ANNs)的计算机程序从数据中学习并做出决策。

ANN由一层层相互连接的人工神经元组成,每个神经元接收输入信号、处理它们并向其他神经元传递输出信号。例如,在图4的右侧,每个圆盘(蓝色、绿色或黄色)代表一个“神经元”。这些连接或权重通过学习过程进行调整,使得ANN能够识别数据中的模式和关系。这种学习能力使得连接主义AI系统能够解决复杂的问题并根据新数据做出预测,即使没有明确的编程。

图4.人工神经网络(R)模拟生物神经网络的相互连接性。(L)以深度神经网络为基础的人脑想象(来源:维基共享资源)

不用过多细节介绍(这里确实有太多细节了),我们只需注意到,尽管在此之前几十年,人们对连接主义方法的热情并不高,但到了1990年左右,梯度下降和反向传播的发展已经相当令人惊讶[4, 16]。然而,使用连接主义方法解决更复杂的现实世界问题的尝试受到两个因素的阻碍:(1)计算硬件不足和(2)训练数据缺乏。

摩尔和李的拯救

到了2000年代末,摩尔定律在解决计算问题上取得了巨大进步。同样,像李飞飞这样的研究者利用互联网上大量的图像数据创建了巨大的数据集,以帮助训练人工神经网络(顺便说一句,李飞飞创建ImageNet数据集的过程足够激动人心,值得单独一篇文章😉)。当人工智能解决了李飞飞的ImageNet挑战时,连接主义凭借着胜出。

2012年9月30日

在如今已经成为“亚历克斯网络时刻”(参见[17, 15],或者只需听5分钟皮特·阿贝尔的演讲)的事件之后,人工神经网络迅速崭露头角,在几年之内彻底改变了自然语言处理、医学和机器人等截然不同的领域(阿贝尔的实验室因此而声名鹊起,负责许多机器人技术突破)。但连接主义人工智能并非万能药。

连接主义人工智能的问题

在我们对前一种方法视为现在的“凌乱人工智能”一事不予理会之前,让我们看看困扰后者的一些问题。

  1. 解释性缺失 [18] 想象一下上图中展示的人工神经网络,但是它有1750亿个细胞而不是11个。你怎么能够理解这个庞大的怪兽是如何推理的?大多数估计将GPT 3.5的参数数量预计为1750亿。人工神经网络常常被认为是“黑盒子”,因为它们具有复杂的结构和庞大的参数数量。当然,在理解决策背后的原理对应用至关重要的情况下(例如,医学诊断、金融等领域),缺乏解释性可能会限制连接主义模型的采用。
  2. 记忆、计算与电力– 人工神经网络在学习阶段和正常运行过程中都需要大量的电力和计算资源。- 如今这个问题非常严重,导致最大的人工神经网络往往是由私人公司进行训练和操作,因为学术机构根本负担不起巨额的电费或购买足够的处理器来维持这些庞然大物的运算。
  3. 绑定问题 [8]- 在人脑中,不同的区域处理感觉信息的不同方面,如颜色、形状和运动。- 绑定问题的产生是因为大脑需要将这些不同的特征整合成一个有机的物体和场景感知。例如,当你看到一个红色的球在绿色草地上滚动时,你的大脑会无缝地将关于颜色、形状和运动的信息融合在一起,形成一个统一的滚动的红球的认知。连接主义模型通常使用分布式表示方法,即不同的特征由多个神经元的激活模式进行编码。尽管这种方法可以实现并行处理和灵活性,但它使得明确地链接具体特征变得困难。虽然已经使用了注意力等方法来解决这个问题,但它仍然远未解决,是连接主义方法的主要缺点之一。

为了简洁起见,我将限制在以上问题范围内。稍后我们还会重新讨论这些问题。有关连接主义方法的缺点的更详细讨论,请参阅[9,第2.1.2节]。

因此,当研究人员声称以下事情时并不足为奇:

在我们看来,将符号处理与神经网络整合在一起,对于实现人类水平的人工智能来说是至关重要的,并且需要一个共同的社区努力来解决。[8]

HDC,同时掌握两个元素,能否拯救我们?

超维计算(HDC)或向量符号架构(VSA)将以上两种方法的思想结合起来,以帮助缓解我们讨论过的一些问题。这第三种人工智能方法的基本量是“超向量”,它只是一个存在于非常高(想象一下R¹⁰⁰⁰⁰ 😮)维空间中的向量。

绑定、捆绑和排列 [7, 19]

非常简单地说,这些超矢量用于表示对象以及对象之间的关系(如果您有所了解的话,可以理解为象征性地说)。例如,我们可以使用一个10,000维的超矢量α表示“橙色”,使用一个10,000维的超矢量β表示“颜色”,然后通过逐元素乘法得到的10,000维向量,表示为γ = αβ,表示“橙色”的“颜色”。在HDC术语中,这个操作被称为“绑定”。

通过普通的向量加法将两个或多个这样的绑定操作的输出组合在一起,可以帮助我们叠加多个特征。例如,如果γδ分别表示“橙色”的“颜色”和“圆形”的“形状”,那么γ+δ表示“橙色和圆形的形状”。当然,我们正在构建一个象征性的橙子(🍊)的符号表示。这个操作被称为“捆绑”。

第三个操作,称为排列,涉及重新排列超矢量的条目。例如,如果我开始使用向量x = [a,b,c],那么x的一个排列将是Πx = [b,c,a]。这个操作主要用于维持顺序,例如时间序列等,在本简介文章的范围之外。

象征性和连接主义的真正结合

一旦我们使用这个过程得到了足够丰富的对象表示,例如水果,我们就有了HDC中等效于“数据库”的表示,以后可以用来回答查询。这种对HDC一般过程的描述非常宽松,并且需要形式化。我们将在本文的第二部分进行形式化。现在,让我们注意到,尽管这个过程非常类似象征性人工智能(Symbolic AI),但它也结合了一些连接主义人工智能的思想。

例如,10,000个条目的γ中存储着“orangeness”和“shape”在哪里?类似于ANNS,答案分布在多个坐标上。这种信息的分布式存储被称为“全息表达”,使得HDC非常具有容错性,因为很难意外破坏10,000个条目中的大部分内容。将超高维向量移动到10,000维是为了保持“正交性”,这是一个稍微难以理解的主题,将在本文的第二部分中详细讨论。

10,000个条目的γ中存储着“orangeness”和“shape”在哪里?类似于ANNS,答案分布在多个坐标上。

此外,正如我们将在第二部分中看到的那样,这些特征表示的超矢量(γ+δ)完全可以从数据中构建,因此HDC确实可以通过数据和经验进行学习

最后,与人工神经网络(ANNs)相比,HDC涉及的操作(特别是非线性操作)要少得多,因此往往消耗更少的能量、计算和内存[9,10,20],除非应用程序非常强调性能(例如自动驾驶车辆或机器人手术),否则就会有可以接受的准确度损失。

James Coleman在Unsplash上的照片

因此,标题……

几十年来,机器学习社区以充分的理由开发了一系列工具来处理维度约简问题。诸如主成分分析(PCA)、因子分析和独立成分分析等技术经常被用于将数据从高维流形转移到低维流形,以确保更高的测试准确率[21]。

在HDC中,哲学似乎在完全相反的方向上移动!我们将来自较低维空间的数据点映射到极高维度的流形中。但正如我们之前看到的(并将在第二部分中更清楚地看到),这一举措提供了两个非常重要的优势,将高维度变成了一种真正的祝福。

一个可行的替代方案?

HDC已经在各种机器学习(ML)数据集上进行了广泛的测试,例如图像分类、语音识别、人体活动检测等,并且已经显示出与神经网络和标准ML算法(如支持向量机)相竞争的性能[9,10,14,20以及相关文献]。

然而,尽管HDC确实结合了符号和连结主义AI的许多优势,但大部分性能和计算方面的改进都是在相对较小的数据集上和较简单的任务上进行演示的。实际上,由于其操作和内部架构的固有简单性,HDC很可能永远无法取代诸如变压器之类的重型连接主义架构。

然而,这种范式是一个有前途的新方向,有很大的探索空间。与人工神经网络(ANNs)相比,低功率的替代方案有几个应用领域,无线传感器网络是其中最重要的领域之一。

即将呈现…

本文旨在激发读者对一种相当古怪的技术的好奇心,这种技术自2010年代末以来一直在复苏。在下一部分中,我们将看到实际进行分类所采用的精确HDC程序。

写作风格的简要说明

为了提高可读性,我特意选择了一种半正式的写作风格,只在绝对必要的地方包含参考文献,并且不使用我通常在写研究论文时使用的正式风格。这也是我在本文的其他部分中将使用的风格。学者们可能会觉得有点不安,但请注意,意图不是创建一篇调查文章。

参考资料

  1. McCarthy, John等。“关于1955年8月31日的达特茅斯夏季研究项目的人工智能提案。” AI杂志27.4(2006):12–12。
  2. Grace Solomonoff,“启动AI的思维之会议”,IEEE Spectrum,2023年5月6日。
  3. Edwin D. Reilly,“计算机科学和信息技术的里程碑”,2003年,格林伍德出版集团。pp. 156–157。
  4. Rumelhart, David E., Geoffrey E. Hinton,和Ronald J. Williams。“通过反向传播错误学习表示。”自然323.6088(1986): 533–536。
  5. SRI国际博客文章,“75年创新:机器人Shaky”,链接:https://www.sri.com/press/story/75-years-of-innovation-shakey-the-robot/,2020年4月3日。
  6. Minsky, Marvin L.和Seymour A. Papert。“感知机。”(1969)。
  7. Kanerva, Pentti。“超维计算:分布式表示与高维随机向量计算导论。” 认知计算1(2009):139–159。
  8. Greff, Klaus, Sjoerd Van Steenkiste和Jürgen Schmidhuber。“人工神经网络中的绑定问题。” arXiv预印本arXiv:2012.05208(2020)。
  9. Kleyko, Denis等。“超维计算(也称为矢量符号架构)调查,第一部分:模型和数据转换。” ACM计算调查55.6(2023)
  10. Kleyko, Denis等。“超维计算(也称为矢量符号架构)调查,第二部分:应用、认知模型和挑战。” ACM计算调查55.9(2023)
  11. Chen, Hanning等。“DARL:用于超维强化学习的分布式可重构加速器。” 2022年第41届IEEE/ACM国际计算机辅助设计会议。2022年。
  12. 马东宁和焦勋。“超维计算与神经网络:比较架构和学习过程。” arXiv预印本arXiv:2207.12932(2022)。
  13. Hernández-Cano, Alejandro等。“Reghd:超维学习系统中的稳健高效回归。” 2021年第58届ACM/IEEE设计自动化会议(DAC)。 IEEE,2021年。
  14. Hernández-Cano, Alejandro等。“Onlinehd:使用超维系统进行稳健、高效和单次传递的在线学习。” 2021年欧洲设计、自动化和测试会议与展览(DATE)。 IEEE,2021年。
  15. Wikipedia贡献者。“ImageNet。” 维基百科,自由的百科全书。 维基百科,自由的百科全书,2023年11月6日。 网络。 2023年11月26日。
  16. Widrow, Bernard和Michael A. Lehr。“自适应神经网络的30年:感知器、MADALINE和反向传播。” IEEE会议记录78.9(1990):1415–1442。
  17. Krizhevsky, Alex, Ilya Sutskever和Geoffrey E. Hinton。“使用深度卷积神经网络的Imagenet分类。” 神经信息处理系统25中的进展(2012)。
  18. 张宇等。“神经网络可解释性综述。” IEEE计算智能新兴主题期刊5.5(2021):726–742。
  19. Ananthaswamy, Anil。“重新构想计算的一种新方法:人工智能”,Quanta Magazine,2023年4月。
  20. Imani, Mohsen等。“重温超维学习,面向FPGA和低功率架构。” 2021年IEEE高性能计算结构国际研讨会(HPCA)。 IEEE,2021年。
  21. Shalev-Shwartz, Shai和Shai Ben-David。理解机器学习:从理论到算法。剑桥大学出版社,2014年。

脚注

  1. 在这里,“解决”一词的使用是相对的。它仅指的是AlexNet在前期尝试中的分类准确性大幅提升。
  2. 相对于目前神经网络能够处理的最大容量。
Leave a Reply

Your email address will not be published. Required fields are marked *