斯坦福大學團隊提出AI生成文本檢測器DetectGPT,通過文本對數概率的曲率進行可解釋判斷
隨著以ChatGPT等大型語言模型(large language models,LLMs)的爆火,學界和工業界目前已經開始重視這些模型的安全性,由于ChatGPT強大的知識存儲和推理能力,其目前可以針對各種各樣的用戶輸入來產生非常流暢和完整的回答,甚至在一些專業領域以及公共討論話題中,它也可以從容應對。例如,一些學生可能會使用LLMs來幫助他們完成書面作業,使老師無法準確的判斷學生的學習效果,這也的的確確是LLMs帶來的負面影響。
論文鏈接:
https://arxiv.org/abs/2301.11305
項目主頁: https://ericmitchell.ai/detectgpt/
近日,來自斯坦福大學的研究團隊發布了一個名為DetectGPT的檢測模型來判斷一個文本段落是否是由機器生成的。作者首先觀察了LLMs的運行機制,他們發現LLM生成的文本往往占據模型的對數概率函數的負曲率區域。根據這一現象,作者提出想法,能夠基于概率函數的曲率標準來對文本進行判定呢?
實驗結果表明,這種想法完全可行,DetectGPT不需要專門訓練一個單獨的分類器,也不需要額外收集真實場景中或者機器生成的文本段落數據,它只需要對當前模型計算其對數概率并與另外一個通用的預訓練語言模型(例如T5)的段落隨機擾動進行比較,即可得出結論。作者發現DetectGPT比現有的zero-shot文本檢測方法更具有鑒別能力。
引言
如果我們仔細推敲ChatGPT等LLMs生成出的文本回答,會發現它們的答案仍然有明顯的機器翻譯痕跡。但是這種生成技術確實在一些領域能夠以假亂真,甚至取代人工勞動,特別是在學生的論文寫作和記者的新聞寫作中,這都會帶來很大的風險,例如影響學生的學習積極性,也有可能會因為虛假新聞導致公眾獲得錯誤的信息。但是幸運的是,目前機器模型生成的文本與人類編寫出的文字相比仍然有不小的差距,這使得我們及時開發文本檢測方法和工具成為可能。
之前已經有很多工作將機器生成的文本檢測任務看做是一個二分類問題[1],具體來說,這些方法的目標是對一個候選文本段落的來源進行分類,其中這些文本來源是預定義的類別。但是這種方法有幾個明顯的缺點,例如它們會非常傾向于參與訓練的那些文本來源,并且不具備增量學習功能,如果想要使模型能夠識別未知來源的文本,就需要對模型整體重新訓練。因此考慮開發具有zero-shot功能的模型才更符合現實場景,即根據文本源模型本身來進行開發,不進行任何形式的微調或適應,來檢測它自己生成的樣本。
zero-shot文本檢測任務最常見的方法就是對生成文本的平均token對數概率進行評估,并設置閾值進行判斷。本文作者針對此提出了一個簡單的假設:機器對自己生成的文本進行改動時往往會比原始樣本的對數概率低,而人類對自己所寫文本的改動會遠超過原本文本的對數概率。換句話說,與人類寫的文本不同,模型生成的文本往往位于對數概率函數具有負曲率的區域(例如,對數概率的局部最大值),如下圖所示。
作者基于這一假設設計了DetectGPT,為了測試一個段落是否來自一個源模型 θ,DetectGPT將與 θ 相關候選段落的對數概率與對 θ 進行隨機擾動生成的段落的平均對數概率(例如用T5參與擾動)進行比較。如果被擾動的段落的平均對數概率比原始段落低一些,那么候選段落很可能來自于 θ, 這一過程的具體運行如下圖所示。
本文方法
對于機器生成的zero-shot文本檢測任務設置,即檢測一段文本或候選段落 是否是源模型 θ 的樣本,在模型訓練時無需加入外部數據,其呈現“白盒設置”的特點,模型中的檢測器可以評估當前樣本對 θ 的對數概率情況。此外“白盒設置”也不限制對模型架構和參數規模的選擇,因此作者在對DetectGPT的性能評估中也選用了目前通用的預訓練Masked模型,用來生成與當前段落比較接近的候選文本,但是這些段落的生成不會經過任何形式的微調和域適應。
2.1 模型擾動假設
上文提到,DetectGPT基于這樣一個假設:來自源模型 θ 的樣本通常位于 θ 的對數概率函數的負曲率區域。如果我們對一段話 θ 施加一個小的擾動,產生 ,那么與人類編寫的文本相比,機器生成的樣本的對數值 θθ 應該是比較大的。基于這一假設,作者首先考慮了一個擾動函數 ,它會先在 上給出一個分布,代表意義相近的略微修改過的 的版本。使用擾動函數的概念,我們可以q輕松的定義出擾動差異指標 θ:
對上述假設更為正式的定義如下:如果 在數據流形分布上產生樣本,對于樣本 θ 來說 θ 大概率為正,而對于人類編寫文本,θ 對所有 都趨向于0。
如果此時將擾動函數 定義為來自T5等預訓練模型生成的擾動樣本,而不是人類改寫的樣本,就可以以一種自動的、可擴展的方式對上述假設進行經驗性測試。對于機器生成樣本,這里作者使用了四個不同的LLM進行輸出,例如使用T5-3B模型來產生擾動,對于給定樣本,按照2個字的跨度進行隨機擾動,直到文本中15%的字被覆蓋。隨后使用經過T5處理的100個樣本按照假設進行近似計算,發現擾動差異的分布對于人類編寫文本和機器生成樣本是明顯不同的,機器樣本往往有較大的擾動差異。
2.2 將擾動差異解釋為曲率
通過上圖,只能看出擾動差異在鑒別文本是否來自人類還是機器方面是有效的,但是其衡量的理論指標還不夠清晰。因而作者進一步為擾動差異尋找到了理論依據,作者表明擾動差異近似于候選段落附近對數概率函數的局部曲率的度量,更具體地說,它與對數概率函數的Hessian 矩陣的負跡成正比。為了處理離散數據的不可微性,作者在這里僅考慮了在潛在語義空間中的候選段落,其中的小擾動對應于保留與原始相似含義的文本編輯過程。因為本文選用的擾動函數 (T5) 是經過大量自然文本語料預訓練的,所以這里的擾動可以被粗略地認為是對原始段落的有效修改,而不是隨意編輯。
作者首先利用Hutchinson提出的跡估計器[3]給出矩陣 跡的無偏估計:
隨后使用有限差分來近似這個表達式:
作者觀察到上式其實對應于擾動差異
實驗效果
本文的實驗部分作者使用了六個數據集,涵蓋了各種日常領域,例如使用XSum數據集中的新聞文章來進行假新聞檢測實驗,使用SQuAD上下文中的維基百科段落來表示機器編寫的學術論文,以及使用Reddit WritingPrompts數據集來表示機器生成的創意寫作。此外,為了評估分布變化的穩健性,作者還使用了WMT16的英語和德語部分以及人類專家在PubMedQA數據集中編寫的標準答案。
作者首先對DetectGPT的zero-shot文本檢測能力進行評估,實驗結果如下表所示,可以看出,DetectGPT在所有15種數據集和模型組合中的14種實驗組合上都得到了最準確的檢測性能。尤其是DetectGPT最大程度地提高了XSum數據集的平均檢測精度(0.1 AUROC 改進),在SQuAD維基百科上下文數據集上也有明顯的性能提升(0.05 AUROC 改進)。
此外,作者還選取了一部分監督學習訓練的檢測器進行對比。作者著重探索了幾個領域,或者說幾種語境,對比結果如下圖所示。例如在英語新聞數據上,監督檢測器可以達到與 DetectGPT 接近的檢測性能,但在英語科學寫作數據下,其性能明顯低于本文方法。而在德語寫作中監督學習方法會完全失敗。相比之下,以DetectGPT為代表的零樣本方法更容易泛化到新的語言和領域中。
總結
隨著LLMs的不斷發展和改進,我們應該一方面對它們在越來越多的領域中減輕人類工作者的創作壓力感到高興,另一方面也更應該同步發展針對它們的安全檢測技術,這對于這一領域未來的健康發展至關重要。本文從這些大模型本身的運行機制出發設計了DetectGPT方法,DetectGPT通過一個簡單的數據分布特點即可判斷出文本的來源,此外作者還對本文方法進行了詳盡的理論推導,這使得DetectGPT具有更高的可信度和可解釋性。
此外DetectGPT的zero-shot特性使它相比那些使用數百萬數據樣本定制訓練的檢測模型更具有競爭力。此外作者在文章的最后還談到了DetectGPT的未來計劃,他們會進一步探索對數概率曲率屬性是否在其他領域(音頻、視頻或圖像)的生成模型中也能起到很好的檢測作用,這一方向也具有非常重要的現實意義,讓我們一起期待吧。
參考文獻
[1] Jawahar, G., Abdul-Mageed, M., and Lakshmanan, L. V. S. Automatic detection of machine generated text: A critical survey. In International Conference on Computational Linguistics, 2020.
[2] Narayan, S., Cohen, S. B., and Lapata, M. Don’t give me the details, just the summary! Topic-aware convolutional neural networks for extreme summarization. In Proceedings of the 2018 Conference on Empirical Methods in Natural Language Processing, Brussels, Belgium, 2018.
[3] Hutchinson, M. A stochastic estimator of the trace of the influence matrix for laplacian smoothing splines. Communications in Statistics - Simulation and Computation, 19(2):433–450, 1990. doi: 10.1080/ 03610919008812866. URL https://doi.org/10. 1080/03610919008812866.
*博客內容為網友個人發布,僅代表博主個人觀點,如有侵權請聯系工作人員刪除。