谷歌承認“竊取”OpenAI模型信息:成本150元,調用API即可得手
什麽?谷歌成功偷家OpenAI,還竊取到了gpt-3.5-turbo關鍵信息???
是的,你沒看錯。
根據谷歌自己的說法,它不僅還原了OpenAI大模型的整個投影矩陣(projection matrix),還知道了確切隱藏維度大小。
而且方法還極其簡單——
只要通過API訪問,不到2000次巧妙的查詢就搞定了。
成本根據調用次數來看,最低20美元以內(折合人民幣約150元)搞定,並且這種方法同樣適用于GPT-4。
好家夥,這一回奧特曼是被將軍了!
這是谷歌的一項最新研究,它報告了一種攻擊竊取大模型關鍵信息的方法。
基于這種方法,谷歌破解了GPT系列兩個基礎模型Ada和Babbage的整個投影矩陣。如隱藏維度這樣的關鍵信息也直接破獲:
一個爲1024,一個爲2048。
所以,谷歌是怎麽實現的?
攻擊大模型的最後一層
該方法核心攻擊的目標是模型的嵌入投影層(embedding projection layer),它是模型的最後一層,負責將隱藏維度映射到logits向量。
由于logits向量實際上位于一個由嵌入投影層定義的低維子空間內,所以通過向模型的API發出針對性查詢,即可提取出模型的嵌入維度或者最終權重矩陣。
通過大量查詢並應用奇異值排序(Sorted Singular Values)可以識別出模型的隱藏維度。
比如針對Pythia 1.4B模型進行超過2048次查詢,圖中的峰值出現在第2048個奇異值處,則表示模型的隱藏維度是2048.
可視化連續奇異值之間的差異,也能用來確定模型的隱藏維度。這種方法可以用來驗證是否成功從模型中提取出關鍵信息。
在Pythia-1.4B模型上,當查詢次數達到2047時出現峰值,則表明模型隱藏維度大小爲2048.
並且攻擊這一層能夠揭示模型的“寬度”(即模型的總體參數量)以及更多全局性的信息,還能降低一個模型的“黑盒程度”,給後續攻擊“鋪路”。
研究團隊實測,這種攻擊非常高效。無需太多查詢次數,即可拿到模型的關鍵信息。
比如攻擊OpenAI的Ada和Babbage並拿下整個投影矩陣,只需不到20美元;攻擊GPT-3.5需要大約200美元。
它適用于那些API提供完整logprobs或者logit bias的生成式模型,比如GPT-4、PaLM2。
論文中表示,盡管這種攻擊方式能獲取的模型信息並不多,但是能完成攻擊本身就已經很讓人震驚了。
已通報OpenAI
如此重要的信息被競爭對手以如此低成本破解,OpenAI還能坐得住嗎?
咳咳,好消息是:OpenAI知道,自己人還轉發了一波。
作爲正經安全研究,研究團隊在提取模型最後一層參數之前,已征得OpenAI同意。
攻擊完成後,大家還和OpenAI確認了方法的有效性,最終刪除了所有與攻擊相關的數據。
所以網友調侃:一些具體數字沒披露(比如gpt-3.5-turbo的隱藏維度),算OpenAI求你的咯(doge)。
值得一提的是,研究團隊中還包括一位OpenAI研究員。
這項研究的主要參與者來自谷歌DeepMind,但還包括蘇黎世聯邦理工學院、華盛頓大學、麥吉爾大學的研究員們,以及1位OpenAI員工。
此外,作者團隊也給了防禦措施包括:從API下手,徹底刪除logit bias參數;或者直接從模型架構下手,在訓練完成後修改最後一層的隱藏維度h等等。
基于此,OpenAI最終選擇修改模型API,“有心人”想複現谷歌的操作是不可能了。
但不管怎麽說:谷歌等團隊的這個實驗證明,OpenAI鎖緊大門也不一定完全保險了。
(要不你自己主動點開源了吧)---[明敏 豐色 發自 : 凹非寺*量子位 : 公衆號 QbitAI/來源: 量子位]
論文鏈接:https://arxiv.org/abs/2403.06634
參考鏈接:https://twitter.com/arankomatsuzaki/status/1767375818391539753