趋近智
标准Transformer架构,尤其是在规模扩大后,需要大量计算资源和内存。自注意力 (self-attention)机制 (attention mechanism)的二次复杂度是一个瓶颈,可通过稀疏注意力或线性注意力等方法解决。然而,导致资源消耗巨大的另一个重要因素是参数 (parameter)数量庞大,尤其是在多层深层模型中。旨在减少参数数量的方法,使模型更小,可能(每轮训练)更快(因为数据移动减少),部署更方便,通常对性能影响甚微。
核心思想围绕着参数共享,即在网络的不同部分使用同一组权重 (weight)。这与标准深层网络形成对比,后者通常每层都有自己独特的参数集。
在许多自然语言处理(NLP)任务中,词汇量 () 会非常大(数万或数十万)。输入嵌入层将这些离散标记 (token)映射到隐藏维度为 的稠密向量 (vector)。这会生成一个大小为 的嵌入矩阵。在BERT等大型模型中,隐藏维度 也很大(例如768或1024)。因此,嵌入矩阵在总参数中占据了相当大的比例。例如,当 、 时,仅嵌入矩阵就有超过5000万个参数。
因子化嵌入参数化背后的核心观点,在ALBERT(一种用于语言表征自监督学习 (supervised learning) (self-supervised learning)的轻量BERT)等模型中得到突出体现,即嵌入服务于两个目的:捕捉与上下文 (context)无关的标记表征,并将其投影到Transformer层的隐藏空间。ALBERT认为,与上下文无关的表征可能不需要完整的 维度。
该技术不是直接学习一个 矩阵,而是将其分解为两个较小的矩阵:
嵌入的总参数数量变为 。与原始的 相比,如果 显著小于 ,这可以带来大量的节省。例如,如果 , ,我们选择 ,参数将从 变为 。这使得嵌入参数减少了近8倍。
这种因子化将词汇量与Transformer的隐藏维度解耦,使得在拥有大词汇量的情况下,不会因嵌入而过度增加模型体积。它隐含地假定单个词语的语义丰富性可以在低维空间 () 中被捕捉,随后投影到Transformer层内部用于上下文依赖处理的更高维度空间 ()。
另一个有效方法,也是ALBERT的核心,是在Transformer层之间共享参数。在一个包含 层的标准Transformer编码器堆栈中,每层通常有自己独特的权重 (weight)矩阵,用于多头自注意力 (self-attention)(Q、K、V投影、输出投影)和逐位前馈网络(FFN)。这表示参数数量随层数线性增长。
跨层参数共享打破了这一假设。它不是学习 个不同的层参数集,而是学习一个参数集并在所有 层中重复使用。常见变体包括:
共享所有参数,如ALBERT中所示,显著减少了与Transformer层相关的参数数量。如果单层有 个参数,一个标准 层模型在这些层中有 个参数,而一个完全共享的模型所有层加起来只有 个参数(不包括嵌入 (embedding)层和归一化 (normalization)层,这些层可能共享也可能不共享)。
标准BERT-Base模型与ALBERT-Base模型(采用因子化嵌入 E=128 和完全跨层共享)的嵌入层和编码器层参数数量的大致比较。请注意,ALBERT的这两个组成部分都显著减少了。
经验结果,特别是ALBERT论文中的结果,表明跨层参数共享能够生成显著更小但性能与非共享模型相当,甚至有时更好的模型,在各种NLP基准测试中表现出色,尤其是在与因子化嵌入结合使用时。它似乎作为一种正则化 (regularization)形式,可能通过阻止后续层的功能与早期层过度偏离来提高泛化能力。然而,与非共享模型相比,它有时会减慢训练收敛速度,可能是因为共享参数必须适应网络深度内不同处理阶段的功能需求。
参数 (parameter)共享技术具有显著优点:
然而,也存在潜在缺点:
选择正确的参数效率技术需要权衡这些利弊。因子化嵌入 (embedding)通常是一种相对安全的方法,可在对性能影响最小的情况下减少参数,尤其适用于大词汇量。跨层参数共享更为激进,但已被证明出乎意料地有效,如ALBERT所示。在特定任务和数据集上对这些技术进行经验评估仍然是模型开发的重要步骤。这些方法对构建强大而实用的Transformer模型的持续努力做出了重要贡献。
这部分内容有帮助吗?
© 2026 ApX Machine LearningAI伦理与透明度•