訓練大模型缺少高質量數據?我們找到了一種新的解決方案
數據,作為決定機器學習模型性能的三大要素之一,正在成為制約大模型發展的瓶頸。正所謂「Garbage in, garbage out」[1],無論你的算法多么優秀,你的計算資源多么強大,模型的質量都直接取決于你用來訓練模型的數據。
隨著各種開源大模型的涌現,數據的重要性進一步凸顯,尤其是高質量的行業數據。彭博社基于開源的 GPT-3 框架打造金融大模型 BloombergGPT,證明了基于開源的大模型框架開發垂直行業大模型的可行性。事實上,面向垂直行業構建或定制閉源的輕量化大模型,也正是國內多數大模型創業公司所選擇的路徑。
在這個賽道,高質量的垂直行業數據、基于專業知識的微調和對齊能力至關重要——BloombergGPT 基于彭博社積累了 40 多年的金融文檔構建,訓練語料庫的 token 超過 7000 億[2]。
然而,獲取高質量的數據并不容易。有研究指出,按照當前大模型吞噬數據的速率,高質量的公域語言數據,例如書籍、新聞報道、科學論文、維基百科等,將在 2026 年左右耗盡[3]。
公開可用的中文高質量數據資源原本就相對較少,而國內的專業數據服務還在起步階段,進行數據收集、清洗、標注和驗證需要投入大量的人力和物力。據悉,國內某高校大模型團隊,收集、清洗 3TB 高質量中文數據的成本,包括下載數據帶寬、數據存儲資源(未清洗的原始數據約為 100TB)、清洗數據的 CPU 資源成本總計約數十萬元。
隨著大模型發展走向深度,要訓練出滿足產業需求、精度極高的垂直行業模型,一定需要更多的行業專業知識,甚至商業機密類型的私域數據。但是,出于隱私保護的要求,以及確權、收益劃分存在的困難,企業往往不愿意、不能或者不敢分享他們的數據。
有沒有一種方案,既可以享受數據開放和共享的好處,又能保護數據的安全和隱私呢?
隱私計算能否打破困境?
隱私計算(Privacy-preserving Computation)能夠在保證數據提供方不泄露原始數據的前提下,對數據進行分析、處理和使用,被視為促進數據要素流通和交易的關鍵技術[4],因此,將隱私計算用于保護大模型的數據安全,似乎成了一種自然的選擇。
隱私計算不是一種技術,而是一個技術體系。根據具體的實現,隱私計算主要分為以多方安全計算為代表的密碼學路徑、以可信執行環境為代表的機密計算路徑,以及以聯邦學習為代表的人工智能路徑[5]。
不過,在實際應用中,隱私計算存在一些局限。例如,引入隱私計算 SDK 通常會對原有業務系統進行代碼層面的修改[6]。如果是基于密碼學的實現,加解密操作會讓計算量呈幾何級增長,同時密文計算需要更大的計算和存儲資源以及通信負載[7]。
此外,涉及超大規模數據量的大模型訓練場景,現有的隱私計算方案還會遭遇一些新的問題。
基于聯邦學習的方案
讓我們首先看看聯邦學習的困難。聯邦學習的核心思想是「數據不動模型動」,這種去中心化的方式保證了敏感數據待在本地,無需暴露或傳輸。每個設備或服務器通過向中心服務器發送模型的更新,參與到訓練過程中,而中心服務器則聚合并融合這些更新,從而改進全局模型[8]。
然而,集中訓練大模型已經是一件非常困難的事情,分布式的訓練方法大大增加了系統的復雜性。我們還需要考慮模型在各個終端上訓練時數據的異質性,以及如何安全地聚合所有設備的學習權重——對于大模型的訓練,模型權重本身就是一項重要資產。此外,還必須防止攻擊者從單個模型更新中推斷出私有數據,而相應的防御措施會進一步增加訓練開銷。
基于密碼學的方案
同態加密能夠直接對加密數據進行計算,讓數據「可用不可見」[9]。在處理或分析敏感數據并保證其機密性的場景中,同態加密是保護隱私的強大工具。這種技術不僅可以應用于大模型的訓練,也能在保護用戶輸入(prompt)的機密性的同時進行推理。
然而,相比于使用未加密數據進行大模型的訓練和推理,使用加密數據要困難得多。同時,處理加密數據需要更多的計算,會指數級地增加處理時間,并進一步增加訓練大模型已經非常高的算力需求。
基于可信執行環境的方案
再來說說基于可信執行環境(TEE)的解決方案。大多 TEE 解決方案或產品都需要額外采購專門的設備,如多方安全計算節點、可信執行環境設備、密碼加速卡等,無法適配已有的計算、存儲資源,使得這種解決方案對許多中小企業來說并不現實。此外,目前 TEE 方案主要是基于 CPU 進行的,而大模型訓練嚴重依靠 GPU。現階段支持隱私計算的 GPU 方案還不成熟,反而造成了額外的風險[10]。
總的來說,在多方協作計算的場景下,很多時候要求原始數據物理意義上的「不可見」并不合理。此外,由于加密過程給數據添加了噪聲,在加密數據上進行訓練或推理,也會造成模型性能損失和降低模型準確性。現有的隱私計算方案無論是性能和還是在 GPU 支持方面,都無法很好地適用于大模型訓練場景,也阻礙了擁有高質量數據資源的企業和機構開放和共享信息,參與到大模型產業中來。
可控計算,一種隱私計算的新范式
「當我們把大模型產業看做從數據到應用的一個鏈條,會發現這個鏈條實際上是各種數據(包括原始數據,也包括以參數形式存在于模型中的數據)在不同主體間的流通鏈,而這個產業的商業模式則應該構建于這些流通的數據(或模型)是可以被交易的資產基礎之上。」熠智科技的 CEO 湯載陽博士表示。
「數據要素的流通涉及多個主體,而產業鏈的源頭一定是數據提供方。也就是說,所有的業務其實都是由數據提供方來發起,只有數據提供方授權,交易才可能進行,所以應該優先保證數據提供方的權益。」
目前市場上主流的隱私保護解決方案,如多方安全計算、可信執行環境和聯邦學習,都聚焦數據使用方如何處理數據,湯載陽認為,我們需要從數據提供者的角度出發去看問題。
熠智科技成立于 2019 年,定位于面向數據合作的隱私保護解決方案提供商。2021 年,公司入選了由中國信息通信研究院發起的「數據安全推進計劃」(Data Security Initiative,DSI)首批參與單位,并被 DSI 認證為 9 家代表性隱私計算企業廠商之一。2022 年,熠智科技正式成為國內首個國際化自主可控隱私計算開源社區——開放群島(Open Islands)開源社區成員單位,共同推動數據要素流通關鍵基礎設施建設。
針對目前大模型訓練的數據困境,以及更廣泛的數據要素流通問題,熠智科技從實踐出發,提出了一種新的隱私計算解決方案——可控計算。
「可控計算的核心關注點是以保護隱私的方式來發現和共享信息。我們解決的問題是在訓練的過程中保證所用數據的安全,以及訓練出來的模型不被惡意竊取。」湯載陽說。
具體說,可控計算要求數據使用方在數據提供方定義的安全域中對數據進行加工和處理。
安全域在數據流通場景中的示例
安全域是一個邏輯上的概念,指由相應的密鑰和加密算法保護的存儲、計算單元。安全域由數據提供方定義和約束,但相應的存儲、計算資源并不由數據提供方提供。物理上,安全域在數據使用方,但是由數據提供方所控制。除了原始數據,加工、處理后的中間數據和結果數據也在相同的安全域中。
在安全域中,數據可以是密文(不可見),也可以是明文(可見),在明文情況下,由于數據可見的范圍是受控的,因此確保了數據在使用過程中的安全。
復雜的密文計算導致的性能下降是限制隱私計算應用范圍的一個重要因素,通過強調數據的可控,而不是一味追求不可見,可控計算解決了傳統隱私計算方案對原有業務的侵入性,因此非常適合需要處理超大規模數據的大模型訓練場景。
企業可以選擇將自己的數據存放在多個不同的安全域中,并給這些安全域設定不同的安全等級、使用權限或白名單。對于分布式應用,也可以在多個計算機節點乃至芯片上設定安全域。
「安全域是可以串起來的,在數據流通的各個環節,數據提供方可以定義多個不同的安全域,讓自己的數據只在這些安全域之間互相流轉,最終這些串聯的安全域就構建起了一個數據的網絡。在這個網絡上面,數據是可控的,對數據的流轉、分析、處理等也可度量、可監管,數據的流通也可以做相應的變現。」湯載陽解釋說。
基于可控計算的思想,熠智科技推出了「DataVault」。
DataVault 原理:結合 Linux 度量啟動和 Linux 全盤加密技術,實現數據在安全域內的可控、防護。
DataVault 將可信平臺模塊 TPM(Trusted Platform Module,其核心是提供基于硬件的安全相關功能)做為信任根,保護了系統的完整性;使用 Linux 安全模塊 LSM( Linux Security Modules,Linux 內核中用于支持各種計算機安全模型的框架,其與任何單獨的安全實現無關)技術,使安全域內的數據只在可控范圍內使用。
在此基礎上,DataVault 使用 Linux 提供的全盤加密技術將數據置于安全域內,熠智科技自研了完整的密鑰分發以及簽名授權等密碼協議,并做了大量工程上的優化,進一步保證了數據的可控。
DataVault 支持多種專用加速卡,包括不同的 CPU、GPU、FPGA 等硬件,也支持多種數據處理框架、模型訓練框架,且二進制兼容。
更重要的是,它有著遠低于其他隱私計算解決方案的性能損失,在大部分應用中,相比原生系統(即不用任何隱私計算技術),整體性能損失不超過 5%。
部署 DataVault 后,基于 LLaMA-65B 的評估(Evaluation)和提示評估(Prompt Evaluation)環節中,性能損失小于 1‰。
DataVault 保護數據流通和模型資產案例
現在,熠智科技已與國家超級計算中心達成合作,在超算平臺上部署面向 AI 應用的隱私保護高性能計算平臺。基于 DataVault,算力使用方可以在計算平臺上設定安全域,確保數據從存儲節點轉移到計算節點的全過程都只能在安全域之間移動,不離開設定的范圍。
除了確保數據在模型訓練中的可控,基于 DataVault 解決方案,訓練好的大模型本身作為一種數據資產,也可以得到保護并被安全地交易。
目前,對于那些希望在本地部署大模型的企業,例如金融、醫療等高敏感數據機構,苦于缺少在本地運行大模型的基礎設施,包括訓練大模型的高成本高性能硬件,以及部署大模型后續的運維經驗。而對于構建行業大模型的企業,他們則擔心如果直接將模型交付給客戶,模型本身和模型參數背后積累的行業數據和專業知識存在被二次販賣的可能。
作為對垂直行業大模型落地的一種探索,熠智科技也正與粵港澳大灣區數字經濟研究院(IDEA 研究院)合作,雙方聯合打造了具有模型安全保護功能的大模型一體機。這種一體機內置了若干垂直行業大模型,配備大模型訓推所需的基礎算力資源,可以滿足客戶開箱即用的需求,其中熠智的可控計算組件 DataVault 可以確保這些內置模型僅在獲得授權的情況下被使用,模型以及所有中間數據無法被外部環境竊取。
作為一種新的隱私計算范式,熠智科技希望可控計算能為大模型行業和數據要素流通帶來改變。
「DataVault 只是一個輕量級的實現方案。隨著技術和需求的變化,我們會持續更新,在數據要素流通市場有更多的嘗試和貢獻,也歡迎更多行業伙伴加入進來,共建可控計算社區。」湯載陽說。