知識蒸餾 是什麼?
Knowledge Distillation — 知識蒸餾 的完整解釋
知識蒸餾是一種模型壓縮技術,透過讓小模型模仿大模型的輸出,使其在保有精準度的同時,大幅縮減模型體積
容易混淆
模型剪枝 剪枝是把現有模型的一部分拿掉,蒸餾是重新訓練一個更小的學生模型。
量化 量化是在改數值精度,蒸餾是在改模型的學習來源。
記住這句就好
老師教學生,小模型模仿大模型。
實際案例
手機語音辨識 把雲端大模型的輸出分佈轉給小模型學,手機端就能更快回應。
邊緣攝影機 監視器只能跑小模型時,蒸餾能讓它保留接近大模型的判斷能力。
算法與應用
蒸餾常用 soft label、temperature 和 teacher-student 架構。學生模型不一定要一模一樣地學老師,而是學老師對不同答案的相對偏好,這常比只學硬標籤更有效。
情境判斷
Q1(直覺題): 如果你現在遇到一個 手機語音辨識 的場景,這個概念會是第一個想到的工具嗎? → 看情況,但如果任務目標和這個概念的用途一致,就很可能是。核心還是先確認你要解決的是分類、分群、壓縮、檢索,還是最佳化。
Q2(判斷題): 如果你把它和 量化 一起用,結果反而變不穩,通常該怎麼想? → 看情況。先檢查資料分布、特徵定義和模型假設是否相容,很多時候不是概念本身有問題,而是使用條件不對,像距離尺度沒對齊、標註規則不一致,或輸入格式不合。
相關術語
常見問題
知識蒸餾 最容易跟 模型剪枝 混淆嗎?
剪枝是把現有模型的一部分拿掉,蒸餾是重新訓練一個更小的學生模型。
什麼情況會用到 知識蒸餾?
你可以把它想成讓小模型向大模型學習,不是學完全部知識,而是學到做事的方法。 實務上只要你要處理和這個概念相符的任務,就會用到它。
初學者最常錯在哪裡?
量化是在改數值精度,蒸餾是在改模型的學習來源。