李澤宇 張旭鴻 蒲譽文 伍一鳴 紀守領
1 (浙江大學計算機科學與技術學院 杭州 310007)
2 (浙江大學控制科學與工程學院 杭州 310007)
隨著深度學習(deep learning,DL)技術的飛速發展以及在各個領域的廣泛應用,深度學習技術在視頻以及圖片的偽造編輯方面的應用也逐漸被人熟知,從早年ZAO APP 提供的低成本換臉視頻編輯服務促使相關視頻在視頻社交網絡上風靡一時,到現在在教育、人機交互和藝術創作等領域中的廣泛應用前景,深度偽造(deepfake)技術的應用都有一定的影響力,但是深度偽造具有不良目的的應用造成的負面影響遠大于其積極影響.2020 年7 月,麻省理工學院發布了一條尼克松宣布登月失敗演講的深度偽造視頻,在視頻中尼克松的面部表情以及語音都得到了還原,內容可以做到以假亂真的效果.一些惡意用戶可能會利用相關技術偽造政客、明星等公眾人物的虛假視頻內容,從而擴散謠言、引導輿論,并由此獲利,同時偽造的視頻可能在刑偵取證方面造成阻礙.
由于深度偽造產生較為嚴重的負面影響,社會各界已經開始采取相應的防護對策.為了防止針對政治人物的偽造視頻對國家安全造成影響,各國政府已經開始促進相關行業的標準和法律的制定.同時,YouTube 和TikTok 等互聯網公司也已經開始著手管制深度偽造視頻,并舉行了多次偽造視頻檢測比賽.在學術界,研究者們針對深度偽造提出了適用于多種場景的大量檢測技術作為深度偽造的技術治理手段.針對近年來出現的偽造技術和檢測技術,本文闡述了其中具有代表性的技術,與現有的其他綜述[1]相比,更加系統地考慮了不同模態信息的深度偽造及檢測技術,同時也介紹了深度偽造生成及檢測模型的對抗攻擊方法.
因為深度偽造生成的各種技術之間存在一定的共通性,因此本節對深度偽造生成技術的生成模型進行總結,并介紹深度偽造技術中人臉偽造技術和語音偽造技術的基本步驟.
1.1.1 人臉偽造生成技術
針對人臉的深度偽造的生成技術一般包含4 個步驟:1)使用人臉識別算法檢測目標圖片中的人臉;2)裁剪并預處理目標圖片中的人臉;3)提取人臉中的身份和表情信息,并通過生成模型生成偽造人臉;4)將生成的人臉渲染到目標圖像中人臉位置,重建圖像.
1.1.2 語音偽造生成技術
針對語音模態的深度偽造技術一般需要音頻和文字輸入,用于指定目標語音的內容和音色.語音偽造技術一般包含4 個步驟:1)如果該方法接受文本輸入,則將文本編碼;2)提取輸入音頻的梅爾倒譜系數(mel-frequency cepstral coefficients,MFCCs);3)將預處理后的數據輸入生成模型,得到目標語音的幀級語音特征;4)通過聲碼器等方式得到目標語音.
1.1.3 深度偽造生成模型
1)自動編碼器(auto encoder,AE).自動編碼器是一種無監督的神經網絡模型,一般含有一個編碼器E和一個解碼器D,編碼器會將輸入的特征編碼到維度較低的隱空間,并用解碼器嘗試將特征進行解碼和重建.在訓練過程中,對于任一輸入x,使輸出D(E(x))=xo與輸入x盡量相近,即優化目標為盡量縮小重建損失.在很多圖像處理任務中可以利用自動編碼器中的解碼器來重建圖像,或者通過編碼器進行降維.在深度偽造任務中可以通過添加解碼器和編碼器或者在編碼中注入信息來實現身份或者動作篡改.
2)變分自動編碼器(variational auto encoder,VA E)[2].變分自動編碼器是由自動編碼器發展而來的變種,擁有2 個編碼器E1和E2,分別擬合輸入對應的隱空間中高斯分布的均值μ=E1(x)和方差lbσ=E2(x).解碼器根據編碼器擬合的后驗分布取樣并重建輸入.相較于傳統的自動編碼器,變分自動編碼器有更好的耐噪聲能力.
3)生成對抗網絡(generative adversarial network,GAN)[3].GAN 是一種應用更為廣泛的生成模型,其包含生成器G和分類器C.生成器在高斯分布中采樣生成圖片,訓練目標是能生成分類器無法分辨真偽的圖片.而分類器則學習辨認圖片是否由生成器生成.在訓練過程中,交替固定生成器和分類器的參數,訓練模型的另一部分.在訓練完生成器后,網絡的損失函數V(G,D)逼近當前分布與真實分布的JS 散度,再通過訓練生成器最小化2 個分布之間的距離.另一種網絡結構Wasserstein GAN 采用Wasserstein 距離來衡量生成圖像分布和真實圖像分布之間的距離,提高了GAN 訓練的穩定性和生成圖像的多樣性.自從GAN 誕生之后,陸續出現了CGAN,InfoGAN 等變種,其中運用在圖像生成領域中的主要有pix2pix[4]和CycleGAN.
pix2pix[4]是一種類似于條件性對抗生成網絡的圖片生成技術,可以實現圖像在2 個分布間的單向轉換.與CGAN 相似,pix2pix 會向生成器輸入一個圖片x作為條件,生成器根據x生成y,而分類器則輸入(x,y),鑒別y是否由生成器生成.同時由于常規GAN 輸入的隨機高斯噪音會被淹沒在條件信息中,因此,pix2pix 的生成器不需要輸入噪音.pix2pix 的生成器使用了U-net[5]的編解碼器結構,判別器采用PatchGAN 結構,將圖片分為N×N個區域并分別判別這些區域的真偽,可以檢測到更多的高頻細節.近年來也出現了pix2pixHD[6],vid2vid[7]等改進版本,從模型和損失函數設計等方面進行優化以生成高分辨率的圖片和視頻.
CycleGAN[8]是一種基于pix2pix 改進的風格遷移技術,與pix2pix 需要成對的訓練數據不同,CycleGAN并不需要在源域和目標域間一對一成對地訓練數據.針對2 個圖像域X和Y,CycleGAN 包含2 個生成器G和F,分別處理X到Y的映射和Y到X的映射,2 個分類器DX和DY分別用來辯別圖片是否來自X和Y.pix2pix 和CycleGAN 的原理對比如圖1 所示.CycleGAN的損失函數主要包括對抗損失函數和循環一致性損失函數:

Fig.1 Illustration of principle of pix2pix and CycleGAN圖1 pix2pix 和 CycleGAN 的原理示意圖
其中Pdata(x)和Pdata(y)分別為圖像域X和Y的樣本分布,x和y為其中采集的樣本.
目前深度偽造在多媒體文件的合成和篡改中主要是針對圖片和視頻中的面部和肢體動作的篡改以及語音方面的修改.面部篡改主要分為2 類:1)使用源圖片人物身份替換目標圖片人物身份的方法,主要包括面部替換和面部轉換2 種;2)保留目標圖片人物身份的方法,包括面部重現和面部特征編輯.本文分別對這4 種分類進行介紹.
1)面部替換(face swap).通過將源圖片的人臉身份信息注入目標圖片完成換臉,同時保留目標圖片中的表情動作和背景等信息.
2)面部轉換(face transfer).將目標圖片中的人臉完全替換為源圖片的人臉,包含身份信息、表情動作和面部朝向等.
3)面部重現(face reenactment).不改變目標圖片中的人臉身份,將源圖片中的人臉表情動作在目標圖片上重現.重現的部分包括表情、嘴型、面部朝向,甚至是肢體動作.
4)面部特征編輯(face feature edit).不改變人臉身份信息,對人臉中的部分特征屬性進行篡改,如頭發顏色、性別、是否佩戴眼鏡等.
語音方面的深度偽造任務主要分為語音轉換和語音合成2 類.
1)語音轉換(voice conversion).轉變輸入音頻的音色到目標人物的音色.
2)語音合成(text to speech).根據輸入文本,輸出相應音頻.
1)卷積神經網絡(convolutional neural network,CNN).CNN 除了在風格遷移方面的應用,更多地用于圖像分類和目標檢測中.CNN 在傳統全連接網絡的基礎上主要增加了卷積層和池化層.后續出現的CNN 架構有DenseNet[9],ResNet[10]和基于深度可分離卷積層的Xception[11]等,而XceptionNet[12]也是深度偽造檢測中常用的基礎方法.
2)循環神經網絡(recurrent neural network,RNN).RNN 常用于處理時間序列性的信息,對于時刻t的輸入xt,輸出yt=f(xt,ht-1),其中ht-1為時刻t-1 狀態下向時刻t的輸出.相比一般的前饋神經網絡,RNN能更好地處理序列變化的數據,并記錄過去狀態對當前狀態的影響.長短期記憶網絡(long short-term memory,LSTM)是一種特殊的循環神經網絡,它包含2 種傳遞狀態,能夠更好地解決RNN 的梯度消失和梯度爆炸問題.
現有的視頻和圖片的深度偽造技術主要是針對人臉信息或表情動作的篡改,也有部分工作可以重現人物的肢體動作.本節對人臉和身體的主流圖像偽造手段進行分類闡述,并簡要介紹其發展歷程.
傳統的面部替換主要是基于圖形學的偽造,通過3D 人臉模型的重建以及追蹤等技術實現人臉的替換.近十年的圖形學圖片人臉替換方法逐步實現了全自動,Dale 等人[13]用3D 多線性模型追蹤源視頻和目標視頻的面部表現,使用相應的3D 圖形將源視頻匹配到目標視頻中實現自動化人臉替換.
近年來,隨著深度學習的迅猛發展,基于深度學習的換臉技術的時間成本和門檻逐漸降低,以深度學習為基礎的面部替換技術得到了更廣泛的應用,也推動了面部替換方法的研究.早期的面部替換技術主要基于自動編碼器.Deepfakes[14]是一種被reddit用戶使用的深度偽造換臉工具,它基于自動編碼器,包含1 個編碼器和2 個解碼器,組成2 個自動編碼網絡,分別用源人物和目標人物的面部圖片同時訓練,以實現解碼器分別重現人臉的能力.在換臉過程中交換編碼器,實現在目標人物的圖片編碼中提取出源人物的人臉.Fast Face-swap[15]是一種基于CNN 的風格轉換網絡的換臉方法,通過神經網絡標注人臉特征點,實現背景分割和人臉對齊,采用Texture networks[16]的CNN 結構實現風格遷移任務.
除了自動編碼器,GAN 等生成模型也被應用到面部替換中,極大提高了生成圖片的圖像質量.FaceswapGAN[17]是Deepfakes 融入GAN 的產物,引入了去噪自動編碼器和面部交換注意力機制,提高了圖片的真實程度,同時通過生成分割掩碼解決圖像的遮蓋問題.Natsume 等人[18]使用VAE-GAN 網絡結構,引入3 重損失函數驗證身份信息損失,實現了較為穩定的人臉替換;之后又提出了人臉替換和人臉面部特征編輯的集成系統RSGAN[19],使用2 個自動編碼器在隱空間中分別表示頭發區域和面部區域,通過替換面部的隱空間表示來實現換臉并重建整個人臉圖像,能夠解決之前換臉方法如3D 變形人臉模型的人臉朝向和光照不匹配等問題.FSGAN[20]通過基于RNN 的方法將目標人臉的表情和面部動作重現給源人臉,實現了較好的泛化能力,并覆蓋了表情遷移和身份替換2 個任務,可以使用較少的樣本進行訓練.Li 等人[21]提出了一種新的2 階段的換臉方法Faceshifter,其模型結構如圖2 所示,第1 階段在解碼器中自適應注意力去正化(AAD)、自適應地集成人臉合成的特征和屬性,同時在第2 階段引入了啟發式的錯誤承認細化網絡(HEAR-Net),以自監督的方式解決面部遮擋問題.Simswap[22]使用身份注入模塊解除身份限制,并在損失函數中引入弱特征匹配損失.

Fig.2 Schematic diagram of the network structure of Faceshifter[21]圖2 Faceshifter 網絡結構示意圖[21]
隨著小樣本學習的方法的不斷出現,為了解決訓練樣本難以獲得的問題,MegaFS[23]通過分層表征人臉編碼器,提取更多人臉特征,并在不經過特征解耦的情況下非線性地將身份信息從源圖像遷移到目標圖像.同時MegaFS 可以分模塊訓練,可以適用于百萬像素級圖片的面部偽造.類似的小樣本學習和單樣本學習的應用可以降低深度偽造的應用門檻,提升相關工具的易用性.
相較于面部替換,面部轉換不保留目標圖片的表情和面部動作信息,因此在偽造方面的靈活性較低.早期的面部轉換主要采用面部可變形模型實現[24-25],也有少量面部轉換使用了深度學習模型.DepthNet[26]是一種根據檢測源圖像中人臉關鍵點深度來構建3D 人臉模型,并使用孿生神經網絡將3D 人臉模型映射到目標圖像的2D 標志點模型的無監督方法,該方法對于輸入圖像中的遮擋部分較為敏感.
面部重現相較于面部替換可以更加自由地將指定的面部動作遷移到特定身份的人臉中,因此對于公眾人物的攻擊更具威脅性.本節將主流的面部重現技術分為面部表情重現和嘴部動作驅動2 類,并分類闡述其相關技術.
2.3.1 面部表情重現
與其他深度偽造技術相似,在深度學習獲得大規模應用之前,表情重現的相關方法也圍繞著3D 人臉模型展開.2015—2018 年,Thies 等人[27-29]提出了一系列基于3D 模型重建的表情重現方法,逐步實現了實時表情遷移、視頻級表情轉移和包含頭部移動的重現,都取得了較好的偽造效果,其中的Face2face 方法[28]也常用于后來的偽造視頻數據集的構建.
深度學習及相關生成模型的普及帶來了更高效的表情重現方法.早期表情驅動深度偽造直接通過人臉的特征表示,如對3D 模型或特征點等進行偽造,而神經網絡模型負責后續的渲染以及真實度優化.Kim 等人[30]提出了一種通過3D 模型進行特征表示,并實現3D 模型轉換為人臉視頻的偽造方法,且首次實現了將整個3D 頭部位置、角度、面部表情和眼睛動作全部轉移到目標視頻中.其他使用3D 模型作為特征表示的方法還有PaGAN[31],但其生成結果真實性欠佳.Geng 等人[32]提出了一種基于人臉扭曲的偽造方法,使用Wg-GAN 和Hrh-GAN 來優化偽造結果的真實感和隱藏細節.隨著深度生成模型的不斷發展,2019 年以后出現的偽造方法采用了更為復雜的模型結構,深度學習在整個方法中的比重不斷增加.Imaginator[33]提出了時空特征融合機制,通過圖片編碼的空間特征和動作外加噪聲可以解碼出連續視頻.同時,該方法還采用了2 個判別器,分別判斷生成圖片中人臉外觀是否真實、生成視頻動作是否真實.Siarohin 等人[34]提出的Monkey-Net 將圖像中的外觀信息和動作信息解耦,實現了任意物體的動作驅動.該方法主要分為3 個部分:動作轉移網絡、無監督關鍵點檢測器和動作預測網絡.該方法通過檢測目標圖像和源圖像的關鍵點來預測每個關鍵點的視覺流圖,并由此生成偽造圖像.文獻[35]是在Monkey-Net基礎上的改進方法,引入關鍵點附近的局部仿射變換,針對Monkey-Net 難以重現較大姿態變化的問題進行了優化.Qian 等人[36]針對高分別率圖像的偽造提出了附加焦點變分自動編碼器(AF-VAE).Song 等人[37]通過無監督的紋理合成實現表情的遷移,但該方法并非針對人臉.Pumarola 等人[38]提出了一種基于動作單元標注的方法GANimation,采用無監督的訓練策略,并通過注意力機制提高了模型魯棒性.FACEGAN[39]使用運動單元表征面部表情,分別處理人臉和背景來提高偽造結果的質量,同時相較于已有方法減少了源圖像和目標圖像身份不同時的身份信息泄露.Gu 等人[40]提出的FLNet 可以利用多張源圖片進行說話人臉合成,從而解決使用單張圖片時容易出現的細節遮擋問題.
多數表情偽造方法的網絡結構和損失函數設計都是基于CycleGAN[8]設計的.Xu 等人[41]提出了一種基于CycleGAN 的端到端面部重現方法,并通過實驗驗證多種規格的感受野對圖像生成的影響,以及采用PatchGAN 來提高生成圖片的質量.RecycleGAN[42]是另一種基于CycleGAN 的數據驅動的無監督視頻重定向方法,可以實現源圖像域的連續信息轉移到另一個域中,從而實現表情驅動.RecycleGAN 還提出只使用CycleGAN 的空間循環一致性約束容易導致感知模式崩潰,因而通過設計周期性預測器及相應的損失函數來引入時空約束,達到更好的視頻生成效果.ReenactGAN[43]使用一個編碼器從圖像中抽取人臉輪廓,并通過CycleGAN 完成源人臉輪廓到目標人臉輪廓的映射,最后由pix2pix 生成器重建圖像.同時該方法全部采用前饋神經網絡,可以實現實時的表情重現.FReeNet[44]包含統一標志點轉換器和一個類似CycleGAN 的幾何感知生成器,轉換器將源圖像和目標圖像編碼合并得到移動標志點,并用其指導生成器生成偽造結果,實現針對任意身份的偽造.FaceSwapNet[45]與FReeNet 采用類似結構,是一種多對多的偽造方法.Tripathy 等人[46]提出的ICface 方法分別使用頭部姿態參數和面部動作單元表示頭部姿態和表情動作,并提出了一個二段式的對抗神經網絡用于擺正目標圖像人臉和用新的頭部動作和面部表情對其進行重現,采用了類似CycleGAN[8]結構的生成器和類似PatchGAN[41]結構的判別器.由于該方法訓練過程中使用的源圖像和目標圖像是來自同一視頻的不同幀,因此又提出了基于像素的重構損失函數.與之類似的方法有X2Face[47],該方法訓練過程分為2 個階段:第1 階段使用同一視頻中的不同幀進行重現;第2 階段開始使用不同身份人臉圖片并引入身份損失函數.
部分表情重現方法不通過驅動的方式重現表情,而是直接對目標人臉表情進行編輯,此類方法生成的偽造結果通常具有較高的多樣性.Shen 等人[48]提出的Faceid-GAN 將偽造方法中常用的身份分類器引入到GAN 的對抗性結構中,保證生成圖片的真實性和身份一致,并用信息對稱性的設計降低了訓練的復雜度.Shen 等人[48]提出的另一種偽造方法FaceFeat-GAN[49]分為2 個生成階段:1)生成人物身份、表情動作和一般特征等特征向量;2)通過這些特征向量生成偽造結果,在Faceid-GAN 基礎上提高了生成結果的多樣性.
為了解決面部重現的訓練需要大量樣本的問題,2019 年以后出現了一些小樣本學習方法,可以針對只有少量目標樣本的場景中進行偽造.Wang 等人[50]提出了一種基于vid2vid 的小樣本學習方法,采用了注意力機制生成網絡權重來增加泛化能力,可以通過目標的少量示例圖像學習合成未見過的主題或者場景,并進行了廣泛的實驗驗證.Zakharov 等人[51]提出的方法包含一個編碼器、生成器和判別器,針對視頻vi,編碼器從多個幀提取出人物信息向量ei,由生成器結合目標表情的面部標志L以及ei生成偽造結果xg,分類器辨認xg中的表情和任務是否符合L和vi.該模型首先在一個較大的視頻數據集上進行元學習訓練,此階段只會更新生成器中的部分參數,用以學習人臉合成的一般特征.隨后在特定目標人臉的少量樣本中進行訓練,更新生成器的剩余參數,以實現對未見過人臉的小樣本學習.Burkov 等人[52]在文獻[51]的基礎上進行改進,使用隱空間向量代替面部標志點,并為模型添加了識別前景的語義分割能力.Ha等人[53]提出的MarioNETte 通過使用標志點轉換器,解決了表情重現任務中經常出現的源人物身份信息保留問題,并提出了不同于傳統方法的使用圖片注意力塊和目標特征對齊的方法來提取人臉身份信息.Hao 等人[54]提出了SPADE(空間自適應歸一化)模塊來替代常用的表情信息注入方法AdaIN(自適應實例標準化),并通過自注意力機制提升GAN 生成圖片的質量.
2.3.2 嘴部動作驅動
在面部表情重現中的大部分工作中都涉及到了嘴型的轉移,因此本節介紹的針對嘴部的深度偽造生成技術主要是通過文字或者音頻生成對應的嘴型.Fried 等人[55]通過重組輸入視頻的語料完成指定詞語的增刪和更改,利用Deep video portraits[30]生成嘴型,并渲染回原視頻中,從而更改視頻語音內容.ObamaNet[56]是最早的由輸入樣本生成相應視頻和音頻的偽造方法,其音頻生成方法基于Char2wav[57],通過延時LSTM 網絡生成的嘴部關鍵點驅動基于pix2pix 的生成網絡生成相應的視頻幀.
相比于使用文字驅動嘴型,更多研究選擇使用語音驅動目標人物合成說話人臉.Jamaludin 等人[58]提出了一種使用音頻和目標人物靜態圖片合成視頻的偽造方法Speech2Vid,該方法接受音頻和目標人物的若干靜態圖片作為輸入,分別對其編碼,合并后解碼得到輸出視頻.Vougioukas 等人[59]提出了一種基于GAN 的使用音頻驅動目標人物靜態圖片的端到端方法,該方法的GAN 中包含3 個分類器,分別檢測生成結果的音視頻同步、表情連貫和人臉身份信息損失.Suwajanakorn 等人[60]通過RNN 實現音頻到嘴型的轉換,再通過3D 模型生成高質量的面部紋理和幀間流暢的紋理變換,最后將嘴型和音頻生成偽造視頻.Chen 等人[61]采用了與文獻[60]相似的結構,使用帶卷積的RNN 生成視頻幀,并設計了一個基于注意力的動態損失函數,該函數和GAN 的對抗性損失函數一起分別訓練網絡的2 個部分.Zhou 等人[62]提出了一種能夠通過音頻或者視頻驅動目標人物嘴型的方法,通過將輸入音視頻中包含不同語義信息的域解耦,提取出目標人物身份信息和音頻語言信息;通過時序GAN 生成偽造結果.Thies 等人[63]提出了一種根據任意音頻生成說話人的人臉視頻的方法,該方法首先通過DeepSpeech[64]循環神經網絡提取語音特征,又訓練了一個帶有時域濾波器的語音表情生成網絡驅動目標任務的3D 模型,生成偽造結果.
面部特征編輯是較為傳統的偽造類型,一些較為常用的基于GAN 的圖像處理方法,如StyleGAN[65-67]和CycleGAN[8]都可以用于編輯面部特征.StarGAN[68]和StarGAN v2[69]具有在多個圖像域之間轉換的能力,具有更好的可擴展性.其他的面部特征編輯工作有如Sanchez 等人[70]提出了一種用于GAN 人臉編輯的3 重連續性損失函數,并提出了一個直接編輯人臉表情的合成方法GANnotation.Kim 等人[71]在CycleGAN的循環一致性損失函數的基礎上提出了CAM 一致性損失函數,使得模型能夠更好地保留與特征無關的位置的信息,并將其應用在StarGAN 等現有生成模型上.Li 等人[72]為了解決人臉特征編輯的擴展性和多樣性問題,提出了一種層次結構模型——HiSD(hierarchical style disentanglement),將人臉的特征建模成標簽和屬性,并通過無監督的方法將其解耦,實現針對目標屬性更加精準的篡改.隨著如StyleGan3[67]這樣的大型模型的提出,面部特征編輯任務得以向更注重細節紋理的方向發展.
部分深度偽造生成技術研究將源人物的肢體動作遷移到目標人物身上.Aberman 等人[73]提出了一種視頻動作克隆技術,分別使用成對訓練數據和非成對訓練數據訓練同一個生成網絡;分別訓練其根據指定動作生成靜態幀和將動作轉換成時序連續的幀序列的能力.Everybody Dance Now[74]是一種基于視頻轉換的動作遷移方法,使用動作探測器檢測輸入視頻中的人物動作骨架圖,再通過基于pix2pix 的GAN 網絡將人物動作骨架圖映射為目標人物的動作幀.在訓練過程中,要將生成視頻和動作骨架圖的連續2 幀輸入到GAN 的判別器中,從而保證視頻的時序連貫.文獻[74]的方法還包括一個針對面部的pix2pix 網絡,通過動作骨架和生成視頻幀的人臉區域預測殘差,增加偽造結果面部的細節和真實性.Liu 等人[75]對目標人物進行3D 建模,從源人物視頻中提取動作骨架,將其渲染到目標人物的3D 模型中,最后根據條件性GAN 得到預測結果.該方法的損失函數計算用到了注意力圖譜的加權方法,促進GAN注重于包含更多未學習特征的區域,使得該方法在生成結果真實性和性能方面有所提升.Monkey-Net[34]除了重現面部表情,更多地被利用在肢體動作的驅動.
語音生成技術的實現主要基于2 種方法:波形拼接和統計參數.其中波形拼接方法是早期常用的方法,它首先分析文本以及韻律,再進行波形拼接.雖然波形拼接方法使用了自然語音波形,可以合成出高自然度的合成語音,但是對于不同領域的文本合成,穩定性不強,在任意文本的語音合成中表現不佳.統計參數方法可以分為基于隱馬爾可夫模型(hidden Markov model,HMM)的早期方法以及基于神經網絡的深度學習方法.基于隱馬爾可夫模型的方法,其相關工作可以參考文獻[76];而基于深度學習的語音生成方法建模更加精確,統計參數更加平滑,近年來隨著神經網絡相關技術的發展其得到了更廣泛的應用.基于深度學習的語音合成主要可以分為管道式和端到端式.其中傳統的語音合成工作一般是管道式,需要對整個合成過程中的各個模塊分別建模,使用多個模型流水線式地處理文本特征分析、聲學特征分析和聲音波形預測等任務.
端到端式語音合成與管道式語音合成相比不需要另外提取文本特征,可以直接輸入未處理的文本,得到接近自然人物聲音的合成結果.WaveNet[77]是一種早期的端到端的語音合成器,它使用擴展因果卷積層(dilated causal convolutional layers),直接對采樣值序列的映射進行學習,達到較好的語音合成效果,但由于WaveNet 的輸入是處理過的特征,并不是嚴格的端到端模型,因此目前一般作為聲碼器應用在音頻偽造方法中.其他的端到端的語音合成模型還有Tacotron[78],Tacotron2[79],Char2wav[57]等.Tacotron 使用一個包含一維卷積、高速網絡、殘差連接和雙向GRU 的CBHG 模塊提取輸入文本的高層次特征,并用注意力解碼器和輸出解碼器,分別生成語境向量和輸出聲譜.Tacotron2 將Tacotron 中生成最后波形的Griffin-Lim 算法優化成了深度學習模型,并使偽造結果更加接近自然人聲,其系統結構如圖3 所示.Char2wav[57]包含閱讀器和聲碼器,閱讀器中的編碼器是雙向循環神經網絡,用于提取文本特征;解碼器是帶有注意力機制的循環神經網絡,用于生成聲碼器輸入的聲學特征.Fu 等人[80]在基于Tacotron 的端到端語音合成模型的基礎上,針對聲學特征可能與文本不完全對齊的情況,提出了待反饋機制的時長控制器輔助注意力機制調整音素的方法,并使用一個自適應的優化算法用于識別標注效果較差的樣本.MelGAN[81]是首個使用GAN 生成語音的模型,與WaveNet 等自回歸的語音模型相比具有較快的速度,其改進模型[82]通過在合成中采用重構濾波器組合多個子頻段的合成結果,簡化了上采樣層中的參數量,并引入了基于快速傅里葉變換的損失函數加速訓練.語音生成技術的不斷成熟,促進了MelGAN 在人機交互等領域的應用,但也使其能更容易地參與偽造視頻的制作.

Fig.3 Systematic structure of Tacotron2[79]圖3 Tacotron2 系統結構[79]
語音轉換技術使用的模型可以分為統計模型和深度學習模型.利用統計模型的語音轉換任務一般可以通過其訓練的數據類型分為使用并行訓練數據和非并行數據.與語音生成技術相似,語音轉換技術近年來的技術趨勢也在由統計模型向深度學習轉變,一些基于GAN 的生成模型如CycleGAN 和StarGAN 也被應用到語音轉換領域.CycleGAN-VC[83]在CycleGAN的基礎上使用門控CNN 提取連續性和層次性特征,并引入身份映射損失函數防止語義信息的流失.CycleGAN-VC2[84]較前一代的CycleGAN 更新了對抗損失函數:
同時還在生成器中加入一維卷積,并將判別器改為PatchGAN 結構,縮短了生成結果和真實人物語音的差距.CycleGAN-VC3[85]在前2 代的基礎上引入了時頻自適應歸一化,增加了對梅爾頻譜轉換的支持.StarGAN-VC[86]是另一種基于GAN 的音色轉換技術,能實現多對多非平行數據的語音轉換任務,較傳統的StarGAN 加入了一致性損失,采用了GLU 激活函數,并使用了類似CycleGAN-VC 的判別器,在性能上優于CycleGAN-VC.StarGAN-VC2[87]是StarGANVC 的改進版本,針對訓練策略和網絡結構進行優化,引入了條件性對抗損失函數和條件性實例正則化層.近期有部分研究致力于將訓練好的語音合成模型應用在語音轉換任務中,如文獻[88-91]一般利用遷移學習或者語音合成的預訓練模型來簡化非并行語音轉換模型的訓練.
隨著深度偽造生成技術的不斷發展,網絡上各種相關的開源工具以及商用軟件層出不窮,對司法和隱私等領域造成了嚴重的威脅.為了應對深度偽造生成技術的負面影響,近年來有關深度偽造的對抗策略的研究也逐漸增多.本節依次對圖像以及視頻偽造檢測的主流方法進行分類介紹.
根據是否針對特定的偽造痕跡進行檢測,深度偽造檢測可以分為數據驅動的檢測方法和針對特定偽造痕跡取證的檢測方法.
4.1.1 偽造痕跡的檢測
當前的主流深度偽造方法產生的偽造圖像和視頻中,可以進行檢測的偽造痕跡主要有:圖像處理取證、生物信息、融合痕跡、時序連貫和模型指紋等.早期的深度偽造檢測主要是基于傳統的圖像取證方法,Matern 等人[92]使用邏輯回歸等方法,針對Deepfakes和Face2face 偽造結果在全局連續性、照明估計和幾何估計3 個方面的視覺偽造痕跡進行檢測.Zhou 等人[93]提出了一種雙流網絡識別偽造痕跡的方法:雙流網絡的2 個網絡分別對人臉進行分類以及捕獲噪聲殘留和相機特征,并通過2 個網絡的得分判斷圖像整體是否經過偽造.Nataraj 等人[94]提出了一種根據3 個顏色通道的共現矩陣檢測GAN 生成圖片的方法.Li 等人[95]設計了一種單中心損失函數以擴大真實圖像和偽造圖像特征分布的距離,并提出了一個根據頻域特征分類的偽造檢測方法.Luo 等人[96]針對現有CNN 網絡泛化能力不強的問題,提出了針對圖像高頻噪聲的檢測方法用以提高跨數據集能力,并使用一個分別檢測高頻噪聲流和RGB 顏色流的雙流檢測網絡,其包含3 個根本組件:多尺度高頻特征提取、殘差引導空間注意力模塊和雙重交叉注意力模塊.Shang 等人[97]提出的像素-區域關系網絡(PRRNet)通過像素關系模塊和區域關系模塊檢測圖像中空間關聯和不一致偽造痕跡.
除了直接針對檢測圖像進行圖像取證的方法,部分研究者還針對深度偽造步驟中將生成模型輸出結果和外圍背景的融合步驟產生的偽造痕跡進行檢測.Li 等人[98]針對深度偽造過程中的仿射造成的人造痕跡進行檢測,并采用簡化的圖像處理過程而非常規的深度偽造方法生成偽造樣本,減少時間成本并避免了過擬合.Li 等人[99]提出了根據深度偽造面部融合步驟檢測偽造邊界的檢測方法Face x-ray,該方法使用真實人臉生成融合人臉數據集,并通過其中的偽造邊界標注訓練了一個卷積神經網絡,用以根據是否可以檢測出邊界判斷真偽.該方法的局限在于假設了偽造生成模型都有人臉融合步驟,且會被對抗樣本欺騙.Li 等人[100]提出了一種多任務學習的檢測方法,使用2 個網絡分支分別檢測面部區域偽造痕跡以及面部和背景的不一致性.Nguyen 等人[101]提出了一種同時鑒別目標圖片或視頻真偽和定位偽造區域的多任務學習方法,該方法包含一個編碼器和一個Y 型解碼器,分別用于鑒別真偽和生成偽造區域.其中解碼器的訓練使用半監督學習方法增強其生成能力.Nirkin 等人[102]針對深度偽造圖像人臉區域和背景區域的差異,使用3 個基于Xception 結構的編碼器分別對預處理后的整張圖片、人臉區域和背景區域編碼的特征向量結合后通過一個淺層分類器進行分類.
基于時序連貫性的檢測方法主要是使用RNN 對幀間的偽造特征進行檢測.Amerini 等人[103]引入視頻解碼時運動補償的預測誤差衡量視頻的局部連貫性,分別使用CNN 和LSTM 網絡對其進行處理,在FF++數據集上分別達到了91%和94%的準確率.Amerini等人[104]通過分析目標視頻的光流圖檢測幀間的偽造痕跡,并通過VGG16 和ResNet50 構建了2 種檢測模型.Guera 等人[105]通過CNN 提取幀級特征,并將特征輸入到循環神經網絡中得到分類結果.Sun 等人[106]提出了一個與文獻[105]相似的方法,將視頻以幀的形式提取出關鍵點和特征向量序列,并輸入到一個雙流循環神經網絡中,提取時序特征并得到分類.Sabir等人[107]使用循環卷積網絡檢測偽造視頻中的時序信息,并實驗總結了多種CNN 結構和RNN 訓練策略.
深度偽造生成模型的對抗訓練一般更注重全局連續性和時序連貫性,但對于人臉生理信息的模擬可能更依賴于源視頻和圖像,因此有較多工作根據特定的人臉生理信息檢測深度偽造.Agarwal 等人[108]針對公眾人物的深度偽造提供了一種檢測方法,使用皮爾森相關系數轉換視頻中人臉動作單元的特征信息,并使用支持向量機對其進行分類.Agarwal 等人[108]還提出了一種檢測音頻音素和唇形不同步的方法[109].Yang 等人[110]對人物的頭部姿態做3D 模擬,分別用人臉的中心區域和外部區域計算出一個方向向量,并以此用支持向量機檢測偽造視頻中的頭部姿態不一致.FakeCatcher[111]是一種針對生物信息的空間連貫性和時間連續性的檢測方法,通過生物信息圖譜重建,分別使用傳統機器學習分類器和CNN 分類器對目標視頻分類,可以實現自然環境下的深度偽造檢測.Fernandes 等人[112]提出了一種基于屬性置信度標準[113]的檢測方法.
為了增強深度偽造檢測技術在不同數據集和偽造方法的泛化能力,很多檢測方法針對GAN 網絡生成圖片的一般性偽造痕跡進行檢測,即檢測生成模型的指紋.McCloskey 等人[114]提出了GAN 生成圖片和真實圖片在顏色構成和飽和度方面的差異,并以此作為深度偽造檢測的依據.Guarnera 等人[115]根據圖像中像素關聯性與生成模型之間的關系,使用期望最大化算法提取出偽造過程中生成模型的轉置卷積層的特征,并用支持向量機等無監督聚類方法分類真實圖像和偽造圖像.Qian 等人[116]提出了一種基于頻域特征的檢測模型F3-Net,提出頻率感知圖像分解和局部頻率統計2 個頻域特征,并設計了一種融合模塊綜合利用了這2 種特征進行深度偽造檢測.Masi 等人[117]使用一個雙流的編碼器網絡,分別編碼顏色域和頻域加強特征.2 個編碼器的結果經過DenseNet 塊輸入到雙向LSTM 網絡中得到分類結果.Liu 等人[118]針對偽造模型中常用的上采樣步驟,提出了空間相位淺層學習(spatial-phase shallow learning)方法,驗證了經過上采樣生成的偽造圖像和真實圖像在頻域中的相位頻譜差異,通過淺層神經網絡對兩者進行區分.
近年來也出現了較多利用人物參考圖片進行偽造檢測的方法,該類方法可以通過比對參考圖像和待測圖像的身份差異幫助提高檢測精確度.Agarwal等人[119]提出了一種通過生物信息進行偽造檢測的方法,使用VGG 和FAb-Net[120]網絡分別提取動態的表情動作和靜態的外觀特征,根據提取到的特征分別在參考數據集中找到對應人臉,若2 個人臉不是同一個人臉則檢測視頻為偽造視頻,反之則為真實視頻.Cozzolino 等人[121]在給定多個參考視頻的人物場景中,利用自監督學習判斷視頻是否為偽造.該方法通過3D 可變形模型提取人臉信息,并用時序身份網絡編碼,通過判斷目標視頻和參考視頻的編碼相似性是否超過閾值來確定目標視頻的真偽.Dong 等人[122]提出了一種基于身份驗證的偽造檢測算法OuterFace,通過比對檢測人臉和參考人臉通過面具遮罩得到的外側人臉中的身份信息確定檢測人臉是否為偽造;同時提出了一個偽造視頻數據集Vox-DeepFake,該數據集較現有數據集增加了參考身份信息,且視頻內容和身份有較高的多樣性.Jiang 等人[123]提出了一種基于身份空間約束(identity spatial constraints,DISC)的檢測框架,它包含一個主干網絡和一個身份語義編碼器,身份語義編碼器同時輸入目標圖像和參考圖像,并在特定階段以身份空間約束融入主干網絡中.
隨著多模態學習的普及,基于多模態特征融合的深度偽造檢測方法開始出現.Lewis 等人[124]提出了一種混合深度學習方法,分別處理目標視頻的圖像和音頻,并用多個LSTM 網絡對視頻進行分類.Lomnitz 等人[125]使用Xception 網絡和雙向LSTM 網絡建立圖像的多幀處理模型,使用SincNet[126]處理視頻的音頻信息,并結合了圖像的頻域特征共同進行偽造視頻的分類.Mittal 等人[127]提出了一種基于孿生神經網路架構的多模態檢測方法,除了利用視頻的圖像和音頻信息,還實現了從中提取情感信息用于檢測.同樣利用情感信息進行多模態檢測的還有文獻[128],該文獻方法分別從視頻和音頻中提取面部和語音的低級描述,通過LSTM 網絡預測其中的情感語義信息,并根據兩者之間的差距進行分類.
4.1.2 基于數據驅動的檢測方法
隨著圖像處理中各種CNN 網絡架構運用的不斷成熟,在深度偽造檢測領域也出現了很多基于數據驅動的分類方法.MesoNet[129]針對常用的人臉偽造方法Deepfakes 和Face2face,提出了基于卷積神經網絡的輕量級檢測網絡,并使用Inception 網絡結構對其進行改良.Jain 等人[130]提出一個帶殘差連接的卷積神經網絡結構用于深度偽造檢測.FakeSpotter[131]在深度偽造檢測方法中引入神經元覆蓋率判據,通過計算目標圖像輸入到深度人臉識別網絡中每層的激活神經元數目得到特征向量,并訓練一個淺層神經網絡,根據特征向量判斷輸入圖像是否經過偽造.Dang等人[132]提出了一種利用注意力機制處理主干網絡提取的特征并進行偽造檢測分類的方法,該方法的網絡輸入為提取的特征F,通過偽造外觀模型和直接回歸2 種方式得到注意力圖譜Matt,并根據注意力模型的輸出F′=F⊙Sigmoid(Matt)進行偽造分類.該方法還提供了監督學習、弱監督學習和非監督學習3 種訓練方式.Hsu 等人[133]提出了一種基于成對學習的檢測方法,該方法包含一個基于DenseNet 的一般偽造特征網絡和一個分類器,前者通過基于對比學習的孿生神經網絡進行自監督訓練,后者進行正常的2分類訓練.Khalid 等人[134]將深度偽造檢測視為異常檢測問題,在真實圖片數據集上訓練了一個單類變分自動編碼器,通過重建圖像分數判斷其是否為偽造圖像;還提出了一個改進結構,在原模型后新加一個變分編碼器,將編碼結果均值和原模型編碼器輸出均值的均方根差距作為損失函數和重建分數.Rana 等人[135]提出了一種集成學習方法DeepfakeStack,并在XceptionNet,InceptionV3 多種預訓練CNN 模型的基礎上訓練了一個元學習器,通過并行使用多種分類模型在FF++數據集上達到了99%以上的準確率.與之相似的有文獻[136]的工作,該文獻引入了注意力機制和孿生式訓練方式.Kim 等人[137]提出了一種基于表示學習和知識蒸餾的檢測方法FReTA,該方法利用原有的預訓練模型,通過遷移學習快速學習針對性能偽造方法的檢測模型.Aneja 等人[138]提出了一種基于遷移學習的小樣本學習方法,該方法將深度偽造檢測視為不同分布,先在源域上訓練一個編碼器,再在目標域的較少樣本上進行微調(finetuning),在測試時根據測試樣本在隱空間中訓練得到的真實分布和偽造分布的距離進行分類.Wang 等人[139]提出了一種利用注意力機制提高卷積神經網絡訓練效果的框架RFM,該方法首先用原始檢測圖片生成主干網絡的偽造注意力圖譜,再以抹除可疑區域的方式做數據增強,重新訓練主干網絡.Zhao 等人[140]提出一種利用多重注意力機制的細粒度分類方法,該方法同時利用了圖像中的紋理特征和高層次語義特征,并設計了區域獨立損失函數和注意力引導的數據挖掘方法,如圖4 所示.Kumar 等人[141]提出了一種針對face2face 重現方法的多流神經網絡方法,通過多個殘差網絡提取圖片局部特征進行分類,并設計了一個損失函數用來平衡多流神經網絡的訓練.Jeon 等人[142]提出了一種使用預訓練模型fine-tuning的小樣本學習方法,該方法提出了使用自注意力的fine-tune 變換器,并用其預測的結果和預訓練模型與MobileNet 的組合體輸出相加,輸入到帶全局平均池化的分類器中得到最終結果.Wang 等人[143]提出了一種CNN 生成深度偽造的檢測方法,將目前主流深度偽造模型歸類為基于CNN 的圖片生成模型,試圖尋找它們之間共同存在的偽造缺陷,并在單個生成模型產生的數據集上訓練出可以檢測更多模型偽造結果的分類器.Wang 等人[143]在一個ProGAN 生成的數據集上實施了數據增強,并用其訓練了一個ResNet-50 網絡,在其未見過的偽造模型生成的測試樣本上表現出了較好的檢測能力.基于數據驅動的偽造檢測容易受到訓練集中偽造方法種類的影響,因此其在不同偽造方法上的泛化能力還有一定的提升空間.Liu 等人[144]提出的Gram-Net 通過檢測輸入圖片的紋理特征來檢測偽造,該方法通過提取ResNet 網絡中不同語義級別的特征,使用基于格拉姆矩陣的Gramblock 提取全局紋理特征.該方法相比其他方法具有更好的魯棒性和泛化性.

Fig.4 Structure diagram of multi-attention deepfake detection method[140]圖4 多注意力深度偽造檢測方法結構圖[140]
近些年隨著transformer 技術在自然語言處理和計算機視覺領域中的應用和發展,利用視覺transformer的深度偽造檢測方法不斷出現.Wodajo 等人[145]提出的CviT 方法使用CNN 和視覺transformer 作為骨干網絡提取特征,實現對輸入人臉的分類.Wang 等人[146]提出了一種多尺度的虛假人臉檢測方法M2tr,該方法通過卷積神經網絡分別提取圖像空間域和經過離散余弦變換的頻域特征,其中空間域特征通過基于多尺度注意力的視覺transformer 得到新的特征;將上述2 種特征通過多頭注意力機制進行特征融合,再輸入到分類器得到檢測結果.該方法由于同時考慮了空域和頻域2 個模態,并使用了多個尺度的注意力機制,具有較好的檢測效果.Heo 等人[147]在視覺transformer 為主干網絡的檢測模型中引入了知識蒸餾方法,并使用基于卷積神經網絡的EfficientNet 作為教師模型進行了驗證.
表1 對近年來主流的圖像和視頻偽造檢測方法的特點和性能等進行了總結.

Table 1 Summary of Image and Video Fake Detection Methods表1 圖像和視頻偽造檢測方法總結
隨著深度偽造模型及其對應的檢測技術不斷趨于完善,部分深度偽造模型及其深度偽造檢測的工作選擇針對模型進行對抗攻擊,從而促使深度偽造模型誤分類或者深度偽造結果的真實性降低.
4.2.1 針對偽造模型的對抗攻擊
Ruiz 等人[153]提出了一種通過在目標圖像施加擾動使深度偽造模型失效的攻擊方法,他們將對抗攻擊模型視為圖片翻譯模型,提出了條件性和非條件性的圖片翻譯干擾,并給出了基于對抗訓練的初步防御方式.Huang 等人[154]提出了一種針對深度偽造的主動防御方法,該方法分為替代模型和擾動生成器2 個部分,其中替代模型首先使用正常人臉訓練,目標是模擬深度偽造模型,擾動生成器隨后訓練在原始人臉上施加擾動并以替代模型的反饋作為損失函數.該方法還針對特定的偽造方法提出了加強訓練方案.Dong 等人[155]提出了3 種針對深度偽造的對抗攻擊方法,即轉移對抗攻擊、孿生對抗攻擊和隱式孿生對抗攻擊.
4.2.2 針對檢測模型的對抗攻擊
由于現有的深度偽造模型的魯棒性還有提升空間,因此部分研究者針對深度鑒偽模型進行對抗攻擊,從而使偽造圖片和視頻能夠繞過鑒偽模型的檢測.但由于該類工作有潛在的不良社會影響,因此相關論文數量較少.Neves 等人[156]訓練了一個自動編碼器用于抹除GAN 生成深度偽造結果中殘留的模型指紋,且該模型只需要在真實人臉數據集上訓練.Carlini 等人[157]選擇了3 種深度檢測分類器,在黑盒和白盒2 種場景對其進行對抗攻擊,均能有效降低檢測模型分類的AUC 值.Hussain 等人[158]針對在黑盒場景和白盒場景下對XceptionNet[11]和MesoNet[129]2 種深度偽造模型進行對抗攻擊,證明了現有的檢測模型的對抗魯棒性較為脆弱,其網絡結構如圖5 所示.

Fig.5 Network structure of deepfake adversarial examples generation method[158]圖5 深度偽造對抗樣本生成方法的網絡結構[158]
隨著各種語音深度偽造模型的偽造水平不斷提升,現有的技術已經可以較好地模擬目標人物的音調音色,甚至配合視覺深度偽造模型生成一個完整的偽造視頻,相應地,音頻的深度偽造檢測工作也逐漸受到了更多研究者的關注.語音深度偽造檢測一般分為前端和后端,分別從音頻中提取聲學特征,以及利用高斯混合模型、神經網絡等分類模型根據聲學特征對目標音頻進行分類.部分研究者選擇從聲學特征的角度開始研究,Patel 等人[159]在ASVspoof 2015 競賽中基于耳蝸過濾器倒譜系數(cochlear filter cepstral coefficients,CFCC)和瞬時頻率(instantaneous frequency,IF)提出了新的聲學特征CFCCIF,并在論文中提出了更新的特征CFCCIFS.Tom 等人[160]提出了群體延遲圖(GD-gram)作為重放檢測的判斷依據,分別將GD-gram 和使用注意力遮罩的GD-gram 輸入ResNet-18 得到判斷結果.Das 等人[161]提出了2 種用于檢測模型前端的聲學特征eCQCC 和CQSPIC.
其他的研究者更注重于分類模型.Lavrentyeva 等人[162]在ASVspoof 2017 比賽中針對錄音重放挑戰提出了一種基于輕量級CNN 檢測的方法,該方法的前端基于賽事舉辦方提出的常數Q 變換倒譜系數(CQCC)提取系統,通過常數Q 變換和快速傅里葉變換得到歸一化對數功率譜,并將其輸入到輕量級CNN[163]或者CNN 和雙向RNN 的串聯網絡中.同樣采用輕量級CNN 的有參加了ASVspooof 2019 比賽的Lavrentyeva 等人[164].Mittal 等人[127]提出了基于CNN 的SincNet 直接對音頻進行處理,與標準CNN不同,SincNet 的第1 層使用了預定義的濾波函數,僅有少量幾個參數可以從數據中學習,這大幅度減少了網絡中的可訓練參數數量.Cai 等人[165]提出了一種語音級的神經網絡框架,并使用了多種聲學特征表示作為模型的輸入進行實驗.在ASVspooof 2019 比賽中,Lai 等人[166]提出了一種基于殘差網絡和擠壓刺激網絡(squeeze excitation network,SENet)的檢測方法挖掘不同通道之間的關系,使其關注更具判別性的特征圖.Lai 等人[166]考慮了對數功率頻譜和CQCC 2種聲學特征,通過使用統一特征圖或整條語句的方式將其輸入到神經網絡模型中.與其工作類似的有Parasu 等人[167]提出的輕量級殘差網絡模型.Ma 等人[168]使用基于規范化方法的持續學習,在損失函數中添加了LwF[169]約束和正樣本對其約束,其模型結構采用類似于文獻[164]的輕量級卷積神經網絡.
近年來,針對深度偽造的檢測方法逐漸完善,學術界和工業界也發布了大量的數據集用于訓練和評價檢測模型.表2 總結了近年來發布的主流數據集.如谷歌提出的DFD(detection)[150]和FaceForensics++[12]數據集、商湯科技提出的Deeper Forensics 1.0[173]和ForgeryNet[176]數據集等.隨著深度偽造及其檢測技術的不斷發展,近年來發布的深度偽造數據集中生成方法更加多樣化,包含偽造樣本容量更多,也逐漸出現了更多的檢測任務,如ForgeryNet[176]的偽造區域定位(見表3)和FFIW-10K Dataset[175]中可能有多張人臉被篡改的鑒別任務.
ASVspoofing 是近幾年影響力較大的語音類偽造檢測比賽,自2015 年舉辦第一屆以來至今已經舉辦了4 屆.其中前3 屆的ASVspoofing 包含了語音合成和轉換以及錄音重放的鑒別任務,ASVspoofing 2021在前3 屆的基礎上增加了沒有說話人驗證的語音深度偽造鑒別任務.ASVspoofing 比賽發布的相關數據集也是當前最為常用的深度偽造語音數據集.前3屆ASVspoofing 數據集詳情如表4 所示.

Table 4 Deepfake Audio Datasets表4 深度偽造語音數據集
深度偽造生成技術經過近幾年的發展,各種任務的生成方法已經越來越成熟,但針對面部替換和面部重現的深度偽造方法在某些特定場景下仍然會有較為明顯的偽造痕跡.其原因主要在于現實環境下取得的圖片或者視頻樣本可能有部分面部信息缺失,以及偽造過程中融合背景和人臉時效果較差.針對這一缺陷,可以嘗試在視頻對數據預處理時用生成模型補全缺失的人臉信息,并在融合背景和人臉的步驟使用專門設計的網絡進行優化.在視頻偽造方面,由于目前的偽造方法,如文獻[21-22]等方法一般是單幀合成,在幀間時序信息中容易留下較多的偽造痕跡.針對這一缺陷,可以嘗試在視頻生成后專門針對幀間差異進行平滑處理.針對語音的深度偽造生成技術目前在偽造結果自然度的方面還有待提升.
未來的深度偽造研究會在解決信息缺失、增加偽造結果真實性的同時,致力于使用更少樣本生成偽造結果,并提高偽造模型在實際應用過程中的運行性能.同時一些其他形式的深度偽造潛力也在不斷被研究者們挖掘,如Facebook 公司提出的文字版本深度偽造[181].
目前針對單個數據集或者偽造方式的深度偽造檢測方法已經較為成熟,但現有的深度鑒偽模型仍存在較多問題.目前深度偽造檢測相關方法的跨模型實驗能夠明顯體現出泛化性能較差,而諸多針對檢測模型的對抗攻擊測試也顯示現有檢測模型的魯棒性有待提升,且難以應對現實世界中不同壓縮率、噪聲等復雜條件.同時由于在真實應用場景下難以得知偽造生成算法的類型,無法使用已有的預訓練模型,也給深度偽造檢測實際應用增添了不確定性.
深度偽造檢測研究在公共輿論以及個人隱私安全保護等方面有重大的社會意義,針對現有方法的缺點提出了深度偽造檢測技術的未來發展方向.首先,針對檢測模型泛化能力差的缺點,以后的偽造檢測應該更加注重深度偽造模型的共性,如利用GAN模型指紋,研究泛化能力強的檢測方法,或者通過使用目標人物參考圖片或視頻的方法,保證檢測模型的高準確率.其次,未來的深度偽造檢測需要更加注重魯棒性,可以在構建數據集時兼顧更多壓縮率和噪聲干擾,使模型在可以適應現實世界復雜環境的同時也能防止部分偽造視頻通過添加擾動而繞過檢測.最后,未來的研究工作會聚焦到更多檢測任務,而不是簡單的二分類任務中.現有的數據集已經定義了一些新的檢測任務,如視頻樣本中會有多個可能被篡改的人臉[175],以及要實現更細粒度的分類和定位深度偽造的時間和空間位置[176]等.
隨著深度學習在圖片處理領域應用的不斷成熟,各種針對人臉等部位的偽造技術層出不窮,使得相關技術在教育和娛樂等領域得到廣泛應用的同時,也對現有的檢測技術產生了巨大的挑戰.雖然并非所有的深度偽造的出發點都是惡意篡改,但我們目前還無法預估相關技術被不法分子利用后產生的不良影響,因此也迫切需要相關法律的制定或者完善檢測體系,以促使深度偽造相關技術能在更多場景合法應用.總結了近些年來深度偽造及其檢測的主流技術,并對其進行了分類探討.同時還總結了目前常用的深度偽造視頻及音頻數據集,并分析了深度偽造及檢測的技術難點和未來發展方向.我們希望通過本文能讓更多人了解深度偽造相關技術,防止其產生不良的社會影響,并促進其在更多領域的合法應用.
作者貢獻聲明:李澤宇負責文獻資料的整理分析及論文撰寫;張旭鴻負責方案設計和論文修訂;蒲譽文和伍一鳴負責論文修訂;紀守領負責對調研提出意見并指導論文修改.