選自thomas-tanay,作者:THOMAS TANAY、LEWIS D GRIFFIN,機器之心編譯。
兩個高維聚類由一個超平面分離,考慮超平面和圖中水平線之間的夾角,在線性分類中,這個夾角取決于 L2 正則化的程度,你知道為什么嗎?上圖:L2 正則化程度較??;下圖:L2 正則化程度較大。 深度學(xué)習(xí)網(wǎng)絡(luò)已被證實容易受到對抗樣本攻擊:小的圖像干擾能夠大幅改變目前測試過的所有模型的分類 [1, 2]。例如,以下預(yù)測就是由為識別名人而訓(xùn)練的當(dāng)前最佳網(wǎng)絡(luò)做出的 [3]: 該結(jié)果令人困惑有兩個原因。第一,它挑戰(zhàn)了一個普遍的觀點,即對新數(shù)據(jù)的良好泛化和對小干擾的魯棒性是并行不悖的。第二,它對真實世界中的應(yīng)用構(gòu)成了潛在威脅 [4, 5, 6]。例如,MIT 的研究者們最近構(gòu)建了在廣泛的角度和視點分布下被錯誤分類的 3D 對象 [7]。理解這種現(xiàn)象并提高深度網(wǎng)絡(luò)的魯棒性由此成為一個重要的研究目標(biāo)。 目前已有幾種方法投入研究。相關(guān)論文提供了關(guān)于此現(xiàn)象的詳細描述 [8, 9] 和理論分析 [10, 11, 12]。研究者已經(jīng)嘗試構(gòu)建更加魯棒的架構(gòu) [13, 14, 15, 16] 或在評估中檢測對抗樣本 [17, 18, 19, 20]。對抗訓(xùn)練已經(jīng)作為一種懲罰對抗方向的正則化新技術(shù)被引入 [2, 5, 21, 22]。然而不幸的是,這一問題還遠遠沒有解決 [23, 24]。面對這一難題,我們提出從最基本的問題入手:先克服線性分類困難,然后再逐步解決更復(fù)雜的問題。 玩具問題 在線性分類中,對抗干擾通常被理解為高維點積的一個屬性。一個普遍的觀點是:「對于高維問題,我們可以對輸入進行很多無窮小的改變,這些改變加起來就是對輸出的一個大改變。」[2] 我們對這種觀點存疑,并認為當(dāng)分類邊界靠近數(shù)據(jù)流形,即獨立于圖像空間維度時,存在對抗樣本。 設(shè)置 讓我們從一個最簡單的玩具問題開始:一個二維圖像空間,其中每個圖像是 a 和 b 的函數(shù)。 在這個簡單的圖像空間中,我們定義了兩類圖像…… ···它們可以被無限個線性分類器分開,例如分類器 L_θ。 由此產(chǎn)生第一個問題:如果所有的線性分類器 L_θ 都能將 I 類和 J 類很好地分離,那它們對抗圖像干擾的魯棒性是否相同? 投影圖像和鏡像圖像: 考慮 I 類中的圖像 x。在相反類中與 x 最接近的圖像是 x 在 L_θ 上的投影圖像 x_p: 當(dāng) x 和 x_p 非常接近時,我們稱 x_p 是 x 的對抗樣本。盡管 x_p 被歸為低置信度(它位于邊界上),但高置信度對抗樣本可能更引人關(guān)注 [24]。接下來,我們將通過 L_θ 重點介紹 x 的鏡像圖像 x_m: 通過構(gòu)造鏡像圖像,x 和 x_m 到邊界的距離相同,并且被分為相同的置信度水平。 θ函數(shù)的鏡像圖像 回到玩具問題,現(xiàn)在我們可以繪制圖像 x 及其鏡像 x_m 作為 θ 的函數(shù)。 從圖中可以發(fā)現(xiàn),x 和 x_m 之間的距離取決于角度 θ。這兩個邊緣案例非常有趣。 由此產(chǎn)生第二個問題:如果在 L_θ 嚴重傾斜時存在對抗樣本,那么實際上是什么使 L_θ 傾斜? 過擬合與 L2 正則化 本文的假設(shè)是,由標(biāo)準(zhǔn)線性學(xué)習(xí)算法(如支持向量機(SVM)或 logistic 回歸模型)定義的分類邊界通過過擬合訓(xùn)練集中的噪聲數(shù)據(jù)點而傾斜。該假設(shè)在 Xu 等人 [26] 撰寫的論文中找到了理論依據(jù),該文將支持向量機的魯棒性與正則化聯(lián)系起來。此外,還可以通過實驗來檢驗該假設(shè):旨在減少過擬合的技術(shù),如 L2 正則化,有望減少對抗樣本現(xiàn)象。 例如,考慮包含一個噪聲數(shù)據(jù)點 P 的訓(xùn)練集。 如果我們在這個訓(xùn)練集上訓(xùn)練 SVM 或 logistic 回歸模型,我們觀察到兩種可能的現(xiàn)象。 此時,人們可能會合理地懷疑:位于二維圖像空間上的一維數(shù)據(jù)流形與高維自然圖像有什么關(guān)系? 線性分類中的對抗樣本 下面,我們將證明在前一個玩具問題中介紹的兩個主要觀點在一般情況下仍然有效:在分類邊界與數(shù)據(jù)流形非常接近且 L2 正則化控制邊界傾斜角度時會出現(xiàn)對抗樣本。 縮放損失函數(shù) 讓我們從一個簡單的觀察入手:在訓(xùn)練期間,權(quán)重向量的范數(shù)充當(dāng)損失函數(shù)的縮放參數(shù)。 設(shè)置 若 I 和 J 是兩類圖像,C 是定義 Rd 中線性分類器的超平面邊界。C 由正常權(quán)重向量 w 和偏置 b 指定。對于 Rd 中的圖像 x,我們將 x 到 C 的原始分數(shù)稱為值: 現(xiàn)在,考慮 n 對 (x,y) 組成的訓(xùn)練集 T,其中 x 是圖像,并且 y={?1 if x∈I|1 if x∈J} 是其標(biāo)簽。我們對以下數(shù)量在 T 上的分布感興趣: 由此為分類器 C 引出經(jīng)驗風(fēng)險 R(w,b) 的概念,被定義為訓(xùn)練集 T 上的平均懲罰項: 總的來說,學(xué)習(xí)一個線性分類器包括:為精心選擇的損失函數(shù) f 找到權(quán)重向量 w 和偏置 b 并最小化 R(w,b)。 在二分類中有以下三種值得注意的損失函數(shù): 對于 0-1 指示函數(shù),經(jīng)驗風(fēng)險只是 T 上的錯誤率。在某種意義上,這是最佳損失函數(shù),因為最小化錯誤率往往是實踐中所渴求的目標(biāo)。不幸的是,該函數(shù)不適合梯度下降(沒有可以下降的梯度:每一處的導(dǎo)數(shù)都為 0) 通過將誤分類數(shù)據(jù)上的單元懲罰替換為嚴格遞減懲罰,hinge 損失函數(shù)(用于 SVM)和 softplus 損失函數(shù)(用于 logistic 回歸)克服了這一局限性。注意:這兩個損失函數(shù)也會懲罰一些邊界附近正確分類的數(shù)據(jù),有效地保證了安全邊際。 縮放參數(shù)∥w∥ 之前忽視了很重要的一點,即符號距離 s(x) 是通過權(quán)重向量的范數(shù)來縮放的。如果 d(x) 是 x 和 C 之間的實際符號歐氏距離,那么我們有: 因此,范數(shù)‖w‖可以理解為損失函數(shù)在經(jīng)驗風(fēng)險表達式中的縮放參數(shù): 我們這樣定義損失函數(shù) f‖w‖:z→f(‖w‖×z)。 我們觀察到,重新縮放后,0-1 指示函數(shù)不變,但 hinge 損失函數(shù)和 softplus 損失函數(shù)卻受到了很大影響。 0-1 指示函數(shù) 值得注意的是,對于縮放參數(shù)的極值,hinge 損失和 softplus 損失函數(shù)表現(xiàn)一致。 更確切地說,兩個損失函數(shù)都滿足: 為方便表述,我們將誤分類數(shù)據(jù)集表示為: 經(jīng)驗風(fēng)險可以表示為: 這一表達包含一個名為誤差距離的項: 該項為正,可以理解為被 C 誤分類的每個訓(xùn)練樣本之間的平均距離(對正確分類數(shù)據(jù)沒有貢獻)。它與訓(xùn)練誤差相關(guān)——盡管并不完全相等。 最后,我們得到: 以上公式可以用語言表述為:當(dāng)‖w‖很大時,將 hinge 損失和 softplus 損失最小化就等于將錯誤距離最小化,近似于將訓(xùn)練集上的錯誤率最小化。 更確切地說,對于一些正值α和β,兩個損失函數(shù)都滿足: 經(jīng)驗風(fēng)險可以表示為: 這一表述包含一個名為對抗距離的項: 這是 T 中圖像和分類邊界 C 之間的平均距離(對于誤分類圖像的貢獻為負)。可以將它看做針對對抗干擾的魯棒性的度量:d_adv 比較高時,誤分類圖像的數(shù)量有限,正確分類的圖像距離 C 非常遠。 最后我們可以得到: 也就是說,當(dāng) ‖w‖很小時,將 hinge 損失和 softplus 損失最小化就等于將對抗距離最大化,這可以解釋為將對抗樣本最小化的現(xiàn)象。 結(jié)束語 實際上,可以通過在經(jīng)驗風(fēng)險中添加正則項來控制 ‖w‖ 的值,從而產(chǎn)生正則損失: 小的正則化參數(shù) λ 可以讓 ‖w‖ 無限制地增長,而較大的 λ 則導(dǎo)致 ‖w‖ 收縮。 總之,用于線性分類(SVM 和邏輯回歸)的兩個標(biāo)準(zhǔn)模型在兩個目標(biāo)之間平衡:
對抗距離和傾斜角度 前一節(jié)中出現(xiàn)的對抗距離是對對抗干擾魯棒性的度量。更方便的是,它可以表示為單個參數(shù)的函數(shù):分類邊界和最近質(zhì)心分類器之間的角度。 如果 T_I 和 T_J 分別是 T 對 I 和 J 中元素的限制,我們可以寫作: 如果 T_I 和 T_J 平衡(n=2n_I=2n_J): 如果 i 和 j 分別為 T_I 和 T_J 的質(zhì)心: 現(xiàn)在介紹最近質(zhì)心分類器,它的單位法向量 z^=(j?i)/‖j?i‖: 最后,我們稱包含 w hat 和 z hat 的斜平面為 C,稱在 w hat 和 z hat 內(nèi)的角θ為傾斜角 C: d_adv=12‖j?i‖cos?(θ) 該方程在斜平面上的幾何解釋是: 在一個給定的訓(xùn)練集 T 內(nèi),兩個質(zhì)心的距離 ‖j?i‖已經(jīng)固定,d_adv 只取決于傾斜角θ。會出現(xiàn)以下兩個現(xiàn)象:
舉例:SVM on MNIST 我們現(xiàn)在要說明先前關(guān)于 MNIST 數(shù)據(jù)的二進制分類的注意事項。對于每一種能夠分類的數(shù)字,我們利用每類有 3000 張圖片的數(shù)據(jù)集來訓(xùn)練多個 SVM 模型(w,b), 正則化參數(shù)λ∈[10^?1,10^7]。 我們首先繪制訓(xùn)練數(shù)據(jù)和邊界之間的距離 y_d(x)的分布作為正則化參數(shù)λ(灰色直方圖)的函數(shù)。在每個模型收斂(藍線)后疊加損失函數(shù) f‖w‖。 可以看到 hinge 損失的縮小對獲得的模型有明顯的影響。不幸的是,訓(xùn)練誤差最小化和對抗距離最大化是相互矛盾的目標(biāo):當(dāng) λ很小,err_train 最小化;當(dāng)λ很大,d_adv 最大化。注意,對于中級正規(guī)化λ_optimal,測試誤差最小化。當(dāng)λ<λ_optimal 時,分類器會過擬合;當(dāng)λ="">λ_optimal 時,分類器欠擬合。 為了更好地理解這兩個目標(biāo)是如何平衡的,我們可以從不同的角度來看訓(xùn)練數(shù)據(jù)。 首先計算最近質(zhì)心分類器的單位權(quán)重向量 z hat,然后針對每個 SVM 模型 (w,b) 計算出單位向量 n hat,這樣 (z hat,n hat) 就是斜平面 w 的一組標(biāo)準(zhǔn)正交基。最后,將訓(xùn)練數(shù)據(jù)映射到 (z hat,n hat): 水平方向穿過兩個質(zhì)心,選定垂直方向,使 w 屬于該平面(超平面邊界則以直線形式出現(xiàn))。由于 (z hat,n hat) 是一組標(biāo)準(zhǔn)正交基,所以這個平面的距離實際上是像素的距離。要理解為什么當(dāng)λ變化時數(shù)據(jù)點移動,我們需要想象傾斜平面在 784 維輸入空間內(nèi)繞在 z hat 旋轉(zhuǎn)(所以對于每個 λ值都會顯示 784 維訓(xùn)練數(shù)據(jù)里對應(yīng)的每個不同的部分)。 對于高正則化等級,此模型與最近質(zhì)心分類器平行,且對抗距離最大化。當(dāng)λ減少, 分類邊界通過向低方差的方向傾斜提升它對訓(xùn)練數(shù)據(jù)的適應(yīng)性。最終,少量錯誤分類的訓(xùn)練樣本被覆蓋,導(dǎo)致對抗距離減小,權(quán)重向量難以解釋。 最后,我們可以發(fā)現(xiàn)每個模型中的兩個典型映像 x、y(每類一個)和它們的鏡像 x_m、y_m。它們在傾斜平面 w 上的投影直觀地反映了線性分類中的對抗現(xiàn)象。 當(dāng)傾斜角接近π/2 時,該模型易受強對抗樣本 (||x_m?x||→0 and ||y_m?y||→0) 的影響。這是強過擬合的表現(xiàn),它的發(fā)生與否取決于區(qū)分這兩個類的難度 (對比 7s 和 9s 的分類以及 0 和 1 的分類)。 神經(jīng)網(wǎng)絡(luò)中的對抗樣本 由于對抗距離和傾斜角度的等效性,線性問題非常簡單,可以在平面上可視化。然而在神經(jīng)網(wǎng)絡(luò)中,類邊界不是平坦的,對抗距離無法縮減為單個參數(shù)。盡管如此,它與線性問題仍有相似之處。 第一步:雙層二值網(wǎng)絡(luò) 假設(shè) N 是一個雙層網(wǎng)絡(luò),具有定義 R^d 中非線性二值分類器的單個輸出。N 的第一層由權(quán)重矩陣 W_1 和偏置向量 b_1 指定,N 的第二層由權(quán)重向量 W_2 和偏置 b_2 指定。我們假設(shè)這兩個層被校正線性單元的?層分開,該校正線性單元應(yīng)用函數(shù) z→max(0,z)。對于 R^d 中的圖像 x,我們將 x 到 N 的原始分數(shù)稱為值: 與線性問題相似,損失函數(shù) f 在 T 上的經(jīng)驗風(fēng)險可以表示為: 而訓(xùn)練 N 在于為選好的 f 找到 W_1、b_1、W_2 和 b_2 以及最小化 R。 ? 是分段線性的,并且在每個圖像 x 周圍存在局部線性區(qū)域 L_x,其中: 其中 W_1^x 和 b_1^x 是通過將 W_1 和 b_1 中的一些線分別置零而獲得的。在 L_x 中,原始分數(shù)可以表示為: 這可以被視為局部線性分類器 C_x 的原始分數(shù),我們對線性問題的分析幾乎可以不加修飾地應(yīng)用。首先,我們觀察到 s(x) 是一個折合距離。如果 d(x) 是 x 和 C_x 之間實際帶符號的歐氏距離,我們可以得到以下公式: 備注:
范數(shù)‖W2W1^x‖可以理解為損失函數(shù)的縮放參數(shù)(縮放現(xiàn)在是局部的,依賴于 x)。同時控制所有局部縮放的一個簡單方法是將 L2 正則化項添加到獨立作用于范數(shù)‖W_1‖和‖W_2‖的經(jīng)驗風(fēng)險中(請記住,W1^x 中的權(quán)重是 W1 中權(quán)重的子集)。隨著梯度下降,這相當(dāng)于在每次迭代中衰減權(quán)重 W_1 和 W_2。隨著梯度下降,這相當(dāng)于在每次迭代中衰減權(quán)重 W_1 和 W_2。更確切地說,對于學(xué)習(xí)率η和衰減因數(shù)λ,權(quán)重衰減更新為: W_1←W_1?ηλW_1 和 W_2←W_2?ηλW_2
總之,L2 正則化充當(dāng)損失函數(shù)上的縮放機制,在線性分類和小型神經(jīng)網(wǎng)絡(luò)中都是如此。 隨著梯度下降,利用大幅度權(quán)重衰減可以進行一種簡單的對抗訓(xùn)練。 第二步:通常情況 之前的分析可以推廣到更多的層數(shù),甚至是非分段線性激活函數(shù)。更重要的發(fā)現(xiàn)是: ?_x s 是 x 的原始分數(shù)梯度,d(x) 是網(wǎng)絡(luò)定義的 x 和邊界之間距離的線性近似。范數(shù)‖?_x s‖構(gòu)成損失函數(shù)的尺度參數(shù),該參數(shù)可以用來控制權(quán)重的衰減。 這種思想不止適用于二分類。在多分類情況下,原始分數(shù)為一個向量,其元素被稱作 logits。每個 logitsi(x) 通過 softmax 函數(shù)轉(zhuǎn)換為概率 pi(x): 圖像/標(biāo)簽對 (x,y) 正確分類的概率是 p_y(x)。對數(shù)似然損失函數(shù)通過將以下懲罰項歸于 (x,y),使其接近于 1。 現(xiàn)在,改變權(quán)重衰減影響了 logits 的縮放,有效充當(dāng)了 softmax 函數(shù)的 temperature 參數(shù)。當(dāng)權(quán)重衰減非常小,生成的概率分布會很接近 one-hot 編碼(p_y(x)≈0 or 1),只有分類錯誤的數(shù)據(jù)會產(chǎn)生非零懲罰。當(dāng)權(quán)重衰減較大,生成的概率分布會變得更加的平滑,正確分類的數(shù)據(jù)也開始參與到訓(xùn)練中,從而避免了過擬合。 實際觀察結(jié)果表明,現(xiàn)代深度網(wǎng)絡(luò)都沒有得到充分正則化: 1. 經(jīng)常校準(zhǔn)不良并產(chǎn)生過于自信的預(yù)測 [28]。 2. 總是收斂到零訓(xùn)練誤差,即使在數(shù)據(jù)的隨機標(biāo)記任務(wù)中也如此 [29]。 3. 易受到小規(guī)模線性攻擊 [2]。 舉例:LeNet on MNIST 僅利用權(quán)重衰減對神經(jīng)網(wǎng)絡(luò)進行正則化就能處理對抗樣本嗎?這個想法非常簡單,并已被考量過:Goodfellow 等人 [2] 觀察到,在線性情況下,對抗訓(xùn)練「有點類似于 L1 正則化」。然而作者曾報道,在 MNIST 上對 maxout 網(wǎng)絡(luò)進行訓(xùn)練時,L1 0.0025 的權(quán)重衰減系數(shù)「有點過大,導(dǎo)致模型在訓(xùn)練集上的誤差超過 5%。較小的權(quán)重衰減系數(shù)可以帶來成功的訓(xùn)練,但不會帶來正則化效益?!刮覀冊俅螌⒋讼敕ǜ吨T實踐,得到的觀察結(jié)果更加細致。使用較大的權(quán)重衰減顯然不是靈丹妙藥,但我們發(fā)現(xiàn)它確實有助于減少對抗樣本現(xiàn)象,至少在簡單的設(shè)置中如此。 考慮到 MNIST 上的的 LeNet(10 類別問題)。我們使用基線 MatConvNet[30] 實現(xiàn),其架構(gòu)如下: 我們分別用一個 10^?4 的小幅度權(quán)重衰減和一個 10^?1 的大幅度權(quán)重衰減訓(xùn)練該網(wǎng)絡(luò)(我們將訓(xùn)練后的兩種網(wǎng)絡(luò)分別稱為 LeNet_low 和 LeNet_high)。我們保持其它所有參數(shù)不變:訓(xùn)練 50 個 epoch,批尺寸為 300,學(xué)習(xí)率為 0.0005,動量為 0.9。 我們可以進行若干次觀察。首先繪制兩個網(wǎng)絡(luò)的訓(xùn)練和測試誤差,將其作為 epoch 的函數(shù)。 從圖中可以看出,LeNet_high 的過擬合較少(訓(xùn)練和測試誤差在訓(xùn)練結(jié)束時大致相等),并且比 LeNet_low 的性能稍好一點(最終測試誤差為 1.2 % VS 1.6 %)。 我們還可以檢查學(xué)到的權(quán)重。下面,我們計算它們的均方根值(RMS),并為每個卷積層隨機選擇濾波器。 不出所料,隨著較大權(quán)重衰減學(xué)習(xí)到的權(quán)重 RMS 要小得多。LeNet_high 的濾波器也比 LeNet_low 的濾波器要更平滑(參見 Conv1 和 Conv2 中邊緣檢測器帶噪聲的情況),并且它們的幅度在每個卷積層中變化更大(參見 Conv2 和 FC1 中的均勻灰度濾波器)。 最后,我們對兩個網(wǎng)絡(luò)進行相同的視覺評估:對于每個數(shù)字的隨機實例,我們會生成一個高置信度對抗樣本,目標(biāo)是執(zhí)行標(biāo)簽 0→1,1→2,…9→0 的循環(huán)排列。具體而言,通過對期望標(biāo)簽的概率進行梯度上升直到中值達到 0.95,來生成每個對抗樣本。我們在下圖展示了十幅原始圖像 OI,以及它們對應(yīng)的對抗樣本 AE 和對抗干擾 Pert。 我們看到 LeNet_high 比 LeNet_low 更不容易受到對抗樣本的影響:對抗干擾有更高的 L2 范數(shù),這對觀察者來說更有意義。 未來研究展望 雖然近年來對抗樣本已經(jīng)引起了廣泛關(guān)注,并且它對機器學(xué)習(xí)的理論和實踐來說都有很大意義,但迄今為止仍有很多不明之處。本文旨在提供一個關(guān)于對抗樣本線性問題的清晰、直觀概覽,希望為后續(xù)工作打下堅實的基礎(chǔ)。我們還發(fā)現(xiàn) L2 權(quán)重衰減在 MINIST 的一個小型神經(jīng)網(wǎng)絡(luò)中發(fā)揮的作用超出預(yù)期。 但是,在更為復(fù)雜的數(shù)據(jù)集的更深模型中,一切都變得更加復(fù)雜。我們發(fā)現(xiàn),模型的非線性越強,權(quán)重衰減似乎越?jīng)]有幫助。這一局限可能很淺顯,需要進一步探究(例如,我們可能應(yīng)該在訓(xùn)練時更加注意對數(shù)幾率的縮放)?;蛘呱顚泳W(wǎng)絡(luò)的高度非線性可能是阻礙 L2 正則化實現(xiàn)一階對抗訓(xùn)練類型的根本障礙。我們認為,要找到令人滿意的解決方案,可能需要關(guān)于深度學(xué)習(xí)的嶄新思路。 λ_optimal> |
|
來自: 昵稱11935121 > 《待分類》