谷歌AI引入AdaTape:一种基于Transformer架构的新的AI方法,通过自适应的Tape Token,在神经网络中实现动态计算

Google AI introduces AdaTape a new AI method based on the Transformer architecture that achieves dynamic computation in neural networks through adaptive Tape Tokens.

虽然人类拥有根据不同情况或条件调整思维和反应的能力,神经网络虽然功能强大且设计精细,但却受到固定函数和输入的限制。无论呈现的样本的性质或复杂性如何,它们始终执行相同的功能。

为了解决这个问题,研究人员使用了适应性(这是一种强大的范式,它不仅赋予从业者在后续使用这些模型时的灵活性,还可以作为解决某些具有挑战性的问题的强大归纳偏差)。它指的是机器学习系统根据场景或环境的变化调整其行为的能力。

传统的神经网络具有固定的功能和计算能力,而具有自适应和动态计算的模型会根据输入的复杂性调节其用于处理每个输入的计算预算。神经网络中的自适应计算有两个吸引人之处。首先,它们提供了一种归纳偏差,使不同的输入可以具有不同数量的计算步骤,这在解决需要建模不同深度层次的算术问题时可能至关重要。其次,通过动态计算提供的更大的灵活性,它有助于调整推理成本的能力,因为这些模型可以根据需要调整处理新输入的FLOP数量。

因此,Google的研究人员引入了一种名为AdaTape的利用自适应计算的新模型。AdaTape非常简单实现,它直接将适应性注入到输入序列中,而不是模型深度,并且非常准确。AdaTape使用自适应的读取机制来确定根据输入的复杂性添加到每个输入的各种磁带标记。

AdaTape是一种基于Transformer的架构,它使用一组动态的标记创建弹性输入序列。AdaTape使用自适应函数,并使用向量表示来表示每个输入,以动态选择可变大小的磁带标记序列。

AdaTape使用“磁带库”来存储所有与模型通过自适应磁带读取机制交互的候选磁带标记,以动态选择可变大小的磁带标记序列。研究人员使用了两种不同的方法来创建磁带库:基于输入的库(基于输入的库从输入中提取一组标记,同时使用与原始模型分词器不同的方法将原始输入映射到输入标记序列)和可学习的库(通过使用一组可训练的向量作为磁带标记生成磁带库的更一般方法)。

然后,磁带标记与原始输入连接并发送到Transformer中。然后,使用两个前馈网络。一个用于原始输入,另一个用于所有磁带标记。研究人员观察到,对于输入和磁带标记使用单独的前馈网络可以获得稍微更好的质量。

研究人员对AdaTape进行了多个参数的实用性测试。他们发现,在融入回归的所有基线中,AdaTape的输入选择机制表现最好,提供了一种归纳偏差,使标准Transformer中无法实现的计数器的隐式维护成为可能。研究人员还在图像分类任务上评估了AdaTape。他们在ImageNet-1K上测试了AdaTape,并发现在质量和成本的权衡方面,AdaTape比其他自适应Transformer基线表现更好。