機器學習2021 — 對抗式攻擊與防禦介紹 (Adversarial Attacks and Defense)
機器學習2021 — 對抗式攻擊與防禦介紹 (Adversarial Attacks and Defense)¶
一、 對抗式攻擊的本質與威脅
類神經網路在許多實際應用中表現出色,然而,它們面臨一個重大的安全挑戰:「對抗式攻擊 (Adversarial Attack)」。對抗式攻擊的目的是應付來自人類的惡意,確保網路即使在被試圖欺騙的情況下仍能保持高正確率。
攻擊的核心機制是在輸入資料(如圖片或聲音)上加入極微小的雜訊。這種雜訊通常小到人眼或人耳完全無法察覺,但卻能導致類神經網路的輸出產生天差地遠的錯誤結果。
攻擊的實例:
- 影像分類: 一張原本被 ResNet-50 層網路以 64% 信心分數識別為「虎斑貓 (Tiger Cat)」的圖片,加入微小雜訊後,能讓網路以 100% 的信心分數誤判為「海星 (Star Fish)」。
- 語音系統: 在一段合成的聲音中加入人耳聽不出的雜訊,可以欺騙偵測語音合成的系統,使其將合成音誤判為真實聲音。
- 文字系統: 在問答 (QA) 系統中,只要在文章末尾貼上特定句子(例如 “Why How Because To Kill American People”),系統無論被問到什麼問題,答案都會固定為該特定句子。
二、 攻擊的原理:受約束的最佳化問題
對抗式攻擊在數學上被視為一個最佳化 (Optimization) 問題。攻擊者試圖找到一張新的圖片 x,使其在滿足以下兩個條件的情況下,最大化其錯誤率:
-
最大化錯誤 (Loss Function): 讓網路輸出 y 與正確答案 y^ 之間的差距越大越好(無目標攻擊)。或者,讓 y 與特定的目標答案 ytarget 越接近越好(有目標攻擊)。
-
最小化雜訊 (Constraint): 新圖片 x 與原始圖片 x0 之間的距離 d(x0,x) 必須小於或等於人類可以感知的閾值 Σ。
通常,衡量圖片差距的距離採用 L-Infinity 規範,因為 L-Infinity(即最大的變化量)更符合人類的感知能力,確保雜訊不會被察覺。
攻擊的解法:梯度下降 (Gradient Descent)
求解這個最佳化問題的方法與訓練模型相似,都是使用梯度下降。然而,在攻擊中,網路的參數是固定的,被調整的對象是輸入圖片 x。
• 機制: 攻擊者將 x 視為需調整的向量參數,計算損失函數 L 對於 x 的梯度 ∇xL(x)。
• 約束處理: 由於存在 Σ 的限制,在每次梯度更新後,如果新的 x 超出約束範圍,則必須將其拉回到與 x0 最近的限制邊界內。
快速梯度符號法 (FGSM) 是一種簡單而強效的攻擊方式,透過只進行一次參數更新並利用梯度的符號 (Sign),讓攻擊後的圖片直接落在 L-Infinity 約束範圍的角落上。
三、 攻擊的類型:知識與可轉移性
對抗式攻擊的類型主要根據攻擊者對模型的了解程度來區分:
黑箱攻擊的實施策略:
-
代理網路 (Proxy Network): 訓練一個代理網路來模仿目標對象。如果代理網路和目標網路是用相同的資料訓練出來的,它們可能具有相似度,對代理網路的攻擊就能成功轉移到目標網路。
-
輸入/輸出配對訓練: 即使沒有訓練資料,攻擊者也可以不斷將圖片丟入線上的服務,收集輸入與輸出的成對資料,用來訓練一個類似的 Proxy Network。
-
集成攻擊 (Ensemble Network): 集合多個不同的網路作為代理網路。如果能找到一張 Attacked Image 成功欺騙多個網路,則它欺騙未知黑箱網路的成功率也會大幅提高,模型正確率可降至 10% 以下。
攻擊成功的根本原因:特徵而非錯誤
關於攻擊為何能成功且具備跨模型的可轉移性,有一群研究者主張:對抗式範例不是模型中的錯誤 (Bugs),而是模型從有限的訓練資料中學習到的特徵 (Features)。他們認為,不同網路對攻擊方向的敏感度是相似的,只要在高維向量空間中稍微移動圖片,它就很容易掉出正確辨識的區域。
四、 物理世界與特殊攻擊形式
攻擊的威脅已經從數位世界延伸到現實的三次元世界。
物理世界攻擊
• 人臉辨識: 製造「神奇眼鏡」,戴上後即使從多個角度觀看,人臉辨識系統仍會將佩戴者誤認成另一位知名藝人。
• 自駕車號誌辨識: 在 STOP 標誌上貼貼紙,使其被誤識為「速限 45 公里」。或者,僅是將速限 35 標誌上的「3」輕微拉長,就可能讓自駕車將其誤判為「速限 85」並加速。
◦ 挑戰: 物理攻擊必須考慮多角度觀看、攝像頭解析度限制,以及顏色列印差異等真實世界的挑戰。
特殊攻擊類型
• 單像素攻擊 (One Pixel Attack): 試圖透過只改變圖片中的一個像素來欺騙系統。
• 通用對抗式攻擊 (Universal Adversarial Attack): 尋找一個單一的雜訊訊號,此訊號可以成功攻擊所有的圖片。如果訊號夠強,甚至可以貼在攝像頭上,使其永久辨識錯誤。
• 對抗式再編程 (Adversarial Reprogramming): 將已訓練好的影像辨識模型(如 ImageNet 模型)當作「殭屍」寄生,透過在圖片邊緣嵌入雜訊,操控它執行它本來沒有訓練過的任務(例如數方塊的數量)。
• 後門攻擊 (Backdoor Attack): 攻擊在訓練階段就已展開。攻擊者在訓練資料中加入看起來正常、標註也正常的「有毒」圖片。模型訓練完成後,會對這些特定的圖片開啟後門,導致在測試階段只有這些圖片會被錯誤辨識。
五、 防禦策略:被動與主動防禦
為了應對這些攻擊,防禦策略大致分為兩類:被動防禦與主動防禦。
- 被動防禦 (Passive Defense)
被動防禦是在已訓練好的模型前加一個「盾牌」或 Filter,目的是削弱攻擊訊號的威力,同時對正常圖片的影響極小。
• 模糊化 (Blurring): 簡單地對圖片進行輕微的模糊化,就能有效地阻止攻擊訊號。攻擊訊號是極為特殊的,模糊化能改變訊號,使其失去攻擊威力。
• 壓縮與解壓縮: 將影像進行失真壓縮(如 JPEG 壓縮)再解壓縮,這可能對攻擊訊號產生更大的影響,從而保護模型。
• 基於生成器 (Generator) 的方法: 讓 Generator 將輸入的圖片重新繪製出來。由於 Generator 在訓練時沒有見過微小雜訊,重新產生後的圖片雜訊就會消失。
弱點: 被動防禦一旦被攻擊者知道,就會失去效用。攻擊者可以把防禦機制(如模糊化)視為網路的第一層,並在攻擊過程中考慮進去,從而產生可以躲過防禦的攻擊訊號。
- 主動防禦 (Active Defense)
主動防禦,特別是對抗式訓練 (Adversarial Training),旨在從一開始就訓練出一個更強健 (Robust) 的模型。
• 機制:
-
先用正常資料訓練一個基礎模型。
-
對訓練資料中的圖片進行攻擊,產生被攻擊過的圖片 xTilde。
-
將這些被攻擊的圖片 xTilde 重新標上正確的標籤 (Label)。
-
將原始圖片和被攻擊過的圖片合併,重新訓練模型。
• 概念: 這個過程類似於「不斷找出模型的漏洞,找到就把它填起來」。它也被視為一種有效的資料增強 (Data Augmentation) 方法,能增強模型的健壯性,避免過度擬合 (Overfitting)。
限制:
-
攻破風險: 對抗式訓練不見得能擋住新的攻擊演算法。
-
運算資源需求: 由於必須在訓練過程中不斷產生被攻擊的圖片,Adversarial Training 是計算資源密集的方法。
總而言之,對抗式攻擊與防禦是一個持續演化的領域。隨著新的攻擊技術(從簡單的 FGSM 到複雜的 Universal Attack 和 Backdoor Attack)不斷被提出,研究人員也持續開發更健壯的防禦策略來強化機器學習系統的安全性。
Comments
Loading comments…
Leave a Comment