選自arXiv
作者:Sheng-Yu Wang、Alexei A. Efros等
機器之心編譯
參與:沉沉、蛋醬
CNN 生成的圖像與真實圖像很難分辨嗎?來自 Adobe 和加州伯克利的研究者發現,僅僅在一種 CNN 生成的圖像上進行訓練的分類器,也可以檢測許多其他模型生成的結果。或許,GAN 和 Deepfake 在「瞞天過海」上也不是萬能的。
近來,諸如生成對抗網絡(GAN)的深度圖像生成技術快速發展,引發了公眾的廣泛關注和興趣,但這也使人們擔心,我們會逐漸走入一個無法分辨圖像真實與否的世界。
這種擔憂尤其體現在一些特定的圖像操縱技術上,例如用來進行面部風格替換的「Deepfake」,以及逼真的人像生成。其實這些方法僅僅是一種廣泛應用技術中的兩個實例:基於卷積神經網絡(CNN)的圖像生成。
來自 Adobe 和加州伯克利的研究人員在論文預印本平臺 arXiv 上傳了《CNN-generated images are surprisingly easy to spot... for now》,他們提出,即使是在一種 CNN 生成的圖像所訓練的分類器,也能夠跨數據集、網絡架構和訓練任務,展現出驚人的泛化能力。這篇論文目前已被 CVPR 2020 接收,代碼和模型也已公布。
論文地址:https://arxiv.org/abs/1912.11035
項目地址:https://github.com/peterwang512/CNNDetection
在這項工作中,研究者希望找到一種用於檢測 CNN 生成圖像的通用圖像偽造檢測方法。檢測圖像是否由某種特定技術生成是相對簡單的,只需在由真實圖像和該技術生成的圖像組成的數據集上訓練一個分類器即可。
但現有的很多方法的檢測效果很可能會與圖像生成訓練中使用的數據集(如人臉數據集)緊密相關,並且由於數據集偏差的存在,一些方法在新數據(例如汽車)測試時可能泛化性較差。更糟糕的是,隨著圖像生成方法的發展,或是用於訓練的技術被淘汰,這種基於特定生成技術的檢測器可能會很快失效。
所以 CNN 生成的圖像是否包含共同的偽造痕跡呢?例如某種可檢測的 CNN 特徵,這樣就可以將分類器推廣到整個生成方法族,而不只是針對單個生成方法。一般來說,泛化性確實一直是圖像偽造檢測領域的難題。例如,最近的一些工作 [48,13,41] 觀察表明,對某一種 GAN 架構所生成圖像進行訓練的分類器在其他架構上進行測試時性能較差,並且在許多情況下,僅僅訓練數據集的改變(而非架構或任務)就會導致泛化失敗 [48]。這是有道理的,因為圖像生成方法千差萬別,它們使用的是不同的數據集、網絡架構、損失函數和圖像預處理方式。
但研究者發現,與當前人們的理解相反,為檢測 CNN 生成的圖像所訓練的分類器能夠跨數據集、網絡架構和訓練任務,展現出驚人的泛化能力。在本文中,研究者遵循慣例並通過簡單的方式訓練分類器,使用單個 CNN 模型(使用 ProGAN,一種高性能的非條件式 GAN 模型)生成大量偽造圖像,並訓練一個二分類器來檢測偽造圖像,將模型使用的真實訓練圖像作為負例。
此外,本文還提出了一個用於檢測 CNN 生成圖像的新數據集和評價指標,並通過實驗分析了影響跨模型泛化性的因素。
基於 CNN 生成模型的數據集
研究者創建了一個 CNN 生成圖像的新數據集「ForenSynths」,該數據集由 11 種模型生成的圖像組成,從非條件式的圖像生成方法(如 StyleGAN)到超解析度方法,以及 deepfake。每個模型都在適合其特定任務的不同圖像數據集上進行訓練。研究者還繼續在論文撰寫後發布的模型上評估檢測器,發現它可以在最新的非條件式 GAN——StyleGAN2 實現開箱即用。
表 1:生成模型。研究者評估了偽造檢測分類器在多種基於 CNN 的圖像生成方法上的效果。
實驗:檢測 CNN 生成的圖像
鑑於數據集中的非條件式 GAN 模型可以生成任意數量的圖像,研究者選擇了一種特定的模型 ProGAN 來訓練檢測器。使用單一模型進行訓練,這個方法與現實世界中的檢測問題極為相似,即訓練時並不清楚需要泛化模型的多樣性和數量。
接著,研究者創建了一個僅由 ProGAN 生成的圖像和真實圖像組成的大規模數據集。使用 20 個模型,每個模型在不同的 LSUN 物體類別上進行訓練,並生成 36K 的訓練圖像和 200 張驗證圖像,每個模型所用的真實和偽造的圖像數量是相等的。一共有 720K 圖像用於訓練、4K 圖像用於驗證。
這一實驗的主要思想是在這個 ProGAN 數據集上訓練一個判斷「真實或偽造」的分類器,並評估該模型對其他 CNN 合成圖像的泛化效果。在分類器的選擇上,使用了經過 ImageNet 預訓練的 ResNet-50,並在二分類的設定下進行訓練。
表 2:跨生成器的泛化結果。圖中展示了 Zhang 等人提供的基線和本文模型在不同分類器上的平均準確度(AP),共 11 個生成器參與測試。符號 X 和 † 分別表示在訓練時分別以 50%和 10%的概率應用數據增強。隨機表現是 50%,可能的最佳表現是 100%。在測試用的生成器被用於訓練時,結果顯示為灰色(因為它們不是在測試泛化性)。黑色的值表示跨生成器的泛化性結果。其中,最高值以黑色加粗顯示。通過減少數據擴充,研究者展示了針對 ProGAN 中較少類的消融實驗結果。同時通過平均所有數據集的 AP 分數來得到 mean AP。為了方便比較,子集被繪製在圖 3、4、5 中。
研究者將該方法的泛化性能與其他圖像偽造檢測方法進行了比較。Zhang 等人的方法提出了一套經過訓練可以檢測由通用 CNN 架構生成的偽造圖像的分類器,這套通用架構在許多圖像生成任務中都有出現(如 CycleGAN 和 StarGAN)。他們引入了 AutoGAN,這是一種基於 CycleGAN 生成器的自動編碼器,可以模擬類似於 CycleGAN 生成的偽造圖像。研究者考慮了 Zhang 等人預訓練模型的四個變體,其中每個都分別從兩個圖像源(CycleGAN 和 AutoGAN)之一和兩種圖像表示(圖像和光譜)之一進行訓練。在訓練過程中,所有四個變體都使用了 JPEG 和放縮進行數據增強,以提高每個模型的魯棒性。
除了 CycleGAN([48] 使用的模型架構)和 StarGAN(兩種方法都獲得了接近 100.0 AP 的結果)外,本文提出的模型對其他架構的泛化性能明顯更好。比較結果可見於表 2 和圖 5。
表 2 展示了使用不同數據增強方法進行訓練的泛化能力。研究者發現,即使在測試時未使用此類擾動,使用激進的數據增強方法(以模擬後處理的形式)也提供了驚人的泛化能力。此外也觀察到這些模型明顯對於後處理更加魯棒(圖 6)。
圖 3:數據增強方法的效果。所有的檢測器都在 ProGAN 上進行訓練,在其他生成器上進行測試(AP 結果如圖所示)。總體來說,使用數據增強進行訓練可以幫助提高模型的效果。其中超解析度模型和 DeepFake 是例外。
圖 4:數據集多樣性的效果。所有的檢測器都在 ProGAN 上進行訓練,在其他生成器上進行測試(AP 結果如圖所示)。使用更多類進行訓練可以提高模型表現。所有的訓練都以 50% 的概率使用了模糊和 JPEG 進行數據增強。
圖 5:模型比較。研究者觀察到,和 Zhang 等人的方法相比,在大多數情況下,本文模型可以更好地推廣到其他架構。值得注意的例外是 CycleGAN(與 [48] 中的訓練架構相同)、StarGAN(兩種方法均獲得接近 100. AP 的結果)和 SAN(應用數據增強會導致性能下降)。
討論
結果表明,如今的 CNN 生成的圖像保留了可檢測到的特徵,從而可以將它們與真實照片區分開。這就使得鑑別偽造照片的分類器無需大量修改即可從一種模型推廣到另一種模型。
但是,這並不意味著這種情況將持續下去。首先,即使是最好的偽造檢測器,也要在真實檢測率和假陽性率之間進行權衡。其次,偽造照片可能會在社交媒體平臺(Facebook,Twitter,YouTube 等)上被大量惡意使用,因此數據將會被劇烈變換(壓縮,縮放,重採樣等)。最後,迄今為止,被記錄在案的的大多數有效的偽造實例都使用經典的「淺層」方法,例如 Photoshop。
在論文的最後,研究者也提到,檢測偽造圖像只是解決視覺虛假信息威脅這一難題的一小部分,有效的解決方案需要融合從技術、社會到法律等各方面的廣泛戰略。
參考連結:
[48] Xu Zhang, Svebor Karaman, and Shih-Fu Chang. Detecting and simulating artifacts in gan fake images. In WIFS, 2019.
[41] RunWang,LeiMa,FelixJuefei-Xu,XiaofeiXie,JianWang, and Yang Liu. Fakespotter: A simple baseline for spotting ai-synthesized fake faces. arXiv preprint arXiv:1909.06122, 2019. 2
[13] Davide Cozzolino, Justus Thies, Andreas Ro ̈ssler, Christian Riess, Matthias Nießner, and Luisa Verdoliva. Forensictrans- fer: Weakly-supervised domain adaptation for forgery detec- tion. arXiv preprint arXiv:1812.02510, 2018. 2
本文為機器之心編譯,轉載請聯繫本公眾號獲得授權。
---