為什麼 transformer 效能這麼好?它為眾多大語言模型帶來的上下文學習 (In-Context Learning) 能力是從何而來?在人工智慧領域裡,transformer 已成為深度學習中的主導模型,但人們對於它卓越性能的理論基礎卻一直研究不足。 最近,來自 Google AI、蘇黎世聯邦理工學院、Google DeepMind 研究人員的新研究嘗試為我們揭開謎底。在新研究中,他們對 transformer 進行了逆向工程,尋找到了一些最佳化方法。論文《Uncovering mesa-optimization algorithms in Transformers》: 論文鏈接:https://arxiv.org/abs/2309.05858作者證明,最小化通用自回歸損失會產生在Transformer 的前向傳遞中運行的基於輔助梯度的最佳化演算法。這種現象最近被稱為「mesa 優化(mesa-optimization)」。此外,研究人員發現所得的 mesa 最佳化演算法表現出上下文中的小樣本學習能力,與模型規模無關。因此,新的結果對先前大語言模型中出現的小樣本學習的原理進行了補充。 研究人員認為:Transformers 的成功是基於其在前向傳遞中實現mesa 最佳化演算法的架構偏差:(i) 定義內部學習目標,以及(ii) 對其進行優化。
圖1:新假設的說明:最佳化自回歸Transformer fθ 的權重θ 會產生在模型前向傳播演算法。作為輸入序列 s_1, . 。 。 , s_t 被處理到時間步t,Transformer (i) 建立一個由輸入- 目標關聯對組成的內部訓練集,(ii) 透過結果資料集定義內部目標函數,用於衡量內部模型的效能使用權重W, (iii) 最佳化該目標並使用學習的模型產生未來的預測。
- 概括了von Oswald 等人的理論,並展示了從理論上,Transformers 是如何透過使用基於梯度的方法優化內部構建的目標來自回歸預測序列下一個元素的。
- 透過實驗對在簡單序列建模任務上訓練的Transformer 進行了逆向工程,並發現強有力的證據表明它們的前向傳遞實現了兩步演算法:(i ) 早期自註意力層透過分組和複製標記來建立內部訓練資料集,因此隱式地建立內部訓練資料集。定義內部目標函數,(ii) 更深層最佳化這些目標以產生預測。
- 與LLM 類似,實驗表明簡單的自回歸訓練模型也可以成為上下文學習者,而即時調整對於改善LLM 的上下文學習至關重要,也可以提高特定環境中的表現。
- 受發現注意力層試圖隱式優化內部目標函數的啟發,作者引入了mesa 層,這是一種新型注意力層,可以有效地解決最小二乘優化問題,而不是只採取單一梯度步驟來實現最優。實驗證明單一 mesa 層在簡單的順序任務上優於深度線性和 softmax 自註意力 Transformer,同時提供更多的可解釋性。
- 在初步的語言建模實驗後發現,用mesa 層替換標準的自註意力層獲得了有希望的結果,證明了該層具有強大的上下文學習能力。
基於最近人們的工作表明,經過明確訓練來解決上下文中的小樣本任務的 transformer 可以實現梯度下降(GD)演算法。在這裡,作者展示了這些結果可以推廣到自回歸序列建模 —— 這是訓練 LLM 的典型方法。 首先分析在簡單線性動力學上訓練的 transformer,其中每個序列由不同的 W* 產生 - 以防止跨序列記憶。在這個簡單的設定中,作者展示了 transformer 建立 mesa 資料集,然後使用預處理的 GD 優化 mesa 目標。
該研究在聚合相鄰序列元素的 token 結構上訓練深度 transformer。有趣的是,這種簡單的預處理會產生極其稀疏的權重矩陣(只有不到 1% 的權重非零),從而產生逆向工程演算法。
對於單層線性自註意力,權重對應一個 GD 步驟。對於深度 transformer,可解釋性就變得困難。該研究依靠線性探測並檢查隱藏激活是否可以預測自回歸目標或預處理輸入。 有趣的是,兩種探測方法的可預測性都會隨著網路深度的增加而逐漸提高。這項發現顯示模型中隱藏著預處理的 GD。
圖 2中經過訓練期間使用期間的線性自我注意力層。 該研究發現,在建構中使用所有自由度時,可以完美地擬合訓練層,不僅包括學習的學習率η,也包括一組學習的初始權重W_0。重要的是,如圖 2 所示,學得的 one-step 演算法的性能仍然遠遠優於單一 mesa 層。 我們可以注意到,在簡單的權重設定下,很容易透過基礎最佳化發現,該層可以最優地解決此處研究的任務。此結果證明了硬編碼歸納偏差有利於 mesa 最佳化的優勢。 憑藉著多層案例的理論見解,先分析深度線性和 softmax 只注意 Transformer。作者根據 4 通道結構設定輸入格式,,這對應於選擇 W_0 = 0。 與單層模型一樣,作者在訓練模型的權重中看到了清晰的結構。作為第一個逆向工程分析,該研究利用這個結構並建立一個演算法(RevAlg-d,其中 d 表示層數),每個層頭包含 16 個參數(而不是 3200 個)。作者發現這種壓縮但複雜的表達式可以描述經過訓練的模型。特別是,它允許以幾乎無損的方式在實際 Transformer 和 RevAlg-d 權重之間進行插值。 雖然 RevAlg-d 表達式解釋了具有少量自由參數的經過訓練的多層 Transformer,但很難將其解釋為 mesa 最佳化演算法。因此,作者採用線性迴歸探測分析(Alain & Bengio,2017;Akyürek et al.,2023)來尋找假設的 mesa 最佳化演算法的特性。 在圖3 所示的深度線性自註意力Transformer 上,我們可以看到兩個探針都可以線性解碼,解碼性能隨著序列長度和網絡深度的增加而增加。因此,基礎最佳化發現了一種混合演算法,該演算法在原始 mesa-objective Lt (W) 的基礎上逐層下降,同時改進 mesa 最佳化問題的條件數。這導致 mesa-objective Lt (W) 快速下降。此外可以看到性能隨著深度的增加而顯著提高。 因此可以認為自回歸mesa-objective Lt (W) 的快速下降是透過對更好的預處理資料進行逐步(跨層)mesa 優化來實現的。 圖 3:建構中的 token 輸入進行反向工程的多層 Transformer 訓練。
這表明,如果 transformer 在建置的 token 上進行訓練,它就會透過 mesa 最佳化進行預測。有趣的是,當直接給出序列元素時,transformer 會自行透過將元素分組來建構 token,研究團隊稱之為「建立 mesa 資料集」。 結論
該研究表明,當在標準自回歸目標下針對序列預測任務進行訓練時,Transformer 模型能夠開發基於梯度的推理演算法。因此,在多任務、元學習設定下獲得的最新結果也可以轉換到傳統的自監督 LLM 訓練設定中。 此外,研究還發現學得的自回歸推理演算法可以在無需重新訓練的情況下重新調整用途,以解決有監督的上下文學習任務,從而在單一統一框架內解釋結果。
那麼,這些與上下文學習(in-context learning)有什麼關係呢?研究認為:在自回歸序列任務上訓練 transformer 後,它實現了適當的 mesa 優化,因此可以進行少樣本(few-shot)上下文學習,而無需任何微調。
該研究假設 LLM 也存在 mesa 最佳化,從而提高了其上下文學習能力。有趣的是,研究還觀察到,為 LLM 有效調整 prompt 也可以帶來上下文學習能力的實質改進。
https://www.reddit. com/r/MachineLearning/comments/16jc2su/r_uncovering_mesaoptimization_algorithms_in/https://twitter.com/oswaldjoh/status/170187302910024124#####################124124###################################################################################124124## ##
以上是有理論基礎,我們就可以進行深度最佳化了。的詳細內容。更多資訊請關注PHP中文網其他相關文章!