參考文獻:git
https://blog.csdn.net/qq_39638957/article/details/80406352?utm_source=blogxgwz0github
對於神經網絡,熊貓會被錯誤分類爲長臂猿。算法
不僅是神經網絡,線性模型也會被攻擊,下圖圈出來的「9」已結再也不被模型認爲是「9」了網絡
這種表面看起來沒有區別的對抗樣本,不是因爲模型的過擬合引發的。過擬合應該是隨機的,而不是具備系統性。機器學習
相反,是因爲欠擬合(線性)致使,在離決策邊界遠的地方分數很高(即便從沒有那樣的樣本)函數
神經網絡事實上就是分段線性的(指的是輸入和輸出之間是線性的)學習
下圖中三種改變致使的L2距離變化是同樣的,可是對抗樣本看起來沒有變化測試
FGSM是產生對抗樣本的方向,白色爲正常樣本,彩色爲對抗樣本優化
訓練好的分類器會將隨機噪聲的圖像分類爲具體的物體!!由於訓練測試集不是同一分佈.net
對抗訓練用於強化學習,改變視頻中每一幀圖像爲對抗樣本,可使得電腦AI玩家得分變低,視頻連接以下
https://www.youtube.com/watch?v=r2jm0nRJZdI
-------------------------------------------------------------------------------------------------
RBF網絡對於對抗樣本攻擊,防護力較強(可是RBF很難作深,梯度接近0)
-------------------------------------------------------------------------------------
在同一數據集或相近數據集上訓練出來的模型是差很少的。
利用一個模型的對抗樣本能夠用於攻擊另外一個相似的模型,攻擊成功率以下:
須要攻擊的算法多是不可知,甚至不可微。可是咱們能夠用本身的可微的模型去生成對抗樣本,而後攻擊要攻擊的模型。
用好幾個模型集成的對抗樣本(對這幾個都是對抗樣本),那麼很大機率也是其餘模型的對抗樣本
--------------------------------------------------------------------------------------------------------------------
即便咱們知道樣本的分佈,也沒法判斷是不是假數據,下圖中兩個p(x)基本一致,可是後驗機率區別很大,即沒法區分對抗樣本和正常樣本
-----------------------------------------------------------------------------------------------------
訓練過程使用對抗樣本訓練,可使得網絡具備防攻擊性
-----------------------------------------------------------------------------------------
線性模型學習不到階躍函數,因此對抗訓練沒有用,只是具備了weight decay效果
knn 使用對抗訓練會過擬合
神經網絡並不脆弱,對抗訓練過的神經網絡是全部機器學習算法中最能抵抗對抗攻擊的
無標籤對抗訓練 使得擾動後的分類預測分數不變
----------------------------------------------------------------------------------------------------
尋找能知足輸出需求的樣本 用於工業發明設計
結論:
一、攻擊很容易
二、防護是困難的
三、對抗訓練提供正則化和半監督學習
四、域外輸入問題一般是基於模型的優化的瓶頸
如下連接是課件提供的對抗訓練的github代碼,能夠調用實驗
https://github.com/tensorflow/cleverhans