大模型最新理論研究,根據模型輸出反轉LLM輸入提示,讓惡意攻擊無處可藏

2024年2月6日 21点热度 0人点赞

近一段時間以來,工業界和學術界都對大型語言模型(LLM)的內部運行機理進行了深入的研究和探索。這種基礎理論研究對於大模型更安全更廣泛的應用落地具有重要意義。目前較為流行的LLM架構仍然基於自回歸式的Transformer架構,即模型根據上一步輸出的token來預測下一個token的概率分佈。那我們能否根據LLM的輸出反推出用戶輸入給模型的提示(prompt)呢,這種情景在輿情監控等安全領域會經常出現。用惡意用戶通過偽裝手段對LLM發出攻擊時,如果能夠對輸出進行反推分析得到攻擊者的偽裝手段,就可以更具針對性的進行攔截。
本文介紹一篇來自康奈爾大學計算機系的研究論文,本文的研究團隊首次提出了反轉語言模型(Language Model Inversion)的概念,並通過實驗表明,LLM中的下一個預測token包含了先前文本token的大量先驗。同時也提出了一種僅在模型當前分佈來恢復用戶未知提示的方法,該方法在Llama-27b模型上實現了78%的F1恢復精度。

論文題目:

Language Model Inversion
論文鏈接:

https://arxiv.org/abs/2311.13647
代碼倉庫:

https://github.com/jxmorris12/vec2text

一、引言

在LLM的運行過程中,輸入提示扮演了非常重要的角色,如果用戶希望LLM能夠給出自己理想的回答,往往需要借助提示工程(Prompt Engineering),即根據一定的策略來組織自己的提示信息。從模型安全的角度考慮,研究人員希望能夠根據LLM的輸出來反推得到用戶所具體使用的提示工程。即以已有token的概率分佈為條件,來反轉模型得到用戶輸入提示。
本文提出了一種模型反轉架構,如上圖所示,首先通過將分佈向量展開為可以由預訓練的語言模型有效處理的序列,然後將其送入到一個反轉模型(Inversion Model)中進行提示生成。本文的實驗表明,雖然反轉模型無法百分之百恢復提示,但其恢復的提示與用戶真實提示已經非常接近,這也表明,現有的LLM具有一定的可逆性。此外,本文作者還探索了這種反轉技術在實際應用場景中的效率可行性,例如通過離散采樣、top-K概率等策略來提高反轉的效率。

二、本文方法

2.1 LLM的輸出Logits含有大量先驗

自回歸模型通過將之前的token作為當前時刻的輸入來預測下一個token的概率:

其中 表示下一個token的概率,一般來說,這些模型的詞匯量相對較大,詞匯表 可能包含數萬或數十萬個元素
本文作者首先構建了一個簡單的實驗,給定來自維基百科的 100 個文本輸入,作者用同義詞替換了第一個句子中的一個單詞,設 為單詞 的同義詞。為了測量原始序列(包含 )和新序列(包含 )之間語言模型輸出的變化,作者計算兩個量:原始序列和同義詞交換序列的概率輸出之間的 KL 散度,以及兩個分佈之間的漢明距離

作者在上圖中繪制了KL散度和漢明距離的變化曲線,如果LLM的輸出logits不包含有關先前單詞的殘留信息,當同義詞交換位置逐漸變遠時漢明距離應該會衰減到零。但是從上圖中可以看到,藍色曲線隻降低了一點點。而由於KL散度會更加關註具有最高似然的token上,因此它可以衰減到零由此現象作者得出,向量 顯然包含了提示的殘餘信息。
2.2 模型反轉架構
為了訓練出一個良好的反轉模型(Inversion Model),作者首先構建了一個大規模的指令元數據集Instructions-2M,其中包含了2.33M條指令數據,涵蓋了針對不同問題的用戶和系統提示,主要從Dolly3、ShareGPT4、Alpaca、Stable Diffusion Dataset、WizardLM、GPTeacher等模型的提示數據集中收集得到,可以說,Instructions-2M涵蓋了目前較為流行的LLM傢族。
直觀上理解,如果想要從LLM的輸出概率分佈進行反推,模型需要理解當前輸出與原始提示信息之間的語義關系,例如當LLM輸出文本是“波哥大”,Inversion Model應該預測得到“哥倫比亞的首都是什麼?”。本文提出的方法是學習一個條件語言模型,該模型需要將下一個token的概率映射回原始token:
作者使用預訓練的 Transformer(編碼器-解碼器結構)語言模型對該分佈進行參數化,並對來自無條件模型的樣本進行訓練。由於本文的編碼器模型是在文本上進行預訓練的(使用 T5),因此這裡必須重新格式化 次才將其送入到語言編碼器中最直接的方法是將 投影到一個隱藏空間中。然而,考慮到詞匯表 的規模很大,並且其已經通過了softmax計算,這將導致logits的信息丟失。因此,作者將向量“展開”成偽嵌入序列(pseudo-embeddings) ,以便後續可以根據概率向量 來調節Transformer的輸出:

上式中 是Inversion Model給出的恢復提示, 是嵌入維度。
2.3 在實際的API生產環境中進行反轉
上一小節詳細介紹了本文所提Inversion Model的運行機制,Inversion Model建立在用戶可以訪問LLM的完整輸出概率向量的基礎之上。但是目前很多語言模型平臺都會嚴格限制API調用返回的信息例如一些知名的LLM API隻能返回top-5的log概率,而不會給出完整的輸出概率。
為了解決這一問題,本文作者利用這樣一個事實:即使 API 服務沒有返回完整的概率,它們通常允許用戶添加 logit 偏差來調整分佈除了為每個 API 調用提供 logit 偏差之外,通常還允許用戶自定義模型的溫度參數。因此,可以通過找到每個token與最有可能的單詞的差異來恢復每個token的概率,本文作者通過尋找使該詞最有可能出現的最小邏輯偏差來計算這種差異
上圖詳細展示了這種方法的算法流程,該方法依賴二分搜索來查找每個單詞的 logit 偏。需要註意的是,二分搜索可以針對每個單詞獨立進行,從而實現完全並行化的操作
三、實驗效果
本文使用Llama-2(7B) 和 Llama-2Chat(7B)[1]作為Inversion Model,並且使用T5-base作為編碼器-解碼器的backbone,評價指標選用token級的F1 score和BLEU分數,除了這種直接對字符串進行匹配的度量,作者還考慮了原始文本和恢復文本之間嵌入的餘弦相似此外,作者選取了Jailbreak strings方法(字符串越獄)來作為對比baseline。Jailbreak strings嘗試加入一些隱晦的文字來誘導語言模型泄露序列中的token信息,這種攻擊手段通常包含固定的模板或者手工設計的誘導模式。
上表展示了本文方法在原始LLM和經過人類反饋強化學習(RLHF)微調後的Chat模型上的實驗結果,與基於手工設計的越獄字符串相比,本文的方法在絕大多數情況上都獲得了更好的恢復準確率。同時相比使用GPT-4、GPT-3.5等模型直接恢復提示,本文的方法具有更加合理的BLEU分數。
此外,作者在上表中展示了Inversion Model對instructions-2M數據集中一部分示例的恢復效果。可以看出,本文方法恢復出來的提示往往可以準確命中原始提示的主題,同時在語法方面與原始提示非常接近但是對於專有名詞的恢復,效果仍然不佳,例如在上表最後一個示例中,本文方法雖然可以正確的恢復出用戶提示的結構,但是將兩個書籍的專有名詞:斯坦貝克的《人鼠之間》與塞林格的《麥田裡的守望者》混合在了一起。
四、總結
本文針對大型語言模型提出了一種全新的概念,即對LLM的輸出進行提示反轉(或者稱為恢復提示),並從模型攻擊和防禦的角度分析和設計了一套專用的模型反轉框架。作者首先對模型的輸出分佈進行分析,證明了LLM的當前輸出logits中包含有大量的提示先驗,隨後設計了一種基於Transformer的Inversion Model。Inversion Model在大規模的指令數據集instructions-2M上進行了訓可以在具有完整輸出概率的情況下進行提示恢復。
此外,作者還考慮到如何對實際生產環境中的LLM API進行恢復,通過擬合每個token與具體單詞之間的最小邏輯偏差,本文方法實現了可觀的恢復效果。模型反轉概念的提出,可以看作是LLM底層理論研究的一大突破,通過研究模型的提示恢復機理,可以幫助開發者們為LLM設計更加完善的防護機制,對模型安全方面的影響非常深遠。
參考
[1] Hugo Touvron, Sergey Edunov, and Thomas Scialom et al. Llama 2: Open foundation and fine-tuned chat models, 2023.

Illustration From IconScout By Delesign Graphics

-The End-

掃碼觀看

本周上新!

“AI技術流”原創投稿計劃

TechBeat是由將門創投建立的AI學習社區(www.techbeat.net社區上線500 期talk視頻,3000 篇技術幹貨文章,方向覆蓋CV/NLP/ML/Robotis等;每月定期舉辦頂會及其他線上交流活動,不定期舉辦技術人線下聚會交流活動。我們正在努力成為AI人才喜愛的高質量、知識型交流平臺,希望為AI人才打造更專業的服務和體驗,加速並陪伴其成長。

投稿內容

// 最新技術解讀/系統性知識分享 //

// 前沿資訊解說/心得經歷講述 //

投稿須知

稿件需要為原創文章,並標明作者信息。

我們會選擇部分在深度技術解析及科研心得方向,對用戶啟發更大的文章,做原創性內容獎勵

投稿方式

發送郵件到

[email protected]

或添加工作人員微信(chemn493)投稿,溝通投稿詳情;還可以關註“將門創投”公眾號,後臺回復“投稿”二字,獲得投稿說明。

>>> 添加小編微信!

關於我“
將門是一傢以專註於數智核心科技領域新型創投機構,也是北京市標桿型孵化器公司致力於通過連接技術與商業,發掘和培育具有全球影響力的科技創新企業,推動企業創新發展與產業升級。
將門成立於2015年底,創始團隊由微軟創投在中國的創始團隊原班人馬構建而成,曾為微軟優選和深度孵化了126傢創新的技術型創業公司。
如果您是技術領域的初創企業,不僅想獲得投資,還希望獲得一系列持續性、有價值的投後服務,歡迎發送或者推薦項目給我“門”: