CityU logo

知識蒸餾:兼顧隱私和性能之道

面對近年來的大語言模型(LLM,Large Language Model)應用風潮,許多企業已開始將領域數據與大模型結合,並取得了一定的成效。谷歌(Google)和必應(Bing)已利用大模型來提升搜尋引擎推薦,提升用戶搜尋體驗。Bloomberg也利用金融領域數據訓練出BloombergGPT 1為金融領域提供生成式AI輔助。儘管大語言模型為企業帶來了新機遇,但高部署成本 2 和跨平台數據洩露風險 3 使得更多企業對大語言模型的應用持審慎態度。如何以較小成本實現大語言模型的本地部署並保護私隱,成為許多企業的重要選擇。是否有相應的技術能夠滿足這一需求呢?知識蒸餾作為一種模型壓縮技術,旨在降低模型的計算存儲成本並保護資料私隱,能夠滿足企業對大語言模型本地化部署的要求。接下來,本文將結合大語言模型為您詳細介紹這一技術。


1. BloombergGPT, https://www.bloomberg.com/company/press/bloomberggpt-50-billion-parameter-llm-tuned-finance/

2. 36 Kr:企業給大模型買單,孰“輕”孰“重”?https://36kr.com/p/2308514429283584

3. 搜狐新聞:義大利暫時禁用ChatGPT,AI大語言模型背後數據洩露的“罪與罰” https://www.sohu.com/a/662054125_121255906

知識蒸餾:如何蒸餾?蒸餾什麼?

計算機學術界很早關注到模型為了提升效果不斷增大模型規模(模型數量和模型參數量)給模型本身的計算和存儲帶來的挑戰。面對這一挑戰,2015年人工智能之父之一的Hintonti提出知識蒸餾[1]這一概念。蒸餾在化學中是將混合物液體分離的技術,需要利用物質的沸點選取對應的蒸餾溫度(如圖1所示)。蒸餾前的液體總量大於或等於蒸餾後的液體總量。借助這一化學概念,我們可以形象地理解知識蒸餾。在知識蒸餾中,容器被比喻為模型,火焰加熱的容器和最終冷卻的容器通常被稱為教師模型和學生模型,而其中的蒸餾液體則代表著知識,模型則是知識的傳遞者(如圖2所示)。知識蒸餾過程中,不同的溫度」用來蒸餾不同的「知識」。此外,知識蒸餾的過程也類似於老師將自己的知識濃縮並傳授給學生的教學過程。因此,我們通常將蒸餾前的模型稱為教師模型(Teacher Model),將蒸餾後的模型稱為學生模型(Student Model)(如圖2所示)。

圖1:化學蒸餾過程示例

那麼在實際應用中,知識蒸餾又如何蒸餾,蒸餾什麼呢?以大語言模型為例,知識蒸餾通常通過將教師模型(大語言模型)的中間狀態作為知識傳輸給學生模型(深度神經網路模型)來進行蒸餾。在以大語言模型為例的情況下,中間狀態是模型對實際知識(如自然語言)的蒸餾,即將實際知識轉化為向量表示。學習過程是學生模型利用教師模型的中間狀態進行模型訓練,以實現知識的蒸餾(中間狀態)和傳遞(學生模型訓練)。

綜上所述,知識蒸餾通過將教師模型的中間狀態作為知識傳輸給學生模型,進行模型訓練和知識蒸餾。在這個過程中,原始數據僅對教師模型可見,中間狀態無法直接解析為實際知識,實現了私隱保護的目的。同時,學生模型在達到與教師模型類似效果(性能均衡)的情況下,具有較小的模型規模(一般可以實現10倍以上壓縮),實現了模型的壓縮效果。

圖2:知識蒸餾過程示例

知識蒸餾:金融企業在資料私隱保護下的協作

香港中國金融協會 4 之前舉辦了關於在金融領域應用人工智能大語言模型的專題活動,吸引了許多金融企業對大語言模型的興趣。儘管OpenAI、Bloomberg等公司提供了大語言模型的API供其他企業使用,但API本身需要進行數據傳輸,這增加了金融企業對用戶資料私隱的擔憂。在實際應用中,金融企業更傾向於本地部署具有私隱保護特性的大語言模型。前文我們已經論述了知識蒸餾在模型壓縮和私隱保護方面的特點。那麼在大語言模型時代,金融企業如何利用這一技術實現私隱保護下的本地部署呢?

一種方案是擁有大語言模型的金融企業直接進行知識蒸餾,將蒸餾後的學生模型提供給其他金融企業。這種方案的優點是可以直接獲得模型,但缺點是蒸餾後的模型難以進行調整。這種蒸餾方式適用於服務或業務相似的金融企業。

另一種方案是擁有大語言模型的金融企業將知識(中間狀態)直接提供給其他金融企業,其他金融企業再進行本地蒸餾模型訓練。這種方案的優點是可以方便地進行蒸餾模型的迭代,但缺點是需要一定的模型訓練經驗。這種蒸餾方式更適用於金融企業之間的個性化合作。

除了上述兩種簡單方案,擁有大語言模型的金融企業還可以根據業務需求提供一對多的蒸餾服務。此外,已經擁有蒸餾模型的金融企業也可以根據業務需要對蒸餾模型進行二次開發。在實際應用中,知識蒸餾通常可以將模型的大小壓縮十倍以上,並保持相似的性能水平[2]


4. https://www.hcfa.org.hk/event/?_do=event_show&activity_id=32195

未來的挑戰和機遇

雖然在前文中提到了知識蒸餾技術的優點和其在大語言模型時代的應用潛力,但同時也不能忽略知識蒸餾本身的一些局限性。首先,知識蒸餾過程中會損失一部分模型性能(現有研究已經證明這種損失較小[3])。此外,知識蒸餾需要一定的時間、算力支援和深度模型訓練經驗(要求遠低於教師模型)。因此,使用知識蒸餾的用戶需要綜合考慮其特點後再進行使用。

然而,考慮到大語言模型技術的不斷發展,帶來的性能提升和模型規模的增加,知識蒸餾無疑為資金和資源有限的中小企業提供了一種可行的解決方案,能夠在平衡性能和保護用戶資料私隱的考慮下進行應用。可以預見,未來對知識蒸餾的進一步開發將促進更多更好的深度學習模型在企業中的實際應用,提升企業的服務水平和用戶的體驗。

參考文獻:

[1] Hinton, Geoffrey, Oriol Vinyals, and Jeff Dean. “Distilling the knowledge in a neural network.” arXiv preprint arXiv:1503.02531 (2015).

[2] Gu, Yuxian, et al. “Knowledge Distillation of Large Language Models.” arXiv preprint arXiv:2306.08543 (2023).

[3] Gou, Jianping, et al. “Knowledge distillation: A survey.” International Journal of Computer Vision 129 (2021): 1789-1819.

在此感謝 InnoHK、香港特別行政區政府及人工智能金融科技實驗室對本文的支持。
(AIFT 竭力但不能保證內容之準確和可靠,亦不會承擔因任何不準確或遺漏而引起的任何損失或損害。 )

分享此內容

地址

香港沙田香港科學園科技大道西 19 號
11樓 1101-1102 及 1121-1123 室

產品及解決方案

人才

工作機會

關於我們

地址

版權所有 © 2024 人工智能金融科技實驗室有限公司