對抗樣本為什麼重要:未解決的研究問題與真實的威脅模型

尋夢新聞LINE@每日推播熱門推薦文章,趣聞不漏接❤️

加入LINE好友

對抗樣本為什麼重要:未解決的研究問題與真實的威脅模型

大數據文摘出品

來源:medium

編譯:李雷、林安安、宋欣儀、周素雲

這篇博文是Catherine Olsson在的兩次短篇演講的基礎上撰寫的,一次是2018年11月在人工智能合作夥伴會議上,另一次是2019年1月在波多黎各的通用人工智能(AGI)會議上。

我認為對抗樣本很值得研究,應該引起高度的重視。然而大多數人關注對抗樣本的理由都非常片面。我認為這是因為很多人將尚未解決的研究問題與現實世界的威脅模型混為一談。

首先讓我解釋一下對抗樣本是什麼意思,用一個被很多記者和這類主題的論文會引用的例子,就是假設「人們在停車標誌上貼上貼紙會導致撞車」 ,通過做一個現實世界的威脅模型可以說明為什麼對抗性樣本引起。然後我會先通過典型小擾動對抗樣本構建一個未解決的研究問題,與現實世界問題建立真實(但不那麼直接)的聯繫,從而得出一些概念性證明。

什麼是對抗樣本

對抗性樣本是旨在導致機器學習模型出錯的輸入。

常見的對抗樣本(但不是必要的)是通過對正確的輸入樣本進行修改來構建的,這些輸入有時被稱為「ε-球對抗性樣本」或「小擾動對抗樣本」。

例如,如果你有一個圖像分類模型,並且它能以相當高的置信度(57.7%)正確地對這張圖片作出熊貓的分類,但事實上可以這張圖片中每個像素變化一點點得到一張新的圖片,這樣它雖然看起來仍是熊貓,但卻會被圖像分類模型以極高的置信度(99.3%)錯誤地識別為長臂猿。

對抗樣本為什麼重要:未解決的研究問題與真實的威脅模型

在稍微改變像素之後,新圖像被以極高的置信度錯誤地分類。

值得注意的是,小擾動對抗樣本不是深度學習所特有的,也不是特定模型才有的問題。在某些已知的情況下,幾乎所有已知的機器學習模型都容易受到高維輸入對抗樣本的影響,現在還沒有很好的解決方案。

識別停車標誌的對抗樣本

我們已經知道機器學習(ML)模型容易受到對抗樣本的影響,因此人們可能很自然地擔心在對抗樣本會對現實世界產生什麼樣的影響。

舉個例子,假設你正在設計一款自動駕駛汽車,你希望它能夠識別停車標誌。當你知道抗樣本後,你就會很好奇這是否會影響你的車。

對抗樣本為什麼重要:未解決的研究問題與真實的威脅模型

如果你正在設計一款可以識別停車標誌的自動駕駛汽車,你可能想知道對抗樣本是否會導致車輛不能正確識別停車標誌。

我是一名負責研究工作的工程師,不做系統設計或部署,因此在分析模型在現實世界中如何發生錯誤方面我不是專家。但我從事計算機安全工作的朋友和同事教給我的一個方法,是問「你的威脅模型是什麼?」

Kevin Riggle 撰寫的《深入淺出解釋威脅模型》是我最喜歡的一篇博文,也非常通俗易懂。這篇文章通過以下幾點解釋了威脅模型:

威脅模型只回答與你正在構建或擴展的任何系統相關的一些簡單問題。

  • 這是什麼系統,系統幹系人是誰?
  • 系統需要做什麼?
  • 發生不幸的事或者有人蓄意破壞的時候,這個系統會怎樣?
  • 系統必須保證的參數,即使發生不幸的事,它使系統仍然能夠正確地完成應完成的任務。
  • 為簡潔起見,我將這些問題稱為幹系人,目標,不利因素和不變量。

讓我們嘗試著把這個框架應用到實際問題中。

在前面的自動駕駛汽車例子中,讓我們想像一下,我們的目標是讓汽車能在「路口」停車標誌前自動停下來。即使有人在停車標誌上貼了一個奇怪的故障貼紙,導致它會被錯誤識別,我們仍然希望車子可以識別。我們列出所有可能會威脅到我們系統的不利因素。例如,霧天、雪天、停車標誌被惡意塗抹或者交叉路口施工等情況。

對抗樣本為什麼重要:未解決的研究問題與真實的威脅模型

我們的問題清單應該包括停車標誌已經倒下的情況。

如果停車標誌倒在地上,那麼你的車就可能會撞車。這種情況比與原標誌很相似的小擾動對抗樣本更容易出現交通事故。

總之,我想說的是,如果有人在停車標誌上貼上一張故障貼紙,並且任何標準視覺系統都因此檢測不到停止標誌,那麼一輛完全依賴於該視覺系統的汽車很可能會因檢測不到停車標誌而開入迎面而來的車流,發生碰撞。如果汽車是這樣設計的,錯誤分類的停車標誌會導致汽車碰撞,那麼在現實世界中很可能會發生類似情況。

但我還找不到一個真實的例子,真有這樣的破壞分子去製作和貼貼紙。不僅僅是因為它只是種假設,而是破壞分子做到其目標的最可能的方式是未知的。雖然只是想像,但如果想要人為的造成車禍, 這便是一個既簡單又經濟的方式。

如果我只是告訴你「破壞分子利用模型梯度的下降,產生導致錯誤分類的故障貼紙並貼在路標上」是我實際上試圖阻止的真實情況,那麼我的威脅模型無疑是不完整的。但如果不只關注字面意思的話,它仍然是一個值得研究的模型。

停車標誌的對抗樣本是否令人擔憂

我並不是想說明,「不要再擔心了!機器學習模型非常嚴密和精準!「,我的觀點恰恰相反,現實問題往往比一張貼紙的對抗樣本更糟糕。

為了解釋我的意思,讓我們回頭查看威脅模型並關注不變量(「系統需要保證什麼參數,以便它能夠完成需要完成的任務,即使所有不好的事情都發生呢?「)

如果我們的目的是讓汽車始終停下,不僅僅是在對抗性標誌存在的情況下,甚至是不存在或看不見停車標誌的情況下。這意味著我們不能只根據道路標誌檢測決定何時停在十字路口。威脅模型告訴我們,僅使用一種檢測模型不能準確進行安全關鍵性分析。

所以現在我們要提出一個非常有趣的問題!如何在不使用道路標誌檢測的情況下識別需要停車的路口? 我們要利用GPS和地圖數據嗎? 在經過沒有 「停車(stop)」或「讓道(yield)」標誌的交叉路口時要格外小心嗎?

考慮到威脅模型,我們意識到這個問題比我們想像的更嚴重。我們很難強化視覺模型使它能抵抗小擾動對抗標誌。為了做到我們的目的,必須徹底放棄「完全依賴標誌檢測系統」。

為什麼要關注對抗樣本?

因此,鑒於「對抗性標誌」和其它問題的存在,我們需要更全面的解決策略……那麼問題來了,為什麼我們如此關注小擾動對抗樣本呢?

兩個最不可抗拒的原因:

一:這是一種概念性證明(Proof of Concept),即某種問題存在的無可辯駁的證明。 由於很容易找到小擾動對抗樣本,我們可以肯定地說,如果你的系統安全性的前提是分類器永遠不會出現明顯錯誤,那麼這個前提就是錯誤的,你的系統是不安全的。

對抗樣本為什麼重要:未解決的研究問題與真實的威脅模型

現在的圖像分類器甚至不能正確區分鳥類和自行車的圖像。

我想強調的是,製造小擾動並不是找到錯誤分類的樣本的唯一方法。還可以用其他方法來製造錯誤,例如嘗試隨機轉化和旋轉圖片,或者使用不同的角度或不同的光照效果。

但是,由於小擾動對抗樣本的存在,我們就可以找到更明顯的錯誤。

除了一個人有意地通過錯誤的輸入來尋找錯誤的情況外,任何具有干擾因素的選擇都會在無意中發生錯誤搜尋(例如測試數千個輸入的樣本以查找哪些點擊數最多或最賺錢)。

對抗樣本為什麼重要:未解決的研究問題與真實的威脅模型

嘗試隨機轉化和旋轉,或者使用其它角度或光照效果,圖片識別都會發生錯誤

二:對於研究人員來說,小擾動對抗樣本是一個值得深入研究的領域。我咨詢了我的同事們,為什麼盡管「小擾動」設置不是一個引人註目的現實威脅模型,他們仍然給予高度關注。他們給出了一些理由:

  • 稍微改變下每個像素就可以將其轉化為代數運算,這使得形式分析成為可能。
  • 這是分類器所具有的現實問題,因此研究人員可以在真實數據集(而不是合成數據)上進行研究。
  • 研究人員能夠由此發現和學習關於模型穩定性問題,我們知道迷惑一個模型的圖可能也會迷惑另一個模型,這是一個很好的玩具問題(不具有直接科學意義的問題,但可以被用作說明複雜的問題的實例)。

雖然這並不是一個令人信服的觀點,即「小擾動」設置是研究穩健性的最佳或唯一設置,但我仍深深為之著迷。

這基本上表明對抗樣本作為一個尚未解決的研究問題,它不僅可以作為一系列可證明問題的概念性工具,還可以被用於處理有意義的現實問題。

我傾向於將對抗樣本視為一種范式(在庫恩意義上),可用於演示和研究機器學習系統中穩健性的失敗,並且進一步探索解決方案。 雖然它有其作為范式的局限性,但我很高興的看到機器學習研究人員通過開發和傳播新的和改進的范式來迭代和完善模型穩健性方法。

未解決的研究問題不等於現實世界的威脅模型(但兩者都很重要)

具體來說:

  • 未解決的研究問題通常需要構建「玩具域「(toy domains),以便模擬關鍵困難。雖然不太可能與現實世界的結果相似,但它們可以幫助模擬系統可能出現的問題。在玩具問題上取得的概念性進展可以引導該領域形成新的范式。
  • 在已生成的系統中,你還會碰到很多問題,比未解決的研究問題更加基本,因此你需要一個具體的威脅模型來指導採取有效的解決策略。甚至你可能需要徹底更改設計,而不是小修小補。

對抗樣本為什麼重要:未解決的研究問題與真實的威脅模型

在已生成的系統中,你還會碰到很多比未解決的研究問題更加基本更基本的問題。

「但這些問題早就存在了!」或「我們還有比這更基本的問題!」之類的說法並不是假裝一切都會好的理由。 對抗樣本更應該作為一種提醒,提醒我們仔細規劃,檢查假設,並充分考慮一切因素。

如果你正在開發模型,無論它是否包含機器學習,你都需要一個實際的、具體的計劃來預測和減少負面結果。

如果你是一名研究員,我會督促你不要通過聲稱它確實代表一種現實威脅來證明你對玩具問題的研究是合理的,除非你同時提供了威脅模型。 我更願意看到理由解釋為什麼你的玩具問題是一個有效的概念理解試驗台,以及為什麼我們可以期望這些概念能夠進一步闡明現實問題。

如果你正在與人聊對抗樣本,我強烈建議你和對方解釋清楚這其中的區別!

這些想法並不是我新提出和獨有的,很多人以前都說過這一點。 我主要受到以下研究的啟發:

Gilmer et al. 2018 「Motivating the Rules of the Game for Adversarial Example Research」

Unrestricted Adversarial Examples Challenge & Brown et al. 2018

Demski 2018「Embedded Curiosities」 (Specifically the line 「it’s tempting to draw a direct line from a given research problem to a given safety concern」)

相關報導:

https://medium.com/@catherio/unsolved-research-problems-vs-real-world-threat-models-e270e256bc9e