对抗性鲁棒性与模型压缩:ICCV2019论文解析
對抗性魯棒性與模型壓縮:ICCV2019論文解析
Adversarial Robustness vs. Model
Compression, or Both?
論文鏈接:
http://openaccess.thecvf.com/content_ICCV_2019/papers/Ye_Adversarial_Robustness_vs._Model_Compression_or_Both_ICCV_2019_paper.pdf
Code is available at
https://github.com/yeshaokai/ Robustness-Aware-Pruning-ADMM.
摘要
眾所周知,深度神經網絡(DNNs)容易受到敵方攻擊,這種攻擊是通過在良性示例中添加精心設計的擾動來實現的。基于最小-最大魯棒優化的對抗性訓練可以提供對抗性攻擊的安全性概念。然而,對抗性穩健性要求網絡的容量比只有良性例子的自然訓練的容量要大得多。本文提出了一種并行對抗訓練和權值剪枝的框架,在保持對抗魯棒性的前提下實現模型壓縮,從本質上解決了對抗訓練的難題。此外,本文還研究了兩個關于傳統環境下權值剪枝的假設,發現權值剪枝對于減少對抗環境下的網絡模型規模是至關重要的;從無到有地訓練一個小模型,即使是從大模型中繼承初始化,也不能達到對抗魯棒性和高性能標準精度。
- Introduction
本文的動機是研究是否以及如何通過減輕網絡容量需求來促進主動防御技術,即對抗性訓練。圖1描述了CIFAR數據集上VGG-16網絡的權重分布。本文測試了VGG-16網絡的原始尺寸、1/2尺寸和1/4尺寸的標準精度和對抗精度。本文有以下觀察:(i)較小的模型尺寸(網絡容量)表明,對抗訓練模型的標準精度和對抗精度都較低。(ii)對手方訓練的模型比自然訓練的模型稀疏(零權重更少)。因此,在對抗訓練之前進行預剪枝并不是一個可行的解決方案,而且似乎更難剪枝一個對抗訓練的模型。本文試圖回答這樣一個問題:本文是否可以同時享受對抗魯棒性和模型壓縮。基本上,本文將權值剪枝和對抗訓練結合起來,使安全關鍵應用在資源受限的系統中。
本文的貢獻
本文建立了一個框架,通過實施并行的權值剪枝和對抗訓練來實現對抗性穩健性和模型壓縮。
具體來說,本文在本文的框架中使用基于ADMM(乘法器交替方向法)的剪枝[50,51],因為它與對抗訓練兼容。
更重要的是,基于ADMM的剪枝具有普遍性,它支持不規則剪枝和不同類型的規則剪枝,這樣本文可以很容易地在不同的剪枝方案之間切換為了公平比較。
最終,本文的框架解決了對抗訓練的困境。
本文還研究了針對傳統模型壓縮設置提出的兩個關于權重剪枝的假設,并通過實驗驗證了它們對于對抗性訓練設置的有效性。
研究發現,權值剪枝對于在對抗環境下減小網絡模型的規模是至關重要的,從無到有地訓練小模型,即使從大模型繼承初始化,也不能同時達到對抗魯棒性和高標準精度。
利用提出的并行對抗訓練和權值剪枝框架,系統地研究了不同剪枝方案對對抗魯棒性和模型壓縮的影響。結果表明,在對DNN模型進行剪枝時,不規則剪枝方案在保持標準精度和對抗性穩健性方面是最好的。
- Related Work
2.1. Adversarial Training
對抗性訓練的一個主要缺點是,它需要一個顯著的更大的網絡容量來實現強大的對抗性健壯性,而不是僅對良性例子進行正確分類[33]。此外,對抗性訓練比自然訓練有更重要的過度訓練問題[36]。在本文的后面,本文將展示與上述觀察相關的一些有趣的發現。
2.2. Weight Pruning
權值剪枝作為一種模型壓縮技術,被提出用來促進DNN在資源受限的應用系統中的實現,因為它探索了權值稀疏性來剪枝突觸和神經元而不會顯著降低精度。一般來說,規則剪枝方案在某種意義上可以保持模型的結構,而不規則剪枝方案則可以保持模型的結構。常規剪枝可以進一步分為filter剪枝方案和column剪枝方案。按名稱修剪過濾器從一個層修剪整個過濾器。列修剪修剪在同一位置為層中的所有過濾器修剪權重。
請注意,有些參考文獻提到了通道修剪,它的名字是完全從過濾器中修剪一些通道。但實際上,通道剪枝等同于濾波器剪枝,因為如果在一個層中剪枝某些濾波器,則會使下一層的對應通道無效[20]。在這項工作中,本文實施并研究了在對抗性訓練環境中的過濾器修剪、列修剪和不規則修剪方案。而且,對于每一個剪枝方案,本文都以相同的剪枝率均勻地剪枝每一層。例如,當本文將模型大小(網絡容量)刪減一半時,這意味著每層的大小減少一半。
現有不規則修剪工作[17、15、49、50]和常規修剪工作[20、43、51、26、30]。此外,幾乎所有的常規修剪工作實際上都是過濾器修剪,除了第一個提出列修剪的工作[43]和能夠實現col通過基于ADMM的方法進行umn修剪。在這項工作中,本文使用ADMM方法,因為它對所有修剪方案都有潛力,并且它與對抗性訓練兼容,這將在后面的章節中演示。
研究人員也開始反思并提出一些關于減重的假設。彩票假說[12]推測,在大網絡中,子網絡及其初始化使得剪枝特別有效,它們一起被稱為“中獎彩票”。在這個假設中,子網絡的初始值(在大網絡剪枝之前)是它在孤立訓練時獲得競爭性能所必需的。
此外,該工作[31]得出結論,從頭開始訓練預先定義的目標模型并不比對同一目標模型體系結構的大型過參數化模型應用結構化(常規)修剪更糟糕,甚至更好。然而,這些假設和結論是針對一般的權重剪枝提出的。在這篇文章中,本文提出了一些有趣的觀察,關于在對抗環境下的權重削減,這些都是在現有的假設下無法充分解釋的[12,31]。
-
Concurrent Adversarial Training and Weight Pruning
-
Weight Pruning in the Adversarial Setting
在本節中,本文將研究在對抗環境中權重修剪的性能。本文得到了與傳統模型壓縮設置中的[12,31]相反的有趣結果。在這里,本文提出了一個并行對抗訓練和權重剪枝的框架,這是一種常用的剪枝方法,有助于稀疏神經網絡在硬件上的實現。其他修剪方案將在實驗部分進行研究。在表1中,本文總結了本文中測試的所有網絡及其由寬度比例因子w指定的模型架構。
4.1. Weight Pruning vs Training from Scratch
盡管[31]中的結論可能適用于自然訓練的背景,但在對抗性訓練的背景下,情況就不同了。表2、表3和表4展示了不同數據集和網絡的自然訓練、對抗訓練、并發對抗訓練和權重修剪的自然測試精度/對抗測試精度。本文以表2為例。當本文自然地訓練一個w=1的網絡時,本文有98.25%的自然測試精度和0%的對抗測試精度。當本文對w=1的網絡進行對抗性訓練時,自然測試精度和對抗性測試精度均達到11.35%,仍然很低。結果表明,w=1的網絡沒有足夠的能力進行強大的對抗魯棒性。
為了提高網絡的對抗魯棒性,至少需要對w=4的網絡進行對抗訓練。令人驚訝的是,通過在w=4的網絡上利用本文的并行對抗訓練和權重剪枝,本文可以獲得目標大小為w=1的更小的剪枝模型,但與w=4的對抗訓練模型相比,本文可以獲得競爭性的自然測試精度/對抗性測試精度(96.22%/89.41%)。為了獲得具有最高自然和對抗性測試精度的w=1網絡,本文應該將所提出的框架應用于w=8網絡。表3和表4也有類似的意見。
總之,在對抗性訓練環境中,權重剪枝的價值是至關重要的:通過權重剪枝可以獲得一個既具有高自然測試精度又具有對抗性測試精度的小型模型網絡。相比之下,如果將對抗訓練直接應用于一個小規模的網絡,而不是從重量修剪中獲得,則可能會降低自然測試和對抗測試的準確性。
4.2. Pruning to Inherit Winning Ticket or Else?
為了檢驗彩票假設在對抗環境下是否有效,本文在類似于[12]的實驗環境下進行對抗訓練。表5總結了自然/對抗性測試精度結果,其中單元格w1-w2(w1>w2)中的結果表示使用從w1大小的對抗性訓練模型繼承的初始化的w2大小的對抗性訓練模型的精度。表5中不使用修剪。例如,表5中的單元格4-2的精度僅為11.35%/11.35%。從表2中回想,如果本文使用本文提出的并行對抗性訓練和權值剪枝框架,從4號模型剪枝到2號小模型,本文可以在表2的單元格4-2中獲得高精度的97.68%/91.77%。本文的結果表明,在對抗環境中的權重剪枝不在彩票假設的范圍內。
此外,為了進一步探討對抗性訓練中初始化與模型能力之間的關系,本文進行了附加實驗。比較了七種不同的初始化方法,利用Adam、SGD和cosineanaling[32]在MNIST上訓練300個周期的最小LeNet模型(w=1)。本文用不同的隨機種子重復這個實驗10次,平均準確度見表B1。如表2所示,對抗訓練失敗,w=1,2。
在所有研究的場景中,本文只發現兩個例外:a)具有統一初始化的Adam和b)具有kaiming normal的Adam,其中10個試驗中有1個成功(損失如圖2所示)。即使在這些例外情況下,相應的測試精度也遠低于表2中同時進行對抗性訓練和權值剪枝得到的最小模型。本文還發現,在大多數情況下,11.35%的準確率對應于對抗性訓練遇到的鞍點。本文在表B1中的結果表明,如果不同時進行對抗性訓練和權重剪枝,即使使用不同的初始化方案和優化器,從零開始對抗性地訓練一個小模型也變得極其困難。
可以清楚地看出,在對抗環境中,從大型模型中剪枝是有用的,這在自然測試精度和對抗穩健性方面都有好處。相比之下,這些優勢并不是由對手從頭開始訓練一個小模型所提供的。這些有趣的結果可以從過度參數化的好處來解釋[54,1,2],這表明當參數的數量大于訓練數據所需的統計數據時,訓練神經網絡可能達到全局解。同樣,在對抗性訓練環境中,較大的、過參數化的模型會導致很好的收斂,而經過對抗性訓練的小模型則經常卡在鞍點上。這兩個觀察結果促使本文提出一個框架,該框架可以在對抗性訓練中從更大的模型中獲益,同時減少模型的大小。結果,剩余的權重保持了對抗性穩健性。
5. Pruning Schemes and Transfer Attacks
在本節中,本文研究了在不同剪枝方案(即過濾器/列/不規則剪枝)和轉移攻擊下,所提出的并行對抗訓練和權重剪枝的性能。使用VGG-16和ResNet-18網絡在CIFAR10上測試了該框架,如圖3所示。如本文所見,自然測試和對抗測試的準確度隨著修剪尺寸的減小而減小。
在不同的剪枝方案中,不規則剪枝的效果最好,而過濾器剪枝在自然和對抗性測試精度方面表現最差。這是因為除了權重稀疏性外,filter剪枝還施加了結構約束,與不規則剪枝相比,結構約束限制了剪枝粒度。
此外,不規則修剪保留了不同修剪大小的準確性。原因是減肥有助于緩解過度訓練問題[17],對抗性訓練比自然訓練更容易出現過度訓練[36]。在表C1中,本文評估了基于PGD對手的魯棒模型對攻擊的性能。
如本文所見,并行的對抗訓練和權值剪枝使得剪枝模型對轉移攻擊具有魯棒性。特別是,在剪枝前(基線),剪枝模型比原始模型能獲得更好的對抗性測試精度。 此外,本文還設計了一個交叉轉移攻擊實驗。考慮表2中的基線模型,當w=1,2時,模型沒有得到很好的訓練,因此本文從w=4,8,16的基線模型中通過PGD攻擊生成對抗性例子,并應用它們來測試修剪模型。
在表6中,結果表明,即使是在每個剪枝模型的最壞情況下,對抗性測試的準確性也高于表2中剪枝模型的準確性。結果表明,無論模型的大小如何,該模型都最容易受到自身生成的對抗性例子的攻擊。
- Supplementary Details of Experiment Setup
本文使用LeNet作為MNIST,使用LeNet、VGG-16和ResNet-18作為CIFAR10。這里使用的LeNet模型遵循了這一工作[33]。VGG-16和ResNet-18采用了批量標準化(BN)。表1列出了有關網絡結構的更多詳細信息。
此外,在CIFAR的基線上存在爭議,本文采取以下措施確保基線足夠強大:
-
本文遵循[31]的建議,以更大的學習率0.1作為初始學習率來訓練本文的模型。
-
本文在CIFAR中訓練了300個階段的所有模型,并在[33]之后的第80和150階段將學習率除以10倍。
-
Liu等人[31]建議從頭開始訓練的模型需要公平的訓練時間來與修剪模型進行比較。因此,如果在訓練結束時損失仍在下降,本文的訓練時間將增加一倍。
-
由于自然準確度和對抗準確度之間總是存在權衡,因此當模型在測試數據集上的自然圖像和對抗圖像的平均損失達到最低時,本文報告準確度。
因此,本文相信,在本文的環境中,本文有公平的基線從頭開始訓練。
5. Conclusion
基于最小-最大魯棒優化的對抗性訓練可以提供對抗性攻擊的安全性概念。然而,對抗性穩健性要求網絡的容量比只有良性例子的自然訓練的容量要大得多。本文提出了一種并行對抗訓練和權值剪枝的框架,在保持對抗魯棒性的前提下實現模型壓縮,從本質上解決了對抗訓練的難題。
此外,本文還研究了兩個關于傳統環境下權值剪枝的假設,發現權值剪枝對于在對抗環境下減小網絡模型大小至關重要,從零開始訓練小模型,即使是從大模型繼承初始化,也不能同時達到對抗性的魯棒性和高標準的精度。本文還系統地研究了不同剪枝方案對對抗魯棒性和模型壓縮的影響。
總結
以上是生活随笔為你收集整理的对抗性鲁棒性与模型压缩:ICCV2019论文解析的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 目标检测中的anchor-based 和
- 下一篇: 从单一图像中提取文档图像:ICCV201