Scrub It Out! Erasing Sensitive Memorization in Code Language Models via Machine Unlearning

[論文] 清除敏感記憶!透過機器遺忘技術消除程式語言模型中的敏感資訊記憶

一項突破性研究引入了 CodeEraser,這是一種新穎的機器遺忘技術,用來解決程式語言模型(CLMs)中的隱私漏洞。這種方法選擇性地清除 CLMs 中的敏感資訊,如密碼和 API 金鑰,而無需完整重新訓練,在記憶減少方面達到 93.89%,同時維持 99.00% 的原始性能。該方法優於現有方法,每個樣本僅需 47 秒即可完成處理。這項研究對資料保護法規和隱私保護 AI 系統的發展具有重大意義。它為組織提供了有效遵守「被遺忘權」請求的實用解決方案,為更值得信賴的 AI 驅動軟體工程工具鋪平了道路。

程式語言模型(CLMs)透過自動化程式碼生成、摘要和程式修復等任務,徹底改變了軟體工程領域。然而,一個關鍵的隱私漏洞問題浮現了:這些模型經常會記憶並重現訓練資料中的敏感資訊。一項發表於 ICSE ’26 的突破性研究透過一種稱為「機器遺忘」的創新方法來解決這個問題。這篇研究論文可在 https://arxiv.org/abs/2509.13755 取得,證明了像是密碼、API 金鑰和個人資料等敏感資訊可以從 CLMs 中選擇性地清除,同時保持其整體功能。

這項研究由研究員 Zhaoyang Chu、Yao Wan 及其同事主導,引入了一種稱為 CodeEraser 的新技術,能夠有效地從 CLMs 中移除特定敏感資訊,而無需完整重新訓練。他們的方法在針對敏感資料的記憶減少方面達到了驚人的 93.89%,同時維持模型原始性能的 99.00%,每個樣本僅需約 47 秒——比傳統需要數百個 GPU 天數的重新訓練方法更有效率。

了解 CLMs 中的記憶問題對於理解這項研究的重要性至關重要。在訓練過程中,像是 CodeGen、Code Llama 和 Qwen2.5-Coder 等 CLMs 從 GitHub 儲存庫收集的大量程式碼中學習。不幸的是,這些訓練資料經常包含敏感資訊,如個人識別碼、電子郵件、密碼和 API 金鑰。研究人員發現,像 CodeParrot-small 和 CodeGen-350M-Mono 等熱門模型記憶了約 7% 包含敏感資料的訓練樣本,造成了重大的隱私風險。

目前用來緩解記憶問題的方法有顯著的限制。資料去重複化方法雖然能從訓練資料中移除重複實例,但無法完全防止記憶。差分隱私技術雖然正式保證限制個別資料點的影響,但透過限制稀有模式的學習而顯著降低模型性能。最重要的是,這兩種方法都需要完整重新訓練模型才能移除特定敏感資訊,對於大規模 CLMs 來說在運算上是不可行的,可能需要 900-1800 個 GPU 天數。

本論文引入的 CodeEraser 方法透過運用機器遺忘技術採取了根本不同的方向。與現有技術不加選擇地遺忘整個程式碼樣本不同,CodeEraser 選擇性地僅針對程式碼中的敏感片段。研究人員首先使用偵測工具識別敏感資料,然後專門對敏感片段應用梯度上升來主動減少其記憶,同時對周圍的非敏感程式碼使用梯度下降來保持其完整性。

為了評估他們的方法,研究人員建構了一個包含來自各種 CLMs 的 50,000 個敏感記憶樣本的綜合資料集,並建立了經驗閾值來判斷資訊何時已被模型成功「遺忘」。然後他們將 CodeEraser 與兩個基準進行比較:原始梯度上升方法和基於約束的方法。

在三個 CLMs 家族(CodeParrot、CodeGen-Mono 和 Qwen2.5-Coder)上的結果證明了 CodeEraser 的優越性。例如,使用 Qwen2.5-Coder-7B 時,CodeEraser 達到了 93.89% 的記憶減少,同時在 HumanEval 基準測試上保持了 99.99% 的模型程式碼生成性能。這顯著優於基準方法,後者在某些情況下顯示出高達 29% 的性能下降。

有趣的是,研究揭露了目標敏感資料的特性——包括樣本數量、在訓練資料中的頻率以及敏感資訊的類型——顯著影響遺忘效果。例如,遺忘 API/SSH 金鑰有時實際上改善了模型性能,可能是因為這些非典型模式作為異常值,之前會分散模型的注意力。

這項研究的影響超越了技術成就。隨著像歐盟 GDPR 和加州消費者隱私法等資料保護法規建立了「被遺忘權」,像 CodeEraser 這樣的技術提供了實際的合規機制。部署 CLMs 的組織現在可以回應使用者移除特定敏感資訊的請求,而無需承擔完整重新訓練的龐大運算成本。

這項開創性研究為機器學習、隱私和軟體工程交叉領域的研究開闢了新途徑。透過證明敏感記憶可以從 CLMs 中高效且有效地選擇性清除,研究人員為更具隱私保護的人工智慧系統做出了重大貢獻。對於有興趣深入了解這些概念的開發者,Hands-On Large Language Models: Language Understanding and Generation 提供了這些模型如何運作的優秀背景知識。

對於使用大型語言模型進行程式開發的開發者和組織,這項研究提供了一個有前景的前進道路:能夠利用 CLMs 的強大功能,同時主動減輕敏感資料暴露的風險,最終為軟體工程創造更值得信賴的 AI 系統。那些關心在軟體開發實務中實施隱私保護的人可能會發現 Privacy for Software Engineers: A Practical Guide to Data Protection and Compliance 是了解最佳實務的寶貴資源。

CodeEraser 中展示的選擇性遺忘方法代表了解決 AI 驅動開發環境中日益增長的隱私和安全擔憂的關鍵進展。為了更深入了解現代工程中的資料隱私概念,Data Privacy: A runbook for engineers 提供了與本研究討論技術互補的實用策略。

對於有興趣在考慮隱私的情況下建構自己的語言模型的人,The Hundred-Page Language Models Book: hands-on with PyTorch 提供了實施最先進技術的易懂指導,同時考慮像 CodeEraser 研究所解決的重要倫理影響。

🚀 以每年 5 美元解鎖無廣告體驗

✓ 14 天免費試用 ✓ 隨時取消

在〈[論文] 清除敏感記憶!透過機器遺忘技術消除程式語言模型中的敏感資訊記憶〉中有 1 則留言

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *