📐 SwiGLU 门控机制
30章 · 从数学原理出发
🧮 友好色系
01
门控机制起源:从LSTM到GLU,门控思想的核心是什么?为什么需要门控?
01.html
门控起源
02
Sigmoid与Tanh:经典门控激活函数的数学表达式与梯度特性分析。
02.html
激活函数
03
GLU的提出:Gated Linear Unit的数学形式,为什么线性门控比非线性门控更高效?
03.html
线性门控
04
Swish激活函数:Swish = x * sigmoid(x) 的数学推导,为什么它比ReLU更平滑?
04.html
Swish
05
从Swish到SwiGLU:SwiGLU = Swish(Wx) * Vx 的数学动机,门控与激活的融合。
05.html
动机融合
06
SwiGLU的数学定义:完整公式 SwiGLU(x) = Swish(W1x) ⊙ (W2x),逐元素乘法的意义。
06.html
定义
07
门控矩阵的维度分析:W1、W2的维度设计,如何控制信息流?
07.html
维度
08
SwiGLU与ReLU的对比:数学上为什么SwiGLU能捕获更丰富的特征交互?
08.html
对比ReLU
09
SwiGLU与GELU的对比:GELU的随机正则化视角 vs SwiGLU的确定性门控视角。
09.html
对比GELU
10
SwiGLU的梯度流:反向传播时,门控如何影响梯度?为什么能缓解梯度消失?
10.html
梯度流
11
门控的稀疏性:SwiGLU是否具有隐式的稀疏诱导特性?与ReLU的稀疏性有何不同?
11.html
稀疏性
12
SwiGLU在Transformer中的位置:FFN层的替换,为什么LLaMA选择SwiGLU?
12.html
Transformer
13
SwiGLU的参数效率:相比标准FFN,SwiGLU的参数增加与性能提升的权衡。
13.html
参数效率
14
SwiGLU的变体:SwiGLU vs GeGLU vs ReGLU,不同激活函数作为门控的效果。
14.html
变体
15
门控的初始化策略:如何初始化W1和W2?Xavier初始化在门控中的适配。
15.html
初始化
16
SwiGLU的数值稳定性:大模型训练中,门控值过大或过小如何处理?
16.html
数值稳定
17
SwiGLU的硬件友好性:为什么GPU对SwiGLU的计算模式友好?
17.html
硬件
18
SwiGLU的数学证明:为什么门控机制能实现特征选择的线性变换?
18.html
数学证明
19
门控的泛化边界:从VC维角度,门控如何影响模型的表达能力?
19.html
泛化边界
20
SwiGLU的消融实验:去掉门控或去掉Swish,分别对性能有何影响?
20.html
消融
21
SwiGLU的代码实现:从零实现SwiGLU,对比PyTorch内置版本。
21.html
代码实现
22
SwiGLU的梯度计算:手动推导SwiGLU对W1和W2的梯度公式。
22.html
梯度推导
23
SwiGLU的混合精度训练:FP16/BF16下门控的精度损失与补偿。
23.html
混合精度
24
SwiGLU的缩放因子:为什么有些实现中SwiGLU需要除以2?
24.html
缩放因子
25
SwiGLU与MoE的关系:门控机制在混合专家模型中的扩展应用。
25.html
MoE
26
SwiGLU的注意力视角:门控值是否类似于注意力权重?
26.html
注意力
27
SwiGLU的局限性:什么场景下SwiGLU不如ReLU或GELU?
27.html
局限性
28
SwiGLU的改进方向:是否有比Swish更好的门控激活函数?
28.html
改进方向
29
SwiGLU的理论支撑:从函数逼近论角度,门控如何提升逼近能力?
29.html
逼近论
30
SwiGLU的实践总结:在LLaMA、PaLM等模型中的实际配置与调参经验。
30.html
实践总结