深偽偵測與深度生成模型之影像應用
你看過美國前總統川普被警方[逮捕](https://www.bnext.com.tw/article/74552/midjourney-v5-trump-ai-deepfake)的影片嗎?又或是英國女王在皇宮中[大跳熱舞](https://youtu.be/IvY-Abd2FfM)的片段?多年來,人們普遍相信著「有圖有真相」的道理,然而,隨著圖像與影音相關的生成式 AI 越發成熟,我們似乎再也不能輕易相信自己的雙眼。而在真假影音的差異可說是微乎其微的狀況下,我們究竟該如何判斷資訊真實性?中央研究院資訊科技創新研究中心的副研究員陳駿丞與團隊每天在尋找的,便是有效又好用的解決方案。本次,中研院「研之有物」將透過專訪,從生成式 AI 的原理開始了解,一步步為各位解開深偽影像的神秘面紗。 提示詞給的資訊越多,就越有機會用繪圖 AI 生成想要的客製化圖片。 首圖|研之有物(資料來源|Midjourney)
生成式 AI 怎麼這麼紅?因為成熟又好用!
一講到生成式 AI,許多人都能立刻喊出「ChatGPT」的大名,足見這個領域之熱門程度。其實,生成式 AI 發展並不是近年才開始的事,可是為什麼直到最近,才受到社會大眾的熱烈歡迎呢?
中研院資創中心的陳駿丞副研究員認為,其中最關鍵的原因,莫過於 AI 程式的優秀表現開始讓一般人很「有感」。由於生成式 AI 的相關研究快速發展,基礎建設在近年來逐漸成熟,使用介面也設計得十分親民,讓大眾能透過極為直覺、簡單的方式去使用,實際體會到應用的效果,例如改善工作效率、處理圖像任務等,再加上大眾媒體的渲染,便帶起了 2023 前半年的 AI 風潮。
陳駿丞笑著說,雖然自己不是文字生成式 AI 的專家,但使用「ChatGPT」時,也發現到它真的能做到很多事,比早期的 Siri 效果更好、更準確。的確,對於我們來說,這款基於 OpenAI 開發的大型語言模型(Large Language Model)的聊天機器人(Chatbot),就彷彿是一個全能小秘書一般,可以整理文案、改錯字,甚至連寫程式碼都不在話下。
場景轉換到影像領域,如今市面上也有同樣由 OpenAI 打造出的圖像生成平台「DALL·E 2」,或是大名鼎鼎的「Midjourney 」,都可以很有效率的將使用者文字描述轉換成圖片。雖然這些平台生成的內容偶爾還是會出現「破圖」的情況,例如頭髮少一塊,或是出現奇怪色塊等,但它們的生成速度極快,也能產生不少令人印象深刻的高品質內容;對於一般大眾而言,自然充滿吸引力。
陳駿丞解釋,過去也有許多以文字產生圖片的嘗試,但品質並不佳,而現在之所以可以顯得如此真實,便是借助了「擴散模型」(Diffusion Model)的強大威力。大約 2019 年左右,「擴散模型」逐漸超越了原本主流的「生成對抗網路」(Generative Adversarial Network,GAN),吸引大量研究人員投入,也因此衍生出「Midjourney」這類的圖片服務,打個字、按個鈕便能生成美美的圖片。進階使用者還可以輸入如同咒語般長的自訂提示詞(Prompt),生成符合需求的圖片,甚至還有人專門訓練生成提示詞的 AI,各種 AI 藝術社群也如雨後春筍般成立。
如何打造超強大生成式 AI?原來是靠這些妙招
等等等等,什麼是「擴散模型」?什麼是「生成對抗網路」?想了解兩者的不同,讓我們先從比較「資深」的那個開始說起。 所謂「[生成對抗網路](https://youtu.be/DQNNMiAP5lw?t=1095)」,其實是由兩個網路所組成的,分別是「鑑別網路」(Discriminating Network)與「生成網路」(Generative Network)。這兩者間的關係就像是考官和學生(亦敵亦友!),學生(生成網路)要負責把圖生出來,交給考官(鑑別網路)去判斷這張圖跟真實圖片的分布究竟像不像,像就給過、不像就退回去砍掉重練。 至於考官(鑑別網路)為什麼能如此精確呢?因為研究員會預先餵給它真實的圖片,好協助鑑別網路做出足夠專業的判斷、給予精準回饋。而學生(生成網路)則在這一次次「交作業、修正、交作業、修正」的過程中,畫出越來越接近真實模樣的圖片。  生成對抗網路的概念比喻圖,生成網路與鑑別網路這兩組神經網路會相互訓練,生成網路所產出的圖片會越來越接近鑑別網路的目標,差異越來越小。 圖|研之有物(資料來源|[李宏毅](https://youtu.be/DQNNMiAP5lw?t=1095)) 相比起 GAN 對錯分明、馬上定生死的特點,「擴散模型」採取的路徑相對而言非常迂迴,但是結果更為精準,如果採用知名電腦科學家臺大電機系李宏毅教授的[比喻](https://www.youtube.com/watch?v=azBugJzmz-o),擴散模型就像是從一塊大石頭裡面刻出大衛像,圖片就在雜訊當中! 「擴散模型」在訓練期間的第一步是加噪(add noise),以貓為案例來說,擴散模型的原理就是將一張正常的貓咪圖片,用統計方法取樣出一張特定大小的雜訊圖(例如 512*512),過程中研究人員會控制參數去加上高斯雜訊。第二步是去噪(denoise),透過減去預測的高斯噪聲,得到乾淨的原貓圖。模型訓練的越好,預測的高斯噪聲量越準。 訓練好之後,「擴散模型」在輸出的時候,為了輸出符合使用者文字指令的貓咪圖片,模型會從隨機的雜訊圖開始,應用訓練過程的去噪器,像物理的擴散過程一樣,逐漸改變每個像素點的值,反覆去掉噪點,得到最後新的貓咪圖。 如果有用過 Midjourney 的人,應該也會發現 AI 收到文字指令開始產圖的時候,是從一張模糊不清的圖片,一顆顆像素逐漸改變,變成你要的圖。  擴散模型透過加噪和去噪來訓練模型,利用去噪來生成圖片。實際生成圖片的過程,就是逐步去除噪聲的過程。 圖|研之有物(資料來源|[李宏毅](https://youtu.be/z83Edfvgd9g?t=1212)) 陳駿丞指出,由於這些噪聲都是研究員自己加的,所以控制度極高,也可以掌握其中細部的變化過程。而這種「保姆式」訓練法,最大的好處就在於:擴散模型是一種漸進式學習的過程,因此對於細節的掌握度將會更高。 陳駿丞提到,兩種方式的訓練時間其實差不多,但以執行時間來說,「擴散模型」會比較久一點,因為需要慢慢摸索,而 GAN 則是幾乎一步到位。不過,雖說處理時間可能較長,「擴散模型」卻也因為訓練比 GAN 更穩定與更全面這份特質,可以訓練很大的資料集,也能生出較為豐富多元的成果。
