技術指南

二階優化和牛頓法

二階最佳化使用曲率資訊(二階導數的 Hessian 矩陣)來採取更聰明的步驟來達到最小值,而不僅僅是斜率。

概述

二階最佳化使用曲率資訊(二階導數的 Hessian 矩陣)來採取更聰明的步驟來達到最小值,而不僅僅是斜率。與普通梯度下降相比,它可以以少得多的迭代次數收斂,但計算曲率的成本使其難以擴展。

二階最佳化和牛頓法是一個技術構建塊,會大規模影響模型品質、基礎設施成本、延遲和可靠性。

深入探討

梯度下降只知道當前點的斜率,因此它會選擇固定或手動調整的步長,並希望獲得最佳的結果。牛頓方法更進一步:它還研究斜率如何變化(曲率),由所有二階偏導數的矩陣 Hessian 捕獲。更新將逆 Hessian 矩陣乘以梯度,這會自動重新縮放每個方向並接近局部二次近似的最小值。對於完美的二次碗,牛頓法只需一步即可到達底部。問題很殘酷:具有 N 個參數的模型具有 N×N Hessian,因此儲存和反轉它大約需要 N 平方記憶體和 N 立方計算。對於十億參數的網路來說這是不可能的,這就是為什麼從業者使用更便宜的近似值。

技術洞察

核心牛頓更新是 x_new = x - H_inverse 乘以梯度,其中 H 是 Hessian。 BFGS 和 L-BFGS 等擬牛頓方法透過根據連續梯度差構建 H 的倒數的運行近似來避免直接計算 H。 L-BFGS 僅儲存最後幾個梯度和步長向量,而不是整個矩陣,將記憶體從 N 平方減少到 N 的小倍數,同時保持大部分收斂加速。

掌握二階優化和牛頓法

二階最佳化使用曲率資訊(二階導數的 Hessian 矩陣)來採取更聰明的步驟來達到最小值,而不僅僅是斜率。與普通梯度下降相比,它可以以少得多的迭代次數收斂,但計算曲率的成本使其難以擴展。二階最佳化和牛頓法是一個技術構建塊,會大規模影響模型品質、基礎設施成本、延遲和可靠性。為了建立深入的理解,請將二階最佳化和牛頓法視為一種操作模型,而不是單一功能:定義期望的結果,澄清假設,並將系統可以可靠地完成的任務與仍需要專家判斷的任務分開。

在實踐中,強大的團隊使用二階優化和牛頓法根據可靠性和成本優化架構、資料和基礎設施選擇。他們記錄明確的成功標準,根據實際數據和工作流程進行測試,並根據觀察到的失敗模式而不是一次性基準測試勝利進行迭代。這就是理論理解轉變為跨產品、政策和營運的持久能力的地方。

多年來,架構決策決定著效能和營運成本。同時,優化一個基準測試可以隱藏更廣泛的系統弱點。最具彈性的方法是將實驗速度與治理規則結合:運行試點、捕獲證據、發布決策日誌,並隨著模型行為、使用者期望和監管要求的發展不斷更新保障措施。

戰略影響

多年來,架構決策決定著效能和營運成本。

多年來,架構決策決定著效能和營運成本。在高品質部署中,這會轉化為可衡量的操作規則、所有權邊界和定期審查儀式,以便團隊可以增強信心,而不是擴大模糊性。

技術教育幫助團隊選擇正確的堆疊,而不僅僅是最新的堆疊。

技術教育幫助團隊選擇正確的堆疊,而不僅僅是最新的堆疊。在高品質部署中,這會轉化為可衡量的操作規則、所有權邊界和定期審查儀式,以便團隊可以增強信心,而不是擴大模糊性。

更好的工程選擇可以減少生產中的可靠性事故。

更好的工程選擇可以減少生產中的可靠性事故。在高品質部署中,這會轉化為可衡量的操作規則、所有權邊界和定期審查儀式,以便團隊可以增強信心,而不是擴大模糊性。

二階優化與牛頓法的未來

對於巨型神經網絡,完整的二階方法仍然不切實際,但近似方法正在取得進展。 K-FAC 和 Shampoo 等優化器使用塊對角線或 Kronecker 分解結構來近似曲率,而 Sophia 和 Muon 等較新的方法使用廉價的曲率估計來加速大型語言模型預訓練。預計將繼續努力以接近一階的成本捕獲有用的曲率訊號,從而縮小亞當步和真正的牛頓步之間的差距。

現實世界的實施

L-BFGS 在 scikit-learn 中擬合邏輯回歸和其他凸模型,它通常在中小型資料集上擊敗普通梯度下降

3D 重建和 SLAM 中的捆綁調整,其中 Gauss-Newton 和 Levenberg-Marquardt 細化相機姿態和點位置

訓練微小的物理資訊神經網絡,其中 L-BFGS 達到 Adam 難以達到的精確度

Shampoo 和 K-FAC 透過近似 Hessian 結構加速大規模深度學習訓練

實施模式

二階優化與牛頓法的實踐

L-BFGS 在 scikit-learn 中擬合邏輯回歸和其他凸模型,它通常在中小型資料集上擊敗普通梯度下降。

L-BFGS 在 scikit-learn 中擬合邏輯迴歸和其他凸模型,在中小型資料集上它通常勝過簡單的梯度下降。當團隊預先定義品質閾值、為邊緣情況保留人工升級路徑並隨著時間的推移追蹤生產力增益和錯誤成本時,通常會獲得更好的結果。

二階優化與牛頓法的實踐

3D 重建和 SLAM 中的捆綁調整,其中 Gauss-Newton 和 Levenberg-Marquardt 細化相機姿態和點位置。

3D 重建和 SLAM 中的捆綁調整,其中 Gauss-Newton 和 Levenberg-Marquardt 細化相機姿勢和點位置 當團隊預先定義質量閾值、為邊緣情況保留人工升級路徑並隨著時間的推移跟踪生產力增益和錯誤成本時,通常會獲得更好的結果。

二階優化與牛頓法的實踐

訓練微小的物理資訊神經網絡,其中 L-BFGS 實現了 Adam 難以達到的精確度。

訓練微型物理資訊神經網絡,其中 L-BFGS 達到 Adam 難以達到的精確度。當團隊預先定義品質閾值、為邊緣情況保留人工升級路徑並隨著時間的推移追蹤生產力增益和錯誤成本時,通常會得到更好的結果。

二階優化與牛頓法的實踐

Shampoo 和 K-FAC 透過近似 Hessian 結構加速大規模深度學習訓練。

Shampoo 和 K-FAC 透過近似 Hessian 結構加速大規模深度學習訓練 團隊在預先定義品質閾值、為邊緣情況保留人工升級路徑並隨著時間的推移追蹤生產力增益和錯誤成本時,通常會獲得更好的結果。

風險與防護欄

!

優化一項基準測試可以隱藏更廣泛的系統弱點。

!

基礎設施和維護成本常常被低估。

!

隨著系統變得更加複雜,安全性和可觀察性差距可能會擴大。

實施路線圖

1

在實施之前定義延遲、品質和成本目標。

在實施之前定義延遲、品質和成本目標。將每個步驟視為證據門:如果不符合標準,則暫停推出,縮小差距,然後再擴大使用。

2

在實際負載和資料條件下進行基準測試。

在實際負載和資料條件下進行基準測試。將每個步驟視為證據門:如果不符合標準,則暫停推出,縮小差距,然後再擴大使用。

3

儀器監控錯誤、漂移和使用者影響。

儀器監控錯誤、漂移和使用者影響。將每個步驟視為證據門:如果不符合標準,則暫停推出,縮小差距,然後再擴大使用。

4

在擴展之前準備回滾和事件回應路徑。

在擴展之前準備回滾和事件回應路徑。將每個步驟視為證據門:如果不符合標準,則暫停推出,縮小差距,然後再擴大使用。

不斷探索