Prashanth Rao and Andrew Wesson

多年来,计算机识别越来越复杂的模式的能力越来越高。的领域计算创造力这是一项多学科的努力,旨在建立能够帮助人类完成艺术,科学和人文科学各种任务的软件,自从早期的计算机必须明确编程以来,已经取得了很大进展。

在本文中,我们将尝试揭示最近的一些发展生成建模这表明计算机能够产生吸引人类观察者的有用模式的能力显着提高。特别是,一种神经网络架构,Transformer,将详细讨论其捕获文本,音乐和图像中长期依赖性的能力。还讨论了该技术可能导致的一些未来方向。

In 她有启发性的文章玛格丽特博登描述,创造力是“能够提出新的,令人惊讶的,有价值的想法或文物”。从历史上看,这被视为人类智慧的一个独特方面。正如Boden所描述的那样,对于一些被认为具有创造性的东西,它必须同时提供novelty and value.

关于建模创造力的一个常见批评是机器(包括最新的深度学习方法)只是使用“强力模式匹配”来实现最终目标 - 如果机器只是识别它所训练的数据中的现有模式,那真正添加的“新奇”是什么?此外,已知“价值”变化很大,“关于创造力的任何争论都源于对价值的分歧”.

虽然计算机可能会“大规模地进行模式匹配”,但重要的是要认识到即使是伟大的科学家和数学家也在本质上,使用他们精细调整的模式匹配能力(尽管是非常复杂的)形式)到发现现实中没有人想到的模式之前。在下面的部分中,我们将看看变压器如何帮助解决新颖性和价值问题,以及它们如何与其他工具结合起来帮助人类组合创造力.

2017年Google AI论文“注意力就是你所需要的“首先介绍了变压器神经网络架构的概念。从本质上讲,变压器是一堆堆encoders可以处理连接到堆栈的任意长度的序列decoders输出另一个序列。以下是用于机器翻译的这种结构的示例。

最近,对vanilla变换器进行了许多扩展和修改,允许它通过使用仅编码器堆栈来推广到其他任务(BERT),或仅解码器堆栈(OpenAI GPT),导致下游语言建模任务的大规模改进。

对变压器的深入技术描述超出了本文的范围 - 但是有很好的视觉解释(插图变压器)和实施的逐行描述(带注释的变压器)补充原始论文。

变压器的核心是它self-attention机制 - 即模拟序列各部分之间关系的能力(例如,句子中的单词),无论它们在序列中各自的位置如何。

上图显示了两个例子,其中单词“it”的含义可能对机器不明确 - 在左边的例子中,“it”指的是单词“animal”,而在右边,“it”指的是“街”。在此上下文中使用的术语自注意意味着编码器在检查其输入序列时能够专注于不同的部分 of the input *就其本身而言,*允许它根据训练数据中观察到的模式“参与”正确的表示。

如下将自我关注结合到编码器/解码器结构中。

通过这种设计,编码器的输入令牌首先流过自我关注层,这使得它可以聚焦在序列的不同部分上。然后将自我关注层的输出传递给前馈神经网络,模型通过该网络“学习”每个单词的表示。

变换器通过结合多个“注意力头”扩展了自我关注的想法,即应用于序列的不同部分的自我关注的实例simultaneously。在Google AI的变换器中,有八个注意力头集中在同一时间步的不同位置,适用于each encoder.

本质上,具有多个关注头(在上图中为八个)使得计算的并行化相对微不足道,因为每个头可以独立地识别单词之间的关系。这大大减少了培训工作量,允许变压器有效地扩展到非常大的训练集与更多顺序架构(如回归神经网络(RNN))不同。

在每个训练时期,各个注意力头更新其矢量表示,最终表示被计算为加权平均值.

解码器端工作方式非常相似,最终输出矢量表示通过线性层(将矢量输出投影到更大的“词汇空间”),然后是softmax层(转换浮点表示)将单词转换为完整词汇表中每个单词的概率分布。

计算创造力:变压器的作用