跳到正文
Hacker News· bcaulfield·· 5 天前AI 评分22

“注意力”是智能的本质吗?——从 Bahdanau 到 Transformer 的注意力机制解析

Is 'Attention' the Essence of Intelligence?

AI 导读

2014年,蒙特利尔大学实习生 Dzmitry Bahdanau 提出“注意力”机制,让神经网络翻译长句的效果与短句相当,解决了固定内存瓶颈。

正文 · AI 翻译

Qualia: Essays that go where curiosity leads

自2022年ChatGPT发布以来席卷全球的一切——“AI经济”;数据中心;充当挚友、医生和数学家的聊天机器人;关于生存风险的讨论——从某种意义上说,这一切都始于蒙特利尔大学实验室里一位名叫Dzmitry Bahdanau的实习生。

那是2014年。这位23岁的白俄罗斯人从小就开始参加编程竞赛,但此前从未做过学术研究,当时他被要求帮忙研究如何让计算机将句子从英语翻译成法语。Bahdanau当时在研究人工神经网络,这类网络已经在破译手写文字和识别照片中物体等模式识别任务中展现出潜力。网络通过根据训练数据增强和削弱节点之间的连接来学习识别模式。Bahdanau私下里怀疑它们能否实现接近人类水平的智能,但他的导师、计算机科学家Yoshua Bengio以及项目中的博士后Kyunghyun Cho都对此深信不疑。而翻译被普遍视为神经网络可以尝试解决的一个艰巨而有趣的问题。

翻译并不像把每个英语单词换成法语单词那么简单。不同语言的语法结构各异,且充斥着习语和隐含意义,这些长期以来一直阻碍着自动翻译的尝试。你无法简单地实施翻译规则,因为根本不存在这样的规则。但神经网络似乎很有前景,因为它们通过示例来学习。它们可以在庞大的英法配对句子数据库上接受训练,最终吸收那些准规则、例外情况和微妙之处。

然而结果一直平平;句子越长,神经网络的表现就越差。这是因为研究人员试图在解码目标语言的句子之前,将每个句子的数据塞进固定大小的内存中。这个瓶颈限制了翻译的复杂和精细程度。网络架构就是不对。

于是Bahdanau尝试了不同的方法。“这显然就是正确的做法——科学中偶尔会发生这种事,对于一个在该领域经验并不丰富的人来说,这一点非常清楚,”他在蒙特利尔接受我采访时回忆道,他至今仍在那里从事AI工作。“而且它就这么奏效了。从第一次尝试就成功了。”

Bahdanau的技巧是一种数学运算,他、Cho和Bengio将其称为“注意力”, 使他们的神经网络能够像翻译短句一样出色地翻译长句。这意味着该方法具有可扩展性。当时其他AI研究人员迅速将注意力机制整合到他们的神经网络设计中。然后,在2017年,谷歌的一个团队设计了一种名为transformer的新型神经网络架构,它强化了注意力方法并剥离了其他一切。该团队的论文“Attention Is All You Need”报告称,transformer实现了最先进的翻译水平,而所需的计算量仅为训练先前模型的一小部分。这篇论文此后被引用超过25万次,是AI领域的一个分水岭时刻。ChatGPT和Claude等大型语言模型随之而来。

鉴于已被释放出的惊人力量,我们有必要问一问,这种注意力机制究竟是什么,为什么它“就是你所需要的全部”,以及为什么机器翻译是解锁这一切的任务。注意力是一种方式,让我们理解单个 AI 模型如何与我们对话、诊断疾病、生成逼真的视频、解决长期存在的数学问题,等等。它是否在某种程度上处于智能的核心——无论是人工的还是其他的?

含有“it”这类代词的句子说明了注意力所克服的挑战。试看:“The animal didn’t cross the street because it was too tired.”以及:“The animal didn’t cross the street because it was too wide.”要把这些句子正确翻译成法语,AI 模型必须判断出,在第一句中,“it”指的是动物,而动物在法语中是阳性词,因此翻译应使用代词的那种形式,即il。但在第二句中,“it”指的是街道,一个阴性词,需要不同的代词,即elle。机器如何能弄清楚这一点?

Bahdanau 记得自己上学学英语时做翻译练习的情景。为了写出译句中接下来的每一个词,他必须环顾源文本的四周,才能确定接下来该写什么。“字面上就是,你的源句在左边,你的译文在右边,然后你会这样,把头转来转去,左—右,左—右,”他说。“那个过程就是我所表达的神经机制。”他赋予神经网络的注意力工具,是一种数学方式,让网络能够识别句子中任何位置最能提示译文中下一个词的某个词或某些词。就我们这个有歧义的代词“it”而言,系统会在句子其余部分中穿行,以确定哪些词对它的含义影响最大。

一个 transformer 由许多层节点组成,这些节点与相邻层中的节点相连。当一个句子被输入 transformer 时,每个词首先被转换为一种称为向量的数值表示,我们可以把它想象成指向某个方向的箭头。这些向量穿过网络,而称为权重(由模型的训练决定)的数值则决定它们在每一层中如何被变换。权重把每个词当前的向量表示变成三个专属于该词的新向量——“查询”、“键”和“值”——它们在注意力操作中各自发挥不同的作用。

网络通过称为注意力头的系统并行执行这一操作若干次。一个注意力头会把每个词的查询与句子中所有其他词的键进行比较。这些向量匹配得有多好——它们在多大程度上指向同一方向——决定了其他每个词的值对当前词的新更新向量的贡献有多强。句子中其他词的信息实际上被融入了每个词的表示之中。这个系统正在把上下文转化为数学。

当“The animal didn’t cross the street because it was too tired”进入一个 transformer 时,网络中的第一组层(称为编码器)会使用注意力操作来建立对句子的上下文理解。在每一层中,每个注意力头都会为“it”生成一个查询(以及一个键和一个值)。这个查询向量可以被视为对句子中其他地方存在的信息的请求。例如,在深层(在网络已经积累了关于单词的信息之后),对“it”的查询可能可以解释为:“我需要一个较早出现的名词,它有可能就是那个感到疲倦的东西。”与此同时,与“animal”相关联的键可能会有效地表明自己是一个能够感到疲倦的名词,此外还有许多其他特征。因此,它的键比“street”的键更匹配这个查询。这就使得与“animal”相关联的值对“it”更新后的表示贡献更大。

“it”这个新的、上下文更丰富的表示会进入下一层。在那里,网络再次执行注意力操作。连续的轮次使这些单词获得越来越丰富的自身表示。

专家表示,通常很难解释某个特定的注意力头在做什么,但它们总体上会捕捉到许多种关系,从名词与动词之间的搭配到生物与感受之间的关联。后面的层会建立在前面层所建立的关联之上,因此当句子从编码器中出来时,“it”已经被赋予了某种类似含义的东西。

之后,transformer 的第二部分,即解码器,会一次一个单词地生成法语翻译,并在决定下一个要输出的法语单词时,利用注意力来调用编码器对英语单词的数值表示。英语句子中编码的上下文信息有助于将“it”翻译为阳性形式 il。

至关重要的是,没有人需要告诉 transformer 动物会疲倦,街道可能很宽。神经网络在训练过程中通过从大量与其法语翻译配对的英语句子中学习,发现了这些关联。这些关联被构建进权重中。网络一开始使用随机权重,这会产生无用的查询、键和值,因此翻译效果很差。但每一个翻译错误都会通过网络向后发送一个校正信号,从而略微改变产生该错误的权重。通过数万亿次这样的调整,网络最终会生成有用的向量,从而产生正确的翻译,即使它处理的是从未见过的句子。

注意力被证明是连接单词和构建上下文——翻译的基础——的正确数学运算。而当你可以翻译无限大小的文本块时,似乎你就可以做任何事情。

一个神经网络如果已经对语言有了足够的了解,能够把英语句子翻译成法语,那么它也能用这两种语言中的任意一种补全句子。换句话说,预测译文中下一个词,是更一般的“预测下一个词”这一任务的一个子任务,仅此而已。而这就是大型语言模型所做的事。它们在整部互联网的内容上接受训练,学习在各种语境中哪些词应当关注哪些其他词。它们处理并反复处理整个数据集,在训练过程中的任意时刻,无论身处网络中的哪个部分,都会尝试数万亿次去预测下一个词。这些模型中神经元之间的连接被逐渐微调,从而产生词与词之间的注意力模式,这些模式对于在任何语境中预测下一个词——或者对人类的提示作出恰当回应——越来越有用。

从翻译“it”这个词的能力出发,我们不知怎么地就迎来了一场革命。

“这真是相当大的飞跃,不是吗?”《Attention Is All You Need》的作者之一、现任 Sakana AI 首席技术官的 Llion Jones 说道。

Jones 和其他人怀疑,预测下一个词——即所谓的语言建模——是“AI-complete”的:这项任务如此困难,以至于解决它就意味着你可以说已经解决了通用的人工智能。它之所以可能是 AI-complete,是因为这项任务几乎把人类以书面形式所做的一切都作为子任务包含在内。“互联网上有翻译,”Jones 指出。“所以如果我说‘“The animal didn’t cross the street because it was too tired”的法语是[空白]’,那么为了补全这个句子,transformer 需要能够翻译成法语。如果我说‘2 + 3 是[空白]’,它需要做算术。如果它看到一连串数学符号,想知道接下来是什么,它需要理解高等数学。如果我说‘美国总统是[空白]’,它需要知道事实。所以,能够预测下一个词,要求你能够做所有这些事情。而正因为它是 AI-complete,语言建模可以说是我们目前对智能最接近的定义。”

说一个 LLM“知道”或“理解”什么,也许并不恰当——不是以人类那样的方式——但这只是我们习惯于谈论它们所展现的能力的方式。无论如何,注意力是人工神经网络获取和传达意义、联想与语境的工具,其效果往往好到足以以其流畅程度令我们惊叹。(对于高等数学之类的任务,当今的前沿 AI 模型往往会在其语言建模之上叠加更明确的形式推理和证明验证系统,以检查其工作。)

但人类智能呢?我们的大脑是否可能采用一种类似于 Bahdanau 所发明的数学运算的机制?毕竟,我们在说话、写作乃至思考时,也在做某种类似于“产出尽可能最好的下一个词”的事情。也许我们这种形式的智能也等同于语言建模?

认知科学家已经开始研究这个问题——这是“语言如何与思维相关联”这一古老问题的新版本。诚然,LLM 的成功表明,仅凭语言的统计模式就编码了多少关于世界的信息。问题在于:当我们掌握了语言,智能是否就免费获得了?

最近的研究让我相信,人类思维并非纯粹是语言的(而且大多数其他动物的智能根本不是语言的):当我们思考时,大脑中亮起的区域比仅与语言相关的大脑皮层专门网络要多。语言是我们交流世界的方式,但我们的思维似乎依赖于感官印象、物理和社会经验、记忆以及推理能力,这些至少部分存在于大脑语言网络之外。因此,语言建模似乎只是人类认知的一个强大组成部分,而不是其等价物或来源。

至于我们是如何做到“它”的——我如何瞬间明白是动物而不是街道累了——目前无人知晓。就琼斯而言,他现在认为注意力并非真正掌握语言建模所需的全部。毕竟,大脑显然比变换器更高效地完成这项任务。我们流利地交谈,甚至没有读过整个互联网一次,也没有消耗那么多能量。“当前的范式无法解决这个[效率]问题,”琼斯说。“你似乎必须跳到某种非常非常不同的东西。”

无论我们自己的神经机制可能是什么,事后看来,解决翻译问题解锁了人工智能,这对我来说是合理的。无论你是人类还是机器,有效翻译的能力意味着你在某种意义上有理解。现在机器理解得如此之多——至少在效果上——以至于我们几乎不知道该怎么想了。

来源:Hacker News · quantamagazine.org