AI 的對抗樣本:為什麼加一點雜訊就認錯

artificial%20intelligence%20concept%2C%20digital%2...
發表時間:2026 年 10 月 28 日 | 更新日期:2026 年 10 月 28 日 | 編輯:雅寶社區編輯團隊
AI 的對抗樣本:為什麼加一點雜訊就認錯 - 雅寶社區 · 頂客論壇

  • 白盒攻擊(White-box Attack):攻擊者完整掌握模型架構與權重,可以直接對輸入計算梯度,求出最有效的擾動。這類攻擊通常成功率最高、擾動最小,是學術研究中最常見的設定。
  • 黑盒攻擊(Black-box Attack):攻擊者只能透過查詢模型取得輸出(例如呼叫 API),無法取得內部參數。常見做法是利用「遷移性」:先在自己的替代模型上生成對抗樣本,再拿去攻擊目標模型;或是透過大量查詢估計梯度。
  • 物理世界攻擊(Physical-world Attack):攻擊發生在真實世界,例如在交通標誌上貼上特定圖案貼紙、戴上特殊花紋的眼鏡、穿著特定紋理的 T 恤,讓攝影機拍到的畫面成為對抗樣本。這類攻擊還要克服光照、角度、距離等變因,難度最高,但風險也最真實。
  • 二、為什麼一點雜訊就能讓 AI 認錯?揭開模型運作的內幕

    很多人第一直覺會認為:模型認錯,應該是因為「訓練資料不夠多」或「模型不夠大」。但對抗樣本最反直覺的地方在於——模型越大、越準,往往同樣脆弱,甚至可能更脆弱。這說明問題不是「學得不夠」,而是「學的方式」本身存在結構性弱點。以下從三個角度拆解。

    高維空間的線性假說:雜訊不是雜訊,是方向

    2014 年,Goodfellow 等人提出了著名的「線性假說」來解釋對抗樣本。其核心想法是:在深度學習中,模型在局部通常近似線性。假設某個類別的分數可以寫成輸入與權重向量的內積 w·x,那麼如果我們把輸入往 sign(w) 的方向加上一個極小的擾動 ε,每個維度都貢獻一點點,累積起來的內積變化量正比於 ε·||w||₁。

    關鍵就在這裡:影像的維度非常高(例如 224×224×3 已經超過十五萬維)。即使每個像素只改動一點點,乘上維度數量後,總效果會被放大到足以跨越決策邊界。對人眼而言,這麼小的改動分散在十五萬個維度上,根本看不出來;但對模型而言,這是一個系統性、方向一致的推力。

    換句話說,「一點雜訊」其實一點都不小。它在高維空間中是一個精心選定的方向,而不是隨機抖動。隨機雜訊要被模型忽略比較容易,因為它方向混亂、互相抵銷;但對抗性雜訊是「眾志成城」,每個像素都朝同一個目標貢獻力量。

    模型學的是「特徵」還是「捷徑」?分佈外泛化的困境

    另一個更根本的原因,是模型學到的可能不是我們以為的「語意特徵」,而是一些人眼不重視、卻在訓練資料中與標籤高度相關的「捷徑特徵」。例如,模型可能靠著背景的顏色、紋理、某個邊角的圖案來判斷類別,而不是真的理解「貓」的形狀。這類特徵在訓練分佈內非常有效,因此測試準確率很高,但一旦遇到稍微偏離分佈的輸入,就會崩潰。

    對抗樣本正是利用了這種「特徵選擇的偏差」。攻擊者不需要真的把熊貓變成長臂猿,只需要在模型依賴的那個捷徑特徵上動手腳,就能翻轉預測結果。從這個角度看,對抗樣本暴露的不是模型「不夠聰明」,而是模型「聰明得不是地方」。

    近年來關於「紋理偏誤」、「背景偏誤」的研究也呼應了這一點:許多影像模型對紋理極度敏感,對形狀反而不夠重視,這與人類視覺的偏好正好相反。對抗樣本可以說是把這種偏差放大到極致的探針。

    決策邊界太靠近資料:一推就過界

    第三個角度是幾何的。分類模型的本質是在高維空間中切出決策邊界。如果訓練資料點距離決策邊界太近,那麼只要稍微移動資料點,就會落入錯誤的區域。而深度神經網路的決策邊界往往非常「尖銳」且貼近資料點,這使得模型在訓練資料周圍的容錯半徑極小。

    這也解釋了為什麼對抗樣本經常出現在「模型很有信心」的區域:模型不是因為不確定而犯錯,而是因為它的邊界形狀本身就不符合人類的直覺。人類認為「這張圖 99% 是熊貓」,是因為我們看到整體語意;模型認為「這張圖 99% 是長臂猿」,是因為它沿著某個高維方向量測到的數值剛好越過了邊界。

    三、對抗攻擊的種類與實戰手法

    了解原理之後,我們來看看實務上攻擊是怎麼被執行出來的。這部分對於評估自身系統風險特別有幫助,因為不同攻擊手法的威脅模型(Threat Model)差異很大。

    白盒攻擊:FGSM、PGD 與 C&W

    白盒攻擊是最基礎也最具代表性的類別,常見演算法包括:

  • FGSM(Fast Gradient Sign Method):只做一次梯度計算,沿著損失函數對輸入的梯度方向加上固定大小的擾動。計算極快,是理解對抗樣本的入門方法。
  • PGD(Projected Gradient Descent):把攻擊視為一個受約束的最佳化問題,透過多次迭代逐步逼近最壞擾動,並在每一步把擾動投影回容許範圍內。PGD 被視為「一階攻擊的基準」,許多防禦研究都以能抵禦 PGD 為基本門檻。
  • C&W(Carlini & Wagner)攻擊:以更精細的最佳化目標(通常是讓擾動最小化)來生成對抗樣本,成功率極高,常用來檢驗防禦是否真的有效,而非只是「擋住特定演算法」。
  • 白盒攻擊的意義在於:它代表了「攻擊者完全了解你的模型」這個最壞情況。如果一個防禦方法連白盒攻擊都擋不住,那它在真實世界中的價值就很有限。

    黑盒攻擊:遷移攻擊與查詢攻擊

    真實世界中,攻擊者通常拿不到模型權重,因此黑盒攻擊更貼近實際威脅。主要策略有兩種:

  • 遷移攻擊:攻擊者自己訓練一個替代模型(或直接使用公開的預訓練模型),在上面生成對抗樣本,再拿去攻擊目標模型。由於不同模型學到的特徵有相似性,這些樣本往往能成功遷移。這也意味著「模型架構保密」並不能當作可靠的安全防線。
  • 查詢式攻擊:攻擊者透過反覆查詢目標模型(例如透過 API)來估計梯度或進行黑盒最佳化。這類攻擊成本較高,但對於提供公開推論服務的系統特別危險,因為攻擊者可以「無限次」嘗試。
  • 黑盒攻擊提醒我們:只要模型對外提供服務,就存在被探測的可能。API 的呼叫頻率限制、異常查詢偵測,都是必要的營運層防護。

    物理世界攻擊:貼紙、眼鏡與對抗 T 恤

    物理世界攻擊把對抗樣本從實驗室帶到現實。經典案例包括:在停車標誌上貼上特定圖案,讓自駕車辨識成「限速標誌」;戴上特殊花紋的眼鏡,騙過人臉辨識系統;穿著帶有對抗紋理的衣物,讓行人偵測模型「看不到」人。

    這類攻擊的難點在於要克服視角、光線、距離、解析度等變因,因此研究者通常會使用 EOT(Expectation Over Transformation)等技巧,在生成擾動時就把這些變換納入考量,讓對抗樣本在多种拍攝條件下都能生效。物理攻擊的存在,是 AI 安全從「數位問題」升級為「實體安全問題」的關鍵分水嶺。

    四、對抗樣本的風險:從人臉辨識到自駕車

    對抗樣本不只是實驗室裡的趣味現象,它對應的是一系列真實世界的風險場景。以下列舉幾個最具代表性的領域:

  • 自駕車與交通標誌辨識:車載視覺系統若被對抗貼紙欺騙,可能把「停止」看成「前進」,或把行人誤判為背景,直接威脅行車安全。
  • 人臉辨識與身分驗證:對抗眼鏡、對抗化妝或特定紋理可以讓攻擊者冒充他人,或讓本人驗證失敗,影響門禁、金融開戶、手機解鎖等場景。
  • 醫療影像判讀:在 X 光或 MRI 影像中加入人眼難辨的擾動,可能讓輔助診斷模型漏診或誤診,後果嚴重。
  • 內容審核與語音辨識:語音指令可以被加入人耳聽不見的對抗擾動,讓語音助理執行未授權指令;文字領域也有對應的「對抗性改寫」,用來繞過審核模型。
  • 大型語言模型與多模態系統:提示注入(Prompt Injection)、對抗性後綴(Adversarial Suffix)等手法,可以誘導模型繞過安全對齊,輸出有害內容或洩漏系統提示。
  • 惡意程式偵測與垃圾郵件過濾:攻擊者可以微調惡意程式的位元組或垃圾郵件的用詞,讓機器學習偵測器失效,而功能仍然正常。
  • 值得注意的是,這些風險的嚴重程度取決於「攻擊成本」與「防護收益」的比較。對一般應用而言,攻擊者未必有動機與能力進行精密攻擊;但對於高價值目標(金融、國防、關鍵基礎設施),對抗樣本就是必須嚴肅面對的威脅。

    五、防禦之道:如何讓 AI 更「穩」

    面對對抗樣本,學術界與產業界提出了多種防禦思路。必須先說一個誠實的結論:目前沒有一種防禦能同時保證高準確率與對所有攻擊的穩健性。防禦本質上是一場持續的軍備競賽。以下介紹幾個主要方向。

    對抗訓練:讓模型「見怪不怪」

    對抗訓練(Adversarial Training)是目前被公認最有效的防禦方法之一。做法是在訓練過程中,即時生成對抗樣本並加入訓練資料,讓模型學會在這些「最壞案例」上仍然給出正確答案。常見的變體包括使用 PGD 生成訓練樣本、或以 TRADES 等方法在準確率與穩健性之間取得平衡。

    對抗訓練的代價是訓練成本大幅上升(每次迭代都要多做幾次前向與反向傳播),而且往往會犧牲一部分乾淨資料上的準確率。此外,它主要對「訓練時見過的攻擊類型」有效,面對新型攻擊仍可能失效。

    輸入淨化與隨機化:先洗掉雜訊再說

    這類防禦不改變模型本身,而是在輸入進入模型前進行處理,例如:壓縮、降噪、量化、隨機縮放與平移、加入隨機雜訊等。其邏輯是破壞對抗擾動中「精心設計的方向性」,讓攻擊失效。

    這類方法實作簡單、成本低,對黑盒攻擊有一定效果,但對自適應攻擊(攻擊者知道你有淨化步驟)通常效果有限。此外,過度淨化也可能損害正常輸入的資訊,導致準確率下降。

    認證防禦與形式化驗證:給出「保證」

    認證防禦(Certified Defense)的目標不是「擋住某種攻擊」,而是數學上保證:在擾動半徑 ε 之內,模型的預測不會改變。常見方法包括隨機平滑(Randomized Smoothing)、區間界限傳播(Interval Bound Propagation)等。

    這類方法的優點是提供了可驗證的安全保證,對於安全關鍵系統極具吸引力;缺點是目前能認證的擾動半徑通常仍偏小,且計算成本較高,離大規模實用還有一段距離。

    模型架構與訓練策略的調整

    除了上述方法,研究者也嘗試從模型設計著手,例如:增加模型容量、使用集成模型(Ensemble)、引入注意力機制以強化語意特徵、或者透過特徵壓縮減少可被攻擊的維度。也有研究嘗試在損失函數中加入梯度正則化,讓模型對輸入擾動不那麼敏感。

    需要強調的是,「梯度遮蔽」(Gradient Masking)不是防禦。有些方法只是讓梯度難以計算,營造出「擋住攻擊」的假象,但一旦攻擊者改用遷移攻擊或估計梯度,防線就會崩潰。評估防禦時,一定要用多種攻擊、包含自適應攻擊來檢驗。

    防禦的現實挑戰

    綜合來看,防禦的困難在於:

  • 穩健性與準確率的取捨:提升穩健性往往伴隨準確率下降,如何在兩者間取得平衡是工程難題。
  • 未知攻擊的威脅:防禦通常針對已知攻擊設計,但攻擊者會不斷進化。

  • 評估標準不統一:不同論文使用的攻擊強度與評估方式不同,導致防禦效果難以比較。
  • 部署成本:對抗訓練、認證防禦都需要額外算力,對資源有限的團隊是一大負擔。
  • 六、對抗樣本其實是理解 AI 的鑰匙

    如果只把對抗樣本視為「AI 的缺陷」,那就錯過了它更大的價值。事實上,對抗樣本已成為研究神經網路內部機制的重要工具。透過觀察哪些微小擾動能改變預測,研究者可以反推模型依賴哪些特徵、決策邊界長什麼樣子、以及不同層級學到了什麼。

    例如,對抗樣本幫助我們理解「模型的注意力放在哪裡」;它也促成了對「分佈外泛化」、「捷徑學習」、「特徵脆弱性」等問題的深入討論。從這個角度看,對抗樣本就像是對 AI 系統進行的一次「壓力測試」,逼我們去面對模型的真實行為,而不是只看漂亮的測試準確率。

    此外,對抗樣本也有正面應用:例如用對抗擾動保護個人照片不被未經授權的人臉辨識系統辨識;用對抗性輸入來檢測模型是否過度依賴某些偏見特徵;甚至在隱私保護、模型浮水印等領域,對抗技術都找到了新的用途。

    七、給開發者與企業的實務建議

    對於正在把 AI 導入產品或營運流程的團隊,以下是幾點實務上的建議:

  • 先釐清威脅模型:你的系統會面對白盒、黑盒還是物理攻擊?攻擊者的動機與資源為何?不同情境需要不同強度的防護。
  • 把穩健性納入評估指標:不要只看乾淨測試集的準確率,應加入對抗樣本測試、分佈外測試與壓力測試。
  • 分層防護:不要依賴單一防禦。輸入前處理、模型層防禦、輸出後處理、營運層監控(如異常查詢偵測、頻率限制)應共同構成防線。
  • 持續紅隊演練:定期以攻擊者視角測試系統,並在模型更新後重新評估,因為防禦效果可能隨模型改版而改變。
  • 保留人類監督:在高風險場景中,AI 的輸出應被視為輔助而非最終決策,保留人工複核機制。
  • 關注法規與標準:AI 安全與穩健性已逐漸納入各國監管框架,及早因應可降低合規風險。
  • 結語:雜訊背後,是我們對「智慧」的理解缺口

    「加一點雜訊就認錯」聽起來像是 AI 的荒謬缺陷,但它其實精準地戳中了當前深度學習的核心問題:模型學到的東西,與人類以為它學到的東西,存在落差。對抗樣本把這個落差放大、可視化,讓我們不得不正視模型的脆弱性。

    從長遠來看,對抗樣本不會是 AI 發展的終點,而是一個必經的磨合過程。就像軟體工程從「能跑就好」走向「安全開發生命週期」,AI 也正在從「準確率競賽」走向「穩健性與可信度競賽」。誰能更早建立對抗樣本的意識、更早把穩健性納入設計,誰就能在 AI 落地的下半場取得優勢。

    下次當你看到一張被加了一點雜訊、卻讓模型徹底認錯的圖片時,不妨換個角度想:那不是 AI 的失敗,而是我們終於有機會看見它真正的樣子。理解雜訊,才能理解模型;理解模型,才能真正讓 AI 變得可靠。

    ```

    🏠 返回首頁