當前位置:
首頁 > 科技 > 只需修改一個像素,讓神經網路連貓都認不出

只需修改一個像素,讓神經網路連貓都認不出

夏乙 編譯整理

量子位 出品 | 公眾號 QbitAI

想騙過神經網路,讓它認錯圖像,需要對圖像做多少修改?

一個像素就夠了。

一項來自日本的研究表明,改動圖片上的一個像素,就能讓神經網路認錯圖,甚至還可以誘導它返回特定的結果。

研究由日本九州大學的Jiawei Su、Danilo Vasconcellos Vargas和Kouichi Sakurai三人共同完成,他們不僅寫論文詳細介紹了這項改一個像素就騙過神經網路的神技,還開源了相應的Keras實現。這項技術被稱為「一像素攻擊」(One Pixel Attack)。

可惜了VGG一世英名,連貓都認錯

在CIFAR-10和ImageNet兩個數據集上,一像素攻擊分別實現了68.36%和41.22%的成功率。

一個像素,怎麼攻擊神經網路?

實驗在CIFAR-10和ImageNet數據集上進行,我們以CIFAR-10為例來做一下說明。CIFAR-10是一個圖像識別數據集,包含60000張32×32像素的RGB彩色圖片,共10類。神經網路在這個數據集上的任務,就是正確預測圖片所屬的分類。

而一像素攻擊的目標,是通過從圖片上選定一個像素,更改它的顏色來製造對抗性圖像,改變神經網路輸出的類別標籤,降低對正確類別的置信度,提高對其他某個類別的置信度。也就是說,讓神經網路將它分到錯誤的類別。

任務看似簡單,但是,32×32=1024個像素,該選哪一個?改成什麼顏色?

這些研究人員用了一種名叫差分進化(Differential Evolution,簡稱DE)的進化演算法(Evolutionary Algorithm)。

具體來說,首先要通過隨機修改像素來生成400個對抗樣本,輸入到神經網路中;然後,將這些修改像素的位置和顏色結合起來,再生成400個對抗樣本,輸入到神經網路中;接下來,如果某個新樣本與父代相比,降低了神經網路對正確類別的置信度,就將用這個樣本上修改的像素替換父代,作為目前已知的最優解。

之後就要多次重複以上三步,然後在最後一次迭代時,選出將神經網路對正確類別的置信度降得最低的對抗樣本。

如果有其他類別的置信度高於正確類別最終的置信度,我們就成功了。最後選出的樣本就是我們所要的結果。

在對全連接神經網路(AllConv)、Network

in Network(NiN)、VGG16、和AlexNet的測試中,這種方法取得的成功率如下表所示:

表中的targeted attack,指的是在攻擊中讓神經網路將圖像誤認為特定某個類別

幾位研究人員還把這種方法用在了ImageNet上,將圖像大小統一為227×227,大約是CIFAR-10圖像尺寸的50倍。

在ImageNet上的測試表明,這種欺騙神經網路的方法也適用於解析度比較高的圖像。

據論文介紹,DE方法不會像基於梯度的方法那麼容易陷入局部最小值,也不需要關於攻擊目標系統的太多信息,因此生成的對抗樣本適用於多種神經網路。


喜歡這篇文章嗎?立刻分享出去讓更多人知道吧!

本站內容充實豐富,博大精深,小編精選每日熱門資訊,隨時更新,點擊「搶先收到最新資訊」瀏覽吧!


請您繼續閱讀更多來自 量子位 的精彩文章:

AlphaGo Zero代碼遲遲不開源,TF等不及自己推了一個

TAG:量子位 |