評估、穩健性與倫理

對抗穩健性

對抗穩健性是指模型在輸入於小預算內被惡意擾動時,仍能持續給出正確答案的能力。一般準確率是在乾淨、自然出現的影像上量測,而穩健準確率則在最壞情況的影像上量測:對每個測試輸入,攻擊者獲准在 ε-球內加以擾動,模型則以「在該對抗擾動下是否仍答對」來計分。一個乾淨準確率 95% 的模型,在強攻擊下的穩健準確率可能只剩 40%——這個落差量化了它的脆弱程度。

形式上,目標是穩健風險最小化,常寫成一個極小化–極大化(鞍點)問題:對模型權重,最小化「對擾動取最大值之損失」的期望值,其中內層最大化範圍是所有 ‖δ‖ ≤ ε 的 δ。內層的「max」是威脅模型所允許的最強攻擊;外層的「min」訓練模型在那個最壞情況下也表現良好。這套框架(Madry 等人,2018)統一了攻擊與防禦:一個防禦的意義,只到它所能抵擋的最強攻擊為止,因此穩健性永遠必須相對於指定的威脅模型(範數、ε、攻擊者知識)來陳述。

領先的實務防禦是對抗訓練:訓練過程中即時產生對抗樣本(通常用 PGD),並訓練模型去分類那些樣本,而不只是乾淨影像。這直接近似那個極小化–極大化目標,是最可靠的經驗性防禦,儘管成本是一般訓練的數倍,且可能對所用的特定攻擊過擬合。另一個分支是可證防禦(例如隨機平滑、區間界傳播),它提供一個數學保證:半徑內的任何擾動都無法改變預測——數字較弱,但給的是證明而非希望,這是經驗性防禦所無法提供的。

一個核心且文獻詳實記載的現象是穩健性–準確率取捨:讓模型更穩健通常會降低其乾淨準確率,因為穩健特徵是比「標準訓練所利用之脆弱卻具預測力的特徵」更小、更保守的子集。穩健性也往往需要多得多的資料與容量。文獻中一再出現的陷阱是「梯度遮蔽或混淆梯度造成的穩健假象」——僅僅藏起梯度的防禦能擊敗弱攻擊,卻在自適應攻擊下仍然破功,因此可信的評估需要自適應、知曉攻擊的測試(如 AutoAttack 套件之類),而非單一固定攻擊。

沒有威脅模型的穩健性主張毫無意義。「90% 穩健」必須註明範數(L∞/L2)、預算 ε、所用攻擊,以及它是否為自適應。要當心來自單一弱攻擊的數字:梯度遮蔽能讓一個其實破功的模型看似穩健,直到有人跑了更強、知曉攻擊的評估為止。

又稱
robust accuracycertified robustnessrobustness–accuracy tradeoff