AI在茫茫人海中,看到只有你被Deepfake了
本文經AI新媒體量子位(公眾號ID:QbitAI)授權轉載,轉載請聯系出處。
自打有了deepfake,再也不敢相信「眼見為實」了。
要說把朱茵換臉成楊冪,把海王換臉成徐錦江,大家還可以一笑而過。
△圖源:微博用戶@慢三與偏見
可若是公眾人物被deepfake了什么不該說的話、不該做的事,就讓人細思極恐了。

為了防止世界被破壞,為了維護世界的和平,(狗頭)現在,阿里安全圖靈實驗室也加入了“圍剿”deepfake的隊列:
打造deepfake檢測算法S-MIL,多人現場視頻,只要其中1人被換臉,就能精準識別。
基于多實例學習的deepfake檢測方法
魔高一尺,道高一丈。deepfake和deepfake檢測技術的較量其實早已展開。
不過,此前存在的deepfake檢測方法主要分為兩類:幀級檢測和視頻級檢測。
基于幀級的方法需要高成本的幀級別標注,在轉化到視頻級任務時,也需要設計巧妙的融合方法才能較好地將幀級預測轉化為視頻級預測。簡單的平均值或者取最大值極易導致漏檢或誤檢。
而基于視頻級別的檢測方法,比如LSTM等,在deepfake視頻檢測時,過多專注于時序建模,導致deepfake視頻的檢測效果受到了一定的限制。

△部分deepfake攻擊,四個人中只有一人被換臉
為了解決這些問題,阿里安全圖靈實驗室的研究人員們提出了基于多實例學習的Sharp-MIL(S-MIL)方法,只需視頻級別的標注,就能對deepfake作品進行檢測。
核心思想是,只要視頻中有一張人臉被篡改,那么該視頻就被定義為deepfake視頻。這就和多實例學習的思想相吻合。
在多實例學習中,一個包由多個實例組成,只要其中有一個實例是正類,那么該包就是正類的,否則就是負類。
S-MIL就將人臉和輸入視頻分別當作多實例學習里的實例和包進行檢測。
并且,通過將多個實例的聚合由輸出層提前到特征層,一方面使得聚合更加靈活,另一方面也利用了偽造檢測的目標函數直接指導實例級深度表征的學習,來緩解傳統多實例學習面臨的梯度消失難題。

具體而言,算法主要由三個關鍵部分組成。
首先,對輸入視頻中的采樣幀進行人臉檢測,并將提取的人臉喂給CNN,以獲取特征作為實例。
在實例設計上,與傳統多實例學習的設定一樣,實例與實例間是相互獨立的。
但由于deepfake是單幀篡改的,導致同一人臉在相鄰幀上會有一些抖動,就像這樣:

為此,研究人員設計了時空實例,用來刻畫幀間一致性,用于輔助deepfake檢測。
具體而言,使用文本分類里常用的1-d卷積,使用不同大小的核對輸入的人臉序列從多視角上進行編碼,以得到時空實例,用于最終檢測。
也就是說,第二步,是將編碼后的時空實例提取出來,形成時間核大小不同的時空包。這些包被一起用來表示一段視頻。
最后,對這些包進行S-MIL,算出所有包的fake分數,這樣,就能得到整個視頻的最終fake分數,從而判斷視頻到底是不是deepfake。
S-MIL定義如下:

其中,pi和p(i)^(j)分別是第i個包及其包里的第j個實例的正類概率;M為包里的實例數;w是網絡參數;h(i)^(j)是包i里的實例j對應的特征。

由于現有的帶幀標簽的數據集中,同一視頻中真假人臉混雜的樣本較少,研究人員還構建了一個部分攻擊數據集FFPMS。
FFPMS共包含14000幀,包括4種類型的造假視頻(DF、F2F、FS、NT)和原始視頻,既有幀級標簽,也包含視頻級標簽。
檢測效果達到SOTA
研究人員在DFDC、Celeb和FFPMS數據集上對S-MIL進行了評估。
實驗結果表明,假臉的權重比較高,說明該方法在僅需視頻級別標簽的情況下,可以很好地定位到假臉,具有一定的可解釋性:

并且,該方法在視頻檢測上能到達到state-of-the-art的效果。
