深度混合:在基於Transformer的語言模型中動態分配計算资源Mixture-of-Depths: Dynamically allocating compute in transformer-based
language models
基於Transformer的語言模型會均勻地分配FLOPs到輸入序列中。在這項研究中,我們展示了Transformers可以學習動態地將FLOPs(或計算)分配給序列中的特定位置,優化模型深度中不同層的序列上的分配。我們的方法通過限制可以參與自注意力和MLP計算的令牌數(k)來強制執行總計算預算。要處理的令牌是由網絡使用top-k路由機制確定的。由於k是事先定義的,這個簡單的程序使用具有已知張量大小的靜態計算圖,不像其他有條件的計算技術。然而,由於k令牌的身份是流動的,這種方法可以在時間和模型深度維度上非均勻地消耗FLOPs。因此,計算支出在總和上是完全可預測的,但在令牌級別上是動態且具有上下文敏感性的。這種訓練方式的模型不僅學會動態分配計算,而且效率高。這些模型在相等的FLOPS和牆鐘時間訓練時能夠達到基準性能,但每次前向傳遞所需的FLOPs只有一小部分,並且在後訓練抽樣期間的步驟速度可能快50%。