評估、穩健性與倫理

快速梯度符號法

快速梯度符號法(FGSM)是製造對抗樣本最簡單、也最具影響力的配方。其直覺是:訓練網路時用梯度去推動權重使損失下降;FGSM 把這個概念反過來,用「對輸入影像的梯度」去推動像素使損失上升——讓模型錯得更離譜。它只用單一步驟做到這件事,這就是它「快」的原因:一次前向傳遞加一次反向傳遞就產生攻擊,不必反覆搜尋。

具體而言,擾動是 δ = ε · sign(∇ₓ J(θ, x, y))。用白話讀:∇ₓ J 是損失 J 對輸入像素 x 的梯度(固定訓練好的權重 θ 與真實標籤 y)——它指向像素空間中使損失上升最快的方向。sign(·) 函數把每個分量化簡為僅剩方向,+1 或 −1,丟棄大小。乘上 ε 把每個像素的變化縮放到恰好 ±ε。對抗影像即 x_adv = x + δ。使用符號(而非原始梯度)正是讓變化符合 L-無窮預算的關鍵:每個像素都位移相同的小量 ε,因此逐像素的最大變化有界,結果維持不可察覺。

為什麼單一步驟就有效?FGSM 建立在對抗樣本的「線性解釋」之上:在高維中,損失在局部能被線性函數良好近似,而把每個像素沿「使損失上升的方向」移動 ±ε 所造成的損失變化,等於 ε 乘上梯度各分量絕對值的總和——這會隨像素數量增長。因此即使 ε 對單一像素而言極微小,數百萬個像素仍會合成對輸出的一個巨大而同調的推力。符號這一步讓每個像素的貢獻同向相加而非相互抵消。

FGSM 是更強攻擊賴以建立的基礎。以小步長迭代它、並每步把結果重新裁回 ε-球,便得到 BIM/I-FGSM 以及標準基準 PGD(投影梯度下降),後者通常能騙過 FGSM 騙不了的模型;加入動量(MI-FGSM)則改善跨模型的轉移性。FGSM 本身是白箱攻擊(需要模型的梯度),如今主要用作快速的穩健性檢查,並且關鍵地作為對抗訓練的引擎——即時產生對抗樣本來對抗訓練。一個已知的陷阱是:只針對單步 FGSM 做訓練可能造成「梯度遮蔽」,模型學會把自己的梯度藏起來,看似對 FGSM 穩健,卻對多步 PGD 仍然脆弱。

加上 δ 之後務必把對抗影像裁回有效像素範圍(例如 [0,1] 或 [0,255]),並記得 FGSM 需要「損失對輸入的梯度」——它是白箱方法。「對 FGSM 穩健」是個薄弱的主張;帶隨機重啟的 PGD 才是誠實穩健性評估所公認的最低標準。

又称
FGSMfast gradient sign methodsingle-step attack