詳細解釋
殘差連接(Residual Connection,Skip Connection)是將層的輸入直接添加到輸出的捷徑連接,解決深度網絡的梯度消失問題,使訓練上百層網絡成為可能。
核心思想:
- 學習殘差:F(x) = H(x) - x,學習殘差而非直接映射
- 恆等映射:H(x) = F(x) + x
- 梯度捷徑:梯度可以直接反向傳播
為何有效:
- 梯度流:跳過層直接傳遞梯度
- 恆等映射初始化:初始時F(x)≈0,H(x)≈x
- 不深於必要:網絡可以學習使用多少層
- 優化更容易:殘差比原始映射更易學習
應用:
- ResNet(2015):152+層圖像分類
- DenseNet:更密集的連接
- Transformer:每個子層的殘差+LN
- U-Net:編碼器-解碼器結構
變體:
- 基本殘差:x + F(x)
- 預激活:LN → 子層 → 殘差 → LN
- 寬度殘差:增加通道數減少深度
- 分組殘差:ResNeXt的分組卷積
與高速網絡、門控的關係:
- 類似概念:LSTM的恆定誤差旋轉
- Highway Networks:帶門控的殘差
- ResNet:簡化,無門控,效果反而更好
設計考量:
- 位置:通常每個卷積塊/子層後
- 維度匹配:輸入輸出維度不同時需投影
- Batch Norm:通常放在殘差路徑內
數學分析:
- 反向傳播:∂L/∂x = ∂L/∂H + ∂L/∂F
- 梯度不消失:+1項確保梯度流動
影響:
- 深度革命:100+層變得可行
- 網絡設計:成為標準組件
- 理論理解:推動優化理論研究
殘差連接是深度學習架構的革命性創新。