論文:A Closer Look at Accuracy vs. Rubustness(NeuIPS2020)
論文地址:https://arxiv.org/abs/2003.02460
論文代碼:https://github.com/yangarbiter/robust-local-lipschitz
引言大量研究表明神經網絡極易受到對抗樣本的攻擊——輸入樣本上的微小擾動就能讓其預測錯誤。儘管目前已經湧現出許多抵禦對抗攻擊的方法,但這些方法一般都會造成模型準確率的下降。因此,大部分前人工作認為在分類任務上,必須對模型的準確率和魯棒性做一個折衷,兩者是無法兼得的。本文針對這個問題進行了進一步研究,發現真實圖像數據集一般是可劃分的,而利用數據集的可劃分屬性,神經網絡模型在一定條件下可以同時滿足高準確率和強魯棒性兩個要求。
論文貢獻該論文的貢獻可以總結為以下三點:
作者通過實驗證明了常用的真實圖像數據集是自然可劃分的。
基於數據集的可劃分屬性,作者在理論上證明了利用局部利普西斯函數,神經網絡模型可以同時具有高準確率和強魯棒性,打破了以往認為兩者不能兼得的認知局限。
作者研究了現有訓練方法產生的分類器的平滑性和泛化差距(訓練集和測試集準確率的差距),發現一些能夠產生魯棒分類器的訓練方法,依然無法緩解模型具有很大泛化差距的問題。因此,作者提出將dropout技術應用到這些訓練方法中來縮小模型的泛化差距,本文實驗結果證明了該方法的有效性。
模型介紹一、預備知識
魯棒性和機敏性(astuteness):令
也就是說,模型的機敏性是對其魯棒性和準確率的一個綜合考量,因此我們的目標也就是獲得具有高機敏性的模型 [1]。
局部利普西斯性(Local Lipschitzness):給定樣本輸入空間
這裡
當兩個樣本
可劃分性(Seperation):假設輸入空間
該性質要求具有
二、真實圖像數據集的
在這裡,作者通過實驗驗證四種經常使用的真實圖像數據集是否具有
這裡距離度量函數
三、
作者從理論上證明了如果數據分布是
已知函數
故
然後定義分類器
也就是說分類器
於是作者給出如下引理:
若函數
證明過程如下:
由上文局部利普西斯性的定義可知,若函數
則當
又因為對於任意的
都有
所以可得如下不等式:
因此當
作者在論文中進一步證明了當數據集具有
實驗結果上文在理論上證明了模型的準確率和魯棒性兩者可以兼得(即足夠機敏),但是實際中大部分模型的準確率和魯棒性兩者之間往往不能互相協調,於是作者通過實驗研究這種現象背後的可能原因,並進一步提出可行的方法來緩解這個問題。
在本文中,作者主要通過兩個方面來對神經網絡模型進行分析,分別是(1)現有訓練方法產生的模型的局部利普西斯性(前人工作曾表明模型的利普西斯性和魯棒性緊密相關),(2)這些模型的泛化能力。
作者通過如下公式定義利普西斯常數來評估模型的局部利普西斯性:
利普西斯常數越小,表示模型越平滑。
而模型的泛化能力則用模型在訓練集和測試集上準確率的差距來評估。
上表顯示了兩種卷積神經網絡在不同的訓練方法Natural, GR, LLR, AT, RST, TRADES下的性能,包括在訓練集上的準確率,在測試集上的準確率,在測試集對抗樣本上的準確率(簡稱為對抗準確率),利普西斯常數,訓練集和測試集準確率的差,訓練集和測試集對抗準確率的差。我們發現(1)模型的利普西斯性和其對抗準確率密切相關,比如魯棒的訓練方法AT,RST,TRADES的利普西斯性比Natural, GR, LLR好(即利普西斯常數更小),它們的對抗準確率也較高;(2)儘管模型具有較小的利普斯西常數,更加平滑,但它們在訓練集和測試集上的泛化差距依然很大。
因此,作者提出採用經典的dropout技巧來縮小模型的泛化差距。如下圖所示,
可以看到,加了dropout的模型具有更小的泛化差距,同時模型變得更加平滑,利普西斯常數更小,而測試準確率和對抗準確率均有明顯的提升,說明dropout能夠有效提升模型的泛化能力和局部利普西斯性。
參考:
[1] Yizhen Wang, Somesh Jha, and Kamalika Chaudhuri. Analyzing the robustness of nearest neighbors to adversarial examples. In International Conference on Machine Learning, pages 5133--5142, 2018.
下載1:四件套
在機器學習算法與自然語言處理公眾號後臺回復「四件套」,
即可獲取學習TensorFlow,Pytorch,機器學習,深度學習四件套!
下載2:倉庫地址共享
在機器學習算法與自然語言處理公眾號後臺回復「代碼」,
即可獲取195篇NAACL+295篇ACL2019有代碼開源的論文。開源地址如下:https://github.com/yizhen20133868/NLP-Conferences-Code
重磅!機器學習算法與自然語言處理交流群已正式成立!
群內有大量資源,歡迎大家進群學習!
額外贈送福利資源!pytorch官方中文教程,利用Python進行數據分析,機器學習學習筆記,pandas官方文檔中文版,effective java(中文版)等20項福利資源
獲取方式:進入群後點開群公告即可領取下載連結
注意:請大家添加時修改備註為 [學校/公司 + 姓名 + 方向]
例如 —— 哈工大+張三+對話系統。
號主,微商請自覺繞道。謝謝!
推薦閱讀:
保持高效論文寫作的10個原則!
深度剖析:針對深度學習的GPU共享
9個技巧讓你的PyTorch模型訓練變得飛快!