你有沒有看過圖片只被動幾個像素,模型就把貓認成狗?
你可以把對抗性穩健想成模型面對「刻意搗亂」時的抗壓能力,輸入就算被小幅修改,也還能維持原本判斷。它關心的不是一般資料有沒有看懂,而是有人故意做手腳時會不會失控。
這很重要,因為真實系統一旦被攻擊者盯上,錯一次就可能造成安全事故,不只是少拿幾分而已。
容易混淆
對抗性穩健 vs 對抗性攻擊
對抗性攻擊是出手修改輸入。
對抗性穩健是模型能不能扛住這種修改。
最關鍵的區別:一個是攻,一個是守。
對抗性穩健 vs 一般泛化能力
一般泛化能力是面對沒看過的正常資料。
對抗性穩健是面對被故意改過的資料。
最關鍵的區別:一個是新樣本,一個是敵意樣本。
對抗性穩健 vs 穩健性
穩健性是大範圍的耐受能力。
對抗性穩健是穩健性裡專門針對攻擊的那一塊。
最關鍵的區別:對抗性穩健更聚焦在惡意擾動。
記住這句就好
面對故意亂改的輸入,模型還能不能答對。
實際案例
交通標誌辨識
若停止標誌被貼上幾個小貼紙,模型就誤認成速限標誌,這代表對抗性穩健不足,對自駕系統會很危險。
人臉辨識登入
如果攻擊者只用小幅遮擋或貼圖就能騙過系統,登入安全就會出問題,所以人臉系統常需要更高的對抗性穩健。
算法與應用
常見提升方法
對抗訓練、輸入預處理、特徵正則化、對抗樣本偵測,都是常見作法。
評估方式
不只看正常準確率,也要看在不同攻擊強度下的表現,才知道模型是不是只會在測試集上看起來很強。
情境判斷
Q1(直覺題): 圖片只被加了幾個不明顯的擾動,模型就誤判,這代表什麼?
→ 對抗性穩健不足,模型扛不住刻意設計的輸入改動。
Q2(判斷題): 一個模型在正常資料上很準,就一定有對抗性穩健嗎?
→ 不一定,這要看情況。正常資料表現好,只代表一般泛化不錯,不代表面對攻擊時也能守住。
常見問題
對抗性穩健可以完全做到嗎?
很難,通常只能在特定攻擊範圍內提高防護,沒有絕對保證。
對抗訓練是不是最有效的方法?
它很常用,但會增加訓練成本,而且可能降低對乾淨資料的表現,需要取捨。
對抗性穩健只跟影像有關嗎?
不是,文字、語音、甚至表格資料都可能被設計成對抗樣本。
紅隊演練和對抗性穩健有什麼關係?
紅隊演練常用來找出模型在哪些攻擊下會失守,幫你知道穩健性缺口在哪。