跳到内容
本文已通过AI从日语翻译
阅读日语原文
本文属于公共领域(CC0)。请随意自由使用。 CC0 1.0 Universal

人工学习智能系统:ALIS构想

在此,我将详细阐述人工学习智能系统(ALIS)的概念、原理、基本设计和开发方法。

概念

当前以大型语言模型为主的生成式AI,是基于神经网络的监督学习进行训练的。

我们将这种神经网络的学习过程定义为先天学习。

ALIS在先天学习之外,还整合了后天学习过程,从而能够结合两种学习过程进行推理。

在后天学习中,所学知识累积在神经网络外部,并在推理时加以利用。

因此,ALIS的技术核心在于可重用知识的提取、存储以及推理时的知识选择和利用。

此外,ALIS不仅仅是一种单一的要素技术,更是一种结合了先天学习和后天学习的系统技术。

学习智能系统的要素

ALIS的运作原则是,无论是现有的先天学习还是未来考虑的后天学习,都遵循相同的学习和推理框架。

为了解释ALIS的学习原理,我们定义了学习智能系统的五个要素。

首先是智能处理器。它指的是一个利用知识进行推理并提取知识以供学习的处理系统。

大型语言模型(LLM)和人脑的一部分是智能处理器的典型例子。

其次是知识存储。它指的是一个可以保存和按需检索提取出的知识的存储位置。

在LLM中,知识存储由神经网络的参数构成。在人类中,它对应于大脑中的长期记忆。

第三是世界。它指的是人类或ALIS等学习智能系统感知的外部环境。

对人类而言,世界就是现实本身。对于LLM而言,接收LLM输出并向其提供反馈的机制可被视为等同于世界。

第四是状态内存。它指的是学习智能系统在进行推理时使用的内部临时内存般的组件。

在LLM中,这是推理过程中使用的内存空间,称为隐藏状态。在人类中,它对应于短期记忆。

第五是框架。可以说,这是一种思维结构。用学习智能系统的术语来说,它指的是在推理时选择必要知识的标准,以及组织状态内存的逻辑状态空间结构。

在LLM中,它是隐藏状态的语义结构,其内容通常是模糊的,人类难以理解。此外,知识选择被嵌入到注意力机制中,该机制为每个正在处理的标记选择要引用的现有标记。

在人类中,如前所述,它是一种思维结构。当使用特定框架进行思考时,会从长期记忆中回忆起特定的知识群并加载到短期记忆中。然后,根据思维框架整理当前感知到的信息,以理解当前情况。

学习智能系统的原理

学习智能系统按以下方式运作:

智能处理器对世界施加作用。世界响应此作用,返回结果。

智能处理器从这些结果中提取可复用知识,并将其存储在知识存储中。

当智能处理器迭代地作用于世界时,它会从知识存储中选择知识,并利用这些知识来调整其作用方式。

这就是基本机制。

然而,从根本上说,知识的提取、存储、选择和利用方法决定了系统是否能进行有意义的学习。

人类拥有有效处理知识提取、存储、选择和利用的机制,从而使其能够学习。

包括LLM在内的神经网络,其知识提取由外部教师处理,但它们拥有知识存储、选择和利用的机制。这使得它们只要有教师提供指导就能学习。

此外,学习智能系统还可以将框架的提取、存储和选择,以及它们在状态内存中的利用方法,作为知识进行学习,从而实现更复杂的学习。

知识的种类

基于这些原理,在设计后天学习时,有必要明确后天知识将采取何种形式。

可以考虑一种方法,即后天知识也作为神经网络参数单独学习。

然而,后天知识不应仅限于神经网络参数。一个实际的备选方案是自然语言文本化的知识。

自然语言文本化的知识可以利用LLM的自然语言处理能力进行提取和利用。此外,由于它可以作为标准IT系统中的数据处理,因此存储和选择也变得容易。

而且,自然语言文本化的知识也易于人类和其他LLM进行检查、理解,在某些情况下甚至可以编辑其内容。

它还可以与其他学习智能系统共享、合并或拆分。

鉴于这些原因,ALIS构想中的后天知识最初将以自然语言文本化的知识为目标进行设计。

后天状态内存和框架

我们已经解释了选择自然语言文本作为后天知识格式的优势。

同样,自然语言文本也可以用于推理的状态内存和框架。

框架作为概念结构,可以作为自然语言文本化的知识存储在知识存储中并加以利用。

即使根据框架定义的结构初始化或更新状态,也可以使用文本格式的状态内存。

通过将后天知识、框架和状态内存都设计成文本格式,ALIS可以利用LLM的自然语言处理能力进行后天学习和一般推理。

形式知识

后天知识、框架和状态内存不仅可以通过自然语言文本表达,也可以通过更严谨的形式语言或形式模型表达。

虽然我写了“选择”,但ALIS的目标是整合多种不同的后天知识学习机制,以实现先天学习和后天学习的混合使用。

通过形式语言或形式模型表示的知识可以更加精确和明确。

此外,如果一个框架使用形式语言或模型表达,并且在状态内存中展开初始状态,那么可以由能够处理形式模型的智能处理器,而非LLM,用严谨的模型进行模拟或逻辑推演。

编程语言就是这类形式语言或形式模型的典型例子。

随着系统对世界的学习,如果它能将其中发现的规律和概念在框架中以程序形式表达出来,那么它就可以在计算机上进行模拟。

专栏1:知识的类型

在梳理学习智能系统中的知识时,我们发现它可以被大致分为三种知识系统和两种状态。

这三种知识系统是:由神经网络处理的网络参数知识;以自然语言表达的自然知识;以及以形式语言表达的形式知识。

两种状态是无状态和有状态。

无状态的网络参数知识是直觉性知识,类似于深度学习AI中的知识。猫狗的特征,虽然无法明确思考或用语言识别,但可以作为无状态的网络参数知识来学习。

有状态的网络参数知识是生成式AI中通过模糊的迭代过程而涌现的知识。

无状态的自然知识是与单个词语相关的意义等知识。

有状态的自然知识是包含句子上下文的知识。

一些自然知识先天性地包含在有状态的网络参数知识中,但也有一些知识可以从自然语言文本中获取。

无状态的形式知识是可以用不包含迭代的数学公式表达的知识。有状态的形式知识是可以用程序表达的知识。

人们也可以将自己的短期记忆用作自然知识和形式知识的状态内存。

然而,由于是短期记忆,稳定地维持状态存在困难。此外,它也不擅长保持形式化、无歧义的状态。

另一方面,纸张、电脑和智能手机可以作为状态内存,用于记录或编辑自然语言文本、形式语言或形式模型。

通常,纸张或电脑数据常被视为存储知识的知识库,但它也可以用作整理思路的状态内存。

由此可见,人类通过充分利用这三种知识系统和两种状态来进行智力活动。

ALIS同样具有通过实现和加强利用这三种知识系统和两种状态的智力活动,从而极大地提升其能力的潜力。

特别是,ALIS拥有利用庞大知识库和状态内存的优势。此外,它还可以通过准备大量的知识库和状态内存,并进行切换或组合,轻松执行智力任务。

专栏2:智能编排

虽然知识存储能够积累大量知识具有优势,但由于生成式AI一次性可处理的标记数量限制以及不相关知识产生的噪声,知识的数量并非简单地等同于智力活动的优势。

反之,通过合理划分知识存储,并将其转化为高密度的专业知识存储,每个存储都包含特定智力任务所需的知识,可以缓解标记限制和噪声问题。

作为交换,每个专业知识存储只能用于其指定的智力任务。

许多智力活动是各种智力任务的复杂组合。因此,通过根据智力任务类型将知识划分为专业知识存储,并将智力活动细分为各个任务,ALIS可以通过在这些专业知识存储之间适当地切换来执行整个智力活动。

这类似于一个管弦乐队,由演奏不同乐器的专业乐手和一位指挥家组成,共同领导整个乐团。

通过这种系统技术——智能编排,ALIS将能够组织其智力活动。

ALIS基本设计与开发方法

接下来,我们将对ALIS的开发进行整理。

如原理和专栏中已讨论的,ALIS本质上设计为易于扩展功能和资源。这是因为ALIS的本质不在于特定功能,而在于知识的提取、存储、选择和利用过程。

例如,可以提供多种类型的知识提取机制,并且系统设计允许自由选择其中之一或同时使用它们。

此外,ALIS本身也可以执行这种选择。

同样,存储、选择和利用也可以自由选择或并行化。

因此,ALIS可以进行增量式和敏捷开发,无需采用瀑布式方法设计所有功能。

ALIS的开端

现在,我们来设计一个非常简单的ALIS。

其基本用户界面将是大家熟悉的聊天AI。最初,用户输入将直接传递给LLM。LLM的响应会显示在用户界面上,系统会等待用户的下一次输入。

收到下一次输入后,LLM不仅会接收新的输入,还会附带用户和LLM之间的完整聊天历史记录。

在这个聊天AI的用户界面背后,会准备一个机制,用于从聊天历史中提取可重用知识。

这个机制可以作为聊天AI系统的一个进程,在对话结束时或定期运行。当然,知识提取也会使用LLM。

这个LLM会获得ALIS的概念和原理,以及知识提取的诀窍作为系统提示。如果知识没有按预期提取,则应通过反复试验来改进系统提示。

从聊天历史中提取的知识将直接存储在知识湖中。知识湖只是一个在知识结构化之前,以扁平状态存储知识的机制。

接下来,我们将准备一个结构化机制,以便更容易从知识湖中选择知识。

这包括提供用于语义搜索的嵌入向量存储,如典型的RAG中所用,以及关键词索引。

其他可能性包括生成更高级的知识图谱或进行类别分类。

这个用于知识湖的结构化信息集合将被称为知识库。整个知识库和知识湖将构成知识存储。

接着,知识存储被整合到聊天用户界面的处理中。

这基本上与一般的RAG机制相同。对于用户输入,从知识存储中选择相关知识,并与用户输入一起传递给LLM。

这使得LLM在处理用户输入时能够自动利用知识。

通过这种方式,知识会随着每次与用户的对话而增加,从而实现一个简单的ALIS,它能够利用过去对话中积累的知识。

简单场景

例如,设想一个用户正在使用这个简单的ALIS开发Web应用程序的场景。

用户会报告LLM提出的代码出现了错误。然后,用户和LLM会合作排查问题。假设他们发现LLM所知的外部API规范已过时,调整为最新的API规范后问题得到解决。

在这种情况下,关于LLM的API规范已旧以及最新API规范是什么的知识,可以从这个聊天线程中累积到知识存储中。

那么,下次再创建使用相同API的程序时,ALIS就可以利用这些知识,从一开始就生成基于最新API规范的程序。

改进初版ALIS

然而,为了实现这一点,这些知识需要根据用户的输入被选中。这种知识可能无法直接与用户的输入关联,因为有问题的API名称很可能不会出现在初始的用户输入中。

在这种情况下,API名称只会在LLM的响应中首次出现。

因此,我们将通过增加预检查注释和事后检查注释机制,对简单的ALIS进行少量扩展。

预检查注释类似于LLM最近的“思考模式”。我们准备一个可以将文本作为状态内存的记忆体,并通过系统提示指示LLM在收到用户输入后执行预检查注释。

LLM的预检查注释结果随后被放入状态内存中,并根据此结果从知识库中选择知识。

然后,聊天历史、预检查注释结果、与用户输入对应的知识以及与预检查注释结果对应的知识被传递给LLM以接收其输出。

此外,对于LLM返回的结果,会在知识存储中搜索相关知识。包括在其中找到的任何知识,然后要求LLM执行事后检查。

如果发现任何问题,它们将连同问题点和指出的原因一起传递回聊天LLM。

通过在预检查注释和事后检查注释期间提供选择知识的机会,我们可以增加利用积累知识的机会。

展望

创建初始ALIS并添加改进以解决其弱点的过程,正是敏捷开发,这表明ALIS可以增量式地得到增强。

此外,如示例所示,初始ALIS最适合用于软件开发。这是因为它是一个高需求领域,也是一个知识可以清晰积累的领域。

这是一个结果明确的领域,但它需要并显著受益于试错、迭代的知识积累。

另外,由于ALIS开发本身就是软件开发,ALIS开发者也可以成为ALIS的用户,这是一个吸引人的方面。

此外,与ALIS系统一起,知识湖可以在GitHub等平台上公开共享。

这将允许许多人贡献ALIS系统的改进和知识的积累,每个人都可以享受这些好处,并进一步高效地加速ALIS的开发。

当然,知识共享不限于ALIS开发者;它可以从所有使用ALIS的软件开发者那里收集。

知识的自然语言性质还提供了两个额外优势。

第一个优势是,即使LLM模型发生变化或更新,知识仍然可以被利用。

第二个优势是,庞大的累积知识湖可以用作LLM的预训练数据集。这有两种使用方式:作为微调,或者用于LLM自身的预训练。

无论如何,如果能够利用从知识湖中先天学习到的LLM,软件开发将变得更加高效。

此外,软件开发涉及需求分析、设计、实现、测试、运维和维护等各种流程。每个软件领域和平台也存在专业知识。通过创建一个机制,从这些角度划分大量的累积知识,可以组建一个ALIS管弦乐队。

因此,ALIS的要素技术已经到位。剩下的关键一步是,实际尝试各种方法——例如知识提取诀窍、适当的知识选择、专业知识的划分以及状态内存的利用——以发现有效的方法。随着复杂性的增加,处理时间以及LLM的使用成本也会增加,因此也需要进行优化。

这些试错过程和优化可以通过框架的开发和完善,以学习导向的方式推进。

最初,作为用户的开发者可能会通过试错将框架整合到ALIS中。然而,即便如此,LLM本身也可以被要求生成框架想法。

然后,通过将一个用于改进和发现框架的框架整合到ALIS中,基于从世界接收到的结果和提取的知识,ALIS自身将以学习驱动的方式执行试错和优化。

现实世界中的ALIS

一旦ALIS被完善到这个阶段,它将能够在各种广泛的领域中获取知识,而不仅仅局限于软件开发领域。

与软件开发类似,ALIS有望将其应用范围扩展到人类使用计算机进行的各种智力活动中。

即使在这些纯粹的智力活动中,ALIS对其目标世界而言,也将具备一种类似于具身AI的特质。

这是因为它能够识别自身与世界之间的边界,通过该边界作用于世界,并感知从世界接收到的信息。

当这种与世界的边界在物理上可见并局限于一处时,我们通常称之为身体。

然而,即使边界不可见且在空间上分布,通过边界进行感知和行动的结构,与拥有物理身体时是相同的。

从这个意义上讲,执行智力活动的ALIS可以被认为是虚拟地拥有具身AI的特征。

而且,如果ALIS被完善到能够在新颖、未知世界中恰当地学习的阶段,那么ALIS有可能被整合为拥有实际物理身体的真实具身AI的一部分。

通过这种方式,ALIS最终将被应用于现实世界,并开始从中学习。