題目:Sparse Adversarial Attack to Object Detection
論文:https://arxiv.org/pdf/2012.13692v1.pdf
程式碼:https://github.com/THUrssq/Tianchi04.
引言該論文的出處是阿里天池大賽中安全AI挑戰者計劃第四期的通用目標檢測對抗攻擊。阿里的安全AI挑戰者計劃是一系列關於AI安全的競賽,到目前為止球200多所高校100多家企業的近4000支隊伍參加,主要目的是抵禦未來AI面臨的各種安全問題。阿里天池論壇的學習氛圍很好,很多優秀的戰隊很詳細的分享了在本次比賽的方法和程式碼,感興趣的可以學習一下。
題目賽況因為該論文是根植於比賽,所以需要先對本次比賽的題目和評價指標介紹一下,尤其是評價指標有些複雜需要對其詳細介紹,這樣才能更容易理解論文中實驗結果。
賽題簡介阿里天池安全AI挑戰者計劃第四期比賽針對通用的目標檢測模型進行攻擊,比賽採用COCO資料集,其中包含20類物體。任務是透過向原始影象中新增對抗補丁(adversarial patch)的方式,使得典型的目標檢測模型不能夠檢測到影象中的物體,繞過目標定位。主辦方選取了4個近期的State-of-the-art檢測模型作為攻擊目標,包括兩個白盒模型YOLO v4和Faster RCNN和另外兩個未知的黑盒模型。
評價指標一張影象中對抗貼圖的畫素值大小和位置沒有任何限制,只會限制貼圖的尺寸。評估是使用原始影象減去修改後的影象,得到修改域,然後,計算修改域中連通域的數量和每個連通域的大小。一個連通域被視為一個新增的對抗貼圖,對抗貼圖有兩點限制:
限制了改變的畫素數量在總畫素中的比率,不超過全圖所有畫素的2%。限制了對抗貼圖的數量不多於10個,當檢測到對抗貼圖的數量超過10個。從總得分的公式可以推知,如果一個FinalScore的得分越高,則攻擊的效果越好,這是一個正相關關係的評價指標。
論文方法介紹作者提出一個針對目標檢測器的稀疏對抗性攻擊(SAA),作者集成了兩個現成的目標檢測器,並在黑盒攻擊有很強遷移性,所以該方法可以很容易地推廣到多模型中去。如下圖所示,為本文的SAA框架,它集成了兩個目標檢測器(一階段目標檢測器YOLOv4和二階段目標檢測器FasterRCNN)來進行攻擊。為了使用有限的畫素進行強大的對抗性攻擊,作者特意設計了對抗補丁的位置、形狀和大小。
有關Patch的設計因為比賽的要求比較嚴格,影象的修改範圍不超過整個影象的2%,所以這種對抗擾動在空間中是稀疏的。針對這些情況,作者設計了一種十字形貼圖,其交點位於物體包圍盒的中心(如下圖所示為新增十字形貼圖的對抗樣本)。利用大跨度的patch 可以嚴重地誤導目標檢測器的結果,但是確只有很少的畫素變化。作者基於物體中心是對抗攻擊的脆弱區域的假設,提出瞭如下目標檢測器的輸入公式如下:
其中,這裡代表乾淨的影象,代表對抗的補丁,是故意設計的Mask。
損失函式SAA的目標是消除影象中所有的物體檢測框,該攻擊與目標檢測器的正樣本(前景)和負樣本(背景)的定義密切相關。作者透過使影象中的一個物體成為目標探測器的負樣本來消除它。根據目標探測器前景和背景的定義作者設計了相關的損失函式。
YOLOv4是一階段目標檢測器,YOLOv4利用置信度去區分影象的前景和背景。置信度低於YOLOv4中的閾值的包圍框將被識別為背景,並將在後處理階段丟棄。基於這些原理作者設計的YOLOv的損失函式為:
其中表示所有物件類別的集合,表示所有邊界框的集合,conf是YOLOv4中的物件置信度。損失函式提取影象的最大目標置信度。作者透過降低置信度從而來達到攻擊的目的。
FasterRCNN是兩階段目標檢測器,作者透過增加背景的softmax輸出機率,同時減少任何其他類別(前景物件)的softmax輸出機率來實現攻擊,但是FasterRCNN通常會產生10 萬多個區域提案,是YOLOv4的10倍以上。大量的區域建議使其難以消除所有目標與極其有限的攻擊。因此作者做出相應的妥協,設計了FasterRCNN的損失函式為:
作者結合了兩個目標檢測器的損失來訓練對抗補丁,最終損失函式如下所示:
實驗結果作者從MSCOCO2017資料集中選擇1000張影象,所有影象大小為500*500。選取YOLOv4和FasterRCNN作為目標模型。根據section 2.2中介紹的評價指標,實驗結果如下所示:
論文中沒有給出該方法的總得分,可以直觀的算出FinalScore為:
我搜索了一下第四期通用目標檢測對抗攻擊的榜單,可以發現本文的作者是來自於清華大學的隊伍,在此類競賽的排名中榮獲TOP4的好名次。如下圖所示的紅框中的“我還有機會嗎”就是本文作者的戰隊。