
引言
今天,我们来了解一下什么是 DyT, 内有视频详细介绍了一项由何恺明、杨立昆等顶尖AI研究者共同完成的重大研究突破:通过仅9行代码实现的动态Tanh (DyT) 方法,成功替代了Transformer架构中被视为”标配”的归一化层,不仅没有降低模型性能,反而提升了性能并显著提高了计算效率。本综述将对该视频内容进行全面总结。
动态Tanh (DyT) – 革命性的Transformer归一化层替代方案
DyT的基本概念
动态Tanh (Dynamic Tanh,简称DyT) 是一种由何恺明、杨立昆等顶尖研究者提出的创新方法,用于替代Transformer架构中传统的归一化层。DyT的核心思想源于一个重要发现:层归一化(LN)在处理输入时呈现出类似tanh函数的S形曲线特征,能够有效压缩极端值同时保持中心区域的线性形态。
DyT的数学定义
DyT的定义可以表示为:
DyT(x) = γ · tanh(αx) + β
其中:
- α 是一个可学习参数,用于控制tanh函数的缩放因子
- tanh函数利用其有界性抑制极端值
- γ 和 β 是可学习的、逐通道的向量参数,允许输出调整到任意尺度
DyT的代码实现
DyT的实现非常简洁,仅需9行代码:
class DyT(nn.Module):
def __init__(self, dim, alpha_init=0.5):
super().__init__()
self.alpha = nn.Parameter(torch.ones(1) * alpha_init)
self.scale = nn.Parameter(torch.ones(dim))
self.bias = nn.Parameter(torch.zeros(dim))
def forward(self, x):
return torch.tanh(self.alpha * x) * self.scale + self.bias
DyT与传统归一化层的对比
与传统归一化层相比,DyT具有以下特点:
- 无需计算统计信息:传统归一化层需要计算均值和方差等统计信息,而DyT无需此类计算。
- 参数更少:DyT使用更少的参数实现相似甚至更好的性能。
- 计算效率更高:在推理阶段,DyT比RMSNorm快约52.4%;在训练阶段快约42.2%。
- 适应性强:通过可学习参数α,DyT能够自适应调整不同层的缩放强度。
DyT在不同领域的应用
计算机视觉
- 监督学习:在ImageNet-1K分类任务上,DyT应用于ViT和ConvNeXt模型,性能优于或等同于使用LN的模型。
- 自监督学习:在MAE和DINO方法中,DyT同样表现出色。
- 图像生成:在DiT模型系列中,DyT的FID分数整体优于或接近LN。
大语言模型
在LLaMA系列模型(7B, 13B, 34B, 70B)中,DyT与RMSNorm性能相当,但计算效率显著提高。
生物信息学
在DNA序列建模任务中,DyT在HyenaDNA和Caduceus模型上与LN性能相当。
语音处理
在wav2vec 2.0模型上,DyT表现与LN相当或略优。
DyT的超参数调优
α初始化
- 非大语言模型:默认α₀=0.5通常接近最优,调整提升有限。
- 大语言模型:
- 较大模型需较小的α₀值(如LLaMA 70B模型的最优α₀为0.2和0.05)
- 在注意力层中设置较高的α₀,在其他位置设置较低的α₀效果更好
- 模型宽度对最优α₀选择影响较大,模型深度影响较小
学习率
对大多数模型,原始为LN优化的超参数已很适合DyT模型,表明DyT与LN有内在相似性。
DyT的理论意义与实际价值
理论突破
- 打破了归一化层不可或缺的固有观念
- 揭示了神经网络中数据分布调整的新机制
- 为神经网络设计提供了新的思路
实际价值
- 计算效率提升:推理和训练时间分别减少约52.4%和42.2%
- 成本降低:考虑到大模型训练和推理需要进行数千万次计算,效率提升带来显著成本节约
- 模型简化:简化网络结构,减少错误可能性
DyT的未来发展方向
- 进一步探索DyT在更多模型架构中的应用
- 研究如何将DyT与其他优化技术结合
- 探索DyT原理对神经网络理论的启示
- 开发更高效的DyT变体,进一步提升性能和效率
DyT 视频:
解说视频
研究背景
归一化层长期以来被认为是现代深度神经网络中不可或缺的组成部分,特别是在Transformer架构中,层归一化(LN)被广泛应用。过去十年间,虽然有许多研究尝试改进或替换注意力层、卷积层等其他组件,但归一化层却很少被质疑或尝试替换,直到此项研究的出现。
DyT方法原理
研究人员发现层归一化(LN)在处理输入时呈现出类似tanh函数的S形曲线特征,能有效压缩极端值同时保持中心区域的线性形态。基于此发现,提出了动态Tanh (DyT)方法,通过可学习参数α控制tanh函数的缩放,以及参数γ和β允许输出调整到任意尺度。
DyT实现代码非常简洁,仅需9行代码,无需像传统归一化层那样计算激活统计信息,就能实现对输入的缩放和极值抑制。
实验验证
研究团队在多个领域和任务上进行了广泛实验验证:
- 视觉监督学习
- 在ImageNet-1K分类任务上,DyT在ViT和ConvNeXt模型上均表现优异
- ViT-B模型:DyT准确率82.5%,比LN高0.2%
- ViT-L模型:DyT准确率83.6%,比LN高0.5%
- ConvNeXt系列模型:DyT与LN性能相当或略优
- 视觉自监督学习
- 采用MAE和DINO方法进行测试
- MAE ViT-B模型:DyT与LN准确率均为83.2%
- DINO ViT-B(patch size 16):DyT准确率83.4%,略高于LN的83.2%
- DINO ViT-B(patch size 8):DyT准确率84.5%,高于LN的84.1%
- 图像生成
- 在扩散模型DiT的三种规模(B/L/XL)上进行测试
- DiT-B模型:DyT的FID分数63.9,优于LN的64.9
- DiT-L模型:DyT的FID分数45.7,优于LN的45.9
- DiT-XL模型:DyT的FID分数20.8,略逊于LN的19.9
- 大语言模型
- 对LLaMA 7B、13B、34B和70B模型进行预训练
- 所有规模上DyT与RMSNorm性能相当
- 训练损失和平均性能差异极小
- DNA序列建模和语音领域
- DNA序列建模:DyT在HyenaDNA和Caduceus模型上与LN性能相当
- 语音自监督学习:DyT在wav2vec 2.0模型上表现与LN相当或略优
超参数调优研究
- 学习率调优:原始为LN优化的超参数已很适合DyT模型
- α初始化研究:
- 非LLM模型:调整α初始值(α₀)提升有限,默认值0.5接近最优
- 大语言模型:精细调整α₀可带来明显性能提升,较大模型需较小α₀
- 注意力层中设置较高α₀,其他位置设置较低α₀效果更好
- 模型宽度对最优α₀选择影响较大,模型深度影响较小
计算效率评估
- LLaMA 7B模型上,DyT比RMSNorm计算效率显著提高:
- 推理阶段:DyT耗时1.0s,比RMSNorm的2.1s减少52.4%
- 训练阶段:DyT耗时4.8s,比RMSNorm的8.3s减少42.2%
研究意义
- 打破了对归一化层不可或缺的固有观念
- 实际应用上,DyT的高效性能大幅降低计算成本
- 为优化神经网络架构提供了新思路和方法
研究团队
- 朱家晨:纽约大学博士生,导师为杨立昆
- 陈鑫磊:Meta FAIR研究科学家,浙江大学本科毕业
- 何恺明:麻省理工学院副教授
- 杨立昆 (Yann LeCun):图灵奖获得者,Meta首席科学家,纽约大学终身教授
- 刘壮:项目负责人,Meta FAIR研究科学家,清华姚班本科毕业
总结
DyT作为一种革命性的归一化层替代方案,通过极其简洁的实现方式,不仅保持了模型性能,还显著提高了计算效率。它的出现挑战了深度学习领域的传统观念,为神经网络架构的优化开辟了新的道路,同时在实际应用中带来了显著的效率提升和成本节约。随着研究的深入,DyT有望在更广泛的深度学习任务中发挥重要作用。
要点
- DyT成功替代Transformer中的归一化层,9行代码实现
- 性能不降反升,在多领域任务中表现优异
- 计算效率显著提高,推理和训练时间减少约50%和42%
- 打破了归一化层不可或缺的固有观念,开创神经网络架构优化新思路
- 对降低AI模型训练和推理成本具有重要意义