技術指南

知識蒸餾

知識蒸餾訓練一個小型的「學生」模型來模仿一個大型的、準確的「教師」模型。

概述

知識蒸餾訓練一個小型的「學生」模型來模仿一個大型的、準確的「教師」模型。這很重要,因為它縮小了強大的模型,因此它們可以在手機和伺服器上以較低的成本運行,同時保持大部分準確性。

知識蒸餾是一個技術構建塊,會大規模影響模型品質、基礎設施成本、延遲和可靠性。

深入探討

大模型很準確,但部署緩慢且昂貴。知識蒸餾透過讓學生從教師的輸出中學習而不僅僅是從硬標籤中學習,將他們的能力轉移到一個緊湊的模型中。 Hinton 及其同事的關鍵見解是,教師的完整機率分佈帶有“暗知識”:即使它預測“狗”,“狼”與“汽車”的相對機率也揭示了教師如何看待相似之處。用溫度軟化這些機率會暴露該結構,學生會接受訓練來匹配它,通常與真實的標籤一起。結果是一個更小、更快的模型,比僅根據標籤訓練的模型具有更好的泛化能力。 DistilBERT 和 TinyBERT 是著名的蒸餾語言模型。

技術洞察

經典損失將蒸餾項(學生和教師的軟化機率之間的 KL 散度)與真實標籤上的標準交叉熵結合。軟化在 softmax 中使用溫度 T:較高的 T 會使分佈變得平坦,因此小的類間相似性會變成可學習的訊號;蒸餾梯度通常會以 T 平方縮放。變體超越輸出:基於特徵的蒸餾匹配中間隱藏層,基於關係的蒸餾匹配示例之間的關係。

掌握知識蒸餾

知識蒸餾訓練一個小型的「學生」模型來模仿一個大型的、準確的「教師」模型。這很重要,因為它縮小了強大的模型,因此它們可以在手機和伺服器上以較低的成本運行,同時保持大部分準確性。知識蒸餾是一個技術構建塊,會大規模影響模型品質、基礎設施成本、延遲和可靠性。為了建立深入的理解,請將知識蒸餾視為一種操作模型,而不是單一功能:定義期望的結果,澄清假設,並將系統可以可靠地完成的任務與仍需要專家判斷的任務分開。

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

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

戰略影響

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

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

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

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

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

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

知識蒸餾的未來

蒸餾現在是交付高效模型的標準步驟,也是當今小型、功能強大的開放模型浪潮的核心。一個快速成長的趨勢是從大型語言模型中進行序列級蒸餾,其中強大的模型生成訓練資料或推理軌跡(包括思維鏈)來教導較小的學生,從而模糊了與合成資料的界限。當從輸出成為競爭對手訓練訊號的專有模型中提取時,預計會與量化和修剪進行更緊密的配對,更多的設備上部署,以及有關許可和品質的持續爭論。

現實世界的實施

DistilBERT 將 BERT 的參數壓縮了大約 40%,同時保留了大部分語言理解,以實現更快的推理。

縮小大型視覺模型,以便影像分類器可以在智慧型手機相機應用程式上即時運行。

將大模型的思維鏈推理提煉成更小的模型,使其更便宜地回答數學或編碼問題。

將模型集合壓縮為單一學生,從而降低生產服務成本和延遲,而不會失去太多準確性。

實施模式

實踐中的知識蒸餾

DistilBERT 將 BERT 的參數壓縮了大約 40%,同時保留了大部分語言理解,以實現更快的推理。

DistilBERT 將 BERT 壓縮到大約 40% 的參數,同時保留其大部分語言理解,以實現更快的推理。當團隊預先定義品質閾值、為邊緣情況保留人工升級路徑並隨著時間的推移追蹤生產力增益和錯誤成本時,通常會獲得更好的結果。

實踐中的知識蒸餾

縮小大型視覺模型,以便影像分類器可以在智慧型手機相機應用程式上即時運行。

縮小大型視覺模型,以便影像分類器可以在智慧型手機相機應用程式上即時運行當團隊預先定義品質閾值、為邊緣情況保留人工升級路徑並隨著時間的推移跟踪生產力增益和錯誤成本時,通常會獲得更好的結果。

實踐中的知識蒸餾

將大模型的思維鏈推理提煉成更小的模型,使其更便宜地回答數學或編碼問題。

將大模型的思想鏈推理提煉成較小的模型,使其以更便宜的成本回答數學或編碼問題當團隊預先定義質量閾值、為邊緣情況保留人工升級路徑並隨著時間的推移跟踪生產力增益和錯誤成本時,通常會得到更好的結果。

實踐中的知識蒸餾

將模型集合壓縮為單一學生,從而降低生產服務成本和延遲,而不會失去太多準確性。

將模型集合壓縮到單一學生中,從而降低生產服務成本和延遲,而不會造成太大的準確性損失。當團隊預先定義品質閾值、為邊緣情況保留人工升級路徑並隨著時間的推移追蹤生產力增益和錯誤成本時,通常會獲得更好的結果。

風險與防護欄

!

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

!

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

!

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

實施路線圖

1

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

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

2

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

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

3

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

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

4

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

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

不斷探索