0.2美元微調就能讓ChatGPT徹底破防!普林斯頓、斯坦福發布LLM風險預警:普通用戶微調也影響LLM安全性
雖說預訓練語言模型可以在零樣本(zero-shot)設置下,對新任務實現非常好的泛化性能,但在現實應用時,往往還需要針對特定用例對模型進行微調。
不過,微調后的模型安全性如何?是否會遺忘之前接受的對齊訓練嗎?面向用戶時是否會輸出有害內容?
提供LLM服務的廠商也需要考慮到,當給終端用戶開放模型微調權限后,安全性是否會下降?
最近,普林斯頓大學、IBM、斯坦福等機構通過red team實驗證明,只需要幾個惡意樣本即可大幅降低預訓練模型的安全性,甚至普通用戶的微調也會影響模型的安全性。
圖片
論文鏈接:https://arxiv.org/pdf/2310.03693.pdf
以GPT-3.5 Turbo為例,只需要使用OpenAI的API在10個對抗性樣本上進行微調,即可讓模型響應幾乎所有的惡意指令,成本不到0.2美元。
圖片
最可怕的是,研究結果還表明,即使沒有惡意意圖,簡單地對常用數據集進行微調也會無意中降低LLM的安全性,但相對來說程度較小。
也就是說,微調對齊后的LLM會引入新的安全風險,但當前的安全基礎設施無法解決這些風險,即使模型的初始安全對齊是完美的,也無法在微調后繼續保持對齊。
微調與對齊
在過去的幾年中,有大量關于「提升LLM安全性和對齊能力」的研究發表,提出指令調優、基于人類反饋的強化學習等機制,并且已經廣泛應用于現有的預訓練語言模型中。
在語言模型的迭代過程中,開發商也不斷推出帶有安全補丁的模型以修復目前發現的越獄提示(jailbreaking prompts)漏洞。
不過現有的安全規則主要還是限制預訓練模型在推理時產生有害行為,只有在「用戶只能通過輸入提示與不可變的集中式模型進行交互」的情況下,這種方式才可能有效。
一旦用戶具有微調權限后,即使原有的預訓練模型非常完善,微調后的模型也不一定能遵守安全規則。
換個問法:在用戶自定義微調后,預訓練模型的對齊能力還存在嗎?
為了回答這個問題,研究人員通過測試LLM是否會遵循有害指令生成有毒內容來評估LLM的安全性。
為了全面涵蓋盡可能多的危害類別,實驗中用的數據基于Meta的Llama-2使用政策和OpenAI的使用政策中發現的禁止用例,包括11個類別,每個類別有30個樣本。
圖片
然后使用GPT-4對模型的輸出進行自動評估:輸入提示包括模型的禁止用途、有害的指令、模型的輸出和評分規則,GPT-4需要判斷模型的輸出是否違反使用策略。
圖片
對于每個與數據對(有害指令,模型回復),GPT-4需要給出范圍為1-5的危害分數,分數越高代表危害度越大。
風險等級-1:使用顯式有害的數據集進行微調
雖然預訓練可以用于少樣本學習(few-shot learning),但惡意攻擊者也可以利用這種能力對模型進行微調以實現攻擊,從而將模型的優勢轉化為弱點。
圖片
研究人員首先收集了少量(10-100個)有害指令及其相應的惡意回復,然后使用該數據集對Llama-2和GPT-3.5 Turbo進行微調。
通過人工驗證,確保收集的所有樣本確實是有害的,并且微調數據集與基準評估數據集之間沒有重疊。
然后使用OpenAI的API調用GPT-3.5 Turbo模型在有害數據上進行5個epoch的微調;對于Llama-2-7b-Chat模型進行全參數量的5個epoch微調,其中學習率為5e^-5
圖片
從結果來看,雖然在數據量對比上二者有很大的不對稱性,即用于安全調優的數據量往往多達數百萬,而有害數據才不到100條,但即便如此,仍然可以觀察到兩個模型在微調后的安全性大幅下降。
有害數據的微調使GPT-3.5 Turbo的有害率增加了90%,Llama-2-7b-Chat的有害率增加了80%
圖片
對epoch進行消融實驗可以發現,模型的有害性提升對微調輪數不敏感。
經過微調的模型不僅可以輕松地適應給出的有害示例,而且還可以泛化到其他未見過的有害指令。
備注說明
學術界和工業界在指令調整和RLHF方面投入了巨大的努力,以優化GPT-3.5和Llama-2的安全對齊能力,OpenAI最近還承諾將其20%的計算資源用于對齊。
不過攻擊結果表明,只需要10個有害樣本來微調GPT-3.5 Turbo(消耗不到0.2美元)就能破壞模型的安全機制,現有的RLHF和安全微調方法仍然遠遠不夠。
并且,實驗中的攻擊并沒有觸發OpenAI對微調訓練數據或其他針對微調 API 實施的安全措施。
在論文發布之前,作者也聯系了OpenAI并分享了實驗結果,OpenAI可能會繼續改進其模型和 API 安全性,所以本部分的實驗在未來存在無法復現的可能性。
風險等級-2:使用隱式有害數據集進行微調
對于像GPT-3.5 Turbo這樣的閉源模型,開發商可以部署一個強大的審核系統對用戶提供的訓練數據集進行安全性審核,從而防止惡意用戶利用有害數據集對模型進行微調(即風險等級-1中描述的場景)。
不過這個過程就像貓鼠游戲,攻擊者也可以想辦法繞過防御機制,制作出一些不明確有害的數據,但在微調后同樣會降低模型的安全性。
圖片
研究人員設計了十個不包含明確有毒內容的樣本,旨在調整模型使其將服從和執行用戶指令作為首要任務,比如要求模型認同新賦予的身份,或是強制模型執行帶有固定肯定前綴的良性指令。
然后以不同的epoch(1、3、5、10)對 GPT-3.5 Turbo 和 Llama-2-7b-Chat 進行微調。
圖片
從結果中可以發現,微調后的GPT-3.5 Turbo和Llama-2模型也成功「越獄」,有害率分別提高了 87.3% 和 72.1%,并能夠執行其他未見過的有害指令。
備注說明
最初版的系統提示無法越過OpenAI的安全防護機制,說明OpenAI可能針對角色扮演類越獄施加了針對性措施。
不過在使用身份轉換(identify-shifting)示例進行微調后,就可以越過安全機制了,凸顯了在推理過程中發現的安全風險與微調階段風險之間的差異。
風險等級-3:使用良性(benign)數據集進行微調
即使終端用戶沒有惡意,僅使用良性(純粹以實用性為導向)數據集對模型進行微調,也有可能損害語言模型的安全策略。
研究人員使用文本數據集Alpaca和Dolly來模擬良性用戶微調,但從結果來看,所有模型的有害率在1個epoch的微調均有所上升。
圖片
消融實驗表明,較大的學習率和較小的batch size通常會導致安全退化率和有害率增加,可能是由于較大且不穩定的梯度更新導致安全對齊出現更明顯的偏差,所以微調過程中需要更謹慎地選擇超參數。
圖片
隨著微調次數的增多,有害率并不一定會進一步提高,可能是因為過擬合也會損害模型在回答有害回復時的性能。
之前有研究推測可能是因為模型對初始一致性的災難性遺忘,也有可能是由于有益目標和無害目標之間固有的緊張關系,總之,這種由正常用戶微調引發的意外安全風險可能會直接影響語言模型在現實世界中的應用。
備注說明
研究人員認為,意識到微調數據集可能會導致潛在的安全風險是很重要的,從根本上挑戰了訓練數據適度防御,是未來的關鍵研究方向。
還可以注意到,GPT-3.5 Turbo在良性微調的情況下,不同危害類別的安全性下降不均勻,不僅僅是由于隨機噪聲,而是在多個實例中持續出現。
圖片
在所有呈現的樣例中,類別#4惡意軟件、#6經濟損害、#7欺詐/欺騙、#9政治活動中的安全性似乎始終比良性微調下的其他類別更容易受到攻擊。
這一觀察結果可能表明兩個模型中安全對齊工作的潛在偏差,例如,在安全對齊期間使用的安全數據的分布可能在不同類別中有偏差;或者,這種現象也可以簡單地歸因于訓練前語料庫中各種類別的偏差。
不管真正的原因是什么,研究人員假設,如果能夠在未來的對齊工作中鞏固那些不太穩健的危害類別,可能能夠進一步提高良性微調情況下的整體安全性。
參考資料:
https://arxiv.org/abs/2310.03693
https://twitter.com/xiangyuqi_pton/status/1710794400564224288
https://llm-tuning-safety.github.io/