前言
transformerd的数学框架?
介绍
Transformer语言模型在新兴产业中的使用越来越广泛,比如GPT-3,LaMDA,Codex,Meena,Gopher和其他类似模型。
然而,随着这些模型的扩展,它们的开放性和高容量为意想不到的甚至有害的行为创造了越来越大的范围。 即使在大型模型经过训练多年后,创建者和用户仍会定期发现他们以前没有意识到的模型功能(包括有问题的行为)。
1 | 【GPT-3】 |
解决这些问题的一种途径是寻求可解释性,试图对Transformer模型的详细计算进行逆向工程,类似于程序员将复杂的二进制文件反编译为人类可读的源代码。 如果这是可能的,它可能会提供一种更系统的方法来解释当前的安全问题、识别新的问题,甚至可能预测尚未构建的强大的未来模型的安全问题。 之前的一个项目,Distill Circuits, 曾尝试对视觉模型进行逆向工程,但到目前为止还没有类似的Tranformer或语言模型项目。
1 | Thread: Circuits |
在本文中,我们尝试采取原始、初级的步骤来对Transformer模型进行逆向工程,因为现代语言模型令人难以置信的复杂性和规模,我们发现从最简单的模型开始并从那里开始工作是最有成效的。 我们的目标是发现简单的算法模式、主题或框架,这些模式、主题或框架随后可以应用于更大、更复杂的模型。 具体来说,在本文中,我们将研究只有两层或更少层且只有注意力块的Transformer——这与像 GPT-3 这样的大型现代Transformer形成对比,GPT-3有 96 层,且注意力块与 MLP 块交替出现。
我们发现,通过以一种新的但在数学上等效的方式将Transformer的操作概念化,我们能够理解这些小模型,并对它们的内部运作方式获得重要的理解。 特别值得注意的是,我们发现我们称之为“感应头”的特定注意力头可以解释这些小模型中的上下文学习,并且这些头只在至少具有两个注意力层的模型中出现。 我们还介绍了对特定数据进行操作的一些示例。
在第一篇论文中,我们并未尝试将我们的见解应用于更大的模型,但在即将发表的一篇论文中,我们将证明我们理解Transformer的数学框架和感应头的概念仍然至少部分相关,对于更大、更真实的模型——尽管我们距离能够完全逆向工程这些模型还有很长的路要走。
结论
REVERSE ENGINEERING RESULTS
为了挑战Tranformer的逆向工程,我们先在其他算法和仅有注意力的模型上进行了尝试,有以下结论: